WorldWideWeb: Proposal for a HyperText Project

Qué velocidad. Ayer, 12 de noviembre de 2010, se cumplían 20 años de que un señor, de nombre Tim Berners-Lee, enviase un correo presentando un proyecto para elaborar una ‘cosilla’ en el CERN llamada ‘WorldWideWeb’… Como documento fundacional, hay unas cuantas constituciones y leyes por el mundo que probablemente sean más importantes, pero es difícil pensar en algo escrito en el siglo XX que haya tenido más importancia para la humanidad…

El documento original, WorldWideWeb: Proposal for a HyperText Project, puede consultarse en la web del W3C, pero he pensado que sería un buen ejercicio traducirlo y dejarlo aquí…

Como de costumbre, las advertencias habituales: a pesar de que es una traducción hecha con cariño, seguro que no está exenta de fallos (tenéis los comentarios para avisar de ellos :-) ). Y, en cualquier caso, siempre que sea posible, mejor acceder al texto original.


WorldWideWeb: Propuesta de un proyecto de hipertexto

Para:
PG Innocenti/ECP, G. Kellner/ECP, DO Williams/CN

Cc:
R. Brun/CN, K. Gieselmann/ECP, R. Jones/ECP, T. Osborne/CN, P. Palazzi/ECP, N. Pellow/CN, B. Pollermann/CN, EM€ Rimmer/ECP
De:
T. Berners-Lee/CN, R. Cailliau/ECP
Fecha:
12 de noviembre 1990

El documento adjunto describe con más detalle un proyecto de hipertexto.

El HiperTexto es una manera de enlazar y acceder a información de diversos tipos como una red de nodos en los que el usuario puede navegar a voluntad. Dota a un usuario de una interfaz única para muchas clases de información (informes, notas, bases de datos, documentación informática y ayuda en línea). Proponemos un esquema simple que usa servidores ya disponibles en el CERN.

El proyecto tiene dos fases: en primer lugar, hacemos uso de software y hardware existentes, así como la implementación de navegadores sencillos para las estaciones de trabajo de los usuarios, basándonos en un análisis de los requisitos de las necesidades de acceso a la información por medio de experimentos. En segundo lugar, ampliamos el área de aplicación permitinedo también a los usuarios añadir material nuevo.

La primera fase debería durar 3 meses con el complemento completo de mano de obra, la segunda fase 3 meses más, aunque esta fase es más abierta y se le incorporará una revisión de necesidades y deseos.

La mano de obra requerida es de 4 ingenieros de software y un programador, (uno de los cuales podría ser un ‘fellow’). Cada persona trabaja en una parte específica (por ejemplo, el apoyo a una plataforma específica).

Cada persona necesitará una estación de trabajo moderna, pero debe haber una de cada uno de los tipos soportados. Estas costarán de diez a veinte mil cada una, para un total de cincuenta mil. Además, nos gustaría utilizar software ya disponible comercialmente tanto como sea posible, y prever un gasto de treinta mil durante el desarrollo para licencias de un solo usuario, visitas a instalaciones existentes y consultoría.

Supondremos que el proyecto puede contar con cierto apoyo infromático sin costo: espacio de archivos de desarrollo en sistemas de desarrollo existentes, instalación y apoyo de administrador de sistemas para software ‘daemon’.

T. Berners-Lee R. Cailliau

WorldWideWeb:

Propuesta de un proyecto de HiperTexto

T. Berners-Lee / CN, R. Cailliau / ECP

Resumen:

El hipertexto es una manera de acceder y enlazar a información diversos tipos como una red de nodos por los que el usuario puede navegar a voluntad. Potencialmente, el hipertexto dota al usuario de una interfaz única para muchas y extensas clases de información almacenada, como informes, notas, bases de datos, documentación informática y sistemas de ayuda en línea. Proponemos la implementación de un esquema simple para incorporar varios servidores diferentes de información almacenada informáticamente ya disponibles en el CERN, incluyendo un análisis de requisitos de acceso a la información por medio de experimentos.

Introducción

