Ah, Ruby on Rails. El campeón de la prisa de la startup y el proyecto paralelo. Eso, en esencia, describe una gran cantidad de por qué creo que las personas disfrutan de la comunidad como un todo, porque todos aprecian esos dos hechos.

Seguramente ha hecho mucho por el mundo de las startups, y por las comunidades de desarrolladores por igual. Es muy similar a los lenguajes como JavaScript en los efectos que ha tenido en el mundo web. Conozco a muchas personas que han entrado en el desarrollo únicamente debido al hecho de que Rails es muy atractivo, y Ruby es tan hermosa.

Puede encontrar que Ruby on Rails es adecuado para su gran proyecto, profundicemos en lo básico y descubramos.

Ruby on Rails para principiantes y nuevas empresas

Ruby es un lenguaje dinámico de alto propósito que tiene todos los beneficios de Perl y PHP, sin los problemas de sintaxis que traen consigo.

Ruby fue creado por Yukihiro "Matz" Matsumoto , a mediados de la década de 1990 Y se usa dentro del framework Rails, de ahí Ruby on Rails. Rails es un framework de aplicaciones web de fuente abierta y de plena pila que aprovecha gran parte de la potencia que ofrece Ruby. También ofrece organización y excelentes metodologías de programador, todo dentro de un marco singular, y además es increíblemente extensible.

Ahora, no entraré en detalles mucho más técnicos, después de todo, estas son cosas que puedes encontrar en una búsqueda rápida en Google. Así que vayamos al grano de la conversación.

Rieles para principiantes

Puede ser una exageración decir que Rails salvará tu vida, pero el hecho es que he conseguido que más gente comience a programar a través de Rails y Ruby que cualquier otro lenguaje o marco. Creo que el entorno en su conjunto es totalmente accesible para los recién llegados a la programación. Por ejemplo, la comunidad es bastante homogénea y parece estar enfocada en los mismos objetivos. Eso realmente significa mucho cuando se trata de miles de personas que intentan dirigir su atención.

Digamos que debes comenzar en la comunidad de JavaScript, bueno, es como el salvaje oeste. Hay cosas increíblemente increíbles que suceden en esa comunidad, desde la robótica hasta jQuery, desde nodo a backbone, hasta pruebas con estadísticas avanzadas, y tanto exige su atención.

Muchas personas están tratando de ir en tantas direcciones diferentes que puede ser difícil para un principiante decidir quién de qué seguir.

Tal vez haya un gran cruce de personas de esas dos comunidades, está muy claro que lo que les importa en JavaScript no es lo mismo que lo que nos importa en Ruby and Rails como marco o lenguaje.

Además de todo, obtienes un hermoso lenguaje de programación.

Rails

Imagen de rieles a través de Shutterstock.

Preferencia personal solo aquí, pero creo que Ruby es el lenguaje de programación más hermoso que se haya creado. Es lo más increíble que he usado para codificar, y realmente me motiva crear cosas secundarias cuando llego a casa de un largo día de programación en mi trabajo. Es entonces cuando sabes que un idioma es divertido para ti, cuando lo haces luego de 8-10 horas de programación en tu trabajo diario. Me doy cuenta de que puede no ser el mismo para todos, pero como regla general, el creador de Ruby realmente se esforzó por la sintaxis legible y no complicando las cosas a medida que avanzaba. Muy similar a la forma en que el creador de Clojure se acercó a la construcción de un lenguaje: proceso. Ambos eligieron la simplicidad sobre la complejidad, porque todos sabemos que en la simplicidad hay una gran complejidad; y típicamente viceversa, de ahí la belleza de cosas como Ruby y Clojure (menos el uso excesivo de paréntesis en Clojure, ugh ).

Encontrar un camino a seguir en la comunidad de Rails es muy simple. En otros idiomas puede ser un poco más difícil saber quiénes son los "creadores de tendencias", pero en Rails es muy obvio. Eso no quiere decir que tengas que seguir a esas personas, pero a partir de esas personas puedes deducir dónde están jugando los pesos pesados, y luego ir desde allí.

