No a OOXML de Microsoft

24 03 2008

http://jpangamarca.wordpress.com

Estamos a pocos días de una votación de los miembros de la ISO para aprobar un estándar de formato de documentos ofimáticos, OOXML (ISO DIS 29500), tecnología desarrollada por Microsoft, el 29 de marzo de 2008. Este nuevo “estándar” será sometido a votación por parte de los representantes de los países que tienen voto en ISO/IEC, y nuestro país es miembro “P” (principal), es decir, que tiene voto decisivo en la aprobación. Tengo una fuerte posición frente a esta decisión, y es mi deseo, como el de mucha gente alrededor del mundo, que este estándar no sea aprobado. Y no es que sea un capricho, a continuación hago un extracto de las razones por las que este formato no debe ser aprobado.

OOXML.info, en su página lista tres razones principales:

No es abierto: Para que un formato pueda ser considerado abierto, ha de estar libre de regalía o condición alguna por patentes, y no puede ser controlado por una única empresa (…que además en este caso cuenta con un amplio historial de amenazas a sus competidores mediante patentes de software). Por otro lado, el formato en cuestión debe ser multiplataforma por naturaleza. Office OpenXML no cumple ninguna de esas condiciones.

No es estándar: Un estándar debe estar totalmente documentado públicamente. Además, su proceso de estandarización (ECMA) debería haber garantizado que todas las patentes de los proponentes del mismo fueran desveladas y licenciadas como mínimo en términos RAND. Finalmente, es necesario que una propuesta de estándar ISO cumpla y no contradiga los estándares ISO ya preexistentes para no obligar a “reinventar la rueda”. Office OpenXML no cumple ninguna de esas condiciones.

No es XML: Para que un formato de representación de información pueda ser considerado XML, éste debe plasmar íntegramente dicha información en estructuras XML. Para que algo se denomine XML no basta con que que simplemente utilice etiquetas XML cuando en ellas guarda información en formatos binarios, con códigos de control e incluso dependiente de plataformas concretas. En resumen, debe validar el estándar XML. Office OpenXML no cumple estas condiciones.

NOOOXML.org también se suma a esta lucha, es una página en la que se puede firmar digitamente en rechazo a OOXML, y se puede encontrar material técnico y un historial de la lucha en contra de este formato y de las reuniones de la ISO que ya se han dado con respecto a la aprobación. En dicha página se exponen la siguientes razones:

  1. Ya hay un estándar, ISO 26300, llamado Open Document Format (ODF): un doble estándar supondrá incertidumbre, confusión y un coste añadido para la industria, gobiernos y ciudadanos;
  2. No hay ninguna implementación de referencia de la especificación de OOXML: Microsoft Office 2007 produce una versión especial de OOXML que no cumple con la especificación de OOXML propuesta en ISO;
  3. En el documento de especificación falta información como, por ejemplo, cómo implementar un “autoSpaceLikeWord95” o un “useWord97LineBreakRules”;
  4. Más del 10% de los ejemplos de su especificación no validan la conformidad con XML;
  5. No existe garantía alguna para que cualquiera pueda implementar parcial o totalmente la especificación de OOXML sin arriesgarse a que Microsoft le exija daños y perjuicios por infracción de patentes o el pago de licencias de patentes;
  6. Esta propuesta de estándar entra en conflicto con otros estándares ISO, como ISO 8601 (representación de fechas y tiempos), ISO 639 (códigos de representación de nombre e idiomas) o ISO/IEC 10118-3 (funciones hash de criptografía);
  7. Hay un error en la especificación del fichero de formatos de hoja de cálculo que impide introducir cualquier fecha previa al año 1900. Esto es un error que se arrastra desde las obsoletas versiones de 16 bits de la aplicación MS-Office;
  8. Esta propuesta de estándar no ha sido creada aunando la experiencia y mejores prácticas de todas las partes interesadas (tales como productores, distribuidores, consumidores, usuarios y reguladores), sino por Microsoft en solitario.

