Martes, 16 de Septiembre de 2008 por climens

La ignorancia

Ayer me quejé a mi banco online de que había una operación que no podía realizar a través de mi Mac, ya que solamente funcionaba con Internet Explorer y obviamente es un producto que no está disponible para mi plataforma. Esta fue su respuesta:

  • Resolución de Pantalla: 800 x 600 píxeles.
  • El acceso lo puede realizar con los navegadores Microsoft Internet Explorer versión 5.5 y Netscape Navigator 6.0.
  • La intensidad de cifrado del navegador ha de ser, como mínimo, de 128 bits.

No contentos con eso, además añaden:

Así mismo le recomendamos la instalación de las últimas versiones de dichos navegadores, para que pueda aprovechar al máximo todas las posibilidades que le ofrecemos.

Realmente algo complicado, ya que hace ya algún tiempo que Netscape dejó de estar disponible y la versión 6.0, además de ser altamente inestable, apareció en el año 2000. Sin comentarios. Por no decir que Explorer 5.5 también apareció ese año para versiones de Windows anteriores a XP, que aun no existía. Así que dudo bastante que su aplicación funcione en ninguno de esos dos navegadores.

Así que ni corto ni perezoso les indiqué que no me resultaba posible conseguir ninguno de esos navegadores en mi Mac, pero que tenía Safari y Firefox, siendo este último el segundo navegador más usado y que merecía ser considerado como tal y estar soportado ya que está disponible en multitud de plataformas a parte de Windows.

Y esta fue la respuesta:

En primer lugar agradecemos su sugerencia y damos traslado de la misma a nuestros servicios centrales para su valoración y posible implementación.

Se agradece, pero lo mejor viene a continuación:

Asimismo, le informamos de que la página ----- está optimizada para trabajar con PC.

Esto ya es lo último. ¿Cómo de optimiza una web para trabajar con un hardware completo? Podría alegar que mi Mac es un PC dado que pocas diferencias tiene con uno de estos ahora que es 100% Intel, salvo el sistema operativo. Veo que mucha gente sigue asociando PC = Windows, lo que ya sabía pero no es lo que espero de un servicio de atención de un banco online.

En resumen: hay que dar soporte a Firefox como poco en todas las aplicaciones web ya que es la única manera de asegurarse que casi cualquier persona podrá disfrutarlas en cualquier plataforma independientemente de su sexo, religión o condición social. Y no solo eso, sino que debería ser considerado como un tipo de discriminación y penalizado como tal. Además, con la aparición de Chrome es posible que el mercado de los navegadores de haga más heterogéneo con el tiempo.

Y otro consejo: que nadie ponga en 2008 que la web está optimizada para Explorer 5.5 y Netscape 6.0 porque es sencillamente mentira.

Compartir | meneame | fresqui | del.icio.us | digg | technorati
Tags: , , , | 4 comentarios

Jueves, 22 de Mayo de 2008 por climens

La impedancia de los WebForms

El otro día leí un estupendo artículo sobre la difícil mantenibilidad de los WebForms de ASP.NET. Realmente expone las frustraciones a las que nos enfrontamos muchos programadores que trabajamos con esta tecnología de Microsoft, especialmente los que venimos del mundo puramente web y raramente hemos trabajado en VB6 o WinForms.
Entre los motivos que se exponen son los siguientes:

  • Algunas cosas sencillas, patrones típicos de HTML/Javascript cuestan mucho o son casi imposibles
  • No hay ningún control sobre el HTML generado, dificultando especialmente la conciliación con el diseño original
  • Los controles reciben IDs tediosos de manejar desde Javascript, que además cambian si se cambia el control de contenedor
  • Los controles a veces no funcionan como deberían y hay que ir investigando porqué se comportan como lo hacen

Yo al final opto muchas veces por usar repeaters, simples y sencillos. Dibujan el HTML tal cual está previsto y así sale todo como está previsto, pero claro, luego vienen los problemas cuando hay que anidar unos dentro de otros: ni se me ocurre abrir el diseñador.

En esta línea, hoy han publicado una continuación hablando del modelo web, lo que conocemos de toda la vida:

  • HTTP
  • Cookies
  • (X)HTML
  • CSS
  • JavaScript

