miércoles, 2 de noviembre de 2011

[16 de 97]. Faculta a los desarrolladores.


Post publicado originalmente entre Mayo del 2009 y Enero del 2011 en mi anterior blog.
Pertenece a una serie sobre arquitectura de software, replicaré los comentarios ya que, a mi parecer, son lo más importante de la serie.

Puedes encontrar el listado de esta primera entrega en este enlace.

El axioma de hoy (tomado del libro 97 things Every Software Architech Should Know) dice:
"Faculta a los desarrolladores"
Timothy High

Timothy High es un arquitecto de software con mas de 15 años  de experiencia en aplicaciones cliente servidor, web e integración de tecnologías. Actualmente trabaja como arquitecto de software para Sakonnet Technologies como líder en un software ETRM(Energy Trading and Risk Management).

[NT. El título original del axioma es: empowering developers, la palabra "facultado" me pareció la más cercana a la original]

Aquí parte del axioma:

Los 3 monos sabios

---

Things are usually easier said than done, and software arquitects are notoriously good at coming up with things to say.
To keep your words from becoming a lot of hot air (generally the key ingredient in making vaporawe). you need a good team od developers.
[...]

Make sure developers have the tools they need. Tools shouldn't be imposed on developers, they should be carefully chosen to make sure they are the right tools for the job at hand, Repetitive abd mindless work should be automated wherever possible. Also, it is well worth the investment to make sure developers have top-notch machines to work wirh, adequate netqork bandwith, and access to software, data, and information necessary to carry out their work.

Make sure they have the skills they need. If trainning is required, make sure they get it. Invest in book and promote active discussions about techbology. Yhe work life of a developer should be hands-on and practical, but also should be actively academic.
[... ]
Look for developers that are hungry to learn, that have that litle "spark" that says they reallity dig technology (also make sure they can play ball with the team...). It's hard ti get big bang out of a team a duds.

Let developers make their own decisions wherever it won't contradict the overall goal of the software design. But put constraints where they count, not only to guarantee quality, but also to further empower developer. [...]

Lastly, protect developers from nonessential parts of their job. [...]. Whatever processes are used, make sure they are designed to remove obstacles, not increase them.

---


Cuando empezaba a leer el axioma recordé inmediatamente el post del buen Dr Fate titulado ¿Dónde están los gurús? en ese post Mauricio nos cuestiona sobre la importancia/relevancia de los gurús en la formación de un programador; dicen muchos que el catálogo de personas que admiramos de alguna manera son un reflejo de nuestras aspiraciones, por lo que, el tener  guias morales/profesionales son un indicador de hacia dónde queremos llegar. Pero, ¿Son realmente importantes?

Un segundo pensamiento surge ahora; más allá de que creamos o no necesarios a los gurus hay algo que muy probablemente compartimos y es  que, ya sea por deuda moral o por simple y llano sentido común, debemos alentar a las nuevas generaciones de programadores. Esta demás entrar ahora en discusiones sobre: si la preparación en la universidad (sea pública o privada) es la adecuada o si los programas de estudio están vigentes/incompletos o que si los departamentos de vinculación hacen bien o no su trabajo. El punto es que junto a los que llevamos algunos años en esto está una nueva camada de programadores, los cuales poco a poco se irán ingresando o participando en alguno de nuestros proyectos.

Ahora sí, después de esta cavilación en letra grande, repasemos juntos los principales párrafos del axioma;que, a mi parecer son los siguientes:

  • Things are usually easier said than done[...]To keep your words from becoming a lot of hot air[...]you need a good team od developers.
  • Make sure developers have the tools they need.
  • Make sure they have the skills they need.
  • Let developers make their own decisions wherever it won't contradict the overall goal of the software design.
Y, soy el primero (gracias a las influencias del estoicismo forzado que ha tocado parte de mi vida) en decir que no siempre se puede tener todo en esta vida, pero, no se trata que de un día para otro  cada uno de los integrantes del equipo cuenten con una alienware, un monitor adicional o  utilicen muebles Herman Hiller, ni que todos puedan ir a congresos, cursos o talleres. Se trata entonces, de comenzar con lo que tenemos a la mano.

Así que, los conmino a que volteén mañana por la mañana a su alrededor durante el daily meeting, durante la hora del café o antes de salir a comer y reconozcan en sus compañeros de trabajo (o en su equipo a cargo) algunas necesidades que, sin mucho esfuerzo inicial, puedan cubrir.

Aquí algunas recomendaciones.
  • ¿Tienes libros que ya leíste o no crees leer próximamente?: prestalo a quien consideres le puede servir.
  • Esos links privados en delicious que no has querido compartir con nadie, pero que tampoco has sabido utilizar: ponlos públicos
  • Ese manual que en su momento realizaste para ti mismo cuando aprendías alguna herramienta, liberalo
  • Si existen grupos de usuarios en tu localidad, alientalos a ir... o al menos ¡¡¡ve!!!
  • Al "nuevo"  integrante en el proyecto que no tiene idea de qué leer para integrarse rápidamente y con el menor de los dolores posibles: guíalo
Ibon ya nos había dado algunos consejos en [10 de 97]. Comparte tus conocimientos y experiencias

 A final de cuentas; todos, absolutamente todos de alguna manera sómos aprendices y maestros perpetuos en alguna materia; sea ésta un lenguaje de programación, una metodología de desarrollo, una cualidad humana o una habilidad física ¿no creen?

Para no perder la costumbre, iniciemos la semana con una lección y un toque de humor:


fosswindows

Saludos a todos!!!

RuGI
Isaac Ruiz Guerra.

Comentarios:
Buen post compa! Creo que cada quien debe explotar lo que tiene para lo que no tiene, jeje, y si, completamente de acuerdo contigo

Enviado por matusFollower en abril 06, 2010 a las 12:43 PM CDT #
---
Excelete post, estoy de acuerdo contigo en base a compartir el conocimiento esta el seguir creciendo, bien dicen que el maestro sigue aprendiendo por medio del alumno.

Enviado por Esteban Hernandez en mayo 21, 2010 a las 02:55 AM CDT #


------------------------------------------------
Créditos:
La foto es de: rbf0069
http://www.flickr.com/photos/rbf0069/5998470168/
La tira es de:
geekherocomic.com
-----------------------------------------------

No hay comentarios:

Publicar un comentario