martes, 10 de agosto de 2010

El nuevo desafío de los programadores

Los dispositivos móviles, las redes sociales y la TV digital exigen nuevos habilidades a los desarrolladores. Qué lenguajes de programación deberán saber. Qué buscan las empresas.




El paradigma ha cambiado desde hace algunos años. Ya no se desarrolla para el usuario de PC. Los smartphones, tablets, redes sociales y hasta la TV digital abren nuevas posibilidades de mercado. Pero, el número de egresados de las carreras de ingeniería sigue en baja. De acuerdo con el informe revelado en junio pasado por el Observatorio de la Industria del Software y Servicios Informáticos (OPSSI) dependiente de la CESSI, en 2010, se esperan unos 3.158 egresados de las carreras de Sistemas. Sin embargo, la demanda de empleo se proyecta en 5.900 profesionales. La relación parece agudizarse para los próximos años: según el mismo trabajo, las estimaciones sobre el número de graduados IT bajará en los próximos años y en 2014 regresaría a un nivel similar. Todo, en un entorno de un mercado en expansión.



En este escenario, surgen dos interrogantes, tanto para las empresas como para los profesionales IT relacionados con las nuevas plataformas. Para las primeras, el desafío será tener en claro qué habilidades requieren para apostar no sólo al mercado internacional, sino también al local, en pleno crecimiento. Los profesionales, en cambio, deben conocer los lenguajes de programación y entornos de desarrollo de mayor implementación.

La estrella del momento: los móviles

Los teléfonos inteligentes o smartphones pasan por su momento de esplendor. Los principales sistemas operativos ya poseen su propia tienda de aplicaciones con convenios de ganancias repartidas con los programadores, estrategia comercial que motorizó la expansión en número de aplicaciones disponibles e impulso el negocio.

Si bien las empresas locales se están dedicando a exportar sus desarrollos, el mercado local ofrecerá en los próximos años un atractivo escenario para las aplicaciones móviles, provocado por la baja en el precio de los smartphones y la expansión de las redes 3G. Según la consultora internacional Informa Telecoms & Media, el segmento crecerá a nivel global de los u$s 200.000 registrados en 2009 a $ 340.000 millones en 2014. En este camino, las economías emergentes aportarán un tercio del total, destacándose los países de Asia, Oriente Medio, la Argentina y Brasil.

Patricio Carna, gerente de Producto de la firma de aplicaciones CodaMation, argumenta que no eligen profesionales que sepan un lenguaje en particular. Sí valoran la experiencia previa en desarrollo móvil. “Para desarrollar en iPhone, hay que usar el ambiente Cocoa, mientras que, en Android y BlackBerry, se programa en JAVA. Cada sistema tiene sus propios comandos”, explica.

La empresa, que ya pasó por varias rondas de inversión por la potencialidad de sus productos, diseñó una solución para desarrollar aplicaciones en varias plataformas “Creamos un framework (entorno de desarrollo) que nos permite migrar de uno a otro sistema operativo”, revela Carna, y remarca: “No buscamos especialistas en una u otra tecnología, sí profesionales creativos que sean curiosos y tengan deseos de aprender. Esa son las características que más valoramos”. Para Julián Rousselot, docente funcional de UADE y consultor informático, el futuro de los móviles y las tablets será Android. “Para ese sistema operativo se desarrolla en J2ME (una implementación de JAVA), pero también habrá equipos con Windows Mobile”.

De todas formas, destaca que los profesionales IT deberán estar atentos a los entornos creados por los fabricantes, pues facilitarán la programación de aplicaciones móviles más allá de los lenguajes. “Motorola lanzó Eclipse, un framework para Android, que provee herramientas de desarrollo avanzadas e interfaces más rápidas”, cierra.

La TV digital: más terreno