Las incompatibilidades actuales de las plataformas y herramientas hacen que sea imposible acceder a la información existente a través de una interfaz común, lo que lleva a pérdida de tiempo, frustración y respuestas obsoletas a operaciones de búsqueda de datos simples. Hay un gran beneficio potencial de la integración de una variedad de sistemas de forma que se permite al usuario seguir enlaces que apuntan de un fragmento de información a otro. Esta formación de una red de nodos de información en lugar de un árbol jerárquico o de una lista ordenada es el concepto básico detrás del HiperTexto.

En el CERN, una variedad de datos ya está disponible: informes, datos experimentales, datos del personal, listas de direcciones de correo electrónico, documentación informática, documentación de experimentos y muchos otros conjuntos de datos están dando vueltas en discos de computadora continuamente. Sin embargo, es imposible “saltar” de un conjunto a otro de manera automática: una vez que te enteras de que el nombre Joe Bloggs se lista en una descripción incompleta de algún software en línea, no es fácil encontrar su dirección de correo electrónico actual. Por lo general, hay que utilizar otro método de búsqueda en un equipo diferente, con una interfaz de usuario diferente. Una vez encontrada la información, es difícil conservar un enlace hacia ella o tomar una nota privada al respecto que más tarde sea fácil encontrar rápidamente.

Conceptos de hipertexto

Los principios del hipertexto, y su aplicabilidad para el entorno del CERN, se analizan con más detalle en [1] y un glosario de términos técnicos se da en [2]. Aquí damos una breve presentación del hipertexto.

Llamamos a un programa que permite el acceso al mundo del hipertexto navegador. Al iniciar un navegador de hipertexto en la estación de trabajo, primero se le presentará una página de hipertexto personal: sus notas personales, si se quiere. Una página de hipertexto tiene fragmentos de texto que se refieren a otros textos. Dichas referencias están destacadas y se pueden seleccionar con el ratón (en terminales tontos, aparecería en una lista numerada y la selección se haría mediante la introducción de un número). Al seleccionar una referencia, el navegador presenta el texto al que se hace referencia: se ha hecho al navegador seguir un enlace de hipertexto:

(Ver Fig. 1: Enlaces de hipertexto).

Ese otro texto tiene enlaces a otros textos y así sucesivamente. En la figura 1, hacer clic sobre GHI llevaría a las actas de esa reunión. Allí unoi se interesaría por la discusión del UPS y haría clic en la palabra resaltada UPS para obtener más información al respecto.

Los textos están unidos entre sí de manera que uno puede pasar de un concepto a otro para encontrar la información deseada. La red de vínculos se llama una ‘web’. La web no necesita ser jerárquica, por lo que no es necesario “subir un árbol” completamente antes de poder bajar a un tema diferente pero relacionado. La web tampoco es completa, ya que es difícil imaginar que todos los posibles vínculos sean aportados por los autores. Sin embargo, un pequeño número de enlaces suele ser suficiente para llegar desde cualquier lugar a cualquier otro lugar en un pequeño número de saltos.

Los textos son conocidos como nodos. El proceso de pasar de un nodo a otro se llama navegación. Los nodos no tienen que estar en un mismo equipo: los enlaces pueden apuntar más allá de los límites de la máquina. Tener una web mundial [‘world wide web’ en el original] implica que hay que encontrar soluciones para problemas tales como diferentes protocolos de acceso y diferentes formatos de contenido en los nodos. Estas cuestiones se abordan en nuestra propuesta.

Los nodos pueden en principio contener también información no textual, como diagramas, imágenes, sonido, animación, etc. El término hipermedia es simplemente la expansión de la idea de hipertexto a estos otros medios. Cuando las instalaciones ya existan, nuestro objetivo es permitir el intercambio de gráficos, pero en este proyecto nos concentramos en lectores universales para el texto, en lugar de en los gráficos.

Aplicaciones

