La Coctelera

Verbose mode

Categoría: Java

30 Marzo 2007

Que son 60 megas, a ver si te enteras


Esta imagen es parte de un correo que me envió un amigo hace unos días. Llevaban unos meses con problemas en sus servidores, cada dos días los dos Jboss que mantien el portal que desarrollan se morían y tenían que reiniciarlos.

El listado de la imagen muestra el tamaño de los atributos de una sesión de navegación de un usuario. Hasta que me llegó este correo creo que jamás le había prestado demasiada atención a estas cosas pero se supone que una sesión de navegación debe estar entre 1KB y 10KB.

servido por verbosemode sin comentarios compártelo

11 Diciembre 2006

Java 6 lanzado oficialmente

Sun ha decidido lanzar oficialmente la nueva versión de Java justo hoy, el día que en el que comienza la edición de este año de Javapolis y justo el día que yo he comenzado a escribir las primeras líneas de código de un pequeño gran proyecto con Java 6. La nota de prensa de su lanzamiento se puede leer en onjava.com, pero para los que quieran saber que les espera les dejo un peuqeño resumen con algunas novedades:

  • Soporte para lenguajes de script, ahora puedes invocar tus métodos javascript desde el propio código java. Lo primero que probé y de lo mejorcito.
  • Soporte nativo de xml. Mapear archivos xml con anotations es los más intuitivo que he visto nunca.
  • Soporte nativo de web services, muy facil partiendo del punto anterior.
  • Acceso al API del compilador, ¡ahora puedes compilar clases desde tu propío código!
  • JDBC 4, por si alguien aun no usa algún ORM.
  • Y muchas otras mejoras en anotations, networking, swing...

Pero si hay algo que realmente me ha llamado la atención y siempre echaba de menos es ¡un método para recorrer los Collections al reves! ya era hora XD.

Tags: java 6

servido por verbosemode sin comentarios compártelo

4 Diciembre 2006

Los que programamos con Java también tenemos nuestro corazoncito

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.

Tags: ruby, java

servido por verbosemode 3 comentarios compártelo

17 Octubre 2006

Programando tareas periódicas al estilo EE

Este artículo está motivado por un reciente post en la lista del ruby on rails el español.

En él, alguien preguntaba sobre la posibilidad de programar tareas periódicas de una aplicación hecha con ruby. Tras algunas respuestas se llegó a la conclusión que la mejor forma de hacer esto es creando una script y asignarle una tarea en el cron.

Tras navegar un rato y buscar alguna alternativa en ruby, di por hecho que si la gente que sabe más de esto que yo no aporta otra solución es porque no la habrá.

Bueno, el caso es que para java si que existen otras alternativas. Servidores de aplicaciones como JBoss incorporan programadores de tareas basados en JMX y muy fáciles de configurar. Pero que pasa si no usamos un servidor de aplicaciones o con un Tomcat nos es suficiente.

La gente de OpenSimphony ha desarrollado Quartz, un sistema de programación de tareas que puede integrarse tanto en proyectos JEE como JSE.

Entre sus características hay que destacar que se puede tanto configurar embebido en otra aplicación, como inicializarlo a través de un Servlet. Permite almacenar las tareas en una base de datos via JDBC o directamente en memoria. Las tareas son configurables por xml y soporta entornos en cluster y transacciones JTA.

Este sistema tiene muchas bondades y aunque mi primera idea era escribir un breve tutorial sobre su configuración y uso, creo que hubiera sido demasiado extenso para un post. Quizá si saco algo de tiempo entre las 5 y las 6 d la mañana me anime y lo suba en algún formato o lo mande para publicar en javahispano.

Tags: quartz, java

servido por verbosemode sin comentarios compártelo

7 Octubre 2006

Robocode remember

