Número Anterior | Buscar en TidBITS | TidBITS Home Page | TidBITS-es | Siguiente Número

TidBITS Logo

TidBITS-es#584/18-Jun-01

¿Pero qué narices es WebObjects y de dónde viene? Continúa leyendo para ver la primera entrega del artículo en dos partes de Jonathan Rentzsch en el que explica qué es WebObjects, de dónde viene, y cómo es en comparación con otros modos de creación de aplicaciones web. También esta semana, Adam está de malhumor por un artículo que habla del "grave dominio del mercado" que ocurre en Internet, y tratamos los lanzamientos de IPNetSentry 1.1.1, Rewind 1.2, BBEdit Lite 6.1.1 e icWord 1.2.

Temas:

Copyright 2001 TidBITS Electronic Publishing. Derechos reservados.
Información: <info@tidbits.com> Comentarios: <editors@tidbits.com>


Este número de TidBITS está patrocinado en parte por:


El equipo de TidBITS-es ha traducido este número de manera voluntaria y desinteresada, y está compuesto por:

Coordinadores del equipo

Si tú también quieres formar parte del equipo de traductores de TidBITS-es, ponte en contacto con el coordinador.


MailBITS/18-Jun-01

Rewind salta a la 1.2 -- Power On Software ha actualizado Rewind, su utilidad de 100 US$ que permite volver a encarnaciones previas de los archivos o del sistema en el caso de un cuelgue o error (ver "Tendencias en Macworld San Francisco 2001: Utilidades más interesantes" en TidBITS-es-564). Entre otras soluciones a problemas, Rewind 1.2 añade la opción de limitar el tamaño del archivo de Rewind (el catálogo de cambios hechos a los archivos a medida que se trabaja en el Mac), mejora la estabilidad con aquellos programas que manejan la memoria de manera inusual, y ahora trata correctamente las imágenes de disco de Virtual PC 4. Aunque la actualización es gratuita, se debe introducir el número de serie para descargar la versión completa de Rewind 1.2, incluido el manual (un archivo de 7 MB). Rewind funciona con las versiones de Mac OS 8.1 a 9.1 y requiere al menos un 10 por ciento del espacio del disco para operar. [JLC]

<http://www.poweronsoftware.com/products/rewind/>
<TidBiTS-es-564.html#lnk5>
<http://db.tidbits.com/getbits.acgi?tbart=06280>

icWord 1.2 ahora reconoce el formato de doble byte -- La actualización 1.2, lanzada recientemente, de icWord, una utilidad de Panergy para ver e imprimir documentos de Microsoft Word puede leer ahora archivos creados con la versión oriental, incluyendo chino, japonés, coreano y otros lenguajes de doble byte. Otras características incorporadas incluyen la posibilidad de escuchar sonido, de mostrar notas de pie de página al final del documento, y de abrir archivos de texto creados en formato Unicode. Panergy también ha mejorado la compatibilidad con los gráficos propios de Word, la visualización de tablas y el espaciado entre párrafos. La actualización es gratuita y supone una descarga de 2 MB. [ACE]

<http://www.icword.com/>
<http://db.tidbits.com/getbits.acgi?tbart=06074>

IPNetSentry 1.1.1 localiza a los intrusos -- Sustainable Softworks ha lanzado IPNetSentry 1.1.1, una actualización menor de su software de cortafuegos personal (consulta "Tendencias en Macworld San Francisco 2001: Cortafuegos personales" en TidBITS-es-564). Esta versión incorpora una ventana de registro histórico donde se pueden ver los últimos 32 K del histórico general, y la posibilidad de saltarse la ventana inicial manteniendo pulsada la tecla Comando mientras se arranca el programa IPNetSentry Companion. Y más importante, cuando IPNetSentry detecta una intrusión, permite al usuario averiguar la ruta [trace route] de la dirección IP del intruso, ayudando a identificar el origen de un supuesto ataque. El análisis de la ruta se lleva acabo, de hecho, a través de un producto independiente de Sustainable Softworks, IPNetMonitor. Aunque la actualización de IPNetSentry es gratuita, IPNetMonitor cuesta $30, y también se incluye en varios paquetes con descuento en el precio. IPNetSentry 1.1.1 supone una descarga de 1,2 MB y requiere Mac OS 7.6.1 y Open Transport 1.1 o posterior funcionando sobre un Mac con PowerPC. [ACE]

