ruby

Polimorfismo en Ruby

Se me ha ocurrido escribir sobre este tema para aquellos que, como yo, vienen de otros lenguages orientados a objetos. Hay cosas en Ruby que se hacen de manera distinta y es muy dificil cambiar las costumbres de un día para otro.

Leer el resto de la entrada »

Testeos funcionales con Capybara

Escribo este post para ir apuntando las cosillas que voy aprendiendo de Capybara y Steak que son dos librerías de testeos funcionales para ruby.

Leer el resto de la entrada »

Otra manera de calcular la media ponderada en Ruby

Esto que escribo es un poco chorra, lo sé, pero llevo tanto tiempo sin escribir que me parece que puede ser gracioso poner esto aquí.
Hoy me he enfrentado al “terrible y dificil” reto de calcular una media ponderada de datos, más concretamente las notas de los alumnos en una asignatura.
Partimos de tener un hash en el que se define, para cada nota, los alumnos que la han obtenido. Por ejemplo (No han sacado muy buenas notas, la verdad):

Leer el resto de la entrada »

Desplegando Rails

Llevamos más de año y medio metidos en un mega-proyecto basado en Ruby On Rails. Después de tanto tiempo tenemos una visión muy clara de las ventajas e inconvenientes de utilizar esta plataforma. Ya hay muchos sitios en los que se habla de estas consideraciones y de muchas otras, pero yo quiero exponer aquí el que probablemente haya sido el mayor problema con el que nos hemos encontrado: El despliegue.

Leer el resto de la entrada »

La importancia del testing

El jueves pasado estuve en la Conferencia de Rails en Madrid y me llamó mucho la atención, dentro de toda la controversia que creo el uso del testing en aplicaciones, lo poco que se implantaba y la poca importancia que se le daba.

Dentro de toda la polémica que suscitó había gente que dudaba de uso durante las fases de desarrollo. Lo de siempre: Falta de tiempo, desconocimiento de uso, etc. Hacen que se le de muy poca importancia.

Leer el resto de la entrada »

Apuntes para RJS

Estos son trozos de código de RJS que pongo aquí porque creo que son muy interesantes y porque me va a ayudar el guardarlos aquí:

Como mostrar un mensaje de alerta al pulsar en un enlace, con indicador de funcionamiento y llamando a un servicio web:

En el cliente (rhtml):

<%= link_to_remote "Alert without RJS",
       :url => { :action => “alert_without_rjs” } -%>

En el servidor (rb):

Leer el resto de la entrada »

Este camino se acabará algún día?

Por un lado me gustaría, pero por otro lado no, ya que me aburriría terriblemente.
Sigo con mis investigaciones de nuevas tecnologías para Rails y para Flex.

Leer el resto de la entrada »

Ayuda a la depuración

Esto que voy a contar no es nada nuevo, lo que pasa es que lo estoy utilizando intensivamente y con ello estoy desarrollando más fácilmente. Son técnicas para depurar aplicaciones:

Ruby On Rails:

Lo que más me está ayudando es correr la aplicación en un mongrel sobre Linux y ejecutar en una consola lo siguiente (cambiando RAILS_ROOT por el directorio donde esté la apliación:

tail -f {RAILS_ROOT}/log/devlopment.log

E incluir el siguiente código, cuando quiera notificar algo para verlo en el log:

Leer el resto de la entrada »

A vueltas con las fixtures

Estamos desarrollando un proyecto en Ruby on Rails de un tamaño que empieza a
ser considerable. Para los testeos (tanto unitarios como funcionales)
estamos utilizando las fixtures y me estan surgiendo una serie de dudas
filosoficas, a ver que opiniones teneis al respecto.

En otros proyectos que he desarrollado (en .NET) he realizado los
testeos siguiendo estos pasos por cada testeo (nada nuevo):

Leer el resto de la entrada »

Linux Año 0

Hoy es mi primer día trabajando con Linux!
Llevaba bastante tiempo con la intención. Por fin la he hecho realidad. Y todo se ha basado en que los proyectos que estoy realizando utilizan herramientas o tecnología libre (excepto Adobe Flex):

Ruby on Rails : Totalmente libre, tanto Ruby como Rails. Muy fácil de instalar y, gracias a los plugins para Eclipse de RadRails y su integración hace que sea exactamente (si no mejor) trabajar sobre Linux que sobre Windows.

Leer el resto de la entrada »