Historias de la puta crisis

logo-mr-monopolyEn estos tiempos de bajuno crecimiento y en impaciente espera de lo que se nos viene encima, el día a día nos descubre insólitos hechos que a uno le dejan cara de estupefacción y atontamiento.

Asistimos, impertérritos, a cómo el Gobierno rechazaba la idea de que estábamos entrando en una época de “recesión” hace unos meses, mientras la oposición lanzaba piedras en lugar de ideas para mejorar la situación. Durante meses vivimos una época en la que seguíamos teniendo una economía de “Champion Lí”; ¿ven? el Presidente del Gobierno también es como yo: trasladamos las ideas cotidianas a conceptos futbolísticos; pensamos en “campos de fútbol” como medida unitaria de área en el Sistema Internacional.

Después se empezó a reconocer que había un atisbo de crisis económica mundial, pero que como nuestra economía de Manchester Utd. era estupenda de la muerte no había problema. Porque habíamos hecho los deberes en etapas anteriores. Es obvio que así era, y si no, que se lo pregunten al señor Roca, Julián Muñóz y otros compañeros de mili.

Finalmente se reconoció que, por nuestras particulares circunstancias con el mercado inmobiliario, España se vería afectada de una forma especial. O sea. Pasamos de Champions a Segunda B. Los demás mal, pero nosotros peor. Como siempre.

No se explica ahora, por tanto, cómo es posible que si por fin todos han reconocido, muy a su pesar y a regañadientes que estamos pasando una mala época hagamos concesiones como las que se hacen. No entiendo cómo para reactivar una economía se proporcione liquidez a los bancos cuando se supone que son ellos los primeros que deberían haber previsto esta situación. No tiene sentido que se ayude a los avaros. No tiene sentido que los constructores pongan carita de cordero degollado y vayan a pedir limosna al Gobierno.

No tiene sentido cómo durante estos años anteriores no pudimos destinar esas ingentes cantidades de dinero a investigación de enfermedades y a erradicar el hambre en el mundo y sin embargo lo hemos utilizado para inflar más el globo hasta su punto máximo de expansión. No tiene sentido que nos quejemos cuando hay gente que está mucho peor, aunque al final el pato lo vamos a pagar los mismos, los de siempre, los ciudadanos de a pie. El mercado de obras de arte y de diseño de alta costura no se ha visto perjudicado por la crisis. Esto es fiel reflejo de quién paga las consecuencias.

Una cosa les digo: ahora nos quejamos del Euro, nos quejamos de la Globalización, pero los partidos de izquierdas, los sindicatos y los ecologistas nos venían avisando de esto desde hace mucho tiempo y no quisimos hacerles ni caso. Estos son unos incomprendidos y siempre están con pájaros en la cabeza e ideas utópicas, ¿verdad?; nos avisaron que el Euro aplastaría al obrero, y así ha ocurrido. Nos avisaron de que la Globalización traería problemas, ampliaría la brecha entre ricos y pobres, y ahora nos encontramos con que cada vez queda más patente el hecho de que existen unos ciudadanos de élite que viven a todo tren y el resto les pagamos sus caprichos y soportamos el peso de las fluctuaciones de la economía. Somos el muelle sobre el que se apoyan. Las hostias van para nosotros, vaya.

Para terminar, no entiendo cómo es posible que se gasten 20 millones de euros en una obra de arte que b182f1e9-1a64-968d-590aa80f5354f37bpodría haber construído el albañil de mi pueblo con cuatro paletazos de cemento y yeso al techo. No entiendo que España haga regalos cuando no estamos para regalar, y menos a una organización como la ONU, corrupta y repleta de vagos e incompetentes. No entiendo cómo se puede tener la jeta de destinar un dinero que era para ayuda al desarrollo (vacunas, alimentos) para pagar a un sinvergüenza que se escuda bajo el “yo no sabía nada” y el “no me hablen de política”. Luego somos todos muy progres, y ayudamos al PSOE en las elecciones, como el rebaño de actores y el rebaño de la SGAE. Y cuando se trata de chupar y llenar la saca somos más capitalistas que el tipo del Monopoly. Hipócritas comunistas que viven en el barrio Salamanca de Madrid.

No entiendo cómo España llora si no va a una cumbre de capitalistas en la que no se va a decidir nada útil para el ciudadano, una reunión de peces gordos que justifica un gasto enorme y que el PSOE lleve a cuarentaytantos tíos para representar a nuestro querido país. ¿De verdad era necesaria tanta gente, Sr. Zapatero? ¿O vamos de turistas? ¿De verdad era necesario ir a un hotel de la jet-set para hospedarse? ¿Quién paga la crisis, pues?