NOOOXML.org, en las últimas fechas ha expuesto 20+1 buenas razones para rechazar a OOXML como estándar ISO. De dicha lista expongo las que me parecen más importantes:

  • El objetivo de OOXML en ISO es minar la adopción de un estándar ISO ya existente: El evangelista OOXML Mahugh explicó: “Cuando ODF se convirtió en estándar ISO, Microsoft tuvo que reaccionar rápidamente dado que ciertos gobiernos procuran políticas que prefieren estándares ISO. Microsoft, por lo tanto, tenía que apresurar este estándar. ¡Es una simple cuestión de intereses comerciales!”

Como siempre, Microsoft trata de dominar y monopolizar el mercado.

  • El texto no está conforme a las reglas para la estructura y borradores de estándares internacionales: El texto es heterogéneo, sin convenciones de denominación, y en muchos casos un mismo término tiene varias definiciones.
  • Microsoft reinventa la rueda: No se basa en el uso de estándares maduros existentes, sino que inventa sus propios procedimientos, argumentando ridículamente que no se puede extender los lenguajes XML existentes para sus propósitos, cuando XML por definición es extensible (eXtensible Markup Language).
  • OOXML requiere material oculto y con copyright de Microsoft, material que no se ha liberado: Un estándar debe ser abierto. No se podrá hacer implementar de OOXML sin tener que pagar licencias por el uso de dichos materiales.
  • El mercado no puede depender de estándares ISO con errores de cálculo: Las fórmulas de hojas de cálculo todavía dan resultados erróneos, por ejemplo la función FLOOR que tiene imprecisiones con números negativos. Es un problema de debe ser cuidadosamente estudiado. Esto es particularmente grave. Las finanzas de muchas empresas y cálculos de variado tipo se llevan a cabo en hojas OOXML de Office 2007. ¿Se puede admitir ese tipo de errores? (recuerden la operación maldita en Excel 2007…)
    Si es malo hacerlo en digital, intenta buscar algo aquí. Ojalá lo encuentres.

    Varias grandes compañías como Oracle, IBM, Google y Red Hat expresan su rechazo a la aprobación de este estándar, y vale destacar que ni siquiera se molestan en mencionar la corrupción que rodea a OOXML, sino que se enfocan en los aspectos técnicos. Textualmente, lo dice una cita de Rob Wier de IBM en The Disharmony of OOXML:

    I sometimes hear it said that OOXML, or ODF for that matter, are simply XML serializations of particular applications’ native representations. This is said, seemingly, in an attempt to justify quirkiness or outright infelicitous file format representations. “We had not choice. Office 97 did it that way, so OOXML must as well”. This variety of technological determinism indicates poor engineering judgement, laziness or both.

    An easy counter-example is HTML. Does HTML reflect the internals of NCSA Mosiac? Does it represent the internals of Netscape Navigator? Firefox? Opera? Safari? Are any faults in HTML justified by what a single browser does internally? Applications should follow standards, not the other way around.

    […]

    What is the engineering justification for this [OOXML] horror? I have no doubt that this accurately reflects the internals of Microsoft Office, and shows how these three applications have been developed by three different isolated teams. But is this a suitable foundation for an International Standard?”

    “A veces oigo que OOXMl, u ODF ya que lo mencionan, son simplemente serializaciones XML de representaciones nativas de aplicaciones particulares. Eso se dice, aparentemente, como un intento de justificar la arbitrariedad o las representaciones de archivo indiscutiblemente no aptas. “No tuvimos elección. Office 97 lo hizo de esa forma, así también como OOXML”. Esta variedad de determismo tecnológico indica un pobre juicio de ingeniería, pereza, o ambas cosas.

    Un fácil contraejemplo es HTML. ¿HTML refleja la estructura interna de NCSA Mosaic? ¿Representa la estructura interna de Netscape? ¿Firefox? ¿Opera? ¿Safari? ¿Son los defectos de HTML justificados por lo que un solo navegador hace internamente? Las aplicaciones deben seguir los estándares, no al revés.

    [...]

    ¿Cuál es la explicación de ingeniería para el horror OOXML? No tengo duda de que refleja con precisión la estructura interna de Microsoft Office, y muestra cómo estas tres aplicaciones (Word, Excel y Powerpoint) se han desarrollado por tres equipos diferentes y aislados. ¿Pero, es eso una cimiento apropiado para un estándar internacional?”

    Para terminar, es inconcebible que se pretenda obtener una certificación como estándar para una tecnología tan mal diseñada y con problemas no sólo técnicos sino de patentes y copyright.

    ¿Qué podemos hacer?

    • Como informáticos ecuatorianos, rechazar OOXML y escribir a INEN para evitar un voto positivo a una tecnología mediocre. Información de contacto en este link, recordando mencionar los recursos en que nos basamos para expresar nuestra opinión.
    • No sé cuánta utilidad pueda tener esta acción, pero podemos firmar en contra de OOXML en http://www.noooxml.org/petition-es.
    • Suscribirnos a la lista de correo de INEN con respecto a OOXML: http://mail.inen.gov.ec/mailman/listinfo/openxml
    • ¡Rezar! Rezar porque no se logre comprar conciencias en la reunión de la ISO…

    Fuentes:




    El poder de sudo

    15 12 2007

    Tomado de “Entre tuxes y pepinos”, http://tuxpepino.wordpress.com, un excelente blog sobre Linux y Ubuntu.

    Una pequeña pero divertida viñeta que muestra un ejemplo de lo que sería la ventaja de poder usar sudo en la vida real.

    sandwich.png




    ¿Windows Vista? Mmm… ¡Hasta la “Vista”, baby!

    22 09 2007

    Soy gamer. ¿Que qué es gamer? Gamer es una persona que gusta de los videojuegos. Y son fan de los FPS, en particular (First Person Shooter, juegos de disparo en primera persona). Entre ellos, está Halo, una saga de la que la calidad de su primera entrega es algo que no se ve a menudo teniendo en cuenta que Microsoft es el desarrollador. Pues bien, hace dos meses llegó para PC la segunda entrega de este título: Halo 2. Pero, pero, pero… ahí viene el pero. Halo 2 sólo se ejecuta en Windows Vista, un plan de M$ para que los fans de esta serie compren la última entrega (la peor) del SO Windows.

    Soy conocedor de los requerimientos del sistema de este nuevo SO, y por mucho que la gente de Microsoft diga lo contrario, ese no es un sistema operativo para cualquier computadora. Es un sistema operativo para computadoras potentes (y no por eso es un buen SO), computadores del tipo que un jugador tiene. E instalándolo en una computadora para juegos, la deja sin mucho que ofrecer a los juegos por sus exagerados requerimientos de memoria y procesamiento… pero en fin. Como buen jugador, no me iba a quedar sin jugar Halo 2, así que en primera instancia decidí instalar Windows Vista a mi computador (lo hice sin saber que hay forma de correr Halo 2 en XP, pero ese es tema de otro post), en una configuración dual-boot con Windows XP.

    WindowsVistaLogo
    No todo lo nuevo es mejor.

    En los foros de Internet se aseguraba que una configuración de arranque dual-boot Vista-XP se consigue sin problemas, así que ¡dale al experimento, que echando a perder se aprende! Creé una partición nueva en el disco del computador e instalé Vista. La instalación fue un proceso fácil. Pero una vez que empecé a usarlo para mover a su lugar los archivos que respaldé cuando hice la nueva partición, ¡el SO me pedía permisos para realizar acciones que son de uso corriente en Windows XP! (por ejemplo, copiara archivos en la raíz de una partición) Y estaba en una cuenta de usuario de administrador. Además los diálogos de copia de archivos no me mostraban el progreso de la copia, lo cual era bastante molesto. Para copiar un archivo pequeño (50 KB), estuvo como dos minutos en ello.

    Mi computador no es lento. Si bien no es la última maravilla tecnológica, es bastante rápido y de buenas especificaciones: Procesador Pentium 4 3.2 GHz HyperThreding, memoria RAM 1 GB, mainboard Intel chipset Intel D915GAG, tarjeta de video nVIDIA 7300 GS 512 MB RAM PCI Express, disco duro SATA 300 GB. Me olvidaba, según Microsoft, es Windows Vista Premium Ready. Así que la lentitud en la copia de archivos no era un problema de hardware.

    Sí, es verdad, se ve lindo el Vista, con sus gadgets, transaparencias, sombreados y efectos, pero en el tiempo que lo manejé, eso fue lo único bueno que le encontré. Así que, reinicié mi computador y traté de arrancar Windows XP, pero ¡oh sorpresa! ¡No pude! La pantalla se quedaba negra con un cursor titilando en la parte superior izquierda de la pantalla. Tenía que reparar XP. Hubiera sido fácil repararlo, pero no tenía el disco de instalación original (con la que me vino del sitio donde fue comprado el computador), así que tuve que instalar mi copia de Windows XP, borrando las configuraciones de los programas que tenía. Bueno… otra vez a Vista a mover los archivos que estaban en la partición de XP, y otra vez el martirio con dicho sistema.

    Así pues, reinstalé XP. Ahora, no podía ejecutar Vista. Rayos. Dual-Boot Hell. ¿Ahora Microsoft se boicotea a sí mismo?… Me puse a buscar una solución para estos problemas en Internet, en las páginas de soporte Microsoft, y las hallé: para iniciar Vista cuando estaba XP instalado (http://support.microsoft.com/kb/919529/es), y para iniciar XP cuando estaba instalado Vista (http://support.microsoft.com/kb/927817/es). Y oigan bien esto: estas soluciones propuestas en la propia página de soporte de Microsoft no funcionaron, después de varios intentos (instala XP, instala Vista, repara XP, repara Vista). Ninguna de las dos.

    WindowsXPLogo
    Mejor, a pesar de todas su fallas.

    Me dirán ¿Tanta molestia por un juego? Pues no. Una vez que se me presentaron estos problemas, esto se convirtió en una cuestión de orgullo personal. Y fui vencido. Pero esta experiencia ratifica lo que vengo oyendo desde hace tiempo, y de lo que me he convencido: Microsoft está muriendo. Comparando todas las versiones de Windows, creo que XP fue la mejor de todas (con sus fallas y todo). Ahora mismo Microsoft ya está trabajando en un nuevo Windows, Windows 7 Codename Vienna. Yo, si fuera ellos, no me esforzaría. Dicen que las ventas de Vista han sido bajas por el retraso de M$ en lanzarlo, pero mi opinión es diferente. Pueden buscar en Internet. Vista es tan hackeable como XP. Consume demasiada memoria, en PCs originales pone limitantes ridículas de copyright que impiden la creación de discos de recuperación, el Control de Cuentas de Usuario (UAC) es un dolor de cabeza (Si a uno que sabe de computadoras le es molesto, imaginen cómo lo será para alguien que se alarma al ver que Word le pregunta si desea guardar el documento), en fin…

    CelebratingVista
    La verdad, no sé qué celebra este par.

    Encontré otras soluciones para esto del dual-boot, pero la verdad ya perdí la paciencia. En su búsqueda de ventas para Vista, Microsoft echó por el caño la backwards compatibility, los sistemas de arranque de Vista y XP son completamente distintos e incompatibles. Una de esas soluciones adicionales que encontré me pareció particularmente ridícula: comprar otro disco duro para tener los sistemas operativos instalados en distintas unidades físicas, y entonces no tendría problemas… ¡Por favor!


    La alternativa.

    Es definitivo, Cuando XP se vuelva obsoleto en las computadoras caseras, Linux será la alternativa, en particular Linux Ubuntu, que para entonces su facilidad de uso habrá mejorado más.

    Mientras tanto, seguiré trabajando y jugando en el malo conocido, antes que en el bueno por conocer (Ni tanto. Como les digo, ya lo vi y de bueno tiene poco).

    ¿Windows Vista? Mmm… ¡Hasta la “Vista”, baby!