La nueva televisión provee varias mejoras, como la mejora de la imagen, una mayor cantidad de señales disponibles y la posibilidad de sintonizarla en dispositivos móviles. Pero la novedad más impactante es la interactividad del usuario a dos niveles: contra el decodificador, es decir, con respuestas fijadas de antemano, como la guía de canales; y la “real”, donde los comentarios del usuario llegan a los transmisores del programa por medio de un canal de retorno (Internet).

Como todavía la TV digital se encuentra en un estado experimental en la Argentina, seis empresas formaron un consorcio a través de la CESSI para generar y compartir conocimiento sobre la programación en esta nueva plataforma. Juntas desarrollaron la primera -y hasta el momento, única- aplicación nacional para TV digital: una especie de test sobre la Gripe A, que los usuarios responden con el control remoto para detectar síntomas y conocer la ubicación de los sanatorios más cercanos.

Ryaco es una de las compañías que conforma el consorcio y lleva 15 años, desarrollando soluciones informáticas para la industria televisiva. Su gerente, Carlos Rolandelli, explica que la programación para TV digital es más difícil que en otras plataformas, pues sólo funciona con los “lenguajes NCL y Lua, que no son visuales”. Agrega que además plantea limitaciones inéditas en otras entornos, puesto que la señal “descarga un carrousel de datos en el set top box y, al mismo tiempo, baja el video. El problema es que esta información se borra al cambiar de canal. Por eso, hay que trabajar con una cantidad de datos limitada”.

Otra de las empresas que forma parte del consorcio es Actívica, especialista en el desarrollo de aplicaciones de e-learning y para plataformas móviles. Diego Lijavetzky, gerente General de la compañía, coincide en que en la Argentina “se utiliza el NCL, un lenguaje muy parecido al HTML o XML que es utilizado de marco contenedor para guardar la información; y LUA, que es el lenguaje de scripting”. Además, afirma que son importantes los conocimientos de JAVA, pues en Brasil, donde es la sub-norma del estándar japonés, “hay una forma de incluir JAVA para contar con más desarrolladores y recursos”, añade.

Para Lijavetzky, los profesionales que quieran programar aplicaciones para TV digital deben contar con una habilidad clave: la adaptabilidad. “El concepto de aplicación es nuevo: se pasa de una aplicación que está a 30 cm, como la PC; a una que está a tres o cuatro metros. Además, la TV cumple un rol familiar, no se programa para un usuario, sino para varios. Y la única interfaz de entrada es el control remoto”, se explaya el ejecutivo.

No obstante, los retos a los que se debe enfrentar un programador aún no están resueltos y se dispone de poca documentación al respecto, especialmente en la etapa de testing. Lijavetzky revela “que todavía no hay una norma o manual para desarrollar en TV digital. Existen muchas divisiones, entre programadores, generadores de contenido, diseño, transmisión de la señal”, Por otra parte, el ejecutivo indica que “la prueba definitiva es cuando llega al televisor. Todavía no se sabe qué sucede cuando se corta la luz, se cambia de canal; no contamos con un ambiente cerrado de toda la cadena de producción”.

La programación “social”

Facebook es -si se permite la metáfora- el “tercer país” del mundo en cantidad de habitantes, con alrededor de 500 millones de usuarios activos, superando a Estados Unidos (310 millones), y detrás de China (1.330 millones) y la India (1.175 millones). El grado de penetración en América latina la convierten en el sitio web más visitado detrás de Google: según la consultora SMLatam, la Argentina está segunda en la región, con 10 millones de usuarios, por detrás de México (12,1 millones) y delante de Colombia (9,7 millones).

Martín Márquez, docente del ITBA y gerente de la empresa de desarrollo Sauber, señala que el corazón de una red social está basado en lenguajes PHP y JAVA, aunque poseen una parte no cerrada, llamada API (Interfaz de Programación de Aplicaciones, según sus siglas en inglés) que permite la programación en cualquier tipo de lenguajes”. Por lo tanto, proveen una mayor libertad al programador. Pero, con respecto a las aplicaciones de terceros, como los juegos, la tecnología Flash del gigante Adobe es la preferida de los desarrolladores.

