Buscar
Social
Ofertas laborales ES
miércoles
mar182009

IBM en conversaciones para comprar Sun Microsystems

Según el Wall Street Journal [1] [2] el gigante azul estaría adelantando negociaciones para adquirir Sun.

Esto se da quizás en respuesta a los últimos movimientos en el mercado de servidores y centros de datos; recordemos que esta semana CISCO  presentaba sus productos de ingreso al mercado de Servidores, presionando a HP, IBM y SUN.

  • Que consecuencias traería esta unión? más despidos supongo.
  • Cuales serian los aspectos positivos o negativos?.

Amanecerá y veremos ...

 

[1]   IBM in Talks to Buy Sun in Bid to Add to Web Heft - en The WSJ [Requiere Suscripción]

[2]  IBM’s Flirtation with Sun: the Next Volley in the Data Center War - en The WSJ

miércoles
mar182009

Artículo sobre "Memory leaks" en Java

Aunque sea en inglés, merece la pena echarle un ojo a este artículo que explica bastante bien lo que son los "memory leaks" en Java, como se manifiestan y algunas técnicas para encontrar el origen del problema. Al menos para los que no lo han tenido que hacer nunca, ya que es un tema que cuando empiezas sueles ir bastante perdido.

 

How to Fix Memory Leaks in Java (By Veljko Krunic)
martes
mar172009

Programar mediante la coincidencia: el caso de JBoss 5.0 GA

Una de las cosas sobre las que el libro del programador pragmático advierte es sobre "programar por coincidencia". Esto se aplica a aquellos programadores que toquetean el código hasta que funciona, pero realmente no están seguros de lo que hace y no se han molestado en asegurarse si su código realmente funciona, o funciona ahora mismo por casualidad.

Vitaly Mikheev describe uno de estos problemas, ni más ni menos que con el JBoss 5.0 GA. El servidor de aplicaciones funciona perfectamente en el JRE de Sun, pero tan siquiera arranca en el de IBM, el de Oracle o el de Excelsior. La verdad, es sorprendente que no hubiesen testeado el servidor de aplicaciones con otros JRE antes de ponerle la etiqueta de "GA". Cualquier programador Java con experiencia debería saber que aunque todos los JRE hayan pasado el mismo test de compatibilidad, no quiere decir que se tengan que comportar de modo idéntico.

En este caso, el problema viene de que al usar el API de reflexión JBoss espera que un determinado método que devuelve los constructores de una clase devuelva dichos constructores en un orden predeterminado, mientras que la especificación dice de modo claro que estos constructores pueden devolverse en cualquier orden. Por casualidad, resulta que el JRE de Sun los devuelve en el orden que ellos esperan (casualidad que seguramente se basa en que ese es el JRE empleado en el desarrollo del servidor). Esto no sucede en los demás JREs, por lo que el servidor tan siquiera arranca.

A mí me tienen sucedido cosas parecidas. En su día, hice una aplicación Swing en Java 1.2 con el JDK de Sun. Funcionaba perfectamente. Cuando salió el JDK 1.4 de Sun mi aplicación no pintaba la pantalla, y provocaba un pico de CPU del 100%. El problema es que dentro de un método paintComponent() estaba llamando al método setSize(). No sé cómo se gestionaba esto con los JDKs 1.2 y 1.3, pero en el 1.4 (como parece lógico) cambiar el tamaño de un componente hace que se vuelva a pintar, y mi método de pintar le volvía a cambiar el tamaño, lo que hacía que se volviese a pintar...

Mi error, al igual que el de JBoss, tiene su raíz en conformarse con que el código funcione y no haberse molestado en comprender realmente lo que hace y cómo funciona el API que estás empleando. ¿Alguien más ha tenido experiencias similares a estas ? 

martes
mar172009

Javacup 2009: Disponibles proyectos para eclipse y netbeans

Comentar que he dejado disponible en javahispano.net en forma de proyectos eclipse y netbeans el framework con las ultimas modificaciones correspondientes a lo solicitado en la encuesta.

En esta etapa solicitamos nuevamente cooperación para que descarguen y prueben, y así descartar fallos y tener lo antes posible la versión definitiva.

En relación a las modificaciones, se han agregado tres constructores al comando ComandoGolpearBalon. El primer constructor corresponde a avanzar con el balón, y en el se indica el índice del jugador que avanzara con el balón. Los otros dos constructores son copia de los constructores originales de la clase pero remplazan el parámetro boolean remateAlto, por double anguloVertical. El ángulo vertical podrá estar entre 0 y Constantes.ANGULO_VERTICAL_MAX, y remateAlto al ser true toma un ángulo Constantes.ANGULO_VERTICAL.

Todo esto quedara más detallado cuando termine con la edición del nuevo tutorial.

En la pagina de descargas he dejado videos que muestran como montar los proyectos en eclipse y netbeans. Luego publicare mas videos explicando como usar el "Asistente", el programa "Principal" y otro video explicando como construir una tactica básica.

Bueno un saludo para todos.

martes
mar172009

Creación de soluciones modulares con GWT y Maven

Google Web Toolkit (GWT) se ha convertido en uno de los frameworks más populares para el desarrollo de aplicaciones web que siguen el paradigma AJAX.

Hemos publicado un artículo en el que exploramos la creación de aplicaciones web modulares utilizando GWT y Apache Maven para la construcción de la solución y la gestión de sus dependencias.

El artículo sobre creación de soluciones modulares con GWT y Apache Maven se encuentra publicado en este enlace.