OpenDoc es un estándar de marco de componentes de software multiplataforma desaparecido creado por Apple en la década de 1990 para documentos compuestos , pensado como una alternativa a la vinculación e incrustación de objetos (OLE) de Microsoft . [1] Como parte de la alianza AIM entre Apple, IBM y Motorola , OpenDoc es uno de los primeros experimentos de Apple con estándares abiertos y métodos de desarrollo colaborativo con otras empresas, iniciando efectivamente un consorcio industrial. El desarrollo activo se interrumpió en marzo de 1997. [2] [3]
Desarrollador (es) | Apple Inc. |
---|---|
Lanzamiento estable | 1.2.1 / marzo de 1997 |
Sistema operativo | Mac OS clásico , OS / 2 , Windows , AIX |
Tipo | Marco de documento compuesto |
La idea central de OpenDoc es crear componentes pequeños y reutilizables, responsables de una tarea específica, como la edición de texto, la edición de mapas de bits o la navegación por un servidor FTP . OpenDoc proporciona un marco en el que estos componentes pueden ejecutarse juntos y un formato de documento para almacenar los datos creados por cada componente. Estos documentos se pueden abrir en otras máquinas, donde los marcos OpenDoc sustituyen los componentes adecuados para cada parte, incluso si son de diferentes proveedores. [4] De esta manera, los usuarios pueden "construir" sus documentos a partir de partes. Dado que no hay una aplicación principal y la única interfaz visible es el documento en sí, el sistema se conoce como centrado en el documento . [5]
En sus inicios, se imaginó que OpenDoc permitiría, por ejemplo, a desarrolladores externos más pequeños ingresar al entonces competitivo mercado de software de suite ofimática , capaces de construir un buen editor en lugar de tener que proporcionar una suite completa. [6]
Esfuerzos iniciales
OpenDoc fue creado inicialmente por Apple en 1992, después de que Microsoft se acercó a Apple solicitando su opinión sobre un proyecto OLE II propuesto. Apple había estado experimentando internamente con componentes de software durante algún tiempo, basándose en el trabajo inicial realizado en su modelo de vinculación Publicar y Suscribir y en el lenguaje de programación AppleScript , que a su vez se basaba en el entorno de programación HyperCard . Apple revisó el prototipo y el documento de Microsoft y devolvió una lista de problemas que vieron con el diseño. Microsoft y Apple, que eran muy competitivos en ese momento, no pudieron ponerse de acuerdo sobre objetivos comunes y no trabajaron juntos.
Aproximadamente al mismo tiempo, un grupo de desarrolladores externos se había reunido en la Conferencia Mundial de Desarrolladores de Apple (WWDC '91) e intentó establecer un formato de documento estandarizado, basado conceptualmente en el formato de archivo de intercambio de Electronic Arts (IFF). Apple se interesó en este trabajo y pronto dedicó algunos ingenieros a la tarea de construir, o al menos documentar, dicho sistema. El trabajo inicial se publicó en los CD de la WWDC, así como varias versiones de seguimiento en los CD de desarrolladores posteriores. Un sistema de documentos de componentes solo funcionaría con un formato de documento conocido que todos los componentes pudieran usar, por lo que pronto el formato de documento estandarizado se incorporó al esfuerzo del software de componentes. El formato cambió rápidamente de uno simple usando etiquetas a una capa de persistencia orientada a objetos muy compleja llamada Bento .
Inicialmente, el nombre del esfuerzo fue "Exemplar", luego "Jedi", "Amber" y, finalmente, "OpenDoc".
Visiones en competencia
Con OpenDoc entrando en la histórica alianza AIM entre Apple, IBM y Motorola, Apple también participó en Taligent durante parte de este período, que prometía una funcionalidad algo similar aunque basada en mecanismos subyacentes muy diferentes. Mientras OpenDoc aún se estaba desarrollando, Apple confundió mucho las cosas al sugerir que debería ser utilizado por personas que portan software existente únicamente, y los nuevos proyectos deberían basarse en Taligent, ya que ese sería el próximo sistema operativo. En 1993, John Sculley llamó Project Amber (un nombre en clave para lo que se convertiría en OpenDoc) un camino hacia Taligent. [7] [8] Taligent fue considerado el futuro de la plataforma Mac, y el trabajo en otras herramientas como MacApp fue considerablemente despriorizado.
A lo largo de toda la vida de OpenDoc, los analistas y los usuarios supuestamente "tenían puntos de vista muy diferentes" de la iniciativa OpenDoc. Estaban confundidos acerca de su papel, con respecto a qué parte del desarrollo basado en OpenDoc sería su responsabilidad frente a la responsabilidad de IBM y Apple. Nunca se lanzaron muchos componentes OpenDoc en comparación con los componentes ActiveX de Microsoft. Por lo tanto, la recepción fue muy variada. [9]
A partir de 1992, Apple también participó en un esfuerzo por reemplazar el marco de desarrollo de MacApp con una solución multiplataforma conocida como Bedrock , de Symantec . Think C de Symantec se estaba convirtiendo rápidamente en la herramienta preferida para el desarrollo en Mac. Apple había estado trabajando con ellos para trasladar sus herramientas a PowerPC cuando se enteraron de las herramientas de migración internas de Symantec. Apple propuso fusionar los conceptos y el código de MacApp existentes con los de Symantec para producir un sistema multiplataforma avanzado. Bedrock comenzó a competir con OpenDoc como la solución para el desarrollo futuro.
A medida que OpenDoc ganó popularidad dentro de Apple, la compañía comenzó a presionar a Symantec para que incluyera la funcionalidad OpenDoc en Bedrock. Symantec no estaba interesado en esto y, finalmente, abandonó el esfuerzo y pasó el código a Apple. Bedrock se encontraba en un estado de desarrollo muy temprano en este punto, incluso después de 18 meses de trabajo, ya que el equipo de desarrollo de Symantec sufría una rotación continua. Apple propuso que el código se usaría para la programación OpenDoc, pero nunca más se supo de esto y Bedrock desapareció.
Como resultado de que Taligent y Bedrock son las futuras plataformas prometidas oficialmente por Apple, se ha invertido poco esfuerzo en actualizar MacApp. Debido a que Bedrock se suspendió en 1993 y Taligent se suspendió en 1996 sin ningún lanzamiento de MacOS, esto dejó a Apple solo con OpenDoc como un sistema de programación moderno basado en OO.
Asociaciones
El equipo de desarrollo se dio cuenta a mediados de 1992 de que se necesitaba una coalición industrial para promover el sistema y creó los Laboratorios de integración de componentes (CI Labs) con IBM y WordPerfect . IBM introdujo el sistema de biblioteca compartida System Object Model (SOM) al proyecto, que se convirtió en una parte importante de los esfuerzos futuros de Apple, dentro y fuera de OpenDoc. [ cita requerida ] En 1996 el proyecto fue adoptado por el Object Management Group , en parte debido al uso de SOM de Common Object Request Broker Architecture (CORBA), mantenido por el OMG.
Como parte de la alianza AIM entre Apple, IBM y Motorola, OpenDoc es uno de los primeros experimentos de Apple con estándares abiertos y métodos de desarrollo colaborativo con otras empresas. Apple y sus socios nunca publicaron el código fuente, pero pusieron la fuente completa a disposición de los desarrolladores con fines de comentarios, pruebas y depuración.
Lanzamiento
El subsistema OpenDoc se lanzó inicialmente en System 7.5 , [10] y más tarde en OS / 2 Warp 4.
Productos
Después de tres años de desarrollo en el propio OpenDoc, el primer lanzamiento de producto basado en OpenDoc es el navegador web CyberDog de Apple en mayo de 1996. El segundo fue el 1 de agosto de 1996, de los dos paquetes de IBM de componentes OpenDoc para OS / 2, disponibles en el Club. Sitio web de OpenDoc para una prueba gratuita de 30 días: Person Pak es "componentes destinados a organizar nombres, direcciones y otra información personal", para su uso con aplicaciones de gestión de información personal (PIM), a $ 229; y Table Pak "para almacenar filas y columnas en un archivo de base de datos" a $ 269. IBM anticipó entonces el lanzamiento de 50 componentes más a finales de 1996. [9]
El procesador de texto WAV es un procesador de texto OpenDoc semi-exitoso de Digital Harbour LLC. El paquete Numbers & Charts es una hoja de cálculo y una solución de gráficos en tiempo real 3D de Adrenaline Software. Lexi de Soft-Linc, Inc. es un paquete lingüístico que contiene un corrector ortográfico, un diccionario de sinónimos y una herramienta de traducción simple que utilizan WAV y otros componentes. El software Nisus Writer de Nisus incorporó OpenDoc, pero su implementación fue irremediablemente defectuosa. Bare Bones Software probó el mercado al hacer que su editor de texto gratuito BBEdit Lite esté disponible como un componente de editor OpenDoc. RagTime , un paquete de oficina completamente integrado con hoja de cálculo, publicación y edición de imágenes, se trasladó a OpenDoc poco antes de que se cancelara OpenDoc. El lanzamiento de ClarisWorks 5.0 de Apple en 1996 (el predecesor de AppleWorks ) estaba planeado para admitir componentes OpenDoc, pero se descartó.
Educativo
Otra aplicación de contenedor OpenDoc, llamada Dock'Em, fue escrita por MetaMind Software con una subvención de la National Science Foundation y encargada por el Centro de Investigación en Educación Matemática y Ciencias, con sede en la Universidad Estatal de San Diego . El objetivo era permitir la inclusión de contenido multimedia en los documentos que describen el plan de estudios.
Varias simulaciones de física fueron escritas por MetaMind Software y por la firma de software rusa Physicon ( OpenTeach ) como partes de OpenDoc. [11] Los planes de estudio de física para la escuela secundaria y la escuela media los utilizaron como su enfoque. Con la interrupción de OpenDoc, las simulaciones se reescribieron como subprogramas de Java y se pusieron a disposición del Centro como The Constructing Physics Understanding (CPU) Project por el Dr. Fred Goldberg. [12]
Los componentes de la plataforma de micromundos educativos E-Slate se implementaron originalmente como partes de OpenDoc en C ++ tanto en MacOS como en Windows, se reimplementaron más tarde (después de la interrupción de OpenDoc) como applets de Java y, finalmente, como JavaBeans .
Problemas
La flexibilidad de OpenDoc tuvo un costo. Los componentes de OpenDoc eran invariablemente grandes y lentos. Por ejemplo, abrir una parte de un editor de texto simple a menudo requeriría 2 megabytes de RAM o más, mientras que el mismo editor escrito como una aplicación independiente podría tener tan solo 32 KB. Esta sobrecarga inicial se volvió menos importante a medida que aumentaba la cantidad de documentos abiertos, ya que el costo básico era para las bibliotecas compartidas que implementaban el sistema, pero era grande en comparación con las máquinas de nivel de entrada del día. Muchos desarrolladores sintieron que la sobrecarga adicional era demasiado grande y, dado que el sistema operativo no incluía la capacidad de OpenDoc, la huella de memoria de sus aplicaciones basadas en OpenDoc parecía inaceptablemente grande. En términos absolutos, la sobrecarga de la biblioteca por única vez era de aproximadamente 1 megabyte de RAM, que en ese momento era casi la mitad del complemento de RAM completo de una computadora de escritorio de gama baja.
Otro problema era que OpenDoc tenía poco en común con la mayoría de los formatos de documentos del "mundo real", por lo que los documentos OpenDoc solo podían ser utilizados por otras máquinas OpenDoc. Aunque uno esperaría algún esfuerzo para permitir que el sistema exportara a otros formatos, esto a menudo no era práctico porque cada componente contenía sus propios datos. Por ejemplo, el sistema requirió un gran esfuerzo para convertir un archivo de texto con algunas imágenes en un documento de Microsoft Word , tanto porque el editor de texto no tenía idea de lo que había en los objetos incrustados como porque el formato propietario de Microsoft no estaba documentado. y requirió ingeniería inversa.
Otro problema fue el hecho de que cada parte guardaba sus datos dentro de Bento (el nombre anterior de un formato de archivo de documento compuesto OpenDoc) en su propio formato binario interno, y era muy común encontrar que un componente no podía abrir un documento creado por otro. a pesar de que los datos internos representaban objetos similares (datos de hoja de cálculo, por ejemplo). OpenDoc intentó resolver este problema permitiendo a los desarrolladores almacenar múltiples formatos para representar el mismo objeto de documento. Por ejemplo, era posible y se animaba a almacenar un formato común como JPEG junto con un formato binario editable, pero en la práctica pocos desarrolladores siguieron esta recomendación. Este problema no era exclusivo de OpenDoc y, de hecho, también lo experimentó el equivalente de Microsoft, Object Linking and Embedding (OLE). De hecho, muchos años después, los documentos XML que intentan incrustar otros formatos XML también encuentran problemas similares.
También parece que OpenDoc fue víctima de un concepto de sobreventa, el de los documentos compuestos. Solo unos pocos ejemplos específicos son comunes, por ejemplo, la mayoría de los procesadores de texto y programas de diseño de páginas incluyen la capacidad de incluir gráficos, y se espera que las hojas de cálculo manejen gráficos.
El mayor problema del proyecto era que formaba parte de una competencia muy enconada entre los miembros del consorcio OpenDoc y Microsoft. Todos los miembros de la alianza OpenDoc estaban tratando de obtener tracción en un mercado dominado rápidamente por Microsoft Office . A medida que los diversos socios acumulaban sus propias tecnologías favoritas con la esperanza de convertirlo en un estándar de la industria, OpenDoc se volvió cada vez más difícil de manejar. Al mismo tiempo, Microsoft utilizó la sinergia entre el sistema operativo y las divisiones de aplicaciones de la empresa para que fuera obligatorio que los desarrolladores adoptaran la tecnología OLE de la competencia. Para obtener un logotipo de cumplimiento de Windows 95 de Microsoft, uno tenía que cumplir con ciertas pruebas de interoperabilidad que eran bastante difíciles de cumplir sin la adopción de la tecnología OLE, aunque la tecnología solo era útil en gran medida para integrarse con Microsoft Office . OpenDoc se vio obligado a crear una capa de interoperabilidad para permitir a los desarrolladores incluso considerar la adopción, y esto agregó una gran carga técnica al proyecto.
Cancelación
OpenDoc tenía varios cientos de desarrolladores registrados, pero el momento no fue suficiente. Apple estaba perdiendo dinero rápidamente en ese momento y muchos en la prensa de la industria esperaban que la empresa fracasara.
OpenDoc pronto se descontinuó, y Steve Jobs (que había estado en NeXT durante este desarrollo) señaló que "atravesaron la cabeza [OpenDoc] con una bala", y la mayor parte del Grupo de Tecnología Avanzada de Apple fue despedida en una gran reducción de personal en Marzo de 1997. [2] [3] Otras fuentes señalaron que Microsoft contrató a tres desarrolladores de ClarisWorks que eran responsables de la integración de OpenDoc en ClarisWorks. [13]
AppleShare IP Manager de las versiones 5.0 a 6.2 se basó en OpenDoc, pero AppleShare IP 6.3, la primera versión compatible con Mac OS 9 (lanzada en 1999), eliminó la dependencia de OpenDoc. [14] Apple renunció oficialmente a la última marca registrada con el nombre "OpenDoc" el 11 de junio de 2005.
Ver también
- Tecnología huérfana para destinos similares
- KParts para una alternativa de código abierto
Referencias
- ^ Amy D. Wohl (junio de 1993). "Apple y WordPerfect anuncian OpenDoc" . Opiniones de Amy D. Wohl . Archivado desde el original el 9 de noviembre de 2006 . Consultado el 24 de abril de 2007 .
- ^ a b Dawn Kawamoto; Anthony Lazarus (14 de marzo de 1997). "Apple despide a miles" . CNET News.com . Consultado el 24 de abril de 2007 .
- ^ a b Erick Schonfeld (6 de octubre de 2011). "Trabajos: el enfoque es decir no" . TechCrunch.com . Consultado el 6 de octubre de 2011 .
- ^ Piersol, Kurt (marzo de 1994). "Un primer plano de OpenDoc" . Byte.com . Consultado el 24 de abril de 2007 .
- ^ Greg Maletic (12 de noviembre de 2006). "OpenDoc" . Blog de Greg Maletic . Consultado el 24 de abril de 2007 .
- ^ "Macintosh vs Windows 95" (PDF) .
Los desarrolladores de aplicaciones podrán centrarse en escribir pequeños programas que hagan cosas específicas, en lugar de crear conjuntos completos. Esto hará que sea mucho más fácil para las empresas de software pequeñas e innovadoras volver a la industria ... Las aplicaciones OpenDoc se venderán como se venden hoy en día, ya través de los mismos canales. Pero al igual que con cualquier nueva tecnología, evolucionarán canales adicionales para capitalizar las fortalezas de la tecnología. Es probable que con el tiempo se utilicen almacenes de componentes en línea para distribuir algunas aplicaciones OpenDoc. OpenDoc habilitará nuevas aplicaciones y servicios en línea interesantes.
- ^ https://www.mackido.com/History/History_OLE.html
- ^ "Computerworld" . 17 de mayo de 1993.
- ^ a b Gaudin, Sharon (29 de julio de 1996). "IBM envía el primer lote de componentes OpenDoc" . Computerworld . pag. 14 . Consultado el 17 de julio de 2019 .
- ^ Basal Gangster (17 de abril de 2020). "OpenDoc" . La visión a largo plazo . Consultado el 24 de junio de 2020 .
- ^ Arni McKinley (19 de diciembre de 2006). "OpenDoc - Comentario de Arni McKinley" . Blog de Greg Maletic . Consultado el 8 de abril de 2008 .
- ^ The CPU Project (febrero de 2001). "Comprender la construcción de la física" . Universidad Estatal de San Diego. Archivado desde el original el 9 de mayo de 2008 . Consultado el 9 de abril de 2008 .
- ^ Bob Hearn (2003). "Una breve historia de ClarisWorks: Oregon" . Sitio web de Bob Hearn . Consultado el 24 de abril de 2007 .
- ^ Apple (18 de diciembre de 2003). "AppleShare IP 6.3 no requiere OpenDoc" . Soporte de Apple . Consultado el 24 de abril de 2007 .[ enlace muerto permanente ]
enlaces externos
- Descripción general de OpenDoc en Wayback Machine (archivado el 9 de octubre de 2007)
- Club OpenDoc en IBM en Wayback Machine (archivado el 25 de diciembre de 1996)
- Última versión de OpenDoc con casi todas las fuentes (solo con fines educativos)
- Video de Steve Jobs en la conferencia anual de desarrolladores de Apple en 1997, defendiendo la decisión de Apple de eliminar OpenDoc.