Saliendo a jugar

Acá comenté como habíamos arrancado PyWeek 3, vean el post para la primer parte del relato e info genera de qué es eso. Ahora termino la épica historia.

Durante la semana, no pude hacer mucho, que es un eufemismo para dar entender que no tuve ni mierda de tiempo de hacer un carajo. Pero me reservé la noche del viernes porque nos volvíamos a juntar en lo de Leito.

Así que el viernes, después del trabajo, partí para su casa, bien cargado de ceros y unos para alocar nuestros bits.

Llegué primero, pero al rato ya estábamos todos lo que éramos. Luego de las configuraciones de red de rigor, nos pusimos a seguir trabajando. Discutimos lo que correspondía luego de la semana, y más o menos nos dividimos las tareas. Como la parte que yo había comenzado el fin de semana anterior la había terminado, y en la semana no había hecho nada, me busqué una tarea.

La encontré fácil: debía con Nubis diseñar diez niveles en sus distintas facetas (tipo de público, elemento a desaparecer, historia de entrada, historia de salida cuando ganás y de cuando perdés, y hechizo). A priori iban a ser diez temas por separado, pero nuestras retorcidas mentes dieron con una historia que hacía fluir los diez capítulos.

Luego de tan ardua tarea, ya eran casi las dos de la mañana, así que boludeé un rato y ya me vine para casita. Al otro día luego de una mañana de compras, me puse también con el juego. Ya no físicamente con los chicos, sino en casa, coordinando por IM y/o chat.

Estuve más que nada buscando detalles que construir o solucionar, y previo permiso de alguien que estuviese físicamente reunido en lo de Leito, lo hacía. Algunas tareas eran de dos minutos, otras de treinta, y así se fue el resto de la tarde.

La hora límite eran las 21 de Argentina, pero nosotros nos pusimos las 8 como momento para dejar de incorporar cambios. Los últimos momentos tuvieron bastante adrenalina, porque el tiempo se acababa, sabíamos que cada cambio iba apenas a ser probado, y nuestros cerebros ya estaban quemados.

Yo corté alrededor de esa hora, sí, aunque los chicos siguieron unos veinte minutos. Hice un svn commit, y al toque le avisé a Lucio que retiraba mis manos del teclado, :). En esos momentos, Moni se venía con una espectacular picada para comer y ver una peli, ¡es genial!

Los chicos terminaron de armar el paquete con el juego, y lo subieron al sitio.

/images/uff/533412941_e39d3aff40_o.jpg

Entre participantes individuales y por equipos, se subieron 30 juegos antes de la hora límite. Tuvimos dos semanas para evaluar los juegos (los juegos se evalúan por los participantes del concurso, no por el público en general). Las evaluaciones corren por tres carriles:

  • Diversión: si el juego era divertido de jugar, si uno lo jugaría más de una vez.
  • Innovación: si el juego tenía algo nuevo en términos de tema, tipo de juego, etc.
  • Producción: gráficos, sonido y música, y que estos elementos estén balanceados.

En cada punto, se votaba del 1 al 5. También se podía indicar si el juego debía ser descalificado porque violaba algunas de las reglas de la competencia.

La cuestión es que al fin de semana siguiente me bajé tooooooodos los juegos, y los jugué (o intenté jugar) intentando evaluar estos parámetros. Y los voté, uno por uno. La mayoría de los participantes hizo lo mismo, y el sábado pasado caducó el plazo de las votaciones, y se eligieron los ganadores, un ganador por equipos y uno individual.

¡Y ganamos!

Siiiii, salimos primeros en la competencia por equipos, :D. Como pueden ver en los resultados, sacamos un 3.5 en diversión, un 3.5 en innovación, y un 4.5 en producción. En promedio, 3.9 puntos.

Y el equipo de Python de Córdoba salió tercero, ¡felicitaciones para ellos también! Realmente demostramos que PyAr está para cosas grandes, :D

Pueden bajar el juego de acá. Para probarlo, tienen que tener Python instalado (lo pueden bajar de acá) y PyGame (de acá).