<http://www.sustworks.com/site/prod_ipns_overview.html>
<http://www.sustworks.com/site/prod_ipmonitor.html>
<http://www.sustworks.com/site/bundles.htm>
<TidBiTS-es-564.html>
<http://db.tidbits.com/getbits.acgi?tbart=06281>

BBEdit Lite 6.1.1 corrige fallos -- Bare Bones Software ha lanzado una actualización de BBEdit Lite 6.1.1, el editor de textos gratuito de esta compañía, destinada a corregir errores. Ahora, BBEdit 6.1.1 recuerda los cambios realizados en los ajustes de tipos, responde a las opciones de búsqueda en las búsquedas multi-archivo, incorpora avance dinámico de pantalla cuando se utiliza en Mac OS 8.1 y anteriores, mejora el comportamiento del portapapeles en Mac OS X, y corrige un error relacionado con el comando Hard Wrap, que colgaba el sistema. BBEdit Lite 6.1.1 supone una descarga de 4,3 MB y requiere un Mac con PowerPC. [ACE]

<http://www.barebones.com/products/bbedit_lite.html>
<http://db.tidbits.com/getbits.acgi?tbart=06448>


Debemos mantener el control de la horizontal...

por Adam C. Engst <ace@tidbits.com>

Un informe reciente de Jupiter Media Metrix anunciaba, de forma provocativa, que en Marzo de 2001 tan sólo cuatro compañías controlaban algo más del 50 por ciento de todos los minutos gastados por usuarios en Internet en los EEUU (tanto en casa como en el trabajo). Eso rebaja las 11 compañías que controlaban ese mismo 50 por ciento en Marzo de 1999, hace dos años. Aún más provocativo es el dato de que el número de empresas que controlan el 60 por ciento de los minutos gastados era de sólo 14 en Marzo de 2001, contra las 110 que lo manejaban en Marzo de 1999.

<http://www.jup.com/company/pressrelease.jsp?doc=pr010604>

Las cuatro compañías en cabeza son AOL Time Warner (32 por ciento), Microsoft (7,5 por ciento), Yahoo (7,2 por ciento) y Napster (3,6 por ciento). Hablando desde fuera de estos monolitos corporativos, encuentro preocupante este informe debido a los supuestos que implica, lo que me da a entender justo lo contrario a las conclusiones del informe: que es posible dominar el mercado de Internet.

Supuesto 1: todos los minutos de un usuario son iguales -- Jupiter Media Metrix no explica ninguna metodología en el resumen del informe, pero en una nota de pie de página da una pista de hasta qué punto estas cifras no son comparables. El porcentaje de AOL Time Warner parece tremendamente alto, lo cual es en parte debido al hecho de que dos tercios del total provienen de servicios de comunicaciones exclusivos de la compañía como el correo electrónico y la mensajería instantánea. Quitando esos servicios, AOL Time Warner sigue en primer lugar, pero cae hasta el 10,7 por ciento. Ninguna de las demás compañías (salvo Juno, de segunda fila, con su servicio propio de correo gratuito), ejerce el control necesario sobre los servicios de comunicaciones para que éstos se incluyan en los "minutos de usuario" calculados. Tampoco está claro si el correo de Internet estándar o los servicios de mensajería instantánea contratados se incluyen al calcular el tiempo de conexión. Yo sé que empleo mucho más tiempo con Eudora que con cualquier otra aplicación de Internet.

De hecho, si empiezas a pensar en qué es un "minuto de usuario", uno se pregunta por qué siquiera incluir a Napster. Si combinamos el gran tamaño de los ficheros MP3 con la gran proporción de la comunidad de Internet que aún utiliza módem, podemos ver que todas esas lentas descargas otorgan a Napster un gran número de minutos de usuario. Incluir los servicios de comunicación de AOL Time Warner en el cálculo tiene cierto sentido, ya que el uso de un software exclusivo asegura que puedan mostrar publicidad, o afectar de otra forma la experiencia del usuario durante todo el tiempo de uso. La mayor parte del uso de Napster, por otro lado, sucede con casi toda seguridad en segundo plano, sin que el usuario lo vea, e ignorándolo hasta que se completan las descargas.

