12 agosto, 2013 2 min to read

Perl un lenguaje Moderno y eficiente para la Web

Category : Aplicaciones Web

Perl se ha reinventado mucho más de lo que creemos. Entre los desarrolladores Web y programadores en general existe la errónea idea de que Perl es un lenguaje de script obsoleto que usábamos en el pasado para hacer unos CGI que servían para salir del paso y poco más.
La verdad es que Perl adolece de una característica muy importante en la actualidad y es: “personal capacitado” pero definitivamente no es un lenguaje obsoleto o ineficiente, es incluso funcional para mucho más que solo scripts de administración en entornos Unix Like.
Hoy quiero hablarles de Plack Handbook, un manual escrito directamente por el desarrollador de Plack para facilitarte el manejo de las nuevas interfaces de Perl en esto del desarrollo Web.
En principio hablamos de ejecutar Perl como CGI, lo cual es muy simple y no requiere mayor preparación, el detalle es que CGI tiene a ser lento, a crear muchos hilos y consumir recursos en exceso, además terminas por no enterarte de algunas llamadas, la persistencia se hace complicada, tu código debe ser más grande solo para manejar eventos y errores, el manejo de cache es confuso y tienes que hacerlo a mano, en fin, no parece escalar, estos y otros factores fueron la razón por la que muchos desarrolladores se pasaron a PHP, luego llegó la hora de HTTP::Engine  que es genial, tiene interfaces para controlar un servidor simple, hacerlo a través de FastCGI, CGI e incluso a través de mod_perl (standalone si lo quieres hacer básico).
Pero la realidad es, ¿quien quiere todo eso? nos gusta lo fácil, no queremos complicarnos, declarar tantas cosas en nuestros scripts, no solo eso, conocer y controlar tanto puede ser divertido, pero luego cerca de las 4 de la tarde quieres nada de eso en tu vida, así que eso no escala y no es usable (si, sí es usable) porque aquí juega el factor humano: los gustos, Perl hace la vida fácil la mayor parte del tiempo, cuando las cosas se complican, no quieres que se compliquen mientras estás usando Perl porque corres el riesgo de que luego no lo entienda nadie.
Para modernizar el entorno entró a jugar a eso del 2009 entra a jugar un chico de nombre Tatsuhiko Miyagawa con un concepto traído desde Ruby y separa Http::Engine en una especificación que viene a ser PSGI y las herramientas para usarla que son todos los módulos Plack::*some* y claro, una implementación básica (como referencia) que viene a ser Plack::Server. Dicho de otra forma: Perl para la Web ahora funciona con PSGI.
Si quieres saber más puedes comprar el libro desde http://handbook.plackperl.org/ o desde la Web de amazon http://www.amazon.com/gp/product/B009ZKN98Q/ ahora que si no tienes tarjeta de crédito y/o no estás interesado en comprarlo pero si en leerlo, Tatsuhiko ha sido un chico bueno y ha decidido compartir el libro desde su repositorio en github.
Si quieres bajarlo “gratis” tendrás que trabajar un poco, pero aquí te doy los pasos como ayuda, primero descarga el .ZIP del repositorio. Encontrarás dos carpetas, EN y JA, obviamente el libro en inglés está en la carpeta EN, ingresa desde consola y catea los archivos (cat *>../file.md) luego es exportar el .md a html (con TextMate por ejemplo). Por último usa kindlegen para convertir el html en mobi. 😉