La aplicación de un sistema de hipertexto universal, una vez disponible, cubre muchas áreas, tales como el registro de documentos, ayuda en línea, documentación de proyectos, sistemas de noticias, etc. No sería apropiado que nosotros (en lugar de los responsables) sugiriésimos áreas específicas, pero la ayuda en línea sobre experimentos, ayuda en línea sobre el acelerador, la asistencia para los operadores de centro de cálculo y la difusión de información por los servicios centrales como la oficina del usuario y las divisiones CN y ECP son candidatos obvios. WorldWideWeb (o W3) tiene la intención de atender a estos servicios por toda la la comunidad HEP.

El proyecto funcionará sobre un cierto subconjunto bien definido de la materia frecuantemente asociada con la etiqueta “Hipertexto”. Su objetivo será:

  • proporcionar un protocolo común (simple) para pedir información legible por humanos almacenada en un sistema remoto, utilizando las redes;
  • proporcionar un protocolo en el que la información se pueda intercambiar de forma automática en un formato común para el proveedor y el consumidor;
  • proporcionar un método de leer por lo menos el texto (si no los gráficos) en una gran proporción de las pantallas de ordenador en uso en el CERN;
  • proporcionar y mantener al menos una colección de documentos, en la que los usuarios puedan (pero no estén obligados a) poner sus documentos. Esta colección incluirá gran cantidad de datos existentes. (Esto es en parte para darnos experiencia de primera mano sobre la utilización del sistema, y en parte porque los miembros del proyecto ya cuentan con documentación de la que son responsables)
  • proporcionar una opción de búsqueda por palabras clave, además de la navegación siguiendo referencias, utilizando índices cualquiera, existentes o nuevos (como los índices CERNVM FIND). El resultado de una búsqueda por palabra clave es simplemente un documento de hipertexto que consiste en una lista de referencias a los nodos que coinciden con las palabras clave. permitir la gestión de colecciones privadas de documentos de forma individual para ser enlazados con los de otras colecciones. utilizar software de dominio público siempre que sea posible, o interactuar con sistemas propietarios ya existentes.
  • proporcionar el software para todo lo anterior de forma gratuita a cualquier persona.

El proyecto no tendrá como objetivo

  • proporcionar conversiones si no existen entre los muchos formatos de almacenamiento de documentos en el CERN, a pesar de sí ofrecer un marco en que tales utilidades de conversión puedan caber;
  • obligar a los usuarios utilizar cualquier procesador de texto en particular o formato de marcado;
  • realizar investigaciones sobre funcionalidades multimedia vistosas tales como audio y vídeo;
  • utilizar sistemas sofisticados de autorización de red. los datos serán bien legibles por todo el mundo (literalmente), o sólo se podrán leer en un único sistema de archivos, en cuyo caso el sistema de protección será el sistema de archivos utilizado para la privacidad. Todo el tráfico de la red será público.

Análisis de Requisitos

Con el fin de garantizar una respuesta a necesidades reales, se llevará a cabo un análisis de los requisitos sobre las necesidades de acceso a la información de un gran experimento del CERN al comienzo mismo, en paralelo con la primera fase del proyecto.

Este análisis se limitará en primer término a las actividades de los miembros del experimento Aleph, y más tarde se extenderá a por lo menos otro experimento. Se hará una revisión general de la generación de información, almacenamiento y recuperación, independientemente de la forma (máquina, papel) e independientemente de la finalidad (experimento, administración).

El resultado debería ser:

  • listas de fuentes, depósitos y sumideros de información,
  • listas de formatos,
  • diagramas de flujo,
  • estadísticas sobre tráfico,
  • niveles estimados de la importancia de los flujos,
  • listas de los deseos del cliente y/o propuestos de mejora,
  • niveles estimados de satisfacción con las plataformas,
  • urgencia estimada de las mejoras.

Este análisis no propondrá por sí mismo soluciones o mejoras, pero sus resultados guiarán el proyecto.

Arquitectura

La arquitectura del mundo hipertexto es una de datos almacenados en servidores y procesos de cliente en la misma u otras máquinas. Las máquinas están conectadas por algún tipo de red (fig. 2). Fig. 2: modelo propuesto para el mundo de hipertexto Una estación de trabajo es bien una máquina independiente en su oficina, bien un terminal conectado a un ordenador cercano y conectado a la misma red. Los servidores son procesos activos que dan respuesta a las solicitudes. Los datos de hipertexto les son explícitamente accesibles. Los servidores pueden ser muchos en un mismo sistema informático, pero luego cada uno atiende a una base específica de hipertexto. Los clientes son procesos de navegador, por lo general pero no necesariamente en un sistema informático diferente. La información pasada es de dos clases: nodos y enlaces.