Supuesto 2: los usuarios generan minutos sin darse cuenta -- TidBITS existe primordialmente para ayudar a que la información fluya desde y hacia las personas que forman la comunidad Macintosh en Internet. Eso implica una constante interacción con nuestros lectores, que son gente inteligente, interesada y que ha escogido emplear su tiempo leyendo y contestando a nuestros artículos. Es un constante toma y daca, y aunque nuestro enfoque como publicación sin duda requeriría modificaciones si tuviéramos millones de lectores, aún así me horrorizo cada vez que leo frases como "controlar los minutos de usuario" o "capitalizar al usuario".

Lo que implica el informe, al parecer, es que los usuarios no tienen opción en lo que hacen, que están obligados a utilizar los servicios de los cuatro grandes. Yo utilizo Yahoo bastante, pero es porque me gustan los servicios y el diseño de Yahoo, no porque Yahoo me tenga, de alguna forma, encerrado. De hecho mi impresión es que los usuarios de Internet son increíblemente volubles, y que cualquiera de los cuatro en cabeza podría caer de la clasificación en poco tiempo. Napster ya está sufriendo dicho bajón ahora, al haber perdido su primer asalto en la batalla legal con la industria discográfica, reduciendo la cantidad (y disponibilidad) de material popular previamente accesible desde su servicio. Además, otros servicios están llenando rápidamente el vacío que Napster ha dejado.

<http://db.tidbits.com/getbits.acgi?tbart=06346>

Para cualquiera que esté en el negocio mediático de Internet, yo redefiniría todo el asunto respecto a la necesidad que hay de obtener y conservar la fidelidad de los usuarios conectados. Existen, de hecho, maneras de persuadirles para que usen los servicios de una sola compañía, ya sea el interfaz exclusivo de AOL o el de MSN, que Microsoft ha ido embutiendo en el escritorio de Windows, pero en definitiva se trata de ofrecer servicios de calidad que tengan una utilidad real para los usuarios.

Supuesto 3: El resto de Internet no es interesante -- Qué pasa con el 40 por ciento de minutos que no están "controlados" por estas 14 compañías? Parece que eso no merece siquiera una mención en el informe, pero aún así, apostaría a que si preguntas a la gente qué es lo que recuerda de un rato de conexión, seguramente se trataría de un mensaje del correo electrónico personal o una página web o servicio inusual, y no de ese soso portal que ofrece el pronóstico meteorológico del día. Lo que distingue a Internet de otros vehículos para los medios de masas es su increíble profundidad. Fijáos en lo superficiales que son la televisión, la radio, las películas e incluso los libros, las revistas y el software. En estos otros campos, hay relativamente pocos productores, y las barreras para dicha producción siguen siendo grandes. Teóricamente, una situación así permitiría dotar de calidad al mercado, pero tal y como hemos visto, en vez de eso, el mercado sólo exige un ínfimo denominador común.

Con esto no quiero decir que los contenidos de tipo independiente sean buenos, porque la mayoría no lo son. La ley de Sturgeon afirma que el 90 por ciento de la ciencia-ficción es porquería, pero eso es porque el 90 por ciento de todo también lo es. De modo que si el 90 por ciento de los espectáculos televisivos son basura (una estimación optimista), el restante 10 por ciento nos lleva a una cifra pequeña. Pero cuando se aplica la misma lógica a Internet, tenemos que aunque sólo un 10 por ciento de los sitios y servicios Web sean aceptables, aún así acabas teniendo, entre la maraña de basura, un enorme número de sitios que valen la pena.

Esta es una diferencia importante, y un giro interesante en la tradicional discusión sobre la calidad frente a la cantidad. La brutal cantidad de sitios en Internet casi asegura que no puede desaparecer la calidad, como ocurre a menudo en situaciones en las que los obstáculos para entrar son simplemente infranqueables.

