Archive

Posts Tagged ‘jruby’

Sustituyendo a las animadoras con Ruby en Mac.

August 12th, 2008 Serabe No comments

El título del post puede sonar raro, pero lo que voy a mostrar hoy es cómo conseguir tu propia animadora en Mac con Ruby. Lo que haremos será hacer que nuestro ordenador, con una orden como:


ruby cheerleader.rb Serabe

Nos muestre por pantalla:


Dame una S
Dame una E
Dame una R
Dame una A
Dame una B
Dame una E
SERABE!!!

Además, utilizando el comando say de Mac, nos lo dirá (si queréis que lo grite, subid el volumen al máximo).

Empecemos con el código:

RUBY:
  1. string =  ARGV.join(' ')

Aquí simplemente recogemos los parámetros pasados por consola y los concatenamos con un espacio entre medias. Ahora la parte interesante:

RUBY:
  1. string.each_byte do |b|
  2.   if /[a-zA-Z]/ =~ b.chr
  3.     shout = 'Dame una '+b.chr.upcase
  4.     puts shout
  5.     `say #{shout}`
  6.   end 
  7. end

Para cada letra, una vez comprobado que es una letra y no un espacio, construimos un grito ('Dame una S'), lo imprimimos por pantalla y hacemos que el comando say lo diga.

Finalmente, con un

RUBY:
  1. puts string.upcase + '!!!'
  2.  
  3. `say #{string}`

Imprimimos la última frase.

Ya habéis visto cómo crearos vuestra propia cheerleader. En próximos episodios veremos cómo añadirle autoregeneración como Claire.

article clipper Sustituyendo a las animadoras con Ruby en Mac.
 
share save 171 16 Sustituyendo a las animadoras con Ruby en Mac.
Categories: Programming, Ruby Tags: , ,

New RMagick4J release.

July 9th, 2008 Serabe 1 comment

RMagick aims to implement the ImageMagick funcionality and the C portions of RMagick for make it works in JRuby.

Current stable version: 0.3.5
Project URL: http://code.google.com/p/rmagick4j/
Installation: gem install rmagick4j

Google Summer of Code project should be thanked for making this new release possible.

In release 0.3.5 the following improvements have been made:

  • Implemented Draw primitives (affice, arc, pattern, path).
  • Improved Image and ImageList:
  • Implemented more of Pixel (from_HSL, to_HSL, <=>, fcmp, intensity).
  • Implemented the fill classes.
  • Added a side-by-side (MRI vs JRuby) image testing tool named Bullseye.
  • Added 680 color names. It can search, but not retrieve the name correctly capitalized.
  • Changed gem name from RMagick4J to rmagick4j.

This version should allow Gruff Graphs and Ruports to largely work without issues. Please try out your applications with rmagick4j and help us provide feedback. It is our goal to make a fully-compatible implementation of RMagick4j in JRuby.

article clipper New RMagick4J release.
 
share save 171 16 New RMagick4J release.

Ay, Serabe, que no haces nada ni tan siquiera regular.

May 18th, 2008 Serabe 3 comments

Hoy me he tirado unas cuatro horas para encontrar un bug, uno de estos puñeteros bichos que te atrapan y te dejan cosas como estas:
black Ay, Serabe, que no haces nada ni tan siquiera regular.
Para que os hagáis una idea, tenía que ser esto:
really black Ay, Serabe, que no haces nada ni tan siquiera regular.
Como se puede apreciar, son sensiblemente diferentes. Así que cuatro horas de mi vida han transformado lo primero, en lo segundo.

El problema venía en que, tal y como Tom (mi mentor del GSoC) propuso, se ha cambiado la clase PixelPacket de forma que ahora trabaja con enteros. El problema, mejor no os lo cuento que es más aburrido que lo anterior.

En fin, que hoy me voy a la cama con un ego más grande que el de Enrique Dans.

article clipper Ay, Serabe, que no haces nada ni tan siquiera regular.
 
share save 171 16 Ay, Serabe, que no haces nada ni tan siquiera regular.

Sweating blood

April 28th, 2008 Serabe No comments

Si alguno está investigando sobre las Stories de RSpec, y no consigue hacerlas funcionar, un

RUBY:
  1. require 'spec/story'

debería solucionarlo todo...

Joder lo que hace mi inutilidad y mi falta de documentación.

article clipper Sweating blood
 
share save 171 16 Sweating blood
Categories: Programming, Ruby Tags: , , , , ,
Improve the web with Nofollow Reciprocity.