Con todos estos hechos, ayudas al capital, abandono total del obrero, al tipo de calle normal, queda patente que el PSOE no es un partido de izquierdas, amigos. No. Es un partido de capitalismo burgués. Un partido al estilo norteamericano. Un partido de derechas. Señores del PSOE: pueden meterse la ‘O’ por donde les quepa.

Aprenda Scrum como si estuviera en primero (I)

En este artículo pretendo mostrar las características básicas de esta metodología de desarrollo software creada en 1990 por Ken Schwaber y Jeff Sutherland, en el marco de lo que posteriormente se denominó como metodologías ágiles de desarrollo de software. La redacción de este artículo es totalmente propia, si bien cuenta con numerosa documentación al final.

Ideas fundamentales

¿Qué diferencia a Scrum (el nombre viene de una técnica de rugby) de otras metodologías? Fundamentalmente una cosa: Scrum entiende el desarrollo de software como algo empírico, y no determinista. Esto significa que Scrum comprende que crear software es algo muy complejo, sujeto a multitud de variaciones e incertidumbres, sobre todo al comienzo. Además cada problema es diferente y no existe una solución mágica o bala de plata que se pueda aplicar a cualquier proyecto (Peopleware, deMarco y Lister). Por ello trata de acometer esta incertidumbre y estos riesgos desde el propio modelo de desarrollo.

Otra caracterísitica fundamental de Scrum es la visibilidad. Scrum trata de que todo el mundo involucrado en el proyecto conozca perfectamente en qué punto del desarrollo se encuentra el proyecto y qué falta por hacer. Esto se consigue a través de las numerosas reuniones de control, que no tratan de informar al jefe de proyecto o los stakeholders, sino más bien a TODAS las personas involucradas en el proyecto. El objetivo no es sólo el control del proyecto, sino la involucración y el conocimiento por parte de todos. Además, es importante que el equipo esté cohesionado y colaboren unos miembros con otros, se solapen y se apoyen mutuamente.

Scrum no es una metodología “mágica” (Peopleware, deMarco y Lister), sino un marco de posibles estrategias, respetando unas reglas prefijadas. Una plantilla a la que después se puede acoplar distintas técnicas de planificación, gestión, control, estimación, análisis, diseño, implementación y pruebas. En esta simplicidad radica su potencial. Las reglas del juego se aprenden más rápido que aprender a jugar al parchís, realmente.

Otra idea fundamental de Scrum es que trata todo el desarrollo del software desde el punto de vista del sentido común. A medida que profundicemos en la metodología en las siguientes secciones (y opcionalmente consultando la bibliografía adjunta) conoceremos cómo se utiliza el sentido común para desarrollar software. También veremos que es una metodología flexible.

Desde el punto de vista de desarrollo, se trata de un proceso fundamentalmente iterativo. Más adelante se detallan las fases y cómo se estructuran las iteraciones.

Aplicabilidad de la metodología

Por lo expuesto anteriormente, se entiende que Scrum es aplicable a cualquier tipo y tamaño de proyectos, si bien es especialmente útil en proyectos medios y grandes en cuanto a complejidad o a tamaño, o bien en aquellos proyectos donde la incertidumbre es grande, bien por el campo en el cual se desarrolla, o bien porque los requisitos no están bien definidos desde el principio y son muy susceptibles de cambiar durante el desarrollo.

Conceptos

La metodología utiliza una serie de tecnicismos para referirse a determinados artefactos, roles y actividades (desde el punto de vista de la terminología RUP), stakeholders y demás:

Backlog: documento en el cual se detallan, de forma priorizada, los requisitos del sistema.
Sprint: cada una de las iteraciones de que se compone el desarrollo con Scrum. Si existe razón de suficiente peso, puede abortarse el sprint y comenzar uno nuevo.
Backlog sprint: “trozo” de backlog que nos comprometemos a implementar de forma satisfactoria en el sprint (iteración) actual.
ProductOwner: Cliente fundamental del sistema. El que desea o propone el software. El propietario del producto. El ‘input’ principal para poner en marcha el nuevo proyecto. Es fundamental que la persona que desempeña este rol se implique al máximo en el proyecto, para que éste tenga garantías de éxito.
ScrumMaster: Gestor del proyecto un poco especial: motiva al equipo. Crea un clima en el cual el equipo trabaje a gusto y sin interrupciones: protege a su equipo. Sin embargo, le deja trabajar libremente. No debe fallar al equipo. No debe faltar a ninguna reunión. Siempre estará ahí, para atender las necesidades del equipo. Es más un “líder” que un “gestor” al uso. Ken Schawber dice que es como el perro pastor de un rebaño de ovejas. Vigila y protege a las ovejas, pero sin molestarlas, sin intervenir prácticamente en sus cometidos.
Team: Equipo de desarrollo. Cada equipo estará compuesto por 7 +-2 personas (es decir: entre 5 y 9 personas, preferiblemente 7). El ScrumMaster jamás intervendrá aquí. El equipo debe estar cohesionado y debe promoverse la filosofía de “todos ayudan a todos”. El equipo se autogestiona a sí mismo. Los miembros del equipo no tienen roles: colaboran entre ellos y “todos hacen de todo”: análisis, diseño, implementación, pruebas y documentación. De este modo no se rompe la continua colaboración y desarrollo de las funcionalidades del proyecto.

En esta metodología existen dos roles bastante graciosos y que dan forma a Scrum: cerdos (pigs) y gallinas (chicken). La denominación viene de un popular chiste: Un cerdo y una gallina se encuentran en la calle. La gallina mira al cerdo y dice: “Hey, ¿por qué no abrimos un restaurante?” El cerdo mira a la gallina y le dice: “Buena idea, ¿cómo se llamaría el restaurante?” La gallina piensa un poco y contesta: “¿Por qué no lo llamamos “Huevos con jamón?” “Lo siento pero no”, dice el cerdo, “Yo estaría comprometido pero tú solamente estarías involucrada”.

En Scrum, los cerdos (aquellos que están comprometidos de forma seria con el proyecto) son desempeñados por los subroles Team, ScrumMaster y ProductOwner. El rol gallina está constituído por otros clientes y stakeholders (ejecutivos, etc.). Al final, todos los roles “cerdo” son gestores (managers), desde el momento en el que se dice que están comprometidos con el proyecto.

NOTA: A pesar de mi marcado desprecio del uso de anglicismos y del ‘spanglish’, mantendré el nombre de los roles en inglés, por correspondencia con la idea original.

(Continuará)

Gestión de proyectos Software (II)

En otra ocasión hablé de un libro que trata sobre Gestión de Proyectos Software, estrategias para conseguir objetivos de productividad y que la gente de tu equipo disfrute haciendo lo que más le gusta: la informática.

En este artículo pretendo terminar con aquellos teamicides de los que hablaban los autores, añadiendo tres más que la experiencia de los años les permitió descubrir.  Finalmente, hablaré de buenas prácticas, que nos permitirán construir una organización sana y productiva. Recordemos que tratamos con ideas, estrategias, y no con técnicas fijas ni “balas de plata”. Todo, claro está, incluye mis propias aportaciones a lo que el libro contiene.

Otros factores de inhibición en el crecimiento de un equipo (’teamicides’)

Ya hablamos de siete factores que hacen mucho daño al crecimiento y la productividad del equipo. Aquí expondremos otros tres factores clave:

Los pósters corporativos

Las perogrulladas que anuncian estos carteles, en primer lugar, ponen en duda la imagen profesional de la empresa por un lado, porque lo que hace falta es trabajo duro y no autobombo. No hace falta recordar a los empleados lo importante que es su trabajo. Estos carteles no consiguen motivar a nadie, y menos cuando lo que dicen dista mucho de la realidad bien conocida por los propios trabajadores. Más bien insultan a la inteligencia humana. La motivación se consigue por otros medios, no con propaganda barata. Publicidad: en el buzón del portal, por favor.

Horas extras: un efecto colateral no previsto.

Las prisas y el cansancio acumulado nunca fue bueno: errores, cansancio, recuperar con “horas-de-menos”… Muchas veces la gente se queda en la oficina haciendo horas extras para hacer presencia, porque realmente no puede hacer más; no está produciendo, simplemente trata de hacer ver que trabaja lo que puede.

Y en un equipo que marcha bien, que es productivo, que se compenetra bien, etc, las malas estimaciones pueden ser totalmente desastrosas. Y la única solución que se antoja para corregir las malas estimaciones es… hacer horas extra. Y quizá la gente sepa que hace lo que puede, sabe que trabaja bien (mejor, quizá, que otros equipos de su misma organización) y no esté dispuesta a pagar tal sobre-explotación. Unos quizá no quieran; otros sí… envidias, disensiones, y al final un equipo bien cohesionado se va al garete.

Competición dentro del equipo