Supuesto 4: los monocultivos de información son buenos -- ¿Hay alguna lección que aprender del informe de Jupiter Media Metrix? Si, pero no la que esperaban sus autores. Ellos describen su informe como la evidencia de que, en Internet, ciertamente es posible un serio dominio del mercado, a pesar del número infinito de "canales", como curiosamente los llaman. Es cierto, pero eso no es particularmente relevante, por la simple razón de que muchos de los servicios más comúnmente utilizados en Internet han sido reproducidos muchas veces, con pequeñas variaciones. Titulares de prensa, información bursátil, buscadores de teléfonos, cartografía, correo electrónico de tipo Web, motores de búsqueda, comparativas de precios de productos - cualquier cosa que digas, ya la están haciendo muchas empresas distintas hoy en día. De modo que, cuando contemplas las páginas de Yahoo!, MSN, AOL y Netscape, todas ellas están ofreciendo básicamente el mismo contenido y la misma funcionalidad, y el que una persona utilice uno en concreto se debe normalmente a preferencias personales o a algún factor externo. El hecho de que otras compañías que ofrecían servicios similares hayan desaparecido o hayan sido compradas no es nada sorprendente ni, francamente, algo a tener en cuenta.

La variedad es el aspecto más importante de Internet, y los tipos de contenido y de servicios de las grandes compañías son el equivalente informativo a la economía de los monocultivos. Los monocultivos biológicos consiguen un alto nivel de producción, para paliar la desconfianza hacia desastres naturales y daños ecológicos, y yo diría que sucede algo similar en el mundo de los datos, la información, el conocimiento y el pensamiento. Un paralelismo de tipo biológico citado comúnmente es el del virus informático moderno, que prospera en el cuasi- monocultivo de Microsoft Windows y de Outlook, su cliente de correo electrónico. Otro paralelismo es el concepto de "meme", una idea contagiosa que se auto-reproduce, y que también ha tenido una buena aceptación.

<http://www.memecentral.com/>

Aplicad dicha analogía a la información y al pensamiento en general, y creo que queda claro que Internet, y de una manera más específica, la parte de Internet que no se genera por un monocultivo corporativo, es una parte esencial de nuestra evolución intelectual. ¿Por qué? pues porque la evolución requiere materias primas con los que trabajar. Ese es el motivo de que la reproducción sexual se haya probado tan exitosa en el aspecto evolutivo - el inmenso número de combinaciones posibles de ADN asegura el cambio y la experimentación constantes. La Información que Internet ha hecho accesible, equivale al ADN de las nuevas ideas, sin las que no podríamos avanzar y sin la cuales, posiblemente nos infligiríamos un sensible daño como especie. ¡Así que contribuye al futuro intelectual de la raza humana y aventúrate por los lugares menos visitados de Internet!


WebObjects: WO soy yo, Parte 1

por Jonathan "Wolf" Rentzsch <tidbits@redshed.net>

AppleScript fue el secreto mejor guardado de Apple. Rompió una barrera tecnológica que aun dista de alcanzarse en otras plataformas, pero fue ignorado durante muchísimo tiempo, excepto por un puñado de entusiastas. La situación ha mejorado en los últimos años, e incluso ha salido en algún discurso inaugural de Steve Jobs (aunque la compatibilidad completa de AppleScript con Mac OS X aún no está conseguida). De una u otra forma, en la actualidad hay más gente que conoce AppleScript, pero ahora Apple tiene otro secreto muy bien guardado: WebObjects.

En los peores momentos de NeXT, WebObjects fue el producto que mantuvo a flote a la compañía. Y no era barato: una licencia sin límite de conexiones costaba 50.000 US$. Pero incluso con ese precio, WebObjects era competitivo frente a otros productos similares.

En la Conferencia Mundial de desarrolladores (WWDC) del año pasado, Jobs dejó caer una bomba: un precio nuevo y baratísimo de 700 US$ para la aplicación. Aunque WebObjects no es un producto que llame la atención de los usuarios domésticos, como los muy publicitados iTools o iDVD, la bajada de precio causó un enorme interés. Y en la WWDC de este año, Apple presentó WebObjects 5, escrito completamente en Java, que promete ser especialmente interesante para los clientes que utilicen Mac OS X o el Mac OS X Server.

