Archive for febrero 2009

Ruby, suficientemente rápido

Leyendo una entrevista sobre Ruby y herramientas de visualización me he acordado de algo que me está pasando y que se resume en una parte de la entrevista.

So if execution time isn’t important, why Ruby then? Why not use Java, C or Erlang? I think there are two main reasons. The first is Ruby’s ability to easily access and transform data and Ruby’s ability to integrate with almost anything.

En el trabajo llevo varias semanas trabajando en una herramienta que ayuda al departamento comercial, se trata de una serie de proramas situados entre facturación y ventas que les ayuda a analizar costes y realizar una oferta comercial lo más ajustada. Para ello los distintos programas trabajan con varias decenas de listas de coste, cada uno con miles de precios, para intentar unificarlas y generar una lista de venta que tiene unas centenas de precios.

Siento ser tan vago en detalles, pero diré que se manipulan listas de códigos telefónicos, destinos y precios/costes. Para ello se necesitan transformar muchas filas almacenadas en bases de datos mediante árboles y algunos otros algoritmos más o menos complejos. Todo ello empecé a programarlo en Ruby, que es un lenguaje que permite un prototipado muy rápido, llevandome una grata sorpresa ya que los cálculos se hacían en segundos.

Al ver que los tiempoes eran muy manejables, cree una aplicación Rails, metí las librerías en lib/ y doté de un frontend vía web a la aplicación. Por ahora ha seguido creciendo, y en total el proceso que realizan mensualmente lleva unos 10 minutos. En un principio había pensado reescribir la aplicación, o las librerías, en C# para ganar velocidad, pero ¿realmente merece la pena el esfuerzo? Como mucho, podría ganar 10 minutos cada mes, suponiendo que el proceso pasara a ser instantáneo al reescribirse en un lenguaje compilado.

Más de una vez todos nosotros nos habremos encontrado con la situación de que se necesite alguna herramienta interna, y puesto que los requisitos de ese tipo de aplicaciones suele ser muy diferente, en la mayoría de ocasiones nos vale tener una aplicación con calidad de prototipo que podamos desarrollar rápidamente utilizando un lenguaje/plataforma que quizás no sea la ideal, pero es lo suficientemente rápido y nos permite agilizar la creación de nuestro pequeño monstruo.

Supongo que da para otro post hablar de esos pequeños monstruitos que van creciendo y acaban convirtiendose en algo que no es lo que estaba pensado ¡cuánto echaremos de menos no haberlo planteado y desarrollado de otra forma en esos momentos!

Las URL que mueren

He leido que uno de los blogs de Weblogs S.L. va a cerrar, se trata de Vive la ciudad y parte del anuncio menciona como dejará de existir el sitio:

Una URL cualquiera

Una URL cualquiera

Este post es el último que publicaremos en esta plataforma, y estará online hasta el 30 de enero de 2009, fecha en la que apagaremos la luz, y Vive la ciudad | Madrid dejará de estar accesible.

Lo primero que pensé al ver esa nota fue que se producirá otro caso de enlace roto. Y se que es muy frecuente que haya sitios que cambien las direcciones o incluso que desaparezcan, a veces es inevitable, pero en otras muchas otras ocasiones creo que habría que intentar evitarlos. Creo que es lógico pensar que a medida que los contenidos generados dependan más de cómo puedan ser rentabilizados, más ocurrirá que habrá direcciones que dejan de funcionar y la Interweb se irá transformando en algo más temporal y efímero.

Si ya hace 10 años en un artículo de Nielsen sobre enlaces rotos se indicaba el grave problema que suponía ¿qué podemos esperar hoy en día? Cada vez que veo un elblockbusteractual-themovie.com pienso cuánto tiempo existirá esa dirección ¿merecerá la pena enlazarlo sabiendo que dentro de uno, dos, quizás tres años ese enlace dejará de funcionar?.

Proyectos como The Internet Archive y su Wayback Machine pueden ayudar a que algunos enlaces puedan rescatarse para poder comprender el contexto, pero no siempre es así y no estoy seguro de que sea la solución. Creo que sería mejor intentar mantener alojado el contenido, en la mayoría de casos no serían necesarios muchos recursos si se planea un poco, y hay muchas posibilidades para solucionar los problemas que se producen si se reestructura la web (¡mod_rewrite al rescate!), así que me parece bastante pecaminoso dejar que esas ocurran.

Una parte de la web 2.0 parece que eran las URL amigables, ¿quizás haya que esperar a la web 3.0 para que además sean permanente? ¿o sólo sirven para técnicas SEO y aumentar la rentabilidad? Espero que algún día podamos enlazar una dirección con la tranquilidad de que pasados los años seguirá allí, por ahora me temo que no es así.

La crisis y las felicitaciones del 2009

He visto bastantes posts y declaraciones que transmiten la idea de que lo ideal es felicitar el año 2010, que este 2009 en el que estamos entrando (ya estaremos del todo cuando pasen los Reyes Magos) no tiene salvación y que mejor concentrarnos en el 2010, y la verdad es que me dejan un muy mal sabor de boca esas opiniones.

Entiendo que no son serias al 100% pero creo que le dan más importancia de la que se debe a algo como una crisis financiera: efectivamente para todos esos que se quedan en paro sin recursos la cosa es una putada, pero lo sería aunque resultara que estuvieramos en el mejor momento de la historia económica. Además, un momento como este nos hará ser más ingeniosos y no creo que sea bueno dejar de disfrutar y pasar un mal año por algo que no nos toca de pleno. Si las cosas se han complicado, pues habrá que hacer más cena con los amigos y jugar a juegos en vez de tanto restaurante y cine. A lo mejor hay que usar menos coche y comprar otras cosas, pero estoy seguro de que todos podemos intentar disfrutar de todo esto.

Y a los que realmente estén pasandolo mal ¡mucho ánimo! Y que tengan un feliz 2009.