Buscar
Social
Ofertas laborales ES
sábado
mar312007

Como ser un Gurú Java sin conocer Java (Al menos e

Hola a todos, encontré en un blog que acostumbro leer un post muy cómico, me tomé la molestia de traducirlo para publicarlo aquí, cualquier parecido con la realidad es pura casualidad.



Disfrútenlo.





Como ser un Gurú Java sin conocer Java (Al menos en reuniones):



Escribí algunas estrategias para "expertos" y las llamé VooDoo Consulting Style. Las estrategias fueron consejos comunes e independientes del lenguaje para consultores "high end".



En el espacio java, es aún mas fácil ser un gurú reconocido - casi sin esfuerzo adicional.



Escribiendo código, o siendo productivo es peligroso (algo puede salir mal). A veces es más fácil ser un

gurú sin codificar:



1. Antes del proyecto inicial pasa por jcp.org. Revisa todas las JSR's, aprende algunos números y títulos (5 bastan en general). Si tienes que reunirte con desarrolladores más avanzados - además lee el resumen. Menciona los JSRs durante la reunión y disfruta del impacto.



2. Si el proyecto va a ser realizado con Java EE: Enfatiza la amplitud de Java. Apunta a lenguajes elegantes como Python o Ruby.

No es necesario conocer estos lenguajes. Es poco probable que éstos sean usados en un ambiente Java EE. Si éstos lenguajes van a ser elegidos ir al punto 6.



3. Mencionar JDK 1.7 (esta estrategia es muy útil -> La mayorïa de las compañías están pensando ahora actualizar a Java5) y closures.

En general es suficiente con sólo mencionar el término "closure" en el contexto de Java.



4. Espera una cantidad aleatoria de tiempo. Elige algún tema y trata de iniciar una discusión; SOA vs. ROA, (Ruby on Rails vs. Java EE), Thin vs. Rich, Ajax vs. Rich, (Swing vs. SWT), Netbeans vs. Eclipse, Java EE vs .NET, (SOAP vs. REST) y OSGI y JSR-277. Los que

están entre () son mas graciosos y alargan la conversación.



5. Utiliza todos los términos relacionados con Web 2.0, SOA, etc. No te preocupes del significado: nadie es capaz de definirlos.



6. Sugiere lenguajes más esotéricos como Haskell, Scala o Fortress pero no Malbolge para la realización del proyecto. En general no hay razón para hacer eso (Java funciona bien), pero por qué no?



7. No olvides la generación de código. A veces es suficiente con iniciar una discusión acerca de MDA vs. MDSD. Si nada ocurre pregunta a los desarrolladores acerca de PIM, PSM y transformación de código

etc.



8. Muy importante: menciona cosas como velocidad de equipo, programación de pares, pregunta acerca de Xtreme-programming, Agile, Scrum, Crystal, Test First, Mocking (cuanto más mejor).



Contrariamente al estilo de consultoría Voodoo, estas estrategias (o tópicos) cambian con el tiempo.

De modo que tu tienes que actualizar la lista de tanto en tanto.



A pesar de que tales "gurus" sobreviven varios proyectos, es relativamente fácil encontrarlos.

Sólo pregunta acerca de las razones de la decisión.
viernes
mar302007

Mapear objetos Java a XML y viceversa usando JAXB2

En el portal devX.com siguen sacando articulos sobre persistencia. Si hace poco vimos un par sobre persistencia en bases de datos relacionales, ahora podeis ver uno sobre persistencia en XML con la nueva version de JAXB (Java Architecture for XML Binding).



Con JAXB2 se pueden convertir objetos Java a documentos XML de forma sencilla mediante el uso de anotaciones en las clases Java que definen los objetos.

También se pueden convertir documentos XML que siguen un schema en objetos Java. Las clases que definen los objetos Java habran sido creadas previamente con JAXB a partir del schema.

En ambos usos se pueden realizar validaciones contra el schema.



Su gran ventaja es que permite manipular documentos XML como si fueran objetos JavaBean, es decir mediante métodos get/set. Comodisimo!



JAXB suele usarse asociado a servicios web. Seguro que lo manejais muchos... ¿Que opinión os merece? ¿Qué otros usos le veis?



Yo, por ejemplo, suelo usarlo para manipular ficheros de configuracion complejos, donde un .properties seria un infierno. Para mi es un gran invento sin duda y despues de descubrirlo huyo siempre que puedo de los parsers de XML tipo DOM o SAX.
jueves
mar292007

GWT Jsonizer: mapeo JSON/Java Beans en GWT

GWT Jsonizer es un API que he desarrollado para Juglar.org, que permite transformar objetos JSON en Java Beans dentro del entorno del Google Web Toolkit. Este API permite intercambio fluido con diferentes tecnologías en el servidor, ya que exísten APIs de JSON para Java, PHP, Python, Ruby, C/C++, etc.. Si bien GWT provee un API estándar de JSON, la misma es muy compleja de manipular, ya que está diseñada para objetos JSON genéricos. En cambio, dada la naturaleza de los Java Beans, es muy sencillo comprender el uso del GWT Jsonizer. Por ejemplo, si tenemos una clase Persona ...





class Persona{



private String nombre;

...

public String getNombre(){...}

public void setNombre(String nombre){...}



private String apellido;

...

public String getApellido(){...}

public void setApellido(String apellido){...}



}







... debemos definir una interface PersonaJsonizer que extienda la interfaz org.juglar.gwt.jsonizer.client.Jsonizer...





interface PersonaJsonizer extends Jsonizer{}





... y luego, simplemente, instanciamos la interface con el metodo create de la clase GWT...





...

// instanciamos el jsonizer

PersonaJsonizer jsonizer = (PersonaJsonizer)GWT.create(PersonaJsonizer.class);

String json = "{'nombre':'Andres', 'apellido':'Testi'}";



// traducimos el string json hacia una clase persona

try{

Persona p = (Persona)JsonizerParser.parse(jsonizer, json);

}catch(JsonizerException e){

Window.alert("Existio un error de conversion!!!");

}

...





El proyecto tiene licencia Apache V2.0. Por ahora no está muy documentado, pero es simple seguir el ejemplo incluido con la distribución. Proximamente, el proyecto estará también disponible en Sourceforge.net



¿Alguien que esté trabajando con GWT esperaba un API como este para trabajar con diferentes tecnologías de servidor?
miércoles
mar282007

Nuevas APIs para las Blackberry

RIM y sus dispositivos Blackberry siguen dando que hablar en el mundo Java. Hoy nos anuncian el soporte de muchos JSR para la nueva versión de su sistema operativo. Con ellas las aplicaciones creadas para el dispositivo podrán adaptarse a las nuevas características (GPS+Multimedia principalmente)

Los nuevos JSR soportados y los que pronto vendrán son:

  • Mobile Multi-Media API for Java (JSR 135)
  • File System Access APIs (JSR 75)
  • GPS APIs (JSR 179)
  • Planned support for 3D Graphics API (JSR 184) and SVG API (JSR 226)
  • Planned support for MMS Java APIs (JSR 205)




miércoles
mar282007

eHour gestor de Consultoras open source

Thies Edeling ha liberado la versión 0.4 de eHour, una aplicación web con licencia GPL para gestionar proyectos de típicos de las consultorías informáticas. Básicamente, permite dar de alta proyectos, asignar empleados, llevar el informe de horas trabajadas por día por empleado, generar informes, etc.



Puedes ver un demo de la aplicación en este enlace. Me hubiera gustado trabajar con una herramienta así en el pasado y olvidarme de llenar informes a mano y enviarlos por mensajería.