Reinventando la rueda

 

Interesante lo que comenta Rodrigo en su blog y que me hace reflexionar o mejor dicho recordar reflexiones pasadas que me he hecho en alguna ocasión y que aprovechando la entrada de Rodrigo, me he visto animado a hacerlas aquí públicas.

Me remontaré a hace ya algunos años (unos 6 para más señas), cuando el jefe del área instó a todos los empleados del departamento a pensar en migrar todas las aplicaciones de escritorio a la Web. De forma más personal y terminada la reunión, le comenté que porqué se había tomado esa decisión (lo siento, pero soy de esas moscas cojoneras a la que le gusta dejar hacer. sí, pero a la que le gusta también saber muchas veces el porqué de las cosas) y me comentó que la decisión estaba motivada en que todas las aplicaciones Windows podrían funcionar como aplicaciones Web de igual forma, que eran mucho mejor, que se actualizaban en un único sitio, que todo el mundo tenía navegador Web, que eran más potentes y cómodas para el usuario, y que las grandes empresas como en la que estaba trabajando yo en aquel momento, estaban haciendo lo mismo.

En aquel instante recuerdo perfectamente aún hoy que le dije que las razones lógicas de implantación y algunos de los argumentos que me daba no era motivo de discusión por la evidente coincidencia de reflexiones, pero solo le apunté algo mucho más importante desde mi punto de vista en aquel momento, desde el punto de vista técnico, ese punto de vista que en muchas ocasiones no cuenta, sobre todo para las ocasiones estratégicas. Ese punto de vista personal era que en mi opinión, cualquier aplicación Windows no tiene porqué ser migrada a Web porque sí, por esa moda irrefrenable o por las pajas mentales de determinados "gurús". En otras palabras, hay aplicaciones que siendo aplicaciones Web, serán mucho más complejas y dañinas que las aplicaciones Windows que en muchas ocasiones se tienen funcionando desde hace años en una determinada empresa. El caso es que aquel jefe que tuve, entre masters de dirección de empresa que estaba haciendo y entre que se reunía con gente y amigos de altas esferas (reuniones que dan para hablar largo y tendido en otra entrada, y a las que tuve la oportunidad de asistir en una ocasión fuera de España) para hablar de temas tecnológicos, económicos y de actualidad, pensaba que estaba tocado por la varita de la verdad.

¿Cuántas veces se ha tomado una decisión de altas esferas como digo yo sin haber consultado antes a los técnicos, sin haber hecho grupos de trabajo o sin haber hecho un brainstorming (soy un enamorado de la lluvia de ideas, lo siento)?... ¿decenas, cientos, miles,...?. Normalmente, las personas que han llegado a ser jefes, pensaban antes de tener ese puesto de responsabilidad que todo iría mejor si sus superiores se comunicaran en multitud de ocasiones con ellos para solicitarles sus puntos de vista técnicos, personales o de experiencia, por muy jefe que fuera. Cuando esos técnicos llegan a ser jefes o responsables, pierden muchas veces aquella bonita visión que tenían y pasan ahora a creerse que saben de todo, que poseen mucha experiencia y que no necesitar esa ayuda técnica... esto en argot castellano se denomina la pescadilla que se muerde la cola, o mejor... dime de que presumes y te diré de que careces.

En el tema del desarrollo de aplicaciones Windows y aplicaciones Web, veo que hay en el mundo del desarrollo mucha paja mental. Mucho vende motos. Mucho vende humo. Mucho gurú y mucho charlatán que vende crecepelos.

Siempre me expreso de igual forma: ¿piensa alguien que si existiera el lenguaje, tecnología, desarrollo perfecto habría tanta diversidad?. Obviamente no, y por cierto, me alegro, porque sino, el desarrollo del Software sería por un lado aburrido con una y única verdad absoluta, y por otro lado, ya exisitiría un proceso automático que hiciera todo por nosotros y ahora mismo estaríamos dedicando nuestro tiempo a otros menesteres en lugar de al desarrollo del Software.

En el desarrollo del Software tenemos muchas posibilidades, pero hay una que siempre funciona... me refiero a las aplicaciones Windows. Sin embargo, muchas aplicaciones Windows serían más beneficiosas en un ambiente Web, y ahí es donde voy... ¿eso significa que cualquier aplicación Windows será beneficiosa en un ambiente Web?. Como ya he dejado entrever anteriormente, NO.

Y en todo esto, Rodrigo apuntaba muy bien (al menos en el sentido en el que yo he entendido su queja)... "AJAX es una mierda", y eso me recuerda a varias cosas:

