Aprendiendo Ruby sobre Rails
Tal como están las cosas ahora, soy desarrollador de Java y C#. Cuanto más miro Ruby on Rails, más quiero aprenderlo.
¿Cuál has encontrado que es la mejor ruta para aprender RoR? ¿Sería más fácil desarrollar en Windows o debería simplemente ejecutar una máquina virtual con Linux?
¿Existe un IDE que pueda igualar la solidez de Visual Studio? ¿Algún programa para desarrollar que proporcione una buena idea de qué hacer? ¿Algún buen libro?
En serio, cualquier consejo, truco o diatriba sería fantástico.
He estado pasando de C# en mi carrera profesional a mirar Ruby y RoR en mi vida personal, y he descubierto que Linux es un poco más atractivo personalmente para el desarrollo. Particularmente ahora que comencé a usar git, la implementación es más limpia en Linux.
Actualmente estoy realizando un arranque dual y cada vez estoy más cerca de ejecutar Ubuntu a tiempo completo. Estoy usando gedit con varios complementos para el entorno de desarrollo. Y a finales de 2010, estoy presionando para usar Vim para el desarrollo, incluso en lugar de Textmate en OS X.
Una gran cantidad de desarrolladores de Rails están usando (jadea) Macs, lo que realmente me hizo pensar en esa dirección.
Aunque no lo he probado, Ruby in Steel te ofrece un IDE de Ruby dentro del mundo de Visual Studio, y IronRuby es la versión .NET de Ruby, si estás interesado.
En lo que respecta a los libros, el libro Programming Ruby (también conocido como Pickaxe) de Pragmatic Programmers es el libro de facto para aprender Ruby. Me mordí la bala y compré ese libro y Agile Web Development with Rails ; Ambos libros han sido excelentes.
Los screencasts de Peepcode y los libros en PDF también han sido excelentes para comenzar; a $9 por screencast es difícil equivocarse. De hecho, compré un paquete de 5.
Consulte también lo siguiente:
- Guías oficiales de rieles
- Railscasts
- railsapi.com o Ruby on Rails - APIdock
- El show de rubíes
- Rieles para zombies
- Softies on Rails - Ruby on Rails para desarrolladores .NET
- Podcast sobre rieles
- Mejores prácticas de rieles
Revisé la acumulación de podcasts de Rails y Rails Envy durante el último mes y me brindaron una visión maravillosa sobre muchos temas, incluso relacionados con el desarrollo de software en general.
Tenga cuidado, el mundo de los rieles es un lío tremendamente frustrante de documentación y ejemplos obsoletos e inconsistentes. Quizás sea una de las comunidades de desarrollo más rápidas y de moda que existen. Cuando aprendas algo, ya habrá cambiado. Incluso los libros no son consistentes en cuanto a la versión de rieles de la que hablan. Documentación por blogs! basta de charla.
Actualmente hago RoR en Windows. Mi consejo es evitar las ventanas si puedes. Muchas cosas no funcionan y la comunidad Rails realmente no se preocupa por ti. El cambio a Git realmente me ha confundido ya que no funciona muy bien en Windows. Muchas gemas fallarán debido a esto (Heroku parece una herramienta genial; lástima para mí, no puede manejar la configuración de Git de Windows). Capistrano está fuera. Sigue y sigue molestamente.
Además, en el fondo, siempre te preguntas cuando algo no funciona "¿Es un problema de rieles/ventanas?" No estoy seguro de que esto se resuelva usando Linux porque Linux trae sus propios problemas, como tener que actualizar constantemente todas esas dependencias diferentes, etc. Si ese es el tipo de cosas que disfrutas, podría ser una buena opción para ti. Esos días de disfrutar manipulando el sistema han quedado atrás y sólo quiero seguir haciendo mi trabajo. Estoy pensando en instalar Ubuntu en una máquina doméstica para poder familiarizarme con cosas como Capistrano, así que tal vez mi opinión cambie.
Le recomiendo encarecidamente que si va a dedicarse al desarrollo de Rails durante un período de tiempo, considere seriamente adquirir una Mac. Si valoras tu tiempo y tu cordura, se amortizará casi al instante. Dependiendo de cómo valore su tiempo, 10 horas de depuración de problemas de configuración de Windows/Linux y de todos modos habrá gastado tanto como cuesta una Mac.
Rails es una alegría en comparación con lo que reemplaza, pero es un poco molesto porque sus defensores se saltan muchas de las cosas aburridas pero importantes como la documentación, los problemas de compatibilidad y la creación de comunidades. Es mucho más poderoso que otros frameworks como Django, pero a veces miro la documentación y la comunidad de Django y suspiro como un chico con una novia sexy y salvaje mirando a la esposa sencilla pero cuerda y estable de su amigo. Pero luego Rails agrega una función y digo "¡Ohhh, brillante!"
En mi opinión, los screencasts de Rails son mejores que los screencasts de Peepcode. RubyPlus también tiene screencasts, eso sí, son un poco toscos. BuildingWebApps tiene un curso en línea gratuito que comienza a hacer screencasts a la mitad.