<http://www.apple.com/webobjects/>
<http://db.tidbits.com/getbits.acgi?tbart=05950>
<http://db.tidbits.com/getbits.acgi?tbart=06440>

Sin embargo, antes de que nos refiramos a WebObjects en particular, será útil comprender el tipo de software en donde se encuadra WebObjects: los servidores de aplicaciones. Este artículo proporciona una breve historia de los servidores de aplicaciones y da una visión general de las diferentes arquitecturas de software utilizadas por WebObjects y sus competidores. En la próxima entrega nos centraremos en WebObjects, incluyendo sus tres herramientas principales y sus tres principales puntos débiles.

Los servidores de aplicaciones -- WebObjects fue el servidor de aplicaciones original - un entorno para desarrollar y distribuir aplicaciones pensado para su acceso desde un navegador Web.

En muchos aspectos, los servidores de aplicaciones son una vuelta a los días de las supercomputadoras. En aquel entonces una única y potente máquina lo hacía todo, mientras que múltiples terminales baratos estaban conectados al ordenador central. Los terminales eran computadoras muy simples - hacían poco más que presentar en pantalla el texto recibido y transmitir las ordenes tecleadas al computador central.

La revolución de la computación personal dio a los usuarios individuales la capacidad de ejecutar sus propios programas, liberándolos de la tiranía del sacerdocio de los sistemas de información corporativos. Pero ocurrió un hecho extraño en la marcha de la revolución: la gente quiso compartir sus programas y la información que generaban.

La posibilidad de compartir archivos en forma individual y centralizada permitió que la gente pudiera compartir información, pero compartir programas era problemático, porque los programas desarrollados para una plataforma no podían ejecutarse en otra. Además, los programas tenían que comprarse, instalarse y mantenerse para todos y cada uno de los ordenadores, elevando drásticamente los costos y la complejidad. También tenían que ser lo suficientemente especializados como para gestionar diferentes tipos de datos; por ejemplo, cierta información compartida sólo debía accederse por medio de programas que aseguraran la validez, como las bases de datos de clientes.

Entonces surgió la Web. El mensaje era HTML y el medio era HTTP. Cualquier ordenador podía ir a leer documentos de cualquier otro ordenador, reduciendo el problema relacionado con las plataformas. Pero lo más interesante fue la posibilidad que la Web brindó a los usuarios para que pudieran configurar programas y accedieran a ellos utilizando el soporte rudimentario del HTML para introducir datos.

En poco tiempo, los Macs del departamento gráfico y los PCs de contabilidad pudieron acceder a los mismos formularios de vacaciones alojados en el servidor Unix de recursos humanos. Y lo que es más, la capacidad para comunicarse entre plataformas significó que el mantenimiento y la instalación de los programas podían llevarse a cabo en el servidor central de la compañía. Cuando se solucionaba un fallo o se agregaba una función, sólo se necesitaba actualizar el servidor - todos los clientes podían aprovechar la actualización, al instante y de manera automática, cuando volvieran a usar el programa.

Entonces, toda la atención fue capturada por los "clientes pequeños" - ordenadores de bajo costo que ejecutaban programas de poco peso como un navegador o un intérprete de Java. ¿Por qué habría que gastar recursos para abastecer a muchos ordenadores personales en red, cuando éstos podrían gestionarse centralmente, como se hacía con el ordenador central (mainframe) del sistema anterior? Pero al quitar peso de los clientes había que agregar peso a los servidores y éstos no sólo sostenían toda la lógica del programa sino también toda la información de los usuarios. Todos los usuarios de una compañía (¡o del mundo!) podían acceder una y otra vez a los servidores, todos juntos y simultáneamente, de día y de noche.

Los programadores se vieron enfrentados con plazos ajustados para el desarrollo de software, con programas de una complejidad asombrosa, y con el requisito de que el servidor casi nunca debía fallar. NeXT estaba en una posición privilegiada para crear y vender las herramientas y los servicios que solucionaban todos estos problemas.

