Este post me sale de dentro, no porque defienda que una tecnología es mejor frente a otra, si no porque no me gusta que alguien lo haga contando verdades a medias.

Pongamos que quiero comparar lo facil que es hacer un bucle en Ruby y lo tedioso y complicado que es hacer un bucle en Java, el código Ruby es sencillo:


 items.each do |item|
    //DO SOMETHING
 end
 

Y ahora digo que para hacer esto en Java hay que escribir todo esto:


 for (Iterator it = items.iterator(); 
         it.hasNext()) {
     Element item = (Element) it.next();
     //DO SOMETHING
 }
 

Bueno analizando el código Java, a primera vista esta claro que la segunda línea nadie la pone ahi, si no todo el for en una línea, pero al margen de eso, el que escribe ese código es que no sabe que existe Java 5, que no es algo super nuevo, ya tiene un par de añitos. Y el código Java queda así:


 for (Element item : items) {
    //DO SOMETHING
 }
 

Bueno pues ahi queda, todo en una línea y creo que también bastante clarito. Puede que a alguien le guste Ruby más o menos que Java, y que quede claro que no intento atacar a nadie, pero por favor no me intenteis vender algo que no es totalmente cierto.