Bloques de construcción

Los navegadores y los servidores son los dos bloques de construcción que se facilitarán.

Un navegador

es un programa de aplicación nativo que se ejecuta en la máquina del cliente:

  • realiza la presentación de un nodo de hipertexto utilizando el hardware y entorno de software del cliente. Por ejemplo, un navegador para Macintosh utilizará la interfaz y “look-and-feel” de Macintosh
  • realiza el recorrido de enlaces. Por ejemplo, cuando se utiliza un Macintosh para navegar por CernVM FIND será el navegador de Macintosh el que recuerde qué enlaces han sido visitados, cómo volver etc, mientras que el servidor CernVM sólo responde dando los nodos al navegador, y no tiene idea de qué nodos ha visitado el usuario.
  • realiza la negociación de formatos en diálogo con el servidor. Por ejemplo, un navegador de una pantalla tipo VT100 siempre negociará texto ASCII, mientras que a un navegador para Macintosh puede instruirsele para aceptar PostScript o SGML.

Un servidor

es un programa de aplicación nativo que se ejecuta en la máquina del servidor: –

  • gestiona una red de nodos en ese equipo
  • negocia el formato de presentación con el navegador, realizando conversiones sobre la marcha (o en caché) desde su formato interno, si es necesario..

Operación

Un enlace se especifica como una cadena ASCII de la que el navegador puede deducir un método adecuado de contacto con un servidor adecuado. Cuando un enlace es seguido, el navegador dirige la solicitud de nodo al servidor. El servidor por lo tanto no necesita saber nada acerca de otros servidores o webs de terceros y puede ser simple.

Una vez que el servidor encuentra el nodo solicitado, sabrá a partir de los contenidos del nodo el formato del nodo (por ejemplo, ASCII puro, marcado, almacenamiento de procesador de y qué procesador de texto, etc.). El servidor inicia entonces una negociación con el navegador en la que decidirán qué formato es aceptable para la visualización en la pantalla del usuario. Esta negociación se basa únicamente en programas de conversión y formatos existentes: no está en el ámbito de aplicación de W3 escribir nuevos convertidores. El último recurso en la negociación es la transferencia binaria del contenido del nodo a un archivo en el espacio de archivos del usuario. Negociar el formato de presentación es una característica especial de W3.

Fases del proyecto

Contando con los recursos mencionados a continuación, prevemos que las dos primeras fases del proyecto alcancen la consecución de los objetivos siguientes:

Fase 1 – Objetivo: 3 meses desde el inicio

  • Navegadores en terminales tontos para abrir la posibilidad de lectura a cualquier persona con un ordenador o PC. (?)
  • Navegadores sobre terminales VT220 para dar posibilidad de de lectura cursor a una gran proporción de lectores; un navegador en el Macintosh en el estilo de Macintosh; un navegador en el NeXT con las herramientas de NeXTStep, como prototipo rápido de ideas en el diseño de interfaz humana y las técnicas de navegación.
  • Un servidor que proporcione acceso al mundo de Usenet y artículos de ‘news’ de Internet. *
  • Un servidor que proporcione acceso a toda la información actualmente almacenada en CernVM y mencionada en el índice FIND. Esto debería incluir las notas de la biblioteca de programas del CERN , las pantallas de ayuda de CMS del CERN e IBM, los ‘writeups’ de CERN/NC, los artículos de la Community Newsletter, etc
  • Un servidor que puede ser instalado en cualquier máquina para permitir el acceso a los archivos en esa máquina como hipertexto.
  • La capacidad de los usuarios de escribir, usando etiquetas de marcado, su propio hipertexto para archivos de ayuda. Ninguna otra capacidad de edición de hipertexto se llevará a cabo necesariamente en esta fase.
  • Un proceso de puerta de enlace para permitir el acceso entre los mundos de protocolos Internet y DECnet.
  • Un conjunto de directrices sobre cómo administrar un servidor de hipertexto.
  • Un análisis de requisitos de las necesidads de acceso a la información para un experimento de gran tamaño.

