Creando equipos…

Esta semana empece más en forma a trabajar con un nuevo equipo en mi trabajo, no me refiero a hardware, si no a ingenieros…

Hemos arrancado el primer proyecto con este equipo, debo decir que es nuevo porque apenas se incorporaron a la empresa y están empezando. Me ha gustado mucho darles la bienvenida a la empresa y mostrarles poco a poco lo que hemos ido desarrollando.

Son curiosos y la curiosidad es algo que me agrada mucho, estos chavos se ven muy bien y seguro haremos un buen equipo. Es justo la motivación que necesitaba. 😀

Pair Programming alone in Action¡¡¡

Pair Programming alone in Action¡¡¡, originalmente cargada por d0mix.

Un compañero de la oficina me tomo esta foto mientras hacia un poco de Pair Programming, el único detalle es que lo hacia solo…

Es lo malo de tener a la demás gente muy ocupada.

Grails con soporte a Español de caja…

He estado usando Grails desde hace unos seis meses, aunque desde hace dos estoy desarrollando un pequeño proyecto. Este proyecto me sirvió para aprender Grails y aplicarlo de manera practica.

Grails tiene una gran comunidad, la lista de correo de usuarios tiene mucha actividad, pero lo que me sorprendió un poco es que no trae soporte a español de caja (out-of-the-box). Mi archivo de propiedades con las traducciones debidas lo he puesto a disposición de la próxima distribución de Grails, asi que ya tiene soporte al español de caja.

Estoy estudiando a fondo el funcionamiento de Grails espero poder contribuir con algo más que traducciones a futuras versiones. Asi­ es el OpenSource.

—————-
Now playing on iTunes: Led Zeppelin – Whole Lotta Love (Medley)
via FoxyTunes

De cursos…

El próximo mes cumplimos un año de estar dando cursos. El primer curso la verdad que si me costo bastante, dolio, pero salio adelante, muchas desveladas, cansancio, pero salio…

Por el momento estamos impartiendo un par de cursos, una de Java Basico y otro de Spring Framework. Hace unos dias terminamos de darle un seminario de Java a la Suprema Corte de Justicia. Hemos creado una empresa, vaya se inicio el camino.
Hoy por la mañana me contacto un chavo del primer curso de Spring que dimos, me agrado bastante el comentario que me hizo, me dijo: “Gracias al curso he podido aportar mucho a varios proyectos, gracias”. Me hizo el día.

Protected

Desarrollador 1 (D1): Hola Desarrollador 2.
Desarrollador 2 (D2): Hola.
D1: Tienes una clase abstracta y de esa heredan otras clases. De las clases heredadas estas usando una variable de instancia de la clase base. Para poder hacer eso la variable de instancia tiene el modificador de acceso protected, el modificador de acceso adecuado es private. Para poder acceder a la variable de instancia usa un accesor por favor.
D2: Pero no pasa nada es lo mismo.
D1: Por favor cambialo.
D2: Pero es lo mismo.
D1: No es adecuado hacer eso.
D2: Pero no pasa nada, es lo mismo.
D1 (Pensando): Mierda, que lo cambies cabrón.
D1: Debes cambiarlo.
D2: Es que es lo mismo, no necesitamos un metodo accesor.
D1: No debemos acceder directamente a las variables de instancia, marcalas como private.
D2: Pero entonces, ¿porque Java tiene protected?. Si lo tiene lo debemos usar.
D1: Asi es, Java tambien soporta goto y label’s y no por ello vamos a hacer ciclos con eso, ¿o si?

Blogeando desde Java

Estoy trabajando en unas clases Java que me permitan bloggear desde aplicaciones Java. En este blog uso WordPress, así que a través del soporte XML-RPC que tiene, estoy haciendo hablar a WordPress y Java.

Para poder trabajar con XML-RPC desde Java, estoy usando Apache XML-RPC Client, es muy sencillo su uso, estoy sorprendido del avance que he tenido usando esta librería. Estoy usando también Spring, pero creo que esta sobrado, ya que solo lo uso para DI, y como que no se justifica para solo eso. Espero que la próxima semana tenga un avance considerable para poner el código disponible.

Justificaciones “Pro”

No cabe duda que desde que se inventaron los pretextos se acabaron los tontos, como me dice mi papá.

Hace rato estábamos revisando unas clases que un arquitecto programo. Encontramos unos fragmentos similares a estos (He cambiado algunas cosas para proteger al inocente):

public ClaseProgramadaPorArquitecto {
private Map params;
public ClaseProgramadaPorArquitecto() {
params = new HashMap();
params.put(“param1”, new String(“Param 1 como cadena”));
params.put(“param2”, new Long(89444));


// Y así muchos, muchos, muchos parámetros…
}
public Object getParamValue(String paramName) {
Object result = null;
if(paramName.equals(“param1”)) {
result = params.get(“param1”);
}

if(paramName.equals(“param2”)) {
result = params.get(“param2”);
}


// Y así muchos, muchos, muchos parámetros…

return result;
}

}

Mi reyecito le pregunto al arquitecto que porque no uso BeanUtils para facilitar el trabajo, a lo que el arquitecto le contesto: “Para no meter dependencias extras a mi código”. Justo en ese momento veo en el código algo como esto:

Log log = LogFactory.getLogger(ClaseProgramadaPorArquitecto.class);

No pude retener mi comentario: “¿Y porque estas usando CommonsLogging?”. El arquitecto aplico la máxima de Fuckowski: “Tan grande es la chorrada que es imposible debatirla”.

No replique su respuesta por propia salud mental.