@ agnasg

agnasg


World of Warcraft

10-12-2008 4:51 AM

Como los proyectos personales y de trabajo están bajando de intensidad debido a la época decembrina (y el confort de trabajar pocos proyectos incluyendo al de pentaho), he tenido tiempo de jugar nuevamente World of Warcraft (WOW). ¡Ey! Esta es una página de programación de juegos, por supuesto que soy un jugador!. No soy, sin embargo, un jugador hardcore. Necesité alrededor de un mes para llevar a mi mago Desik a nivel 20, cuando es frecuente que los jugadores hagan lo mismo en los 10 días gratis que ofrece Blizzard. Además, no soy del estilo mata monstruos sino más bien el explorador, por lo que prefiero conocer los territorios y, en el camino, ejecuto las misiones. Ayer, por cierto, terminé mi misión numero 100. WOW es muy cuidadoso en otorgar a los jugadores todo tipo de premios, recompensas y reconocimientos para mantener la moral alta. Quizás a eso se deba su éxito, y popularidad (11 millones de suscripciones y creciendo todos los días).

La experiencia ha sido doblemente reconfortante y doblemente conveniente porque me ha permitido descansar (si a eso se puede llamar descanso: desde Ironforge hasta Thelsamar hay unos cuantos kilómetros y los he tenido que recorrer a pie varias veces (bueno, no yo, mi personaje, pero es lo mismo, ¿no?)). También me ha permitido palpar como luce un MMORPG moderno. Mi expeciencia se reduce a pocos juegos de este estilo, principalmente Eternal Lands y Tibia (claro jugué muchísimo Tribalwars y Urban Dead, pero esos son juegos distintos). He pensado jugar también Warhammer pero como ya dije, soy del típo explorador, y las guerras y la confrontación no es mi parte favorita (hay otro juego de combate intensivo llamado Darkfall esperado desde hace muchos años, cuya publicación será alrededor del 22 de enero.

Así que estoy cumpliendo con uno de los requisitos de todo programador de juegos: jugar… juegos. Tengo también Fallout en mi lista de juegos de diciembre, que es un juego viejo (acaba de salir la tercera parte) pero que tiene un especial interés para mi por su fuerte componente RPG.

Los enlaces respectivos a todo lo comentado está en order desordenado a la izquierda.

Mudanza finalizada

01-12-2008 8:01 AM

Luego de un mes de lentas actualizaciones y modificaciones, la página quedó lista en su nuevo servidor (gracias fxdomains.com!). Estoy seguro que todavía quedan algunos enlaces huérfanos, pero al menos lo más importante ya está operativo. Inclusive hice una actualización a la página Receta para Programar un juego, que estaba bastante desactualizada (anteriormente llamada Programación de un Juego en C/C++, pero que ahora tiene un nombre más general).

Estoy haciendo una modificación en mi modus operandi, ahora voy a colocar los enlaces en el blogroll (a la izquierda). De esa forma su mantenimiento va a ser más fácil.

Sucedió lo imposible (¿es posible? Sí)

11-11-2008 4:25 AM

Estaba leyendo Reddit, cuando ví el siguiente enlace: “New book “Practical Artificial Intelligence Programming in Java” is available in print and as a free PDF download”, (Nuevo libro: “Programación de Inteligencia Artificial en java” disponible como una descarga PDF gratis)  y, sorprendéntemente agarré el mouse e hice “¡click!”. ¿Qué me está pasando? ¡Es java! Siempre he pensado que java es una enfermedad terminal, ¿qué hago descargando un libro que habla de una desgracia? Bien, hasta lo imposible puede suceder. Como estoy trabajando este proyecto usando Mondria (que es una aplicación en java) se me ocurrió por unos milisegundos que sería una buena idea hojear el libro para familiarizarme con (y recordar)  el lenguaje. En realidad, yo estuve programando en java hace 7 u 8 años, hasta que caí al suelo convulsionando. Pero bueno, un millón de moscas no pueden estar tan equivocadas así que le voy a dar una nueva oportunidad. Voy a tener que programar algo en ese lenguaje, así que ni modo. Ríndete. Los murlocs te tienen rodeado. Hasta lo imposible puede suceder. Así que abre tu mente.

Las actualizaciones tendrán que esperar… java… otra vez

10-11-2008 4:41 PM

La lista de correcciones es extensa: agregar los usuarios (hay 100 y pico de personas registradas), todavía en IE las listas se ven centradas, los enlaces a la izquierda todavía están ocultos, etc.. Estoy envuelto en un proyecto lamentablemente con java, así que estaré missing in action por un buen tiempo.

Para poner el cuento corto, estoy haciendo un datawarehouse con Mondrian, y bueno, Mondrian y su visualizador (JPivot) están hechos en java. Por si están interesados esta es una solución software libre, de Inteligencia de Negocios. Yo solía trabajar con Business Objects y Cognos, pero como ahora pasaron a formar parte de los grandes imperios (Sap e IBM, respectivamente) ya no me resultan tan simpáticos. Mondrian es realmente fascinante como herramienta, aunque su instalación y configuración es un verdadero fastidio (java, por supuesto). El problema es que las posibilidades de cometer errores son astronómicas, y java, con su listado de errores y toda la información sobre lo que estaba haciendo cuando cometió el error es inútil para el desarrollador desprevenido (y también para el que está alerta)

Por si fuera poco mi instalación incluye a mysql así que hay que usar el tristemente célebre mysql-connector-java (estoy usando la versión 5.1.7), lo cual suma un nivel adicional de problemas. Si colocas el string de conexión mal, el error producido puede ser cualquier cosa, y entonces no sabes si mysql está fallando, o tomcat (el servidor de aplicaciones), o java o es Mondrian. Una pesadilla.

Mi primera instalación tuvo una diversión extra, que fue el terrible “no se puede cargar el com.mysql.jdbc.Driver”. En todas partes (aquí, aquí, aquí, aquí, aquí, y aquí ) dice que o no es necesario, o que basta con instalarlo en un directorio llamado TOMCAT_HOME/common/endorsed). Inclusive se sugiere que debe ser instaldo en TOMCAT_HOME/common/lib (peor aun, la guia de instalación dice que lo  coloques en TOMCAT_HOME/common/endorsed si hace falta: ¿qué demonios significa si hace falta?). En mi caso, por razones que desconozco todavía (posiblemente debido a que mi máquina es de desarrollo y está envenenada) nada de eso funcionó. Bien al final, luego de 3 horas masticando el problema se me ocurrió colocarlo en TOMCAT_HOME/lib… y voilà… funcionó. Eso no está documentado en ninguna parte. Por supuesto, antes de eso probé colocar el path original del conector en la variable CLASSPATH (en Panel de Control->Sistema->Opciones Avanzadas->Variables de Entorno), lo declaré en mondrian.properties, etc, etc, etc. Esas 3 horas se las voy a cargar, nuevamente, a java. Otra vez…