En esta etapa, la capacidad de lectura es universal, pero la creación de nuevo material se basa en los sistemas existentes. Por ejemplo, la introducción de nuevo material para el índice FIND, o la publicación de los artículos de noticias utilizará los mismos procedimientos que en la actualidad. ganamos experiencia útil en la representación de los datos existentes en forma de hipertexto y en los tipos de ayudas a la navegación y de otros tipos apreciados por los usuarios en física de altas energías.

Fase 2 – Objetivo: 6 meses desde el inicio

En esta importante fase, nuestro objetivo es permitir

  • La creación de nuevos enlaces y nuevos materiales por parte de los lectores. En este punto, la autoría se convierte en universal.
  • Un navegador de pantalla completa sobre VM/XA para aquellos que utilizan CernVM y otros sitios de VM HEP;
  • Un navegador/editor X-window, que dé las capcidades sofisticadas originalmente prototipadas bajo NeXTStep a la amplia comunidad basada en X. (Imaginamos usar OSF/Motif, según disponibilidad)
  • La notificación automática a un lector cuando nuevo material de interés para él o ella esté disponible. Esto es esencial para los artículos de noticias, pero es muy útil para cualquier otro material.

La capacidad de los lectores de crear enlaces permite la anotación por parte de los usuarios de datos existentes, permitiendoles agregar por sí mismos sus documentos a listas (listas de correo, índices, etc.) Debería ser posible para los usuarios enlazar documentos públicos a (por ejemplo) informes de errores, correcciones de errores y otros documentos de cuya existencia los propios autores podrían no haber sido conscientes. Esto permite la autoría colaborativa. Proporciona un lugar en que poner cualquier tipo de información de tal manera que más adelante se pueda encontrar. Facilitar cambiar la web es, pues, la clave para evitar la información obsoleta. Uno debe ser capaz de rastrear la fuente de información, para eludir y después reparar defectos en la web.

Recursos necesarios

Personas

Las funciones siguientes son identificables. No se corresponden necesariamente con personas biyectivamente. Las siglas entre paréntesis corresponden a personas que ya han expresado su interés en el proyecto y que tienen las habilidades necesarias, pero no indican ningún compromiso hasta ahora por su parte o por parte de sus directores. Por supuesto, estamos muy abiertos a la participación de otros.

  • Arquitecto de sistemas. Coordinar el desarrollo, definición de protocolo, etc; garantiza la integridad del diseño. (50% TBL?) Estudio de mercado y planificador de producto. Discutir el proyecto y sus características con usuarios reales y potenciales en todas las divisiones. Elaborar criterios para la selección de características y prioridades de desarrollo. (RC 50%?)
  • Hiper-bibliotecario. Supervisa la red de datos disponibles, asegurando su coherencia. Interactuar con los usuarios, entrenar usuarios. Administra los índices y sistemas de palabras clave. Administra los datos proporcionados por el propio proyecto. (% KG 100?)
  • Ingeniero de software: NeXTStep. Proporcionar interfaz de navegador/editor bajo las herramientas de interfaz humana NeXTStep. Experimentar con ayudas a la navegación. Mantener un conocimiento del funcionamiento del mundo NeXTStep. (TBL 50%?)
  • Ingeniero de software: X-windows e interfaz humana. Proporcionar interfaz humana para navegador/editor en OSF/Motif. Responder a las sugerencias de los usuario para mejoras de facilidad de uso y opciones. Crear una interfaz humana práctica y estética. Mantener un conocimiento del funcionamiento del mundo X. (75%RJ?)
  • Ingeniero de software: sistemas mainframe de IBM. Proporcionar servicio de navegación en CernVM VM y otros sitios HEP. Mantener el software de servidor FIND. Mantener un conocimiento del funcionamiento del mundo Rexx, CMS. (75% BP?)
  • Ingeniero de software: Macintosh. Proporcionar navegador/editor para Mac, utilizando las herramientas apropiadas (Thnk-C, HyperCard, etc?). (50%RC?)
  • Ingeniero de Software: C. Ayudar a escribir código para navegadores para terminales tontos o vt100 y código portable de navegador para compartir entre nevegadores. Esto podría incluir un proyecto técnico de estudiante. (NP 100%? + O. Tro?)

