miércoles, 13 de mayo de 2009

Instalando Ruby On Rails en mi Fedora 10 x86_64

Cuando leí sobre Ruby On Rails y sobre Ruby como su codebehind, realmente quede impresionado con la fácilidad de programar para entornos Web. Hace 2 años (Septiembre de 2007) que empece con Ruby On Rails con una pequeña aplicación para el departamento del servicio social para el Instituto Tecnológico de Orizaba. Recibí muchas críticas sobre ello, pues los lenguajes de programación que reinaban era Java, Php y C# a nivel licenciatura y con muchos devotos. Me preguntaban por qué había elegido esa cosa rara llamada Ruby On Rails que nadie ocupaba en aquel momento y que sonaba también raro. Mi respuesta fue simple, porque Ruby On Rails tiene un futuro prometedor. ¿Acaso no estamos en un Instituto Tecnológico? ¿No podemos ser visionarios sobre otras tecnologías? ¡Es fácil de aprender!, agregue.

Ahora Rails está en su versión 2.3, vaya el tiempo pasa rápido. Lo tengo con Fedora 10 en la nueva máquina que he comprado, he instalado Ruby On Rails en su versión 2.1.1 y estoy ansioso ya de probar poco a poco que ha cambiado. Lo que sé, es que MySQL ya NO es la base de datos por definición, sino SQLite3, vaya giro y me parece acertado, su uso es simple y muy divertido. Los paquetes que tengo instalados son:

$ rpm -qa | grep rails

rubygem-rails-2.1.1-2.fc10.noarch


$ rpm -qa | grep ruby

rubygems-1.3.1-1.fc10.noarch
rubygem-fastthread-1.0.1-1.fc10.x86_64
ruby-sqlite3-1.2.1-2.fc9.x86_64
ruby-1.8.6.287-2.fc10.x86_64
rubygem-activeresource-2.1.1-1.fc10.noarch
ruby-irb-1.8.6.287-2.fc10.x86_64
rubygem-actionpack-2.1.1-2.fc10.noarch
rubygem-rake-0.8.4-1.fc10.noarch
rubygem-daemons-1.0.7-2.fc8.noarch
ruby-rdoc-1.8.6.287-2.fc10.x86_64
rubygem-actionmailer-2.1.1-1.fc10.noarch
rubygem-rails-2.1.1-2.fc10.noarch
rubygem-gem_plugin-0.2.3-1.fc10.noarch
ruby-libs-1.8.6.287-2.fc10.x86_64
rubygem-activerecord-2.1.1-2.fc10.noarch
rubygem-mongrel-1.0.1-6.fc9.x86_64
rubygem-activesupport-2.1.1-1.fc10.noarch

¿Cómo los instalas? Usa yum para ello, por ejemplo:

# yum install rubygem-rails

En estos momentos estoy reescribiendo la aplicación que realice hace 2 años.
Si te gusta aprender cosas nuevas, con comodidad y elegancia en el código yo creo que Ruby y Rails son para ti.

martes, 12 de mayo de 2009

Usando wget

Andaba buscando libros sobre el Kernel Linux y me encontré uno muy bueno de hecho ya lo había tenido antes pero desgracidamente perdí mi libro. El libro en cuestión es "Linux Device Drivers, Third Edition" en cual se encuentra en la siguiente liga http://oreilly.com/catalog/linuxdrive3/book/index.csp. Al verlo de nuevo me emocione y por supuesto tenía que tenerlo de vuelta. Mi problema es que no quería bajarlo uno por uno dando tantos clicks como fuese necesario por cada capítulo del mismo, así pues me ayude un poco con el comando GNU Wget estos son los pasos que he usado:

  • Primero cheque que había un patron entre ellos, el cual es: http://oreilly.com/catalog/linuxdrive3/book/ch01, http://oreilly.com/catalog/linuxdrive3/book/ch02 ... http://oreilly.com/catalog/linuxdrive3/book/ch'n', terminando con la extensión '.pdf'.
  • Luego definí una variable: export LDD="http://oreilly.com/catalog/linuxdrive3/book/ch0".
  • Confirme que estaba: echo $LDD.
  • Fije mi secuencia con: seq 1 9.
  • Y finalmente ejecute: for i in `seq 1 9`; do wget -c $LDD$i.pdf; done.
  • :-O y segui con el siguiente patrón que es: http://oreilly.com/catalog/linuxdrive3/book/ch10, http://oreilly.com/catalog/linuxdrive3/book/ch11 ... http://oreilly.com/catalog/linuxdrive3/book/ch'n', terminando con la extensión '.pdf'.
  • redefini mi variable LDD: export LDD="http://oreilly.com/catalog/linuxdrive3/book/ch".
  • y ejecute: for i in `seq 10 18`; do wget -c $LDD$i.pdf; done.
