Hoja de ruta para un programador

Como parte de reflexiones recientes estaba pensando en hacer un poco de autocrítica ¿qué debería leer una persona para aprender a programar correctamente? Está claro que para salir al mundo empresarial y poder pedir con lo que salimos de la facultad no tenemos ni para empezar, y no todas las empresas se pueden permitir grandes periodos de formación.
Como esto es un campo muy amplio, en este ejemplo hay una precondición: se parte de cero, y una postcondición: saber programar en un entorno J2EE con Hibernate+Spring+JSF.
Lo primero deberían ser las bases: comprender qué es un algoritmo, programación estructurada y estructuras de datos elementales. Yo hice un curso, y como bibliografía usábamos "Fundamentos de Programación", de Joyanes, y creo que sería perfectamente válido. Es importante coger las ideas fundamentales antes de atarse a un lenguaje de programación. No se puede empezar a programar si no eres capaz de especificar el algoritmo de hacer la lista de la compra o ir al cine a ver una película.
Una vez sabemos lo imprescindible, es hora de bajarse la última JDK, Eclipse, y, Thinking in Java en mano, programar todos los ejemplos. Por lo que sé, es el mejor libro de Java.
Una vez ya se sabe Java (bien, no como la mayoría se conforma), merece la pena ahondar un poco más: Advanced Java Programming.
En este punto ya se debería tener dominado el "Java standalone", "cliente", o como prefieras llamar a lo que no es J2EE.
En este punto ya se debe conocer la herramienta básica, así que conviene leer algo de más alto nivel: Core J2EE Patterns.
Antes de entrar en el mundo J2EE convendría unas nociones básicas de redes (¡me asombro que en el fondo mucha gente no acaba de comprender el modelo cliente-servidor de la web!) y algo de SQL. Para esto no tengo recomendaciones.
Ya es el momento de meterse en harina: a bajarse Hibernate, Spring, MyFaces... Nada de pasar por programación de servlets y JSPs pelonas, no vale para nada. Con leernos las introducciones para comprender qué es un servlet y cómo se genera la vista con JSPs, basta. Para aprender Hibernate el libro de referencia está muy bien, y cuando éste se queda corto, Hibernate in Action. La (¡extensa!) referencia de Spring debería ser suficiente. Y para JSF, el tutorial de Core Servlets con el que creo que hemos aprendido todos.


Aquí están las referencias. Ya sólo queda el trabajo ;)

Posted by Juan Ignacio Sánchez Lara 22:31 Enlaces a esta entrada  



Reflexión inter-desplegues sobre la falta de profesionales

Entre despliegue y despliegue del servidor de aplicaciones (el lado negativo de las tecnologías J2EE es el frecuente reiniciar) me vienen a la mente comentarios de una reunión cercana.

Faltan profesionales, y los que hay están poco preparados. Cuesta horrores, especialmente si no puedes ofrecer un fajo de un espesor considerable, encontrar profesionales con experiencia. Somos pocos, y muchos se conforman con lo que se sabe de la facultad, que está muy alejado del Mundo Real ^tm.

Sres. empresarios, busquen a los buenos profesionales y págenles bien. Y si alguien es un programador impresionante, no le "ascendáis" a analista obligatoriamente. "Ascendedle" los honorarios y dádles responsabilidades, pero no consideréis la programación una tarea menor.

Sres. informáticos: leamos, cacharreemos, programemos... ¡mejoremos! Y, después, ¡pidamos!

Posted by Juan Ignacio Sánchez Lara 11:32 Enlaces a esta entrada