Conferencias
Lo que dejó la StarTechConf
Posteado por Guillermo Horno on .Ayer finalizó la StartTechConf y realmente estuvo muy buena. Varios speakers internacionales se mezclaron con algunas charlas locales para darle una repasada al estado actual de la industria del desarrollo web.
Sin dudas, los protagonistas de los 2 días fueron HTML5 y CSS3. Se habló de cuáles son los nuevos chiches, cómo manejar la coexistencia de los navegadores antiguos y nuevos (los dolores de cabeza con IE6-8 fueron otro tema recurrente, afortunadamente varios nos pudimos desquitar con él un poco) y mucho despliegue de efectos y chucherías.
El “server-side” también tuvo su lugar, con algunas charlas de Ruby, Node.js, No-SQL, Arquitectura de servers (el caso Prey). Acá va una pasada en limpio de lo mas destacable:
Modernizr
Estuvo presente, de alguna u otra manera, en la mayoría de las charlas. Modernizr es una pequeña librería javascript que se ejecuta al cargar la página y nos permite saber que características de HTML5 y CSS3 están disponibles en el navegador de la persona que esta abriendo la página. Esta info está disponible a traves de un objeto en javascript y también en clases que se agregan al tag “html”, lo que nos permite ofrecer una experiencia avanzada (box-shadow, CSS Transforms, Canvas, HTML5 audio y video, almacenamiento local, geolocalización, etc) para los que pueden, mientras que podemos ofrecer una experiencia más básica para los que no. Casi imprescindible en cualquier sitio moderno que quiera adaptarse a las capacidades de cada usuario.
CanIUse.com
En muchas de las exposiciones se hizo referencia las nuevas herramientas de CSS, HTML5, JS, SVG y su distinta adopción en los navegadores. CanIUse es una guía actualizada muy frecuentemente que nos indica que propiedad es soportada por que navegador y versión, y cuan bien está implementada.
Polyfills y Shims
Con la ayuda de estas 2 técnicas podemos cubrir funcionalidades no implementadas de HTML5 y CSS3 en navegadores viejos. Básicamente son porciones de código (Javascript + HTML + CSS) que nos permiten hacer uso de algunas nuevas capacidades (SVG, Canvas, Web Storage, etc) en navegadores que no tienen implementación nativa. La diferencia entre los 2 es que los Polyfills “replican” la implementacion real (permitiendo que cuando tengamos que cambiar a un browser que la soporta nativamente no haga falta reescribir el código) mientras que los Shims tambien proveen la funcionalidad, pero de diferente forma que lo haría la funcionalidad nativa.
Para el que le interese el tema, esta es la charla sobre el tema de Rey Bango, un artículo que lo explica más en profundidad y la lista de polyfills y shims de modernizr.
Nuevos lenguajes, JVM y Server-Side Javascript
Mientras que PHP y Python no tuvieron mucho protagonismo (quizás por falta de speakers del tema y no por un reflejo del estado de la web actual), Ruby y Rails estuvieron presentes junto con algunos lenguajes nuevos que me parecieron interesantes.
Para mi sorpresa, otro protagonista de las charlas fue Java, no tanto por su lenguaje pero sí por su JVM (Java Virtual Machine) planteada como una plataforma de ejecución de varios lenguajes. No sabía que existían otros lenguajes que compilaban en bytecode para ser ejecutado por la JVM, aprovechando el poder y la robustez de años de desarrollo en la máquina virtual (un sólido garbage collector, hilos, etc).
- Con las bondades de Ruby tenemos a JRuby, que corre aún más rápido que código ruby en su implementación en C.
- Groovy se presenta como una super-versón de java, con las bondades de un lenguaje dinámico inspirado en Pyton, Ruby y Smalltalk. Grails es su framework estilo Rails para Groovy
- Mirah es un lenguaje creado por el responsable de JRuby y toma prestado mucho de Ruby pero ofreciendo mejor performance acercándose quizás un poco más a Java.
[Node.Js][3] tuvo solamente una charla pero creo que se merece su lugar en los destacados. Un ingeniero de Yahoo explicó las bondades de este nuevo paradigma de desarrollo, donde no hay llamadas bloqueantes y todo se resuelve por callbacks. Esto permite una ejecución mucho mas fluida y un menor uso de memoria, haciendo que las aplicaciones creadas en nodejs puedan responder a una gran cantidad de requests por segundo. La elección de usar Javascript como lenguaje se debe a su naturaleza asíncrona y el deseo de mantener todo en un solo lenguaje (server-side y front-end).
El speaker [Caridy Patiño][4] anunció que Yahoo está por lanzar un framework de aplicaciones web en Javascript basado en Node.JS llamado Mojito y una plataforma de hosting en la nube (al estilo Google App Engine) para aplicaciones basadas en en Mojito, utilizando la infraestructura y CDN de Yahoo.
Cerrando
El lugar donde se realizó el evento, si bien un poco lejos, estuvo muy bueno, reconfigurándose para unir 3 salones en 1 y después dividirlo en 3 para los 3 tracks de charlas. La cerveza que cerraba el evento cada día también estuvo muy buena, dando oportunidad de charlar entre los que asistimos y también con los speakers que con muy buena onda respondían preguntas.
Una experiencia muy positiva, esperemos ver cada vez más de estos eventos cerca nuestro. [1]: http://www.modernizr.com/ [2]: http://caniuse.com/ [3]: http://nodejs.org/ [4]: http://twitter.com/caridy