Prevemos que puede surgir demanda de navegadores en sistemas específicos, de personalizaciones específicas y de servidores para poner a disposición en línea datos existentes específicos en hipertexto. Tenemos la intención de apoyar con entusiasmo tales ampliaciones de la web. Por supuesto, puede que tengamos que recurrir a más mano de obra y conocimientos técnicos específicos en estos casos.

2. Otros recursos

Necesitaremos el siguiente apoyo en forma de equipos y servicios.

  • Creemos que es importante para quienes participan en el proyecto poder trabajar cerca de los demás e intercambiar mientras se trabajo. Un área de oficina o grupo cercano de las oficinas es necesario, por tanto.
  • Cada persona que trabaje en el proyecto requerirá de una estación de trabajo moderna. La experiencia demuestra que una estación de trabajo tiene que ser actualizada de alguna forma cada dos años aproximadamente a medida que el software se vuelve más pesado y los requisitos de memoria y velocidad aumentan. Esto, y el costo de las actualizaciones de software, prevemos como gastos razonables. Nos imaginamos usando una variedad de tipos de estaciones de trabajo mientras creamos el software para una variedad de máquinas, pero por lo demás, NeXTs. Para las máquinas VMS, nos gustaría contar con el apoyo de un VAXcluster existente para reducir al mínimo los gastos generales de gestión propia de nuestros propios sistemas.
  • Nos gustaría poder adquirir licencias de software comercial de hipertexto que creamos que pueda ser incorporado en el proyecto y ahorrar tiempo de desarrollo y mantenimiento, o cuando creamos que podamos ganar experiencia valiosa con su uso. (Ejemplos aproximados son: Guide license: CHF750; KMS full author license CHF1500, evaluation kit CHF100. FrameMaker: CHF2000)
  • Necesitaremos apoyo informático. En particular, se requerirá un el soporte de un sistema de aerchivos NFS con copias de seguridad fiables (o equivalente) para nuestro entorno de desarrollo. También necesitaremos ejecutar software ‘daemon’ en máquinas con conectividad Internet, DECnet y BITNET, lo que necesitará una cierta cantidad de apoyo de operadores y administradores de sistemas.

Caminos futuros

  • Las dos fases anteriores darán un conjunto de herramientas extremadamente útiles. Aunque los resultados parecen ambiciosos, los pasos individuales necesarios se encuentran dentro de nuestras capacidades con la tecnología disponible. La evolución futura que contribuiría a mejorar el proyecto podría incluir:
  • Programas ‘daemon’ que corran durante la noche y construyan índices de la información disponible.
  • Un servidor que proporcione automáticamente una vista hipertexto de una base de datos (por ejemplo, Oracle) a partir de una descripción de la base de datos y una descripción (por ejemplo, en SQL) de la vista necesaria.
  • Trabajar sobre la creación de redes eficientes en zonas extensas y la negociación con otros sitios de información en línea compatible.
  • Un estudio serio del uso y abuso del sistema y la sociología de su uso en el CERN.

Referencias

[1]
T. Berners-Lee/CN, HyperText and CERN. Una explicación del hipertexto, y por qué es importante para el CERN. Un documento de referencia que explica las ideas detrás de este proyecto.
[2]
T. Berners-Lee/CN, Hypertext Design Issues. Una mirada detallada a los modelos y capacidades de hipertexto, con una discusión de decisiones que deben tomarse en la elección o la implementación de un sistema.
[3]
Otra documentación sobre el proyecto se almacena en forma de hipertexto, y que conduce a otras referencias.

2 opiniones en “WorldWideWeb: Proposal for a HyperText Project”

Deja un comentario