Por lo general, los pesos pesados ​​tienen proyectos o esfuerzos en Rails que se encuentran en el centro de una comunidad vibrante que lo respalda. Entonces esos son siempre buenos lugares para saltar. Por último, Rails es un marco muy experimental y una experiencia innovadora para codificar a medida que lo usas.

Como principiante, no solo disfrutarás de la sintaxis y la comunidad, sino que también te animarán a aprender cosas nuevas. Y se trata de aprender cosas nuevas en este mundo de programación.

Rieles para startups

Ruby on Rails es una de las herramientas más poderosas, y la mayoría de las herramientas habilitadoras, tanto en el valle como en startups, en todo el mundo, se han visto en años.

Ya sea la sintaxis, la capacidad de ponerse en marcha en horas, la creación de prototipos increíblemente rápido, lo que sea, ha despegado.

Las tiendas Rails y las startups de todo el mundo también han despegado por eso, y eso es simplemente el azúcar en el pudín de por qué es un delicioso placer para ti. No solo tiene muchas otras compañías que lo adoptan, y posiblemente se encuentre con problemas similares, también tiene un marco de batalla probado.

Este no es un producto Alpha, no es un producto Beta. Este no es un proceso de pensamiento abstraído para que los desarrolladores organicen el código. Este es un resultado de "manada de perros al estilo salvaje" de personas que se agruparon para formar esta comunidad, todo iniciado por uno DHH de 37 señales .

De nuevo, insistiré en la comunidad, porque es muy importante. Es una comunidad tan evolucionada y madura (en cierto sentido) que literalmente puede encontrar ayuda de cualquier manera que pueda necesitar. Ya sean desarrolladores que aman la programación en rieles o simplemente personas que quieren consultar para solucionar sus problemas. Hasta las personas que aman usar NoSQL en entornos de Rails, así como también les encanta odiar en Asset Pipeline;)

Hablando de eso, es otra gran cosa para principiantes y nuevas empresas por igual. Existe una herramienta de organización llamada la canalización de activos que le ayuda a organizar todo su JavaScript (o CoffeeScript), CSS e imágenes en una carpeta que alberga esas respectivas subcarpetas. Eso en sí mismo es útil. Con todo, si estás en una startup buscando un idioma para incursionar, para codificar tu producto, dale una oportunidad a Rails. Tal vez descubras que te sorprende.

Por qué Rails es útil (para desarrolladores individuales)

Otro lugar que Rails realmente ha sacado es en el espacio de proyectos personales.

Muchos desarrolladores son bastante similares, como en, son personas inteligentes y capaces. Sé que lo sé, esa no es una regla, pero a menudo sigue siendo el hecho del asunto. Y las personas de esta naturaleza a menudo quieren tener proyectos personales que puedan aprovechar para aprender o obtener ingresos. Y todos los que conozco están de acuerdo en que Rails es una forma perfecta de hacerlo.

Rails

Imagen de rieles a través de Shutterstock.

El uso de herramientas como Heroku para la implementación e implementación de una aplicación de Rails es literalmente un paso de 1, 2, 3 o más bien 1, 2 pasos. Es asombroso. De hecho, uso Rails y Heroku para manejar mi blog Cada vez que hago cambios, compilo recursos de producción para Heroku, presiono a Github y luego presiono a Heroku. Así de simple. Y si tengo una nueva computadora que quiero reducir, simplemente cambio algunos controles remotos con un poco fácil de entender magia terminal , y eso es todo, estás listo para hackear.

Una de las partes del proceso de desarrollo que a menudo se malinterpreta es complicar las cosas por accidente. Es solo una de las cosas mágicas en desarrollo, parece. Usted puede, sin consideración o casualidad, complicar literalmente cualquier cosa . Es lo que sucede, y muchas veces los desarrolladores ni siquiera se dan cuenta de que lo están haciendo. Bueno, estás de suerte, Ruby tiene muchas acciones de "convención sobre configuración", lo que implícitamente nos ayuda a complicar las cosas.

