Seguro has oido hablar sobre Rails, Ruby o Ruby on Rails, en especial en conversaciones sobre desarollo de aplicaciones web o quizás tu mismo ya lo dominas.

Acá te comento 10 puntos claves que todos debes saber sobre Ruby on Rails.

Ruby On Rails…

1. ¿Qué es Ruby on Rails y para que sirve?

Es un lenguaje de programación dinámico, reflectivo, orientado a objeto y multi propósitos. Fue diseñado y desarrollado a mediados de los 90 por Yukihiro «Matz» Matsumoto en Japón. La primera versión de Ruby fue la 0.95, la cual fue anunciada en el 21 de diciembre de 1995.

Matsumoto, contó que el objetivo de la creación de Ruby es para aumentar la productividad de los programadores y su diversión, siguiendo los principios de user interface design. Se destaca una frase que dijo Yukihiro en una charla de tecnología en Google: «I hope to see Ruby help every programmer in the world to be productive, and to enjoy programming, and to be happy. That is the primary purpose of Ruby language.» 

2. ¿Qué es Ruby on Rails?

Es un framework de programación creado por David Heinemeier Hansson, quien le dio el nombre de Ruby on Rails, que usualmente es llamando simplemente Rails.

Rails está enfocado en crear sitios web y combina Ruby con HTML, CSS y JavaScript para crear aplicaciones web que corren en un servidor web. Dado lo anterior, es considerado server-side o Back-end.

Ruby on Rails más que un framework es el proyecto central de una comunidad gigante que produce de manera constante librerías para simplificar las tareas de crear complejas aplicaciones web.

3. ¿Cuáles son los principios de Ruby on Rails?

Rails es dogmático

Esto se refiere que a diferencia de Perl, por ejemplo, que es un lenguaje de programación en donde hay más de una forma de hacer cada cosa y no hay la manera correcta ni la mejor forma. En Rails se dice que un «Rails way» de hecho para muchos problemas. El beneficio de esto es que puedes desarrollamar más rápido, mejorar la colaboración y es más fácil de mantener.

Convention Over Configuration

Algunos frameworks, como los de Java para aplicaciones web necesitan hacer una múltiple cantidad de configuraciones en archivos y cada una con muchos ajustes. Rails esto te lo hace mucho más fácil, asumiendo cosas, así por ejemplo si tu creas por convención un modelo en Rails llamado «User», te creará una tabla en tu base de datos llamada «Users» sin ninguna configuración requerida y además Ruby on Rails asumirá que si el nombre de la tabla es plural si el nombre de la clase es singular.

Don’t Repeat Your Self

Conocido por el acrónimo DRYS, es un principio de desarrollo de software. Tal como su nombre lo dice trata en evitar los duplicados, ya que los duplicados hacen el código más complejo, difícil de mantener y más vulnerable a errores.

Rails toma ventaja de las características de metaprogramming que ruby tiene, no sólo para reusar códigos sino que además para eliminar códigos donde sea posible. Es así que con Rails es posible crear aplicaciones web con sólo unas pocas líneas de código.

4. ¿Por qué Ruby on Rails se ha hecho tan famoso?

Una de las razones es que su lanzamiento fue una revolución en cambio de diseño y además que Rails está diseñado con las mejores prácticas, por lo que de manera natural te lleva a escribir código asombroso.

Algo clave, además, es que en pocas horas te hace posible construir aplicaciones web y dejarlas online funcionando. Para que tengas una idea, la primera versión de Twitter la hicieron en un día usanado Ruby on Rails.

Otro punto importante es que muchas empresas llamativas que de seguro conoces usan Ruby, como lo son: Walmart, Groupon, Cisco, CNET, IBM, JP Morgan, NASA, Yahoo. Hay más de 800,000 web usando Rails en el mundo.

Es así que desde startups a grandes compañias han llegado a la conclusión que cuando se trata de crear aplicaciones web la mejor opción es Ruby on Rails.

5. ¿Qué puedo construir con Ruby on Rails?

Lo que sea que tengas en mente y sea una aplicación web lo puedes hacer on Rails. Sólo dale un vistazo a algunos grandes que construyeron sus sitios con Rails: BaseCamp, 500px, Airbnb, Couchsurfing, Fiverr, Github, Hulu, Indiegogo, KickStarter, Pixlr, Shopify, Square, ThemeForest, Zendesk, entre otros.

6. ¿Puedo construir aplicaciones móviles con Ruby on Rails?

Sólo en Ruby on Rails no puedes construir una aplicación móvil, pero sí puedes construir una aplicación web y esta funcionar como backend de una aplicación móvil.

Además hay un herramienta llamada RubyMotion que te permite construir con Ruby de manera muy fácil aplicaciones nativas para IOS y Android.

Es así que como conclusión literalmente con Ruby on Rails no podrías crear aplicaciones móviles, pero de seguro puede ser una parte importante de un proyecto móvil.

7. ¿Qué tipo de trabajo puedo conseguir en lenguaje Ruby on Rails?

Saber Rails en este momento es una de las habilidades más demandadas en USA y de manera mundial en desarrollo de aplicaciones web.

A las Start-ups especialmente les gusta Rails, por lo que podrías ser parte de una empresa con grandes perspectivas de crecimiento en etapa temprana o podrías también unirte a una empresa más consolidada como podría ser alguna casa de software.

De hecho una opción que toman muchos es trabajar como freelance, es decir de manera independiente realizando proyectos. Los cuales pueden elegir entre pequeños proyectos, medianos y trabajar con una variedad de clientes a largo plazo.

8. ¿Debes aprender Ruby on Rails en lugar de JavaScript?

Como desarrollador Ruby on Rails vas a necesitar saber JavaScript. No es un pre-requisito para aprender Rails pero si es una habilidad que necesitarás aprender desarrollando con Rails.

A medida que te vas sumergiendo más en el mundo de la tecnología, te vas a dar cuenta que necesitas saber diferentes tecnicas. Afortunadamente, a medida que ganas experiencia, aprender un nuevo lenguaje y framework, se hace todo un poco más fácil.

9.¿Cuánto tiempo me tomará aprender Ruby on Rails?

Para comenzar a sumergirte y entender el mundo del desarrollo con Rails, necesitaras algunos meses de estudio. Obviamente igual variará según tu nivel de familiaridad con la programación en general, lo que podría ayudarte a avanzar más rápido.

Sin embargo, es importante que tengas en mente que para ser un Master en Ruby on Rails te va a tomar más de 10 mil horas, así como desarrollar cualquier otra habilidad. Por lo que lo mejor es que ya vayas comenzando.

10. ¿Cómo puedo empezar?¿Qué debo hacer primero?

Algunas páginas gratuitas que  te recomendamos que podrías usar para empezar a sumergirte en este mundo del desarrollo son CodeAcademy,  TryRuby, Ruby Monk.

En Desafío Latam puedes encontrar cursos y carreras en donde te apoyamos en la formación desde cero hasta que consigas tu primer empleo.