Esta entrada quiero dedicarsela a mi gran amigo Random, quien por cierto es el autor de la misma. Un buen día, hablando sobre lenguajes de programación, creímos oportuno hablar de esas tecnologías que no se sabe muy bien por qué, se enseñan en las Universidades. Hay gente que se aferra a ellas o que por suerte o por desgracia, consigue trabajar con ellas unos años haciendo imposible que puedan aprender otras más útiles o modernas, creando así uno de los tipos de informáticos más peligroso: el informático desactualizado.
Sin más dilación, disfruten del artículo escrito por Random:
Cualquier profesional de la informática debe, a lo largo de su carrera académica y profesional, aprender nuevas tecnologías. He acuñado (sin saber si alguien lo había hecho anteriormente) el término “tecnología trampa” para hablar de aquellas tecnologías que, si bien hemos tenido que aprender por algún motivo, no nos aportan valor como profesional o podrían incluso ser un lastre en nuestro currículum.
Por un lado vamos a ver las tecnologías estudiadas en las titulaciones (ya casi extintas) de ingeniería en informática, porque son las que conozco de primera mano. Estas titulaciones, tecnológicamente hablando, han estado estancadas desde los años 90.
Como comentario, apoyo el concepto de que una ingeniería no es un listado de tecnologías que aprender, sino que hay que profundizar en otros conceptos más teóricos, organizativos y profundos. Pero por otro lado, y espero que entiendan mi comparación, la utilidad de un coche es ir del punto A al B, pero uno con aire acondicionado y GPS podría desempeñar mejor su función. Volviendo al tema, los currículums de los recién licenciados contendrán una lista de tecnologías tales como Haskell, Prolog, Ensamblador del 8086, ANSI C, etc… Pero, ¿realmente son útiles y necesarias estas tecnologías? No cabe duda de que un programador Haskell en el ámbito académico podría ser de mucha utilidad. Podrían proponerte un tema de Proyecto de Fin de Carrera, seguido de una beca de 1 años escribiendo programas en Haskell. Sólo lo planteo como pregunta, pero ¿Debería un recién licenciado aceptar dicho empleo, sabiendo que cuando salga dentro de 1 año al mercado empresarial van a pedirle una tecnología totalmente distinta?
Por otro lado, ya dentro del mundo empresarial, pueden asignarte algún proyecto con alguna tecnología minoritaria. Hablando de las que conozco, he programado en PowerBuilder. Sin hacer una búsqueda complicada, en un portal de empleo, las palabras clave “power builder” y “PowerBuilder” han arrojado menos de 20 puestos de trabajo en todo el país, mientras que otras como “Java” arrojan más de 1000. ¿Podemos hablar de que PowerBuilder es una tecnología trampa? Posiblemente mis meses de experiencia con esa tecnología pesarán poco, pero un profesional con 5 años de experiencia que se quede desempleado va a tenerlo más complicado. Igualmente he tenido la experiencia de trabajar con XText, un framework de Java para desarrollo de lenguajes. Una búsqueda similar me ha arrojado 1 puesto de trabajo en toda Europa. Podría preguntarme ¿he caido en otra tecnología trampa estos últimos 6 meses? ¿Debería haberlos invertido en aprender PHP, Hibernate o Spring? Aparte de escoger la tecnología incorrecta para empezar, también puede ocurrir que la tecnología se abandone. No puede haber un ejemplo más claro que Symbian, o (dada mi suerte, he estado aprendiendo siempre tecnologías trampa) Java ME.
Mi reflexión final sobre las “tecnologías trampa” es tener ojo en lo que uno está invirtiendo su tiempo, puesto que después de años puedes encontrarte estancado en tecnologías obsoletas o poco usadas. También quisiera puntualizar que soy de la opinión de que Python se aprende en una tarde, pero es la profesionalidad y la habilidad desarrollando software lo que finalmente cuenta
Ranking de los lenguajes de programación según la popularidad
en GitHub en el primer cuarto de 2013
Comentarios
Publicar un comentario