Juéguenlo y me cuentan, :)

Comentarios Imprimir

Bienvenida, Primavera

Con su boina calada, con sus guantes de seda su sirena varada, sus fiestas de guardar su "vuelva usted mañana", su "sálvese quien pueda" Su partidita de mus, su fulanita de tal Con su todo es ahora, con su nada es eterno con su rap y su chotis, con su okupa y su skin aunque muera el verano y tenga prisa el invierno la primavera sabe que la espero en Madrid

Con su otoño Velázquez, con su Torre Picasso su santo y su torero, su Atletic, su Borbón sus gordas de Botero, sus hoteles de paso Su taleguito de hash, sus abuelitos al sol Con su hoguera de nieve, su verbena y su duelo su dieciocho de julio, su catorce de abril A mitad de camino entre el infierno y el cielo yo me bajo en Atocha, yo me quedo en Madrid

Aunque la noche delire como un pájaro en llamas aunque no dé a la gloria la Puerta de Alcalá aunque la maja desnuda cobre quince la cama aunque la maja vestida no se deje besar Pasarelas Cibeles, cárcel de Yeserías Puente de los Franceses, tascas de Chamberí ya no sueña aquel niño que soñó que escribía "Corazón de María no me dejes así" Corte de los Milagros, Virgen de la Almudena chabolas de uralita, Palacio de Cristal con su "no pasarán" con sus "vivan las caenas" su cementerio civil, su banda municipal

He llorado en Venecia me he perdido en Manhattan he crecido en La Habana, he sido un paria en París México me atormenta, Buenos Aires me mata pero siempre hay un tren que desemboca en Madrid.

Pero siempre hay un niño que envejece en Madrid pero siempre hay un coche que derrapa en Madrid pero siempre hay un fuego que se enciende en Madrid pero siempre hay un barco que naufraga en Madrid pero siempre hay un sueño que despierta en Madrid pero siempre hay un vuelo de regreso a Madrid

"Yo me bajo en Atocha", de Joaquín Sabina

El la espera en Madrid, yo la recibo abrazado a la mujer que amo.

Comentarios Imprimir

Disolviendo los finos hilos de la realidad

Resulta que tengo en MySQL una tabla con varios datos, de distintos tipos, y una clave primaria. Si quiero ver cómo está armada, le echo un describe:

mysql> describe prueba;
+-----------+-------------+------+-----+--------+-------+
| Field     | Type        | Null | Key | Default| Extra |
+-----------+-------------+------+-----+--------+-------+
| transact  | varchar(20) |      | PRI |        |       |
| campo1    | varchar(8)  |      |     |        |       |
| campo2    | int(2)      |      |     | 0      |       |
| campoN    | varchar(20) |      |     |        |       |
+-----------+-------------+------+-----+--------+-------+
4 rows in set (0.00 sec)

Todo bien hasta ahora.

Tengo un sistema, que maneja transacciones, y en un determinado momento escribe un nuevo registro en esa tabla. Luego, segundos o minutos después, el sistema va a la tabla y levanta los datos grabados, ya que recibe el mismo código de transacción que antes.

Considerando que la transacción es clave primaria en la tabla, yo sabía que podía encontrar un registro, o ninguno en el caso de que la segunda vez me hayan pasado un registro incorrecto. Grande fue mi sorpresa al ver que mi sistema fallaba de forma inesperada. Luego de tracear al bug hasta su origen, terminé viendo que la consulta me generaba no cero, ni un registro, ¡sino dos!

Sin poder creerlo, fui a la base de datos, a mano, y tiré la siguiente consulta...

mysql> SELECT * FROM prueba where transact=20060905093655001974;
+----------------------+----------+--------+------------+
| transact             | campo1   | campo2 | campoN     |
+----------------------+----------+--------+------------+
| 20060905093655001908 | 23540003 |      1 | 1234567890 |
| 20060905093655001971 | 00435665 |      1 | 0987654321 |
+----------------------+----------+--------+------------+
2 rows in set (0.01 sec)

