?
Blog
02/12/2020    

Mi tortuosa historia de aprender desarrollo web.

¡Hola! Con la noticia de que ya está disponible en El Camino de Java Volumen 2, la nueva sección "Cómo crear tu propio servidor web". Estoy seguro que este proyecto marcará tu carrera, porque aprenderás lo que no se ha visto en otros cursos: Saber cómo funciona el protocolo HTTP desde sus cimentos, y es que aunque no lo creas, la gran mayoría de los programadores de aplicaciones web en realidad solo aprendieron a usar las librerías y herramientas que tienen disponibles, pero ¡no tienen idea de cómo funcionan las cosas!.

¿Sabes cómo aprendí a crear páginas web? Seguramente pensarás que con un libro, o buscando en Google, pero en esa época Google no existía, y ¿sobre comprar un libro? pues la realidad es que esos libros aún no estaban escritos.

El primer navegador que usé se llamaba NSCA Mosaic, y para mí fue toda una revolución porque lo que yo conocía era solamente conectarme a un servidor FTP y descargar tutoriales o programas de ejemplo para aprender. Poco después surgió la empresa Netscape, con un mejor navegador, y su modelo de negocio era: El navegador es gratis, pero si quieres poner en línea un servidor, éste tiene un costo. Nunca supe cuánto costaba un servidor web, pero era un precio que no estaba al alcance de cualquiera.

¿Qué era lo que veíamos en un navegador en aquel entonces? Bueno pues de entrada, los buscadores que conoces no existían, y lo que estaba de moda eran los "portales" que no eran mas que una página web que te mostraba de todo, como una revista, algo muy parecido a lo que hoy día se muestra en la página de yahoo, pero solo podías encontrar lo que esas páginas te mostraban. Si realmente le querías sacar provecho a Internet, lo que hacías era comprar un libro que si la memoria no me falla, se llamaba "The Yahoo yellow pages" o algo así, y era un libro lleno de anuncios, con cientos de páginas web disponibles ordenadas por temas; imagínate, tenías que pagar para encontrar páginas web.

Hice mi servicio social en la misma escuela donde estaba estudiando, y yo no sé cómo, pero de alguna manera lograron instalar un servidor Web, pero lo único que hacía era responder con los archivos HTML que estaban guardados en un directorio, pero lo que queríamos hacer era publicar una página web que reportara información meteorológica a tiempo real, y lo que se me ocurrió fue crear un programa en C++, que lo que hacía era leer un archivo de texto que contenía código HTML con unas marcas especiales que se me ocurrieron, y cuando el programa encontraba esas marcas, las reemplazaba por las mediciones, y el resultado lo guardaba en el directorio que el servidor web leía. El resultado fue una página con datos ¡que cambiaban cada hora!, además, le pusimos una textura de fondo en forma de nubes, y entonces la tabla con los datos se veía con un fondo azulado con nubes, y todos estaban alucinados de ver algo ¡tan sorprendente! jajaja, de hecho la página fue premiada, y la noticia salió en los periódicos.

Supongo que para quienes compraban la licencia del servidor web, tenían acceso a toda la documentación, pero nosotros los mortales, nos teníamos que conformar con las sobras que nos llegaban. Tampoco había nadie que te ofreciera soporte, así que se trataba de desarrollar a prueba y error. Una alternativa era: Encontrabas un sitio web que hacía lo que querías y entonces seleccionabas "Ver código fuente" en el navegador. Lo que ahora me da risa es que en su momento había muchas cosas que no podía hacer con HTML, como justificar texto, o poner dos imágenes en la misma línea, y lo que siempre pensé es que no sabía cómo, pero la realidad es que eso simplemente no estaba soportado.

Para mí, haber hecho esa página web fue algo simple, porque no era mas que un programa que sustituía texto, pero lo que nunca me imaginé es que en realidad era el mismo principio del funcionamiento de los servidores web actuales.

¿Código abierto? Y eso con qué se come...

Después en mi primer empleo, comencé a trabajar con el modelo cliente-servidor porque era lo usual en el mundo empresarial, y por un tiempo me olvidé del desarrollo web.

Me da risa cuando me pongo a pensar en lo siguiente: Si tan solo en aquel entonces se me hubiera iluminado la cabeza, y me hubiera puesto a leer el RFC que explicaba el funcionamiento del protocolo HTTP, con ese pequeño empujón hubiera tenido todo lo necesario para crear mi propio servidor web, en una época donde este software era caro y escaso, y a lo mejor ¡me hubiera hecho de una pequeña fortuna!. Seguramente pensarás: "Sí como no, seguramente hubieras superado a Microsoft o a Netscape"; por supuesto que no, pero en ese pequeño espacio de tiempo, de menos, me hubiera hecho famoso con mi servidor, o por lo menos, una de esas grandes compañías me hubiera volteado a ver y me podría haber contratado, porque eso es algo muy común: "Para qué lo tengo de competencia cuando podría estar trabajando para mí", pero como siempre, las cadenas de la desidia, la flojera, el "yo no puedo", o el típico "me espero a que salga la siguiente versión", que al final, la única diferencia entre quienes tienen éxito y la gente promedio, es que el exitoso se atrevió a hacer lo que nadie más estaba haciendo, y que esto último se te quede de lección: ¿Tienes una idea que a nadie se le ha ocurrido?, ¿Tienes en mente un proyecto, algoritmo o lo que sea? Pues ¿Qué esperas para ponerlo en marcha?.

Y si me permites un consejo: Termina El Camino de Java lo antes posible, porque nunca sabes qué oportunidades se te van a presentar en los siguientes meses, y más vale que cuando se te presenten estés preparado, ¿no lo crees?

Sinceramente,

Raúl Cosío

Siguiente    Anterior
Regresar