PlayFish es un estudio de diseño de juegos para Facebook (como los exitosos WordChallenge y PetSociety) que cuenta con más de 60 millones de usuarios de todo el mundo. La empresa está compuesta por unos 200 empleados distribuidos en sus oficinas de Londres, Estados Unidos, China y Noruega y fue adquirida recientemente por el gigante Electronic Arts. Tom Harris, director de Comunicaciones Globales de PlayFish, indicó a IT Business que los desarrolladores de este tipo de aplicaciones deben “tener un profundo conocimiento de Adobe Flash, que es la herramienta fundamental para cualquiera que desee entrar en el desarrollo de juegos sociales”.

En esto coincide Ariel Perelman, uno de los directores de El Server, empresa de hosting argentina, que está compuesta por 27 personas y facturó $ 8,4 millones el año pasado. El ejecutivo sostiene que “Flash es el rey de las redes sociales, pues ofrece una interactividad nunca antes vista, pero HTML5 viene con fuerza, apalancado por empresas como Google y Apple”. Según Harris, además se buscan personas que “entiendan esas redes y cómo se desarrollan las interacciones sociales, que son valiosas commodities para programadores de aplicaciones Web 2.0”.

A pesar del potencial local de Facebook, las universidades no incluyen la enseñanza de Flash en las carreras de ingeniería. Según Márquez, “Flash se dicta en las facultades de Diseño, pero los estudiantes de Sistemas pueden asistir a varios cursos que se dictan de forma complementaria, mientras que las carreras de ingeniería poseen contenidos más generalistas y pragmáticos”.


Identikit del profesional IT del futuro


Conocimientos de un lenguaje de scripting, es decir, aquellos que son interpretados por un compilador y son independientes de la plataforma. Recomendado: JAVA, presente en casi todas las nuevas tecnologías.

Conocimientos de un lenguaje de etiquetas o marcas. Los expertos coinciden en que HTML5 será el lenguaje que revolucionará la Web.

Se valorará la experiencia en juegos y móviles. Las nuevas plataformas son interactivas y muy cambiantes; por lo tanto, la creatividad que aporta la industria de los juegos al predecir el espectro de acción de los usuarios es una característica muy buscada.

Además de un profesional de la tecnología, deberá ser un usuario avanzado de éstas, para pensar las necesidades del cliente y satisfacerlas.

Deberá ser parte de un equipo antes que un líder o una sección aislada del proceso. Las nuevas tecnologías son multidisciplinarias, así que la interacción con los diversos integrantes de un grupo de trabajo (no sólo profesionales de sistemas) será fundamental para llegar al éxito.


LA NUBE: UN PUNTO DE ENCUENTRO DE LAS NUEVAS PLATAFORMAS


El cloud computing está lejos de ser una “nueva plataforma” como concepto, aunque en la Argentina todavía no ha logrado captar el interés masivo por parte de las empresas. En este sentido, Martín Márquez afirma que “todavía hay mucho para recorrer, con unos tiempos más largos, pero cada vez más fuerte lo que se viene en esta materia y la integración con dispositivos móviles, todo está integrado con todo”. El gerente de Sauber aconseja: “El cloud no impone un tipo de restricción en cuanto a entornos de programación, pues es una tecnología agnóstica de lenguaje, pero quizás habría que inclinarse más por desarrollos de Google y Python”.

Por su parte, el consultor Julián Rousselot indica que “ya es difícil hacer que el desarrollador se incline por programar sólo para escritorio, sino que se requiere una infraestructura distribuida”. Además, subraya que en el laboratorio de ingeniería de la UADE escogieron a JAVA para crear y testear aplicaciones para el ámbito empresarial, utilizando las opciones de virtualización VMware”. 

Fuente: Cronista

No hay comentarios:

Publicar un comentario