Las 10 habilidades más importantes para los programadores del futuro

RobotEs importante asegurarse que nos estamos beneficiando lo más posible cuando invertimos tiempo y esfuerzo en capacitarnos y aprender cosas nuevas.

En la siguiente lista veremos las 10 habilidades que deberíamos aprender para que nuestro currículum sea relevante por los siguientes 5 años. Esta lista no es completa ni cubre algunos nichos de mercado (como ser los mainframes). Sin embargo, si aprendés al menos siete elementos de esta lista no te vas a equivocar.

Leer más...

Acoplamiento y cohesión

diseñoEl acoplamiento y la cohesión juegan un rol central en el diseño de software. Yourdon y Constantine, en su obra clásica Diseño Estructurado, identifican que el objetivo del diseño es minimizar los costos. El costo del software está determinado por el costo de mantenimiento, y el costo del mantenimiento está determinado por el costo de los cambios que surgen en el sistema. Un diseño de software efectivo minimiza la probabilidad de que se propaguen los cambios. Los cambios que involucran a un único elemento son menos costosos y más predecibles que los cambios a un elemento que requieren cambiar dos más, y luego tres...

El costo esperado del cambio se puede reducir prestando especial atención a dos factores: el acoplamiento entre los elementos y la cohesión dentro de los elementos.

Leer más...

El fenómeno FLOSS en el conocimiento

LibrosEl fenómeno FLOSS (Free/Libre Open Source Software) se está extendiendo a otras áreas del conocimiento. Varios lugares de estudio "formal" están empezando a ofrecer sus cursos de forma libre.

El pionero en este camino es el MIT con sus MIT OpenCourseWare con 1800 cursos (en inglés) y 34 millones de descargas desde 2003 fecha en la que comenzó oficialmente. Allí se ofrecen cursos sobre distintos temas: arquitectura, ingeniería, ciencias médicas, humanidades, artes, gestión y mucho más.

Leer más...

Cómo motivar a un equipo para trabajar con ágil

Durante el panel que concluyó el evento de Maré de agilidade Swell Salvador hace algunas semanas, Ale Gomes dirigió una pregunta a la audiencia para que yo y Túlio respondiésemos. La cuestión era sobre cómo motivar a un equipo para trabajar con metodologías ágiles o lo que puede mantener a un equipo motivado cuando se trabaja dentro de ese contexto. A su juicio, pensó que podríamos dar un punto de vista más real, porque somos parte de un equipo ágil aquí en Sea.

En ese momento, sin pensar mucho, respondí de forma bastante personal. Y luego estaba pensando respecto de la repercusión de la respuesta y también en otras cosas que podría haber hablado en ese momento. ¿Porque yo, Carolina Mascarenhas, me levanto todos los días? ¿Que es lo que me motiva a levantarme (aunque no tan temprano como debería) y luego ir a trabajar feliz de la vida? 

Leer más...

Ejercicios multi-tarea

CambiarLa multi-tarea se suele ver como una habilidad valiosa, y sin embargo la multi-tarea es una muy, muy mala idea. ¿Por qué? Porque hace que cada tarea tome más tiempo del necesario para terminarse. Uno de las causas más obvias (pero no la peor) de estas demoras es el tiempo que se lleva cambiar de tareas.

Vamos a ver un ejercicio práctico, simple y concreto que todos podemos hacer para comprobar este hecho. ¡Los invito a tomarse tan sólo 2 minutos y llevar a cabo el experimento! Sólo necesitan lapiz y papel.

Leer más...

El papel del ESB en una solución SOA

El uso de un ESB se ha puesto de moda. No estoy diciendo que la tecnología no sea adecuada, pero el uso de un ESB no significa necesariamente tener SOA. Mi objetivo aquí es dar mi punto de vista sobre ESB, y de cómo y cuando puede ser usado en una solución SOA y en soluciones que no son SOA.

