Category Icon Groovy or Ruby ?

January 21st, 2008

Since my presentation on Ruby (march 2007), Groovy has gained a lot of improvements :

Thus, Groovy is catching most features I like from Ruby. Nevertheless, I still prefer Ruby and not only for its more elegant syntax …

In his article Groovy or JRuby, Martin Fowler wrote :

“If you are only interested in running on the JVM, then Groovy could well be the easier choice. You are working directly with Java’s library and object model, and the syntax requires less getting used to. A strong reason to prefer Ruby is the fact that it lives in multiple implementations. Ruby is a tool you can use in a lot of other places.”

I completely agree. Groovy’s strength is also its weakness : the JVM is the only target platform.

The JVM is a great platform but the .NET platform is also a great one. If you need a seamless integration with the .NET framework, you will get it with Ruby.NET or IronRuby in a near future.

Also, Ruby’s official implementations (ruby 1.8 and ruby 1.9) allow to reuse native libraries through the C extension feature. Thus, there are a lot of interesting libraries in the Ruby “native world” like :

  • cross-platform GUI toolkits with native widgets : Shoes (a lightweight toolkit with a Web approach), wxRuby (a more general purpose toolkit), …
  • SQLite/Ruby, a wrapping of SQLite, the widely used embedded SQL database engine.

Of course, such libraries can be written or wrapped in Java (via JNI) and be usable in Groovy (as in JRuby). The Eclipse SWT is an example of a Java GUI toolkit with native widgets.

But basically, you have more possibilities of integrating/reusing existing software with Ruby.

Ruby 1.9.0 introduces also new features but this is another story …

Category IconCategory Icon Wipeout Pulse !

January 20th, 2008

In 1995, I saw a demo of WipEout on the (first) Playstation. A short time later, I bought the game and the console.

PSX WipEout

I was completely addicted by this game and its soundtrack. Later, I purchased also WipEout 2097 and Wip3out.

Last december, WipEout Pulse was released on the PSP and this makes me buy again both the game and the console !

WipEout Pulse game photo

This opus has a lot of improvements in the gameplay. It also has great features like the photo mode and the playback of MP3 files stored on the PSP Memory Stick. I put the soundtrack of WipEout 2097 and Wip3out and it’s really great !

PSP

The PSP is itself a really nice device and I like a lot the MP3 and video player features.

PS : The image of the WipEout game is taken from the Wikipedia web site. I sold this game stupidly several years ago.

Category Icon A momentary lapse of Reason !

January 20th, 2008

It’s more than a momentary lapse as I have not been playing with Reason for a long time but I like this Pink Floyd reference !

Reason

Reason is a great music tool and I’m sure I will be playing with it again. Here are some stuffs I made just for fun a few years ago :

Pop song within Reason

Category Icon A cool shot from the Qashqai Urban Challenge

June 23rd, 2007

Mathis and Darren Berrecloth

Here is my son, Mathis, with Darren Berrecloth who won the Qashqai Urban Challenge in Paris the 23rd of June.

Category Icon My first serious mountain bike

June 2nd, 2007

Here it is : a Specialized Stumpjumper FSR 2006. It has a Fox fork and a Fox rear shock, both with 120mm of travel.

Stumpjumper FSR 2006

I took this picture from the Specialized website when I was still dreaming of a new bike.

I finally bought it the 1st of April 2006.

Category Icon Ruby Presentation

March 30th, 2007

Ruby is a real gem for an Object-Oriented and Meta-Programming fan like me.

Here is a presentation covering the different facets of Ruby :

  • the scripting facet
  • the dynamic typing facet
  • the object-oriented facet
  • the functional facet
  • the reflective facet
  • the DSL facet

Code snippets and comparison with other languages (Java, Python, PHP) illustrate these facets.

ruby-presentation-rev-a

Hello world!

March 27th, 2007

Welcome to my blog on Object-Oriented, Meta-Programming and maybe my Self Reflexion …