Desde el principio se supo que NeXT poseía una de las herramientas de desarrollo más sofisticadas del momento. Estas herramientas, totalmente orientadas a objetos, permitieron el rápido desarrollo de complejas aplicaciones. Además, el software de NeXT se ejecutaba en Unix y en Windows NT - sistemas operativos de extraordinaria robustez que podían suministrar los requerimientos de operatividad que necesitaban los servidores en situaciones extremas. NeXT aprovechó todo esto para crear WebObjects.

Las tres partes fundamentales -- Un servidor de aplicaciones cuenta con tres partes: la interfaz, la lógica del programa y el acceso a la información.

<TidBITS-es-580.html>
<http://db.tidbits.com/getbits.acgi?tbser=1197>

WebObjects ya no está sólo en el mercado de los servidores de aplicaciones. Hay mucha competencia, y las diferencias están, básicamente, en cómo separan las tras partes fundamentales mencionadas arriba. Resulta didáctico estudiar los distintos modelos: puede verse una evolución clara. Lo que más me impresiona es que todos ellos se dirigen lentamente hacia un esquema común: el diseño mediante WebObjects.

Sigamos esta evolución, un tanto artificial, de los servidores de aplicaciones. Para cada uno de ellos, os trazaré un poco la historia y hablaré de algunos de los diversos paquetes que existen. Algunos son gratuitos, de código abierto. Otros cuestan muchos miles de dólares por cada procesador. Aunque estos datos sean muy por encima, generalicen demasiado, y pierdan vigencia rápidamente, os darán sin duda una noción aproximada.

La Edad de Piedra: primero la lógica, lo demás todo junto -- El diseño de la Edad de Piedra se caracteriza por concentrarse en la lógica de la generación de páginas dinámicas. Prácticamente todos los lenguajes de programación pueden usarse para aceptar peticiones por Internet y generar documentos HTML basados en los resultados de la consulta (C, Perl, AppleScript y Java son algunos de lenguajes más usados).

Estas aplicaciones para Internet acceden normalmente a una fuente de datos para responder a la consulta entrante. Algunos rastrean manualmente un archivo en busca de información, otros generan una consulta SQL a partir de la consulta del cliente y luego la lanzan contra una base de datos. Si una aplicación web utiliza como base el cálculo, puede que entonces no necesite acceder a una fuente de datos.

Al llamarlo "de la Edad de Piedra", no pretendo menospreciar este tipo de diseño, donde la lógica es primordial [Logic First]. Sólo intento indicar la edad que tiene (fue el primer esquema) y la poca complejidad que encierra (en absoluto). El diseño de la edad de piedra es liviano, y todo lo liviano tiene ventajas. Los programadores se sienten como pez en el agua, y la obtención de una página dinámica es rápida y sencilla, pues todo se encuentra en el mismo sitio. Este tipo de diseño podría ser el más indicado en aplicaciones cargadas de cálculo.

Sin embargo, el diseño de la Edad de Piedra no deja de tener sus inconvenientes. El primer problema es que el acceso a los datos se mezcla con la parte lógica. Para ayudar a tratar esta dependencia tan directa con las bases de datos, se crearon algunas tecnologías. Los programadores de C y de C++ sobre Windows (y hasta cierto punto sobre Mac, aunque mucho menos) utilizan la tecnología ODBC [Open Database Connectivity, o conectividad de bases de datos abierta], de Microsoft, los programadores de Java usan la JDBC [Java Database Connectivity, o conectividad de bases de datos con Java], mientras que el Perl tiene su propia interfaz para bases de datos, conocida como DBI [Database Interface, o simplemente eso, interfaz para bases de datos].

Es importante que se entienda que estas tecnologías sólo proporcionan un medio para encontrar y conectarse a una base de datos. Cuando llegue el momento de introducir y extraer los datos de la base, seguirás teniendo que escribir en SQL, y tendrás que introducir eso en la lógica de tu programa. Como resulta que SQL hace referencia explícita a los nombres de tabla y de columna, tuya es la responsabilidad de mantener las consultas internas sincronizadas con tu base da datos.

