29 marzo 2008

10 años de ...

Hace 10 años un chileno fue el mejor del mundo, un chileno que se mantuvo en el tope por 4 semanas arrebatando el primer lugar a un Peter Sampras que llevaba un reinado de 102 semanas, en un partido magistral ante Andre Agassi gana el “súper 9”, pocos pueden decir que fueron el mejor del planeta y pese a lo inmaduro y rebelde que demostró ser en aquellos tiempos, no se puede negar que fue y por que no decirlo es aún un ídolo. Su avance fue insospechado, tratandose de un pequeño tenista, que no tenia gran fuerza pero si una excelente zurda.
Creo que es difícil que algún otro deportista (chileno) se pueda jactar de ser el mejor del mundo (al corto plazo), menos en el deporte blanco ya que los exponentes actuales dejan bastante que desear, con "garra" se puede ganar un par de partidos pero con talento se ganan los torneos.


24 marzo 2008

Double Buffering j2me

La técnica de pantalla en segundo plano consiste en lo siguiente: Muchos dispositivos que no poseen una gran capacidad computacional provocan un parpadeo a la hora de actualizar los gráficos en pantalla. En estos casos, lo ideal sería hacer todas las actualizaciones gráficas en memoria y posteriormente volcar el contenido de memoria en pantalla. Esta técnica es la que se conoce como double buffering. Algunos de estos dispositivos implementan esta técnica sin que tengamos que escribir ni una sola línea de código. Para saber si el MID donde ejecutamos nuestra aplicación aplica esta técnica, existe un método de la clase Canvas que nos devuelve true o false en caso de que aplique esta técnica o no: boolean isDoubleBuffered().

En caso de que el método nos devuelva true, no tenemos que hacer absolutamente nada especial ya que la implementación del MID se encarga de hacer todas las actualizaciones gráficas en memoria para posteriormente, volcarlo en pantalla. En el caso de que el método retorne false, nos indicaría que el dispositivo no es capaz de implementar esta técnica. En este caso es posible implementarla por nosotros mismos. Para ello, lo que haremos será crear una imagen mutable del tamaño de la pantalla del MID y efectuar todas las operaciones gráficas en el objeto Image para, posteriormente volcar el contenido de esta imagen por pantalla.

1.- Crear la imagen mutable del tamaño de la pantalla.
Image displaysecundario;
if (! isDoubleBuffered()){
displaysecundario= Image.createImage(getWidth(),getHeight());
}

2.- Realizar todas las actualizaciones en el objeto Image dentro del método paint(Graphics).
protected void paint(Graphics g){
Graphics displayprimario = g;
g = displaysecundario.getGraphics();

// Realizamos todas las operaciones para actualizar la pantalla en g.
...
//Realizamos el volcado en pantalla
displayprimario.drawImage(displaysecundario,0,0,Graphics.LEFT | Graphics.TOP);
}

Java un lenguaje popular


Mas estadisticas :) ... mensualmente se testea la popularidad de los lenguajes de programacion, y java encabeza la lista con un 20.6%, por su parte Ruby manteniendose estoicamente en el top 10. Por el lado del Sw propietario, Visual incrementa en 2 posiciones con respecto a igual mes del año anterior (que lastima XD)

PD: estoy un poco aburrido en la pega :)

Predominio de Apache en Web-Server

Apache domina ampliamente la web, en lo que concierne a servidores, en el sitio pingdom se muestra un interesante top 100, el que arroja los siguientes resultados.