OK, entonces parafraseé. La cita completa:
Internet se hizo tan bien que la mayoría de la gente lo considera un recurso natural como el Océano Pacífico, en lugar de algo creado por el hombre. ¿Cuándo fue la última vez que una tecnología con una escala como esa estuvo tan libre de errores? La Web, en comparación, es una broma. La web fue hecha por aficionados. - Alan Kay.
Estoy tratando de entender la historia de Internet y la web, y esta declaración es difícil de entender. He leído en otra parte que Internet ahora se usa para cosas muy diferentes a las que fue diseñado, y quizás eso tenga en cuenta.
¿Qué hace que Internet esté tan bien hecho y qué hace que la web sea tan amateur?
(Por supuesto, Alan Kay es falible, y nadie aquí es Alan Kay, así que no podemos saber con precisión por qué dijo eso, pero ¿cuáles son algunas explicaciones posibles?)
* Ver también la entrevista original *.
fuente
Respuestas:
Realmente elabora ese mismo tema en la segunda página de la entrevista. No se trata de las deficiencias técnicas del protocolo que lamenta, es la visión de los diseñadores de navegadores web. Como él lo dijo:
Da algunos ejemplos específicos, como la página de Wikipedia en un lenguaje de programación que no puede ejecutar ningún programa de ejemplo en ese idioma, y la falta de edición WYSIWYG, a pesar de que estaba disponible en aplicaciones de escritorio mucho antes de que existiera la web. 23 años después, y apenas estamos logrando comenzar a solucionar las limitaciones impuestas por las decisiones de diseño del navegador web original.
fuente
POST
es completamente inadecuado para ese propósito.En cierto sentido tenía razón. Las versiones originales (preespecificadas) de HTML, HTTP y URL fueron diseñadas por aficionados (no personas estándar). Y hay aspectos de los diseños respectivos ... y las especificaciones (originales) posteriores ... que (por decirlo cortésmente) no son tan buenas como podrían haber sido. Por ejemplo:
HTML no separó la estructura / contenido de la presentación, y ha requerido una serie de revisiones ... y especificaciones adicionales (CSS) ... para remediar esto.
HTTP 1.0 era muy ineficiente y requería una nueva conexión TCP para cada "documento" obtenido.
La especificación de URL era en realidad un intento de aplicar ingeniería inversa a una especificación para algo que era esencialmente ad hoc e inconsistente. Todavía hay agujeros en el área de definición de esquemas, y las reglas de sintaxis para las URL (por ejemplo, lo que se debe escapar donde) son barrocas.
Y si hubiera habido más estándares "profesionales" involucrados anteriormente, muchos de estos "pasos en falso" podrían no haberse realizado . (Por supuesto, nunca lo sabremos).
Sin embargo, la web ha tenido un éxito magnífico a pesar de estas cosas. Y todo el crédito debe ir a las personas que lo hicieron posible. Si eran o no "aficionados" en ese momento, definitivamente no lo son ahora.
fuente
Parece ser debido a un desacuerdo fundamental entre Alan Kay y las personas (principalmente Tim Berners-Lee) que diseñaron la web, sobre cómo debería funcionar dicho sistema.
El navegador ideal, según Kay, realmente debería ser un mini sistema operativo con una sola tarea: ejecutar de forma segura el código descargado de Internet. En el diseño de Kays, la web no consta de páginas, sino de "objetos" de recuadro negro que pueden contener cualquier tipo de código (siempre que sea seguro). Es por eso que dice que un navegador no debería tener características. Un navegador no necesitaría un analizador HTML o un motor de representación, ya que todo esto debería ser implementado por los objetos. Esta es también la razón por la que no parece gustarle los estándares. Si el navegador no representa el contenido, sino el propio objeto, no hay necesidad de un estándar.
Obviamente, esto sería inmensamente más poderoso que la web actual, donde las páginas están limitadas por los errores y las limitaciones de los navegadores y estándares web actuales.
La filosofía de Tim Berners-Lee, el inventor de la web, es casi exactamente lo contrario. El documento " El principio del menor poder " describe los principios de diseño subyacentes a HTTP, HTML, URL, etc. Señala el beneficio de las limitaciones. Por ejemplo, tener un lenguaje declarativo bien especificado como HTML es más fácil de analizar, lo que hace posible los motores de búsqueda como Google. La indexación no es realmente posible en la red de Kays de objetos de caja negra completos. Entonces, la falta de restricciones en los objetos los hace mucho menos útiles. ¿Qué tan valiosos son los objetos poderosos si no puedes encontrarlos? Y sin una noción estándar de enlaces y URLS, el algoritmo de clasificación de páginas de Google no podría funcionar. Y tampoco lo harían los marcadores para ese asunto.
Otro problema es la producción de contenido. Ahora tenemos varias herramientas, pero incluso desde el principio, cualquier aficionado podría aprender a crear una página html en el bloc de notas. Esto es lo que inició la web y la hizo propagarse como un incendio forestal. Considere si la única forma en que podría hacer una página web requería que comenzara a programar su propio motor de renderizado. La barrera de entrada sería inmensa.
Los applets de Java y Silverlight se parecen en cierta medida a la visión de Kays. Ambos sistemas son mucho más flexibles y potentes que la web (ya que podría implementar un navegador en ellos), pero sufren los problemas descritos anteriormente. Y ambas tecnologías están básicamente muertas en el agua.
Tim Berners-Lee era un informático que tenía experiencia con redes y sistemas de información antes de inventar la web. Parece que Kay no entiende las ideas detrás de la web y, por lo tanto, cree que los diseñadores son aficionados sin conocimiento de la historia de la informática. Pero Tim Berners-Lee ciertamente no era un aficionado.
fuente
Leí esto ya que Kay no está lo suficientemente familiarizada con los protocolos de nivel inferior para asumir que son significativamente más limpios que la web de nivel superior. La era "diseñada por profesionales" de la que habla todavía tenía problemas importantes con la seguridad (la suplantación de identidad todavía es demasiado fácil), la confiabilidad y el rendimiento, por lo que todavía se está trabajando para ajustar todo para enlaces de alta velocidad o alta pérdida de paquetes. Retroceda un poco más y los nombres de host se resolvieron buscando un archivo de texto que la gente tuvo que distribuir.
Ambos sistemas son sistemas heterogéneos complejos y tienen importantes desafíos de compatibilidad con versiones anteriores cada vez que desee reparar una verruga. Es fácil detectar problemas, es difícil solucionarlos y, como muestra la variedad de competidores fallidos, es sorprendentemente difícil diseñar algo equivalente sin pasar por la misma curva de aprendizaje.
Como un biólogo podría decirle a un proponente de diseño inteligente, si observa cualquiera de los dos y ve un diseño genial, no está mirando lo suficientemente de cerca.
fuente
Ah, sí, le he hecho esta pregunta a Alan varias veces, por ejemplo, cuando estaba en Potsdam y en la lista de correo de fonc . Aquí hay una cita más reciente de la lista que para mí resumió bastante bien:
Según tengo entendido, sus diversas respuestas es que piensa que los navegadores web no deberían mostrar documentos (HTML), posiblemente enriquecidos, sino simplemente ejecutar programas. Personalmente, creo que está equivocado en esto, aunque puedo ver de dónde viene. Ya teníamos este tipo de cosas con ActiveX, Applets Java, Flash y ahora aplicaciones JavaScript "ricas", y la experiencia en general no fue buena, y mi opinión personal es que incluso ahora la mayoría de los sitios pesados de JavaScript están un paso atrás de un buen HTML sitios, no una parada adelante.
Teóricamente, por supuesto, todo tiene sentido: tratar de agregar interactividad poco a poco a lo que básicamente es el lenguaje de descripción de documentos es al revés y es similar a agregar más y más epiciclos al sistema Ptolemaico, mientras que la respuesta "correcta" es descubrir eso (rico ) text es un caso especial de un programa y, por lo tanto, solo debemos enviar programas.
Sin embargo, dado el éxito práctico de la WWW, creo que es aconsejable modificar nuestras teorías en lugar de criticar a la WWW por tener el descaro de no conformarse con nuestras teorías.
fuente
Realmente no se puede decir que Internet o la Web fue inventada por aficionados o profesionales porque esos campos son absolutamente nuevos; todas las personas eran aficionados a los protocolos de Internet antes de ser inventados, por lo que desde el punto de vista de los inventores de Internet también eran aficionados.
Si fuéramos realmente críticos, Internet no era tan bueno después de todo: se necesita IPv6. Y no se trata solo del espacio de direcciones; IPv6 tiene un nuevo encabezado con menos y diferentes campos.
Otra gran diferencia de Internet y la Web es cómo son percibidos por el programador; un programador rara vez interactúa con Internet. Desde su punto de vista, en IP tiene direcciones y en TCP tiene un puerto adicional y tiene la seguridad de que los paquetes se envían. Eso es todo ... Mientras que con Web, el programador tiene una interacción más intensa: métodos HTTP, encabezados, HTML, URL, etc. Es normal ver los límites de algo con muchas más posibilidades que en algo con casi ninguna posibilidad. Con esto no quiero decir que Internet sea simple:
En cuanto a la grandeza de estas dos tecnologías, Internet es muy apreciado porque es una tecnología muy escalable y la idea de capas era muy buena; Básicamente, en los niveles inferiores, puede usar cualquier tecnología que desee (WLAN, Ethernet, Token Ring, etc.) y tener IP como protocolo intermedio estándar sobre el que se colocan TCP y UDP y por encima del cual básicamente puede agregar qué protocolo de aplicación desea.
La grandeza de la Web está estrictamente relacionada con la grandeza de Internet porque la Web depende en gran medida de Internet, con la pila TCP / IP debajo. Pero yo diría que Internet también depende de la Web; Internet existía 20 años antes que la Web y era algo anónimo, pero 20 años después de la Web, Internet es omnipresente y todo esto gracias a la Web.
fuente
Creo que estaba señalando algo menos oscuro: TBL no sabía nada sobre el trabajo de hipertexto que se había llevado a cabo a partir de los años 60, por lo que este trabajo no informó el diseño de la web. A menudo habla de la informática como una cultura pop, donde los practicantes no conocen su historia y continuamente "reinventan la rueda pinchada".
fuente
Internet ha funcionado notablemente bien como un prototipo del concepto de cambio de paquetes descubierto por Baran, Pouzin y sus contemporáneos. Contrariamente a la opinión popular, esto no significa que IPv4 tal como se transmite es la arquitectura de protocolo perfecta, o que IPv6 es el camino a seguir. John Day, quien estuvo profundamente involucrado en el desarrollo de ARPANET e IP, explica esto en su libro de 2008, Patrones de arquitectura de red .
En cuanto a la Web, en palabras de Richard Gabriel, "Peor es mejor". La cuenta de Tim Berners-Lee, Weaving The Web , es decente. Cómo nació The Web de Gillies & Cailliau es más denso y menos legible, pero tiene muchos detalles y algunos enlaces fascinantes con otros eventos de computación personal en ese momento. No creo que Kay le dé suficiente crédito.
fuente
No sé, alguna parte de Internet no web tiene algunas verrugas horribles. El correo electrónico era anterior a la web, y es parte de Internet, y el estándar es muy abierto, y requiere muchos hacks para abordar (pero no resolver) el problema del spam.
fuente
"Aficionado" no se refiere a la falta de habilidades de programación, sino a la falta de imaginación.
El problema subyacente con la web de Tim Berners-Lee es que nunca fue construida para desarrolladores . (Esto está en marcado contraste con la web de Alan Kay).
La web de Tim se creó para los no codificadores que publicarían en la web directamente al pinchar con archivos que contengan sus diarios / artículos intercalados con lenguaje de marcado HT: es como WordPerfect de 1980 y MS-Word, excepto que usarían " <b> < / b> "en lugar de hacer clic en el Bicono, y lo guardaría como un formato abierto" .htm "en lugar de un formato propietario" .doc ". La invención aquí es la etiqueta " <a> ", que permite que estas revistas / artículos estáticos se interconecten globalmente.
Y eso es todo, esa es toda la visión web de Tim: su web es una mera autopista global de artículos estáticos interconectados . Tal vez si tuviera el dinero, puede comprar un editor como Dreamweaver, Nexus , Publisher, Citydesk ( ? ), Etc., que lo ayudaría a generar todas esas etiquetas " <b> </b> " haciendo clic en el Bicono.
... Y vemos cómo su visión no funcionó como estaba previsto. De hecho, desde el principio, hay poderosas banderas rojas que el mundo había querido mucho más de lo que ofrece la visión de Tim:
Bandera roja 1: El rápido aumento del "CGI inteligente" (PHP).
Bandera roja 2: El rápido aumento del "HTML inteligente" (Javascript).
En estos días, tenemos aún más banderas rojas como el surgimiento de Chrome-OS-is-the-browser-is-the-OS ( exactamente lo que Alan Kay había pensado que el navegador fuera por cierto) y WASM / navegador-extensiones.
En contraste con la web de Tim, la web de Alan Kay, por otro lado, es una web dinámica construida para programadores: una autopista global de programas dinámicos interconectados. Los no codificadores que necesitan una "página" simplemente publicarán una utilizando un programa en la web . (Y el programa en sí obviamente fue escrito por programadores, no por expertos en HTML).
Este es exactamente el statu quo de la web de Tim en la década de 2000, pero si tuviéramos la web de Alan, se habría hecho en la década de 1990: en lugar de que el mundo tenga "wordpress y friendster" solo en la década de 2000, lo haremos tenerlos justo cuando la web comenzó en la década de 1990.
De manera similar, en lugar de tener programas como Steam, Visual Studio, Warcraft, VM Ware en la web en la década de 2040, los tendremos ahora mismo en la década de 2010. (El retraso de varias décadas se debe a que estos programas ya se han creado para OS-is-not-the-browser, lo que reduce el incentivo económico para que se reconstruyan en OS-is-the-browser-is-the -OS.)
Entonces, esto es lo que la gente quiere decir cuando dicen que Tim Berners-Lee había matado a la verdadera Web dinámica al empujar su "web estática en mal estado" al mundo. ¿Has oído hablar de los términos "web 2.0", "web 3.0"? Hubieran sido simplemente llamados "La Web" si tuviéramos la red de Alan en lugar de la red de Tim. Pero la web de Tim necesita una revisión constante porque es muy estática .
Obviamente, no se pierde toda esperanza, ya que la Web se puede remodelar de la forma en que los proveedores de navegadores lo definan. Pero el punto es que todas estas cosas "innovadoras" que están "inventando" en la web ahora son cosas que ya se han inventado hace mucho tiempo. Ya podríamos tenerlo todo hoy, no mañana.
fuente