Otra desventaja es que el diseño basado en el esquema "lógica más interfaz más datos", en esencia, vincula una página a un puñado de código. Si necesitas compartir la misma lógica entre varias páginas, no te queda más remedio que pensar una estrategia que permita compartir el código y mantenerlo actualizado.

La última desventaja del diseño de la Edad de Piedra es que la interfaz está incorporada a la lógica de la aplicación. Esto significa que sólo el programador puede modificar la apariencia de una página, o cómo se presenta la información.

Ejemplos de herramientas de la Edad de Piedra son AppleScript, C/C++, Java, JavaScript, Perl, Python y Visual Basic, esta última exclusiva de Windows. Se puede decir que dichas herramientas poseen una orientación lógica porque todas ellas son lenguajes de programación. Son excelentes para representar decisiones y operaciones lógicas, pero flaquean cuando hay que acceder a datos y generar interfaces. Otros modelos posteriores utilizan algunos de esos lenguajes para los aspectos lógicos de las aplicaciones web.

La Edad de Bronce: primero la interfaz, lo demás todo junto -- Tras elaborar unos centenares de páginas dinámicas, los programadores se encontraron en una curiosa situación. Muy a menudo, sus páginas dinámicas consistían en una fina capa de lógica y acceso a datos en un bloque de interfaz en HTML. Además, desde los demás departamentos de la empresa y, en particular, el de diseño gráfico, los importunaban sin cesar pidiéndoles que introdujeran cambios en la apariencia.

Los programadores, que son a la vez perezosos e inteligentes, se limitaron a invertir la relación de diseño de la Edad de Piedra. En lugar de incorporar la interfaz a la lógica, incorporaron la lógica a la interfaz. El resultado eran páginas compuestas principalmente por HTML, con etiquetas personalizadas que contenían los bloques de lógica. Con un suspiro de alivio, los programadores podían ya entregar sus archivos a los mejores diseñadores Web (los que trabajan en el nivel del HTML textual), indicándoles que evitaran los bloques lógicos, y así los diseñadores podían alterar la apariencia sin tener que recurrir a ellos.

Algunos programadores llegaron incluso a crear editores HTML de tipo WYSIWYG, que conocían (y ocultaban) los bloques lógicos, de manera que incluso los diseñadores web no profesionales podían manipular la apariencia de las páginas.

Como el diseño de la Edad de Piedra, el de la Edad de Bronce tiene las ventajas de que, por una parte, empezar resulta fácil y, por otra, todo está en un solo sitio. Pero aunque el diseño de la edad de bronce resolvió hasta cierto punto la última desventaja mencionada de la Edad de Piedra, no afectó a las dos primeras: el acceso a los datos sigue incorporado (ya sea en la interfaz o en la lógica de la página) y se sigue compartiendo código entre páginas.

Ejemplos de herramientas de la Edad de Bronce son Active Server Pages (ASP), Java Server Pages (JSP), Lasso y PHP. Todas ellas incorporan la lógica de programación en el HTML. ASP utiliza Visual Basic, JSP utiliza Java, Lasso posee su propio lenguaje de etiquetas patentado, y PHP también usa un lenguaje propio.

Con un poco de malabarismo todas estas soluciones pueden ser transferidas al modelo de la Era Industrial, pero no es así como fueron diseñadas originalmente. Aunque tanto JSP como PHP funcionan bien en Mac OS X, Lasso se adapta al Macintosh como ninguna otra, con la capacidad de funcionar en Mac OS Classic y ofreciendo conexión directa con FileMaker Pro y 4D. Futuras versiones de Lasso serán también compatibles con Mac OS X.

La Era Industrial: primero la interfaz, pero separada -- A medida que crecían los proyectos, la duplicación de código propia del diseño de la Edad de Piedra se iba convirtiendo en una pesadilla.

Cuando se descubría un error de programación o se añadía un elemento, los programadores debían repasar todos los archivos e introducir en ellos las modificaciones. Tenían que practicar un seguimiento sistemático de todas las copias y variantes existentes, o confiar en que se acordarían de actualizarlas todas llegado el momento. La calidad del software se resintió con rapidez, porque todo era un caos de páginas de código ligeramente distintas.