Hace poco un amigo me pregunto como podía aprender Java. Sobre su curva de aprendizaje, y cómo podía empezar a tocar código sin morir en el intento. Conforme intentaba explicarle deferencias entre JSE y JEE, para que sirve un servidor de aplicaciones, ORM, frameworks... iba notando como un sentimiento de pánico entraba en su cuerpo.

Vale, siempre creo que cuando alguien quiere aprender Java es para convertirse en un gran guru de las aplicaciones mastodonticas y no por el simple hecho de conocer algo nuevo y pasar el rato.

Entonces recordé el fantastico robocode. Con lo bien que me lo pasaba intentando programar un robot decente y aplicar los pocos conocimientos de agentes inteligentes que una profesora nefasta me había intentando enseñar.

Ya ha pasado un mes y seguimos programando robots. Creo que cada vez van a peor pero vuelvo a sentir ese gusanillo que notaba cuando empecé.

Tags: java, robocode

servido por verbosemode sin comentarios compártelo

14 Septiembre 2006

Pasando el rato

Graciás a Blat descubí Code Golf, uno de mis últimos pasatiempos.

En esta página ofrecen retos de programación para realizar en ruby, php, perl o python. Aunque todavía soy novato con ruby y estoy lejos de los mejores me ayuda a soltarme un poco con este lenguaje que cada día me tiene más enganchado.

Como cada cierto tiempo me vuelve la vena de sacarme una certificación de Sun tengo por ahí guardada otra página de retos para java.

En Java black belt podrás demostrar todo el conocimiento que tienes con tecnologías relacionadas con Java. Pero no sólo hay exámenes tipo para certificarte en Java, puedes demostrar tu dominio de frameworks como Hibernate, Struts, Spring e incluso existe un examen beta de Ruby.

Han creado un sistema de "cinturones" como si fuera un arte marcial donde vas subiendo de cinturón con forme más pruebas pasas y más colaboras.

Bueno si alguien se cree un experto en su trabajo que eche un ojo a estas páginas y lo demuestre.

servido por verbosemode 1 comentario compártelo

9 Septiembre 2006

Java más cerca de Ruby

Ya se sabía que Sun Microsystems quería añadir soporte para lenguajes dinámicos en la próxima versión Java, pero justo ayer se garantiza el soporte para Ruby al contratar a los dos máximos desarrolladores de JRuby para que trabajen a tiempo completo en este gran proyecto.

Algunas notas que Charles Nutter, uno de los dos desarrolladores de JRuby, deja en su blog:

The primary goal is to give JRuby the attention it really needs. The potential for Ruby on the JVM has not escaped notice at Sun, and so we'll be focusing on making JRuby as complete, performant, and solid as possible. We'll then proceed on to help build out broader tool support for Ruby, answering calls by many in the industry for a "better" or "smarter" Ruby development experience. I'm also making it a personal priority to continue growing the JRuby community, foster greater cooperation between the Java and Ruby worlds, and work toward a "whole-platform" Ruby-on-JVM strategy for Sun.

No tengo mucha experiencia con JRuby pero ya estoy deseando que lancen la nueva versión de Java

Tags: ruby, java

servido por verbosemode sin comentarios compártelo

29 Agosto 2006

Cheatsheets

Ahora que están de moda los cheatsheets creo que me voy a hacer un poster con los que uso normalmente para tenerlo bien a la vista. Aqui van algunos de mi colección:

Y si estas no son suficientes siempre se puede buscar en del.icio.us.


Actualización:Buff!! esta me acaba de salvar la vida:

Apache mod_rewrite cheatsheet

servido por verbosemode sin comentarios compártelo


Sobre mí

David Calavera, programador oscense en el exilio madrileño, intentando hablar sobre tecnología, programación, java, rails o lo que vaya surgiendo.

Fotos

verbosemode todavía no ha subido ninguna foto.

¡Anímale a hacerlo!

Buscar

suscríbete

Selecciona el agregador que utilices para suscribirte a este blog (también puedes obtener la URL de los feeds):

¿Qué es esto?

Crea tu blog gratis en La Coctelera