Suscita envidias. Revisiones de sueldo por méritos, incentivos, objetivos, premios, favores, beneficios, ránkings de productividad… la excelencia o el fracaso va para el equipo como un todo, no para uno sólo. Mima a los miembros de tu equipo, haz que resuelvan sus problemas por sí mismos, que se apoyen mutuamente, que se fraternicen. Que no compitan entre sí, pues no tiene sentido que lo hagan. Que unas veces sean unos los expertos en alguna materia y en otras los aprendices de otro asunto. El gestor debe moderar y coordinar el diálogo.

A grandes males… mayores virtudes

Contra todos los “pecados capitales” identificados arriba y en otros artículos, tenemos una serie de buenas prácticas que harán de nuestra organización un lugar en el que la gente se sienta a gusto para trabajar.

El culto por la calidad

Decir que un producto imperfecto es suficiente es desastroso. Sin embargo, decir que lo único que vale es la perfección constituirá un reto muy interesante para el equipo, para desarrollar sus habilidades y tratar de sentirse al final orgullosos por su trabajo. Una cosa son las labores de planificación: qué costes, cuánto tiempo, cuánta funcionalidad. Otra bien distinta es entregar esa funcionalidad con la mayor calidad posible.

Proveer abundantes finales satisfactorios

Saber que se alcanzan metas, objetivos, productos finales, que los proyectos se terminan. Y que terminan bien. Algo que nunca se acaba es desesperante. Para evitar esto, es conveniente pensar en sacar muchas versiones, por ejemplo. Esto hace que la gente vea objetivos cumplidos, y lo cual motiva a los individuos.

Construir un sentimiento de excelencia

Hacer sentir a los empleados que están trabajando en una gran corporación, que se les mima, que su trabajo es profesional e indispensable. Hacer sentir que cada persona es única. Es preferible gente centrada y productiva que gente controlable. Es imposible controlar a un buen profesional. Déjale que trabaje a gusto; seguramente te sorprenderá gratamente, agradecerá la confianza depositada en él. Déjalos progresar; no presiones a tu equipo.

Preserva y protege equipos victoriosos

Facilita el que si un equipo ha funcionado bien en un proyecto, tenga la oportunidad de realizar más proyectos juntos, si así lo desean. El valor añadido así es muy grande y fundamental. Aprovecha la armonía creada entre los miembros en proyectos pasados.

Provee estrategias, no tácticas

No institucionalices metodologías mágicas que pretenden ser infalibles para todo. El proceso de desarrollo de software es complejo y debe ser desarrollado por personal cualificado. Se han de tener en cuenta riesgos y sucesos no controlados. Es un proceso empírico, no determinista (Ken Schwaber, metodologías Ágiles, SCRUM). No existen las balas de plata. Existen estrategias que nos ayudan a afrontar problemas con cierto abanico de posibilidades de actuación.

Trata de formar grupos heterogéneos

El gestor no forma parte del equipo; es externo. No es un igual a los demás. No debe haber liderazgos en el equipo. Facilita estructuras de red, no de jerarquía. Que cada uno aporte algo distinto; que los miembros del equipo se complementen, aprendan unos de otros.


“Peopleware, Productive projects and teams”

Tom DeMarco y Timothy Lister

Dorset House Publishing Co.,

A vueltas con la ciencia

Juan Manuel de PradaLa polémica saltó cuando, tras leer un artículo de Juan Manuel de Prada, “Ciencia demente” en el XLSemanal a los pocos días me encontré con una noticia en Microsiervos en la cual se hacía eco de una retaíla de blogueros que habían defenestrado dialécticamente al escritor, lo cual me llamó poderosamente la atención. Tras leer tales críticas, en las cuales se tildaba a nuestro hombre de “Forrest Gump”, “Católico”, “Ignorante”, “Tipo de derechas” e insultos peores, volví a leer el artículo, y recuperé los otros dos de la serie que tan ardua polémica habían suscitado, “Creacionismo” y “Incrédulos“, publicados en la misma revista. A ver si se me había pasado algo. Dada mi incomprensión del asunto, decidí escribir al interpelado y conocer su opinión de todo esto. Gracias, Juan Manuel, por leerme y contestarme, si estás leyendo esto (lo cual dudo mucho, no creo que vaya a tener ese honor).