Por ejemplo, si tiene una clase de "Biblioteca" que hereda de ActiveRecord, automáticamente buscará una tabla llamada Biblioteca en la base de datos. Son pequeñas cosas así que nos ayudan a no tener que escribir cosas una y otra vez. De hecho, ejemplifica demasiado la esencia de DRY (Do not Repeat Yourself). Lo cual es increíble y muy útil. Por qué no ahorrar un poco de tiempo, después de todo, es más tiempo para tomar un café.

Otra cosa que me encanta es que el creador del lenguaje está absolutamente obsesionado con la simplicidad y belleza del código. Entonces, si puede hacer algo más simple y de una manera más bella, entonces lo implementará, ante la angustia de muchos desarrolladores al respecto. Pero personalmente me encanta.

Rails como motor también te ayudará a aprender acerca de los frameworks en general sin tener que ponerte de puntillas, y creo que lo hace de una manera perfectamente equilibrada.

Por supuesto, la gente dirá que los frameworks de PHP lo hacen de una mejor manera porque todavía puedes cerrar tu cabeza en una pared con PHP sin encontrar formas de evitarlo (para aprender). Pero, de hecho, creo que Rails lo hace de una manera mucho más elegante de lo que PHP alguna vez lo hizo, y probablemente lo hará alguna vez.

Rails

Imagen de rieles a través de Shutterstock.

Verá, en Rails todavía tiene que aprender mucho para poder construir una aplicación de Rails real o incluso pequeña. No es que puedas usar andamios para todo. De hecho, no puedes hacer eso activamente, pero lo harás al principio y te ayudará a aprender cosas como Vistas, Plantillas y cómo Ruby interactúa con HTML.

Por ejemplo, una cosa que me encanta hacer es poner una variable de Ruby que almacena datos del servidor de algún tipo que ya se ha establecido en un atributo de datos. Entonces, por ejemplo: -data-attribute-for-ruby = "<% = Time.now%>" y luego trabaja o interactúa con ese atributo de datos en JavaScript.

Los rieles se pueden complicar bastante rápido, y la belleza de Rails es que también te obliga a explorar otros idiomas. Te permitirá ser muy bueno en JavaScript y muy bueno en CSS. También le dará una mejor comprensión de SQL y cómo funcionan las bases de datos, todo de manera implícita.

La simplicidad hace que la barrera de entrada sea tan baja que, incluso teniendo en cuenta el esquema de la base de datos tiene sentido, Oh, hice esa clase, así que ahí está. No, oh , espera, hice lo de la clase, así que ahora tengo que hacer lo de la base de datos, ¿cómo hago eso? No sé sobre bases de datos. Ugh. Al diablo esto. Nada de eso en Rails.

Aprendes sin pisar tu pie. Y es una cosa increíblemente hermosa.

En resumen

Realmente creo que aprender Ruby puede hacerte un programador más feliz en general.

Solo puedo hablar por experiencia personal aquí, pero sinceramente revitalizó la vida en mi desarrollo. Era un tipo de PHP por más de 8 años y realmente era algo que no "amaba" pero lo hice de todos modos. Después de encontrar a Ruby, literalmente levanté las manos y nunca volví a PHP. Fue un cambio tan grandioso en mi vida que creé proyectos, conseguí trabajos, consulté y contribuí en algunos grandes proyectos de código abierto, así como en el núcleo de Rails, donde antes solo era un estudiante que conocía PHP.

Por supuesto, pude contribuir y hacer esas cosas en PHP, pero el punto es que nunca tuve la pasión de hacerlo, y la pasión es tan importante. Si no tienes pasión por lo que haces, entonces debes dejar de hacerlo. Ahora mismo. Y luego deberías aprender Ruby on Rails. Puede traerlo de vuelta.

¿Ya has bañado en Ruby on Rails? ¿Crees que hay una mejor plataforma de desarrollo por ahí? Háganos saber en los comentarios.