El diseño de la Era Industrial solucionó el problema de la duplicación de código sacando la lógica fuera de la interfaz. Sin embargo, el acceso a los datos está aún incluido dentro de la lógica, lo que lleva a problemas de sincronización muy similares al del modelo de la Edad del Bronce, en el que la lógica se incluía en el mismo paquete.

Ejemplos de herramientas de la Era Industrial incluyen Cold Fusion, WebLogic, WebSphere y herramientas de la Edad del Bronce adaptadas. Por ejemplo, con algún trabajo añadido y una disciplina consistente, se puede usar el modelo de la Era Industrial para proyectos basados en Active Server Pages, Java Server Pages y PHP. Lasso también soporta JavaScript desde el lado del servidor, además de su propio lenguaje basado en etiquetas.

Por desgracia, aparte de Lasso, ninguna de estas herramientas se ofrece de forma explícita para el Mac. Cold Fusion coloca la mayor parte de su lógica en distintos archivos, en el lado del servidor, que contienen un lenguaje propio parecido al JavaScript llamado CFScript. WebLogic y WebSphere son variantes de una especificación de contenedores conocida como "Enterprise Java Beans" (EJB), y permiten incorporar una lógica basada en Java y el almacenamiento de objetos a las páginas Java del servidor. A pesar de que WebLogic y WebSphere no impiden que se coloque la lógica directamente en las páginas, la mayoría de la gente es lo suficientemente lista como para no hacer de esto un hábito.

La Era de la Información: todo equilibrado y por separado -- La Era de la Información separa todos los elementos. Interfaz, lógica y acceso a datos están todos por separado e interactúan a través de canales arquitectónicos explícitos.

Puedes pasar un grupo de páginas a una empresa externa de diseño de páginas web sin entregarles la lógica de tu empresa. Los geniecillos locos de la sala de atrás pueden darle vueltas al código sin tener que preocuparse sobre la coordinación del color de las páginas web, o qué marca de base de datos utiliza la empresa. Los chicos de las bases de datos pueden mover y renombrar bases de datos, tablas y columnas sin temor a cargarse la aplicación web.

O un desarrollador puede trabajar a una velocidad increíble.

La Era de la Información no está exenta de fallos. Todo está esparcido por diferentes sitios. A menudo no resulta inmediatamente obvio cómo, al modificar un aspecto, se cambia otro, y la curva de aprendizaje tiende a ser mucho mas pronunciada.

Los únicos dos ejemplos de herramientas de la Era de la Información que tengo en mente son la versión adaptada de Lasso y WebObjects. Dado que Lasso te oculta el SQL y permite separar la lógica de tu aplicación - basada en JavaScript - de su interfaz, encaja en el modelo de la Era de la Información. Es el único producto que abarca desde la Edad de Bronce hasta la Era de la Información. Eso es interesante - puedes empezar usando el modelo de la Edad de Bronce, relativamente fácil de entender, y abrirte camino hasta el modelo de la Era de la Información si es necesario. Ciertamente tirarás un montón de trabajo mientras creces, pero es una opción que simplemente no es posible con las otras herramientas.

A pesar de que WebObjects tiene una curva de aprendizaje mucho más pronunciada que Lasso, y no funciona en el Mac OS Classic, sobrepasa a Lasso en términos de madurez y poder. En la siguiente parte de este artículo, me centraré más en lo que WebObjects aporta exactamente.

[Jonathan "Wolf" Rentzsch es la personificación de Red Shed Software, y organiza una reunión mensual de programadores de Mac en el noroeste de Illinois.]


Las publicaciones no comerciales y sin ánimo de lucro tienen permiso para reproducir los artículos, siempre y cuando se de completa noticia del autor y la publicación originales. Para la reproducción en otro tipo de publicaciones, sírvanse en contactar con nosotros previamente. No se garantiza la exactitud del contenido de los artículos. Avertencia al lector!. Los nombres de cada publicación, producto o compañía pueden ser marcas registradas de sus respectivas compañías. TidBITS ISSN 1090-7017.

Número Anterior | Buscar en TidBITS | TidBITS Home Page | TidBITS-es | Siguiente Número