Acá se me rompieron un poquito las estructuras, pero lo logré resolver.

En unos días posteo la solución (o mejor dicho, el desenlace). Pero a aquel/lla que lo explique primero, lo/a invito una cerveza.

Comentarios Imprimir

¿Casualidad?

¡Lo que son las casualidades!

Ayer puse este post, y hoy cuando abro el Página/12 me encuentro con el siguiente chiste:

/images/uff/533315874_cb5f2d2bb8_o.gif

El presente chiste pertenece a Daniel Paz & Rudy, publicado según indico arriba, y fue republicado aquí con el permiso correspondiente.

Comentarios Imprimir

Siguen jodiendo

Es conocida mis aversiones a las religiones en general, principalmente porque implican que uno deba someter sus razonamientos y creencias a sucesos impuestos por otros. No estoy en contra de todos los aspectos de una religión, algunas tienen algunas cosas filosóficamente buenas. Pero desde el momento en que te obligan a no razonar en algunas cuestiones, me opongo.

No es que tooooodo lo que uno crea deba tener base científica (aunque soy un gran fan de la ciencia), pero yo creo en lo que se me ocurre, no en lo que quiere otro, que tiene su propios propósitos. "Fe basada en la experiencia y el razonamiento", dice Ellie, un personaje de Contact, un libro de Carl Sagan.

Pero este post no está condicionado por todas las religiones, sino por la Católica. Y no voy a hablar de Grassi y como se le desbarata su defensa en las acusaciones de delitos sexuales a menores, o de que esa Iglesia prefiere a un niño con hambre que a un preservativo (¿será para no perder clientes?). No. Este post va por el lado de la ciencia.

Y no voy a hablar de historia. Aunque estamos 1000 años científicamente atrasados porque la Iglesia Católica, en el apogeo de su poder, impedía un desarrollo científico normal (como ejemplo, podemos citar el enfrentamiento con Galileo Galilei, que suele tomarse como el mejor ejemplo de conflicto entre la autoridad y la libertad de pensamiento en la sociedad occidental), este post viene a hablar de una pelea actual de la peor de las Iglesias.

Y es que los tipos siguen empecinados en hacernos creer que un día vino Dios y creó a Adán y a Eva, como seres humanos "finales", a su imagen y semejanza, y que de ahí venimos el resto.

Existe otra teoría, de un lunático que entre alguna de sus alucinaciones sentó las bases de lo que llamamos teoría de la evolución. Este muchacho, que estaba tan loco como para recorrer el nuestro sur en un viaje, no era más que Charles Darwin. Un loco.

Claro, a este loco lo reconfirman todos los científicos. Pero lo yanquis, cada tanto llevan a la corte la decisión de permitir enseñar en las escuelas que el hombre desciende del mono. Y del pez. Y de una ameba. Etc. O sea, que las especies evolucionan durante miles de millones de años, a través de la selección natural, heredando pequeñas variaciones que mejoran las habilidades individuales para sobrevivir y reproducirse.

/images/uff/533315820_bb4df4c5e6_o.gif

¿Y por qué no quieren que se enseñen las teorías de Darwin en los colegios? Porque la Iglesia tiene la verdad, y es que Dios creó al universo y a todo en él. No vamos a dejar que mientan a nuestros niños, ¿no? Lo que pasa es que algunos tienen la verdad de su lado, parece, como George Bush que dijo que "En el tema de la evolución, todavía no está dicho en como Dios creó a la Tierra".

Y para que nos quede claro de que no es un movimiento de algunos locos, sino que es algo organizado y dictado por las máximas autoridades de la Iglesia, el mes pasado el Papa Benedicto XVI echó a su Astrónomo en Jefe (director del Observatorio del Vaticano) por haber contradicho en varias declaraciones públicas a la teoría del diseño inteligente (que justifica la teoría "Adán y Eva").

Pensemos. Razonemos. Critiquemos. Porque la Iglesia hace miles de años que tiene el objetivo de dominar al mundo. Y es a costa nuestra.

Comentarios Imprimir