Java, liberanos o muere

GanymedeDesde hace algunos años que utilizo Eclipse como IDE para el desarrollo de mis proyectos Java, ya sean academicos o de "produccion" :ejale: Algunos me podran decir que NetBeans es mejor (naahh!!), que IntelliJ es muuuuucho mejor (si, tienen razon! :aplauso:), *MyEclipse* es mejorcito (abarrotados de plugins que nadie usa :auch:), pero, por comodidad y sobre todo look (NetBeans parece IDE para desarrollo de aplicaciones para parvulos) me quedo a ojos cerrados con Eclipse. La semana pasada (en mitad de toda la bataola que significa realizar una entrega al cliente) se me ocurrio actualizar la version de Eclipse desde la 3.3 Europa a la 3.4 Ganymede (si, lo se, extremadamente mala idea :lado: y pasandome por el aro todas las recomendaciones que yo mismo realizo en clases) y me lleve la siguiente grata sorpresa: Continue reading Eclipse Ganymede
Read more

JavaLeyendo la pagina Worse than Failure (donde explican pifias en el mundo IT) me encontre con la siguiente linea de codigo en el interior de una clase Java de la cual hacen mofa ..

private static final long serialVersionUID = RandomUtils.nextLong();
.. lo cual me genera la siguiente pregunta: Todos los programadores que dicen saber Java, entenderan o se daran cuenta de la tremenda-ni-que-pifia :auch: que hay en esa linea de codigo.
Read more

N-ReinasEn el curso de programacion 1 (programacion orientada al objeto, contenedores, recursion y backtracking) que estoy dictando este semestre, vimos el tipico problema de backtracking llamado las N-Reinas :cool:, pues bueno.. en la siguiente tabla se resumen los resultados del algoritmo que intenta encontrar TODAS las soluciones con un tablero de tamaño entre 1 y 20. Como pueden ver hasta las 13 reinas el algoritmo es veloz, sin embargo a partir de ese tamaño la demora es cada vez mayor, tanto asi que aun esta calculando la cantidad de soluciones del tablero de 18×18 :eek:. Para un tablero de 17×17 se tardo algo mas de 9 horas y media. El procesador sobre el cual esta corriendo es un Intel Xeon de 2.8 Ghz. Update: Encontro la solucion al tablero de 18×18 (3 dias, 8 horas, 8 minutos y 29,3 segundos) !!! La tabla a continuacion: Continue reading Problema de las N Reinas
Read more

I Love UnicodeSi, lo puedo decir a los 4 vientos: Yo [?] Unicode. Hoy en la mañana me levante con las pilas cargadas y me dije: Resolvere el glitch de encoding que tiene SiGEN :yes:. Tecnicamente hablando, una parte de SiGEN consiste en una serie de paginas webs donde el usuario tiene acceso a escribir informacion, la cual en forma posterior es almacenada en una base de datos PostgreSQL. Cual es el problema que se detecto hace poco :confused:, que cuando el usuario corta y pega informacion desde Word a SiGEN, este lanza la siguiente exception: Could not convert UTF-8 character 0x00e2 to ISO-8859-1. Cual era el problema y como se resolvio: Continue reading I Love Unicode
Read more

SigenEn el proyecto Fondef-Sigen que participe estos 2 ultimos años se utilizaron tecnologias Java como JDBC, Tapestry, JSP, Servlet, Swing, SWT, Smack (Jabber), Log4J, Weka, Jakarta Commons Library, etc. Una parte del mismo consistio en desarrollar una aplicacion de escritorio para la administracion del sistema, esta se escribio originalmente utilizando SWT y luego de algun tiempo (cuando empezo a quedarse estancada por los kilos de codigo que tenia) decidimos mudarnos a Swing 😎 Swing es una API de Java desarrollada por SUN Microsystems y se incluye en la distribucion de la JVM, hace tiempo atras tenia problemas de performance, pero en la actualidad hay que reconocer que se desempeña bastante bien. Porque cuento todo esto?, pues bueno, dedocraticamente 😮 me toco desarrollar una.. Continue reading Variables no documentadas de Swing
Read more

SiGENBueno, como ya es la usanza.. juego nuevo implica: gente nueva, litros de sudor, carreras nuevas, viajes a santiago, bugs corregidos, bugs nuevos, war nuevo, base de datos nueva, visibilidad de eventos nueva, etc.. uff.. menos mal que geneticamente soy inmune al stress. 😛 y pues bueno, como tenia que ser: El juego resulto de maravilla (por fin). Tecnicamente SiGEN se encuentra escrito en Java usando Servlet y Tapestry como presentacion. La capa de persistencia que se conecta a PostgreSQL fue creada en el D.I.S.C. y se piensa a futuro portarla a Hibernate. Como contenedor de servlet estamos usando Tomcat y hasta hace algun tiempo sufriamos de la odiada java.lang.OutOfMemoryException luego de un largo tiempo de servicio :dead:, como lo solucionamos?.. Continue reading Juego SiGEN Antofagasta
Read more