Una vez entendido es bastante sencillo. Tiene sus inconvenientes pero todo se deriva de la naturaleza del HTTP, donde cada llamada es completamente independiente de la anterior. Eso obligó a crear las cookies y desde el renacimiento del Javascript gracias a la explosión de AJAX conforman un conjunto bastante completo conocido por una infinidad de desarrolladores web alrededor del mundo.

Por lo tanto, para reducir las diferencias entre la programación Windows y la web, los programadores de Microsoft se inventaron:

  • Los postbacks
  • El ViewState
  • El ciclo de vida

Y así nacieron los WebForms. Decidieron reinventar la rueda para captar a los clásicos programadores de VB6 que empezaban en la web cuando apareció el .NET Framework y el Visual Studio .NET por allá por 2003. Pero a los que veníamos de ASP no nos ofrecieron en realidad una continuidad con el medio que conocemos y que por más que pase el tiempo no acabamos de comprender el nuevo modelo pensando que "antes era más sencillo". No es lo que yo llamo progreso.

Un ejemplo reciente: me preguntaron porque si movían opciones de un ListBox a otro por Javascript y luego hacían un Request para recoger el valor de la lista en la acción, devolvía null. Pues simplemente porque ese tipo de controles meten su valor en el ViewState para "completar" la información que HTML por sí mismo no da. Así que la solución es copiar el valor en un campo oculto y luego recogerlo, teniendo que hacer manualmente lo que ASP.NET hace automáticamente solamente porque usando los eventos de .NET, cada movimiento entre listas obliga a recargar la página (no con AJAX, pero el problema es parecido). Y con razón me dicen que antes era más sencillo. No les puedo decir que no.

Así que tengo esperanza en los frameworks MVC. He probado MonoRail y los resultados han sido muy positivos: todo bien separado, diseño tal cual había sido concebido por los creativos, testeo de cada una de las partes, etc. Ahora va haciendo camino ASP.NET MVC (y en Codeplex con código fuente y ejemplos), que no es ni mejor ni peor pero probablemente sea más fácil convencer a las altas esferas si lleva el ADN de Microsoft y no el de Open Source (es lo que tiene el vendor lock-in). En cualquier caso, sea con uno o con otro, creo que es el camino a seguir para librarse definitivamente de los WebForms y volver a jugar en terreno conocido.

Via | Working with the web model [lostechies.com]

Compartir | meneame | fresqui | del.icio.us | digg | technorati
Tags: , , , , , | 1 comentario

Miércoles, 14 de Mayo de 2008 por climens

Google anuncia Google Doctype

No suelo escribir sobre actualidad pero la ocasión lo merece, porque el anuncio me ha gustado y encuentro que es una gran iniciativa por parte de Google: Google Doctype.

La idea del gigante, llevada a cabo por Mark Pilgrim, autor de un par de libros (Dive into Python y Greasemonkey Hacks) es sencillamente un wiki sobre desarrollo web (HTML, CSS, Javascript, ...) bajo una licencia Creative Commons Attribution y permitiendo a todo el mundo con una cuenta de Google modificar, mejorar y ampliar los contenidos. Incluso se pueden descargar todos los contenidos a través de Subversion.

Desde luego es una iniciativa poderosa, en la que además se presentan código interno de Google en la documentación liberado open source y pretenden convertirse en un referente para todos los desarrolladores web. Viendo el video de Mark (un poco largo y con mucho ruido de fondo), el propósito es permitir a la gente crear webs universales, aptas para cualquier dispositivo, navegador y sistema operativo, algo que cada día es más demandado. ¿Sabías que el iPhone no tiene reproductor Flash? Pues eso deja fuera de juego a todas las webs que usan Flash. El futuro depara una cantidad ingente de clientes web heterogéneos y Google apuesta por el HTML, las CSS y el Javascript como una respuesta a esta situación.

En resumen, que hay un nuevo referente en cuanto a documentación para el desarrollo web, que viene a completar los que hay ahora, como el sitio oficial del W3C o una de mis favoritas: Quirksmode.

Via | Google Doctype: Documenting the Open Web (ajaxian.com)

Compartir | meneame | fresqui | del.icio.us | digg | technorati
Tags: , , , | Sin comentarios