¿Qué debemos aprender?
Nota del editor: esta es una colaboración enviada por Injeniero Barsa.
Hace ya 2 meses me titulé de "injeniero". Y durante este período he tenido tiempo de reflexionar acerca del futuro. No sólo del mío, sino que también del de quienes ejercemos la profesión de la computación.
Y el futuro se ve algo preocupante. Ya desde antes sabíamos que, como profesionales de tecnología, estaríamos... ¿condenados? ¿sometidos? ¿obligados? a mantener actualizados nuestros conocimientos aún después de egresados. Independiente de que esta tendencia se ha extendido hacia otras carreras y especialidades como parte de la llamada "sociedad del conocimiento", el problema está en que es realmente mucho lo que tenemos que aprender para mantenernos actualizados.
Cada día aparecen nuevas tecnologías, muchas de las cuales no conocimos en la universidad. Si bien tenemos la capacidad de aprender y adaptarnos a nuevas tecnologías y metodologías, esa capacidad de adaptación se basa en una buena parte en cuánto de nuestro conocimiento anterior podemos reutilizar en las nuevas tecnologías de las cuales se habla hoy.
Desarrollo de habilidades "blandas" como expresión oral y escrita; tecnologías ágiles de desarrollo web (Ruby on Rails, Pylons, Cake...); frameworks de desarrollo de Rich Internet Applications o RIAs (AIR, Silverlight, JavaFX...); incorporación de conceptos empresariales en el desarrollo, como Business Intelligence, modelamiento de procesos empresariales, etc.; formas de implementación de Web Services (SOAP, REST...); nuevas metodologías de desarrollo (RUP, XP, Scrum...); incluso cambios radicales en herramientas que ya conocemos, como el caso de Python 3 (que rompe la compatibilidad con sus antecesores)... todo esto lleva a pensar: ¿cuáles de estas metodologías y tecnologías nos conviene aprender? ¿cuáles no? ¿para cuáles podemos reutilizar nuestro conocimiento anterior, de manera de disminuir el tiempo en nuestra curva de aprendizaje?
Además existe el factor de la vida media de estos conocimientos. Phillipe Kruchten (el creador del modelo 4+1 de arquitectura de software) conjeturó que la vida media de las ideas en ingeniería de software es de aproximadamente 5 años (*). Nada dura para siempre. ¿Qué cosas podemos extraer de esas habilidades antes de que comiencen a "desintegrarse", de forma que podamos reutilizarlas en tecnologías y métodos futuros?
Fuentes: (*) "The Biological Half-Life or Software Engineering Ideas", Philippe Kruchten, Revista IEEE Software, Sept-Oct 2008.
Imagen: Tomada originalmente de http://blogingenieria.com.
- Injeniero Barsa's blog
- 813 lecturas
-
- RSS comentarios
Lo mejor del mes
- Los grupos no siempre toman buenas decisiones — 22 Jun 2009. 260 lecturas.
- Knuth: "Los algoritmos no debiesen ser patentados" — 23 Jun 2009. 206 lecturas.
- David Hammerstein: Decálogo de los derechos digitales — 5 Jun 2009. 205 lecturas.
- ¿Todo tiene un por qué? ¿Por qué existen los "por qué"? — 2 Jul 2009. 139 lecturas.
- Jesus, Piracy and Patents — 4 Jul 2009. 78 lecturas.
- Contaminación Ambiental en Santiago de Chile — 18 Jun 2009. 579 lecturas.
- Physics of the impossible — 24 Jun 2009. 195 lecturas.



Comentarios
las habilidades blandas
Son las que mas duran en el tiempo y las que siempre son necesarias si quieres explicarte bien y dar a conocer o convencer de usar alguna tecnología dura.
—Mig.
But enough of words, actions speak louder than. Action now. Observe all.
Mi Twitter
Para mi al menos todo lo que
Para mi al menos todo lo que sea masivo y tenga mercado del que pueda sacar provecho es digno de aprender, obviamente hay que ser selectivo ya que no se puede aprender todo ni se puede intentar abarcar todo, a lo que me refiero es que me importa un cuesco si es standard o no, me importa un pepino si por detrás esta MS o Adobe, o don Lucho, mientras exista un mercado para una tecnologia y no sea anti Etico, inmoral, o ilegal aprenderla, aplicarla y profitar de esta, intento hacerlo.
El indicador que utilizo para decidir si aprendo o no aprendo algo es si veo un posible beneficio derivado de este aprendizaje, esto muchas veces implica pasar por aprender cosas que no necesariamente van a dar dividendos inmediatos, pero son la base para otras que si.
Por ej: feliz aprendería SilverLight aunque no sea Standard certificado por Dios, aunque MS este detrás, porque se que hay un mercado jugoso ligado a esta tecnologia y si no aprendo pierdo plata y oportunidades.
Creo que mas que decidir que aprender, lo importante es definir una estrategia y en base a eso armar tu carrera, la pregunta no es si construir zealots o dragoons, todo depende de la estrategia que quieras seguir.
Tecnologías abiertas vs. propietarias
Llevo varios años lejos del mundo "duro" de la ingeniería en computación, por lo que muchos de estos términos (Pylos, Cake, Silverlight, etc.) me suenan bastante ajenos.
La pregunta que me surge es: ¿Cuántas de estas tecnologías son abiertas o son standard (ANSI/ISO)?
Porque veo mucha dependencia en compañías: Adobe->AIR, MS->Silverlight, Sun->JavaFX, lo que me hace temer que cualquiera de ellas va a vivir sanamente mientras sea económicamente conveniente a la compañía que la apadrina. MS ha botado montones de tecnologías en el camino, así que no es algo inusual. Si tuviese que decidir qué cosas aprender, ¡me mantendría alejado de ellas!
Enviar un comentario