Exactamente, si fuesemos por la traducción literal significa servicio de ómnibus corporativo. La idea es muy simple: el bus lleva y trae datos para nosotros, luego nosotros no tenemos que preocuparnos sobre algunos detalles. Imagine que los pasajeros son los datos y que cada parada del autobús es un sistema que se accede con un protocolo diferente. El concepto de bus no es nuevo en el área, si miramos a las placas madre ya teníamos el concepto allí, sólo él fue adaptado para la integración de sistemas.

Leer más...

10 formas de mejorar la Planificación de Poker

Cartas de pokerQuienes promueven el uso de la Planificación de Poker comprenden varios de los motivos de su éxito. Hay muy buenas razones por lo cuales la mayoría de los coach ágiles la utilizan y enseñan a sus equipos.

Los 3 motivos más importantes para del éxito de la Planificación de Poker son:

  1. Fomenta la colaboración a través de todo el equipo.
  2. Crea estimaciones por consenso en vez de tener a un único individuo que estime.
  3. Expone problemas de manera temprana, a través de discusiones sobre cada historia de usuario.

Leer más...

Deje decidir al usuario con Drools

¿Quién no ha oído hablar mal de IT? Probablemente ya trabajaste en una empresa en la que otros sectores no ven a IT con buenos ojos. Tal vez porque allí pueden haber altos salarios en la organización, salvo la alta dirección. Pero el problema no ni el valor que un profesional de IT llega a recibir mas sí lo que él hace para merecer el mismo.

No quiero en este post hablar sobre gestión de competencias. Vengo a hablar de lo que podríamos hacer para dar más poder al usuario. Una de las primeras acciones ya debería estar clara en su cabeza ¿no? Desarrollo iterativo e incremental utilizando prácticas y métodos probados. Pero esto (que no es poco ni fácil) no será suficiente.

Leer más...

5 años de Gmail: la beta más larga del mundo

Hace 5 años, el un primero de abril (April's Fools o el día de los inocentes en norteamérica), Google anunciaba un nuevo servcio de mail que iba a revolucionar el mercado. Y no era en broma. El miercoles pasado Gmail cumplia 5 años de actividad. Lo que empezó como un proyecto del "20% del tiempo" creció hasta lograr una base estimada de 150 millones de usuarios, y un sinfin de características para los usuarios. Todd Jackson, Gerente de Producto de Gmail, nos cuenta sobre el proyecto, Gmail Labs y el eterno tagline de "beta".

Leer más...

Respondiendo rápidamente a los cambios con CEP

Alcancia de chanchitoCon la globalización y el aumento de la competitividad del mercado local y global es común que empresas multinacionales compren a otras empresas y, por tanto, logren una mayor cuota de mercado. Por razones de riesgos y costos no siempre es posible o viable re-escribir los sistemas que estas empresas ya tienen. Este es el clásico escenario para la integración de sistemas.

CEP (Procesamiento Complejo de Eventos) no es una técnica para la integración de sistemas, al menos no de la manera tradicional. CEP es otro paradigma que se basa en el modelo de sistemas guiado por eventos.

Leer más...

Antipatrón de adopción ágil: "Somos especiales"

regaloExiste una excusa frecuente con la que me encuentro dentro de organizaciones que están en proceso de adoptar técnicas ágiles de desarollo, que se conoce como el anti-patrón "Somos especiales". Las personas involucradas creen que su situación es especial, que hay un factor único en su entorno que hace completamente imposible adoptar técnicas ágiles, y por lo tanto necesitan continuar trabajando de la manera que lo hacen, sin importar que tan obviamente ineficiente sea.

Leer más...

Inspiración.

"Si tú tienes una manzana y yo tengo una manzana e intercambiamos las manzanas, entonces tanto tú como yo seguiremos teniendo una manzana cada uno. Pero si tú tienes una idea y yo tengo una idea, e intercambiamos las ideas, entonces ambos tendremos dos ideas"

Bernard Shaw