Lo único que ví es a una persona católica, de letras (¿o de artes?) que está cansada de tanto cinismo y tanto fanatismo con algo, que, jamás olvidemos, es incapaz de dar respuesta a todo lo que ocurre en el Universo, y probablemente jamás pueda hacerlo. No lo digo yo. Lo dijo Punset, y lo dijo Manuel Toharia. Que son científicos, vaya. Hay campos en la ciencia para los cuales contamos con vagas suposiciones y modelos, nada más. Como ejemplos: el origen del Universo, el átomo: aquella partícula indivisible cuyo núcleo un buen día un tío rompió y empezó a salir un montón de mierda de dentro, subpartículas, bosones y demás. Y cuando la ciencia no nos cobija, al final somos tan hipócritas de orar y pedir favores a un Ser Supremo. Pues qué bien.

Lo que quiero decir es que, más allá del acierto o equivocación de tales artículos, más allá de si Juan Manuel es un versado en ciencias o no, lo que pretende en estos artículos es que nos demos cuenta de que todo lo que produce el hombre (religión, ciencia) está siempre sujeto a errores (aunque quizá habríamos de preguntarnos en qué hemos progresado realmente, si se instituyen las jornadas laborales de 65 horas semanales). El error es el compañero ineludible de la ciencia experimental. El camino hacia el saber está plagado de tropezones intermedios, y lo que hasta hace poco era una verdad aceptada es ahora falacia, y lo que antes fue patraña ahora es un hecho rigurosamente demostrado científicamente (hoy sabemos que la Tierra no es el centro del Universo). Es cierto que los postulados que había anteriormente a éstos no eran científicos, o al menos algunos de ellos, pero también es verdad que otros sí contaban con rigurosos estudios científicos. La historia de la ciencia se ve plagada de casos fraudulentos, como el Hombre de Piltdown o los rayos-N, por citar un par de ejemplos.

¿Acaso vamos a ser tan necios como para pensar que los hombres que hacen ciencia no se equivocan jamás? ¿Sabemos a ciencia cierta (el uso de ciencia aquí viene que ni pintado) que Dios no existe y que todas las religiones son falsas? Eso parece filtrarse de las afirmaciones que realizan los prepotentes asociados (o ni siquiera eso) a la ciencia, que no científicos, porque un científico no realiza afirmaciones tan rotundas como los hipócritas que les rodean, alardeando de sapiencia superior. Fíjense en la distinción que hago: la ciencia puede no equivocarse jamás, pero los hombres sí. Una perturbación en un experimento, una premisa falsa, un resultado absurdo… Quizá nos haga falta la visión de una persona ignorante, sin prejuicios ni predisposiciones a ver lo que desea ver, para que nos demos cuenta de otros posibles caminos. ¿Acaso vamos a perder el sentido de la cordura hasta el punto de no querer escuchar a quien no piensa como nosotros? Creo que el camino hacia la sabiduría estriba en escuchar todas y cada una de las opiniones, juzgarlas, encontrar sus puntos fuertes y débiles y al final elaborar una conclusión propia sobre todo ello. Pensé que eso también formaba parte de la experimentación científica.

El tema de la nutrición ha quedado en claro entredicho. El aceite de oliva es malo, luego bueno. Las patatas, para los cerdos, y la leche, para los corderos. Es como un brainstorming de ideas que surgen, se estudian, se esciben tratados y teorías y todos nos las creemos, aunque, como dice Juan Manuel, muchas sean absolutamente contradictorias. Un poco de sentido común. Lo que se pide es un poco de crítica hacia todo lo que captamos diariamente como noticias. Para nuestros cerebros es un ejercicio formidable, oigan.

Yo, que soy un profesional de la información (del ramo informático, no periodista; esta distinción es importante, creo), les aconsejo que sometan a rigurosa crítica todo lo que oigan y vean diariamente en cualquier medio de comunicación. Hoy día estamos saturados de información, y no todo el mundo hace bien su trabajo. Si nos creemos a pies juntillas todo lo que nos dicen, ¿para qué sirve la educación que hemos recibido? ¿En qué nos diferenciamos de aquellas masas movidas por políticos expertos en oratoria que nos llevaron a las Grandes Guerras, o a la Guerra Civil? ¿Y la manipulación e ineficiencia de los sindicatos? ¿Y la manipulación informativa que ejercen unos y otros?

Quizá haya cosas que no estemos haciendo tan bien como creemos. Quizá los que hacen tales críticas, se rasgan las vestiduras, se creen poseedores de la Verdad Verdadera y acusan con el dedo inquisidor no merezcan denominarse científicos, como con tanta pomposidad y petulancia alardean de serlo. No perdamos el norte, por favor. Hagamos, pues, un poco de autocrítica sobre nuestros progresos, y jamás perdamos de vista el sentido común, que, como decía un profesor mío de matemáticas, parece ser el menos común de los sentidos.