En Riding Rails han publicado un par de post (1 y 2) breves pero interesantes. Comentan la exsitencia de dos webs para darse a conocer dentro de la comunidad Rails.
En workingwithrails.com podeis publicar vuestro perfil como programadores Rails. Si probais a buscar por “trabe” veréis como aparecen las 4Trabes. También están apuntados otros ilustres como el señor Heinemeier.
Cuando tengáis una apliación Rails digna de ser mostrada al mundo podéis visitar happycodr.com y darla de alta. Esta página es un directorio de aplicaciones Rails y en ella aparecen sitios tan conocidos como basecamp o 43 Places.
A veces el domingo no es el típico día en que te tiras en el sofa a ver la vida pasar y recuperar fuerzas para ir el lunes a trabajar con un mínimo de alegría. A veces, el domingo, te dedicas a hacer labores de consultoría para los conocidos, amigos, familiares y demás. Hoy ha sido un domingo de esos. Y no uno llevadero, ha sido uno en el que te preguntas cada 20 segundos por qué leches te levantaste de la cama con lo bien que estabas roncando. En fin. Me estoy desviando del tema.
Nota mental: no olvidar el var
Para ser breve, diré que mi labor de consultoría incluía la creación de un tag JSP que generaba un complicado formulario, que para más inri tenía que hacer filigranas JavaScript. La cosa iba como la seda, hasta que necesitamos recursión. Sí, recursión. No recuerdo haber necesitado hacer nada recursivo en JavaScript en mi vida, pero las circunstancias mandaban y no era el momento de buscar otras alternativas…
1234567891011
functionhazAlgoConElNodo(nodo){varnombreNodo=nodo.nodeName;varclaseNodo=nodo.className;// etc, etc. for(i=0;i<nodo.childNodes.length;i++){hazAlgoConElNodo(nodo.childNodes[i]);}}
… código inocente donde los haya, con una recursión trivial. Pues nada, vamos a probarlo y ¡Upss! el navegador explota. ¡No me puedo creer que entremos en un bucle infinito!, ¡es imposible!, ¡mi%xc%$!, ¡c$%j%$s! y demás improperios. Nos calmamos, depuramos un poco, y … ¬_¬U … por qué leches me levanté de la cama con lo bien que estaba roncando.
1
for(vari=0;i<nodo.childNodes.length;i++){
Mucho mejor. Es lo que pasa cuando uno trabaja cuando debería estar descansando y no es capaz de leer lo que tiene delante. Hay que ver lo fácil que es olvidarse de un keyword importante en un lenguaje como JavaScript y no darse cuenta. Hay que tener mucho cuidado con el susodicho var que marca el ámbito de las variables (o scope, según el gusto lingüístico de cada cual).
A mi no me vuelve a pasar… espero xDDDD. Lo dicho, nota mental: no olvidar el var.
Si no habeis visitado nuestra página web desde el Miércoles pasado, os recuerdo que ya está disponible el material de la charla que dimos Asís y yo en la Conferencia Rails acerca de soluciones para internacionalizar aplicaciones Rails. Si os interesa podeis descargar las transparencias en formato PDF desde la sección de charlas de nuestra web.