Ahora están de vuelta :D y vemos cómo es útil este comando GNU Wget el cual tengo en su versión 1.11.4 que viene definido en mi Fedora 10.

domingo, 3 de mayo de 2009

Shell interactivo de C Sharp

Leo en el Blog de Miguel De Icaza algo que me llamo la atención sobre su shell interactivo de C Sharp (C#) con código de autocompletado, es decir con un solo click sobre la tecla de tabulador puedes autocompletar el código que en ese momento se este escribiendo o bien presionando dos veces puedes tener un listado de opciones para que escojas el adecuado, muy similar al shell de GNU Bash :-D. Según De Icaza sirve para conocer las posibilidades que ofrece el API y explorarlo a fondo, por ejemplo el API de GTK#, la primera vez que leí este API me dieron dolores de cabeza, ya que en la documentación no había tantos ejemplos como me lo hubiera esperado y además mi Firefox se atascaba en diversas partes de la misma, no sé si esta situación ya este arreglada, esto fue hace 2 años cuando empece a programar en capas con C#, Gtk#, Glade#, usando Mono 1.x y PostgreSQL 8.x (PLPGSQL).

Referencia:
http://tirania.org/blog/archive/2008/Sep-08.html

Influenza humana

Leo en Slashdot algo sobre la influenza humana llamada H1N1, al parecer esta puede transmitirse de humanos a cerdos. La historia es la siguiente:

Por lo visto un agricultor de cerdos canadiense vacacionó en México, regresó (a Canadá) e infectó a aproximadamente el 10 % de los cerdos de una granja de Alberta. Los cerdos posteriormente desarrollaron síntomas de gripe. "

Vaya noticia no se ve muy alentadora sobre todo para nosotros los mexicanos que hemos perdido nuestras inversiones locales en miles de millones de pesos diarios y otros han quedado desempleados por la crisis económica mundial. Esta de miedo :-(.

Referencias:
http://www.cbc.ca/canada/story/2009/05/02/swineflu-ns-cases789.html
http://slashdot.org/

Uso de GNU/Linux en el desktop

Leo en Barrapunto.com que el GNU/Linux ocupa el apenas 1% en los PC's Domesticos, según un informe mensual de Market Share. Juraría que GNU/Linux tiene un poco más que eso pero en fin. Según leo Windows XP tiene el 62.21%, el Mac OSX 10.5 el 6.17%. Caray mexicanos ya usen más GNU/Linux, hay de distintos sabores, colores y con un amplio software de calidad que no se pueden ya quejar, que sino jala esta cosa, que si dependo del MS Office, que Windows hace esto, que mi autocad, que mi inche p2p, bueno usa máquinas virtuales y gasta menos. Hay distros que hasta niños pueden mantener como Ubuntu (bueno quizás no tanto pero los hay), y si te consideras ya más especializado y toda la cosa usa Gentoo, Fedora, OpenSuSE, Mandriva, Arch, Debian o LFS anyway!.

Referencias:
http://marketshare.hitslink.com/operating-system-market-share.aspx?qprid=10
http://softlibre.barrapunto.com/softlibre/09/05/02/2315222.shtml