---
layout: post
title: "Desarrollo sobre rieles"
date: 2006-03-01
## Make sure to change these
published: false
sitemap: true
hidden: true
sitemap: false
sitemap: false
---

Es probable que navegando nos topemos de vez en cuando con Ruby, un
lenguaje de programación interpretado, rapido y sencillo para
programación orientada a objectos, pero es también muy probable
que lo pasemos por alto cuando estamos acostumbrados a
trabajar con PHP, Perl o inclusive Python en nuestros proyectos web.


Hace un par de dias leyendo el artículo Going dynamic with PHP en IBM
dW me tope nuevamente con Ruby, para ser exactos me tropece con rieles.
Ya dijimos que es Ruby, pero, ¿Y los rieles donde encajan? Pues
Ruby on Rails es un framework para desarrollar aplicaciones web que
utilizan una base de datos como back end.  Ya se que existen multitud de
frameworks para desarrollo web y basados en lenguajes más populares
como los mencionados más arriba, pero lo que realmente sorprende de
Ruby on Rails es la capacidad para desarrollar una aplicación web diez
veces más rapido que con cualquiera de los frameworks más
populares.  Esto es posible en parte por que en Ruby hay muchas cosas
que son más fáciles de hacer que en otros lenguajes y por que
Ruby on Rails favorece convención sobre configuración. Es decir
que en lugar de archivos de configuración, las aplicaciones de Rails
utilizan algunas convenciones simples de programación que le
permiten averiguarar todo lo necesario a traves de reflexiones y
descubrimientos. El codigo de la aplicación y la base de datos saben
todo lo que Rails necesita saber.


En este artículo no voy a profundizar en Ruby y tampoco en Rails, al
final hay una lista de links con más información al respecto y es muy
probable que en algun momento escriba alguna introducción a Rails con
alguna aplicacion de ejemplo, por el momento solo dire como instalar
rails en Linux (especificamente Ubuntu 6.06 LTS)

   sudo apt-get install ruby ri rdoc libmysql-ruby
   tar xvzf rubygems-x.x.x.tar.gz
   cd rubygems-x.x.x
   sudo ruby setup.rb
   sudo gem install rails --include-dependencies

Ahora estas listo para andar sobre rieles.

¿Que hay de rails en Windows?
-----------------------------

Ok, para instalar Rails en Windows hay dos caminos (en Linux también hay
varias formas), aquí describo la instalación recomendada en el libro
“Agile web development with rails” de Dave Thomas y David Heinemeier
Hansson.

1.  Crear un folder para almacenar la instalación de InstantRails, que
   no contenga espacios en la ruta C:\\rails es una buena elección.
2.  En el sitio http://instanrails.rubyforge.org/wiki/wiki.pl descarga
   el archivo .zip de InstantRails.
3.  Descomprime el archivo en el directorio creado en el paso 1.
4.  Dentro del directorio InstantRails ejecuta el archivo InstantRails
   (el del ícono I).

Si aparece un cuadro de diálogo preguntando si deseas regenerar los
archivos de configuración haz click en OK. Si tienes instalado y
corriendo IIS aparecerá un cuadro de diálogo advirtiendo que el puerto
80 usado por Apache esta bloqueado, puedes dejarlo así, para el
desarrollo con Rails no es necesario ningún servidor web. Rails incluye
Webrick como servidor web de desarroll Aparecerá una ventana de
InstantRails, aquí puedes utilizar y monitorear las aplicaciones Rails

-   Para trabajar con Rails será necesario usar una ventana de línea de
   comandos, click en el boton I -\>Rails Applications-\>Open Ruby
   Console Window
-   Si intentas trabajar con Rails desde una línea de comandos normal no
   va afuncionar, ya que InstantRails es autocontenido, así que siempre
   sigue el procedimiento descrito (a partir del paso 4) para ejecutar
   y trabajar con InstantRails.
-   InstantRails incluye además de Ruby, rubygems y Rails; el servidor
   web Apache, MySQL, PHP y phpMyAdmin, el editor de texto Scite,
   FreeRIDE un IDE para Ruby y el texto completo del libro “Programming
   Ruby: The pragmatic programmer’s guide” de DAvid Thomas y Adrew Hunt
   en formato .chm

Ahora sí usuarios de Windows, estan listos para andar sobre rieles.

Información de Rails:

-   http://rubyonrails.org/
-   http://groups.google.com/group/rubyonrails-talk
-   IRC en irc.freenode.net \#rubyonrails
-   Un excelente libro para iniciar con Rails
   http://www.pragmaticprogrammer.com/titles/rails2/