Blog IDA Chile | Estrategia para el éxito de tu negocio

Felipe Campos, organizador de Meteor Chile

La comunidad internacional en torno a Meteor se mantiene activa y en constante crecimiento. Chile también está siendo parte de este proceso, ya existen varios foros, grupos en Facebook y sitios web dedicados a difundir esta plataforma y apoyar su desarrollo.

Meteor Chile es uno de los grupos que se ha dedicado a organizar actividades dirigidas a todos quienes quieran aprender y compartir sus conocimientos. Conversamos con Felipe Campos Clarke, desarrollador de software y uno de los organizadores de esta iniciativa, para conocer sus opiniones sobre Meteor y entender la influencia de estas comunidades en el desarrollo de la tecnología.

¿Qué es meteor? ¿Es un MVC, un framework, un CMS o un MEAN Stack (MongoDB, ExpressJS, AngularJS, NodeJS)?

Meteor es un fullstack web framework o similar. Básicamente, es una solución integral, tanto en el lado del cliente como del servidor, que permite realizar aplicaciones web modernas y complejas, en periodos cortos de tiempo.

¿Cuánto tiempo llevas trabajando con Meteor?

Conozco Meteor desde hace aproximadamente un año, pero hasta el momento no he realizado ninguna aplicación que actualmente esté en producción.

¿Cuáles son las ventajas y desventajas que has percibido?

Las principales ventajas para mi son:

¿Cuál es la gran diferencia con otras plataformas de desarrollo, en comparación con lenguajes como PHP, .Net, Ruby o Java?

En realidad el punto de comparación es un poco injusto, dado que estamos comparando un fullstack framework con lenguajes de programación. Yo trabajo hace aproximadamente dos años con Rails + AngularJS. Anterior a esto he ocupado combinaciones como Codeigniter + Backbone o Sprint + Backbone.

El asunto es que si bien Meteor trabaja de forma muy amigable con frameworks front como React o Angular, el marco se construyó con la finalidad de que los developers nos olvidemos de las configuraciones, integraciones y aprendizajes de múltiples lenguajes. Esto claramente repercute en el tiempo de desarrollo (para mi, la principal ventaja de Meteor).

Un claro ejemplo de esto sería:

Si quisiera hacer una aplicación web, con alto contenido dinámico y que funcione en tiempo real, en Rails (que bajo mi experiencia es uno de los frameworks MVC más fáciles de configurar) tendría que preocuparme de cosas como:

En Meteor estos problemas no existen, está todo funcionando out of the box.

Estoy convencido de que Meteor es el futuro. Creo que es el principio de uno de esos cambios importantes en el mundo del desarrollo.

¿Cómo crees que cambiará al desarrollo web o de aplicaciones?

Personalmente, estoy convencido de que Meteor es el futuro. Creo que es el principio de uno de esos cambios importantes en el mundo del desarrollo. La inclusión de esta tecnología podría ser un avance tan importante como lo fueron en su momento los frameworks MVC o los front-end.

Desde mi punto de vista, los patrones clásicos de desarrollo no se han sabido adaptar a los complejos modelos de objetos construidos sobre JavaScript que demanda hoy en día una aplicación moderna. Para solucionar en parte estos problemas, hace algunos años comenzaron a popularizarse soluciones front-end, para que el servidor y el cliente pudieran correlacionarse de forma más amigable, y si bien es innegable que esto presentó un gran avance, el flujo sigue siendo un poco dummy y no muy natural.

Gracias a Meteor podemos darnos cuenta de que no es necesario mantener esa barrera entre el cliente y el servidor. Solo se necesita hacer una vez el trabajo y ya está. No necesitamos duplicar modelos, utilizar distintos patrones en una aplicación (como por ejemplo MVC y MVVM) o construir un API para que las partes de nuestra conversen (para mantener la comunicación entre el cliente y el servidor se usa de manera invisible el patrón DDP, que vendría a ser como REST, pero para los websockets). Y todo esto en tiempo real, sin añadir ningún tipo de complicación.

En resumen, Meteor se acopla de manera casi perfecta y transparente a las complejas aplicaciones modernas.

¿Qué áreas o temas falta investigar?

Creo que principalmente faltan más aplicaciones grandes construidas sobre Meteor. Por ejemplo, algo que me falta es un flujo de tests sólido, en otras plataformas como RoR esto está muy pulido. Meteor necesita probarse más para convencer al mundo de su potencial.

¿Cómo ayuda la comunidad al desarrollo de esta plataforma?

La comunidad es muy proactiva, sobre todo a nivel internacional. Hay mucha gente dispuesta a ayudar, ya sea aportando recursos para el aprendizaje, promoviendo la plataforma, desarrollando soluciones, o ayudando a los desarrolladores con problemas o dudas.

¿Cuáles son los objetivos de la comunidad en torno a Meteor?

La comunidad en Chile tiene como principal objetivo promocionar Meteor para que todo el mundo vea las bondades que posee.

¿Cuáles son las próximas actividades o eventos de la comunidad?

Siempre estamos preparando Meetups y también hay gente interesada en realizar talleres o cursos.

Además, pronto vamos a lanzar una web oficial de la comunidad chilena, donde estaremos informando de noticias, eventos, experiencias, y quizás realizaremos algunos podcasts u otra idea que vaya naciendo en el camino.

¿Cómo se puede participar en la comunidad?

Solo hay que tener ganas. Generalmente, todas las personas involucradas o que están interesadas en formar parte de la comunidad, nos mantenemos en contacto en un team de Slack llamado “meteorchile”. Quienes quieran participar pueden registrarse en Meteorchile.herokuapp.com.

 

Como les contamos en nuestra columna de opinión, en IDA también queremos aportar en el desarrollo de Meteor para explorar formas de aprovechar sus funcionalidades. Mantente atento a nuestras publicaciones, pronto estaremos organizando algunos eventos e integrando esta tecnología en nuestros proyectos.