¿Alguien sabe lo que es XML?... bien,... veo que hasta aquí llegamos.
Lo que no mucha gente sabe es la historia de XML, así que aprovecho para hacer un pequeño paréntesis de tipo recordatorio.
XML nació gracias a una adaptación de SGML. SGML es además, la base de HTML.
El tema es que la gente del W3C estuvieron dándole vueltas a como crear un lenguaje de etiquetas que fuera más abierto que HTML y que permitiera crear etiquetas personalizadas para trabajar con cualquier fuente de información existente. Estuvieron pensando y pensando, no sé en realidad cuanto tiempo, pero alguien dijo de repente,... "oyes, ¡en aquel cajón del olvido hay algo así como SGML!". Echaron un vistazo y vieron que GML fue creado por IBM en los setenta, y que en la década de los ochenta, la ISO lo normalizó para crear el SGML. A finales de la década de los ochenta, se creó el famoso HTML partiendo de la base del SGML, y de la base del SGML aparece también el ya famoso XML.

Sobre AJAX, ocurre otra particularidad vinculada de alguna manera con lo anterior, en base y en historia.
AJAX como tal, está unido con la necesidad de sincronizar la información, y para ello se une el famoso XML. AJAX por otro lado, representa la base de creación de aplicaciones RIA (Rich Internet Applications) que Rodrigo comentaba en su entrada. La idea es que el cliente pueda sincronizar la aplicación web con el servidor de forma transparente, evitando recargar la página web entera o actualizando o refrescando una parte de toda la aplicación web.
El tema no obstante, es que AJAX no es nuevo, al menos no la técnica. El nombre de AJAX se acuñó alrededor del año 2005, pero la técnica de sincronización o de "asincronización" (si me permitís el término, ya que es sincronización de ida y vuelta, es decir, comunicación asíncrona), es una técnica de mediados de la década de los noventa. De hecho, Sun y Microsoft han estado trabajando años atrás en estas técnicas. Cosas como los ActiveX o los Java applets ya utilizaban técnicas de este tipo y creo que a casi todo el mundo le suena.

Entonces, ¿que hay de nuevo en eso que mucha gente llama la Web 2.0?.

De nuevo de nuevo, la verdad es que muy poco o casi nada.
Mucho ruido y pocas nueces.

Lo único que realmente me parece novedoso, es que desde los años noventa a ahora, los ordenadores son más potentes, existen más sistemas intercomunicados, la informática ha entrado en muchas más empresas, las comunicaciones son más rápidas, hay más usuarios que utilizan Internet e Internet está presente en más hogares y empresas, los discos duros tienen mayores capacidades de almacenamiento y son más rápidos los procesos de lectura y escritura, y los conocimientos y los lenguajes de desarrollo han mejorado así como las técnicas de programación.

¿Que hay de nuevo entonces en lo que se ha denominado Web 2.0?, pues como decía antes, no mucho, ya que la tecnología es la misma aunque mejorada, pero quizás la novedad es que cada vez más empresas utilizan esas técnicas antiguas que casi nadie utilizaba. ¿Y a eso lo llaman Web 2.0?... ¡pues sí!.

Parece paradógico denominar Web 2.0 a "algo" que ya existía hace años. Es como si por ejemplo, todos fuéramos en triciclo existiendo la bicicleta desde hace años, y una década después, todo el mundo se maravillara por la bicibleta como el gran invento del siglo. ¿Humo tal vez?.

Claro que la Web 2.0 no solo es AJAX, hay más técnicas, pero prácticamente todas ellas, son refritos de técnicas ya existentes, mezcladas y agitadas... chás chás chás...

Creo que Rodrigo exageraba un poco (desde mi punto de vista a propósito) al decir de AJAX que era una "mierda". Yo no creo que sea una "mierda", incluso lo encuentro útil, pero aunque una bicibleta esté muy bien en lugar del triciclo, ambas nos sirven para movernos y dependiendo de las situaciones, podría interesarnos tener los dos vehículos en nuestro poder. Sin embargo, la diferencia de usar AJAX y otras técnicas de la Web 2.0 o no, no es tan grande como para que nos embadurnen a los usuarios y a los programadores con una intensa capa de marketing que trata intencionamente de confundirnos.

Y es que ni tan malo es programar aplicaciones Web en HTML, CSS o AJAX, como con Flash, Silverlight o Air.

Lo que sí está claro, es que hoy por hoy y bajo mi punto de vista, las aplicaciones Windows poseen una mayor "experiencia" (como lo llamó Microsoft al sacar Windows XP) para el usuario que las aplicaciones Web. La idoneidad de qué utilizar es lo que realmente hay que preguntar a los técnicos, y esa es la discusión que realmente debemos tener, por esa razón, AJAX es una "mierda", no sé si la intención de Rodrigo era la misma que la mía aquí, pero para mí AJAX es así porque no resuelve el problema que muchas empresas tratan de resolver... hacer que todas las aplicaciones Web sean tan poderosas o más que cualquier aplicación Windows. La diferencia entre Windows y Web se ha acortado, pero todavía falta camino por recorrer, mucho camino. Mientras tanto, yo me he comprado una mascarilla para no ahogarme con la cantidad de humo que sale en la red de redes.

Cross Posted from Jorge Serrano - MVP Visual Developer - VB
Published Monday, September 15, 2008 9:54 PM por Jorge Serrano

Comentarios

Aún no ha hecho nadie ningún comentario. Escribe alguno y sé el primero :P