Error: No coinciden los Tipos

Quizá alguno de mis pequeños descubrimientos te resulte interesante. Y si no coinciden nuestros tipos…

Archivo de 13/11/09

Tantos tontos y tan pocas balas…

Publicado por mrtypo12 en Noviembre 13, 2009

Hace tiempo que quería poner esta pataleta por escrito y hoy es un día mejor que cualquier otro porque he sido testigo de una forma de incompetencia estado casi solido, por parte de algunos compañeros de profesión.

“Incompetencia” es una palabra sobrevalorada y sobredimensionada ante todo: en realidad lo único que quiere decir es “falta de competencia” y asi la utilizo yo aqui a pesar del titulo de esta entrada (que lo uso unicamente porque siempre me hizo gracia esa frase y no porque este llamando gilipollas a media empresa). A fin de cuentas la falta de competencia es algo que se puede suplir con estudio si hay capacidad de autocritica y voluntad.

Tejidos los prolegómenos vamos a lo que vamos, aunque sobre faltas de competencia volveremos graciosamente casi al final, si las cosas en esta entrada siguen su cauce y todo sale como esta previsto.

Que ha pasado? o mejor, que esta pasando? pues facil amiguitos, en la mía empresa donde trabajo para no llegar a final de mes como informatico mileurista de pacotilla (esto es un pleonasmo en realidad) estamos como locos implantando una metodología para el desarrollo de software. Hay que decir que mi empresa es grande de cojones, tiene presencia en varios países y lleva a cabo multitud de desarrollos mas o menos afortunados (mas menos que mas, a fe mía); lo que quiero decir con esto es que no somos 4 y el del tambor dedicados a reparar impresoras. Que sucedía hasta ahora? en esencia: no había una metodología clara de desarrollo ni de gestión. Ese cumulo de procesos que suele caer en el saco que llaman “Ingeniería de Software” no existía como tal, de ahí que conceptos como “análisis de requisitos”, “diseño técnico”, “pruebas de regresión” y todas esas cosas no existían en el estricto modo en que existen las cosas en el mundo real: esto es, hay analistas pero no se sabe muy bien que hacen, los diseños técnicos los hace el mismo que va a programarlos y el arquitecto es un tío que no sabe ni de donde viene ni a donde va, y lo que es peor: no sabe el tiempo que le queda. Con esto quiero decir que aunque los gerifaltes usaban los términos con enorme grandilocuencia y gran refocile cuando se conectan a Matrix para hacerse sus simulaciones particulares (aka pajas mentales), en el mundo real no pasaban de ser palabras huecas y conceptos extraños y sin sentido. Al final todo era bastante desastroso y en tiempo de codificación podía cambiarse la funcionalidad de arriba a abajo varias veces porque no se pensó lo mas mínimo si aquello encajaba con el resto o en que manera lo hacia… o si realmente era útil… o si realmente era lo que pedía el cliente… o si o si o si…

Y ahora viene cuando la matan porque se ha pedido ayuda a una empresa externa que se dedica a estos menesteres y claro, han flipado (como no, también tienen que comer los pobrecillos) y han definido una serie de procesos bastante exhaustivos para pilotar todo el proceso de desarrollo, desde el documento de Visión hasta el despliegue del producto ya terminado y todo el mondongo. Entonces es cuando los incompetentes que han vivido de cojones apoltronados en sus asientos rascándose el inglete y pagados de si mismos pensando que su palabra era misa y su inmaculada sabiduría iluminaba el tormentoso camino de los pobres desgraciados que nos arrastramos por el suelo escupiendo líneas de código como escarabajos pelotilleros… como digo, esta suerte de pseudo trabajadores  salen a la luz empezando a matizar, a ponderar, a valorar, a cuestionar en definitiva el procedimiento sugerido, en aras de una mayor “practicidad”; porque claro, eso que te han dicho que porque cojones se hace tan mal y desde hace tanto tiempo ya lo sabían ellos, como no, date cuen.

Concretamente el bacalao ha venido sobre la “interpretación” que este grupo de personas da al documento que recoge lo que tiene que hacer la aplicación y que recibe el bonito nombre de “especificación de requisitos”. Hay una serie de reglas que hay q cumplir para que una especificación de requisitos sea tal, como hay una serie de reglas a cumplir para que una carrera en apariencia desordenada por parte de 22 personas en pijama y en pos de una esfera, se pueda llamar futbol. Pues no oyes, que la especificación de requisitos es una cosa abierta al debate, a la interpretación. A los efectos puede ser una letrina donde todo tiene cabida en favor del pobre programador pelotero que no se albarda de nada: novelas escritas por el comercial justificando la inclusión o exclusión de tal necesidad, dibujos del departamento de diseño para aclarar las cosas (dibujos que rápidamente se quedan desfasados y no se molestan en remendar porque cuesta pasta), recortes de la wikipedia para las partes técnicas, mails entre los arquitectos para aclarar las cosas… un vergel en toda regla, un caos, una puta bacanal orgiástica de tecnicismos indigestos que el programador observa con cara de pueblo. Entonces intentas explicar como tiene que ser una especificación de requisitos ante la plana y te das cuenta de que estas solo. Mas solo que lo que estuviste cuando llegaste a este mundo y mas solo de lo que estarás cuando toque abandonarlo, por viejo y por pellejo.

Y estas solo porque el 95% de los puestos de dirección o de gestión están copados por físicos, matemáticos, industriales o telecos. Cuando mas arriba es el puesto de gestión mas físicos, industriales o economistas. Cuanto mas abajo mas telecos. Informáticos pocos o ninguno aunque sean mayoría picando código. Si habéis intentado explicarle a un teleco o a un físico qué es una especificación de requisitos y no han tratado el tema antes, entenderéis lo que digo. No estoy hablado de falta de capacidad, por supuesto que no, no hay que ser ningún superdotado o haberse chupado una carrera de 5 años mas prorrogas para saber hacer una especificación de requisitos mínimamente decente. Es sencillamente ignorar la existencia y desdeñar por sistema la importancia de las cosas que se ignoran. Es no saber lo que no se sabe y además, importarles un huevo porque si algo relativo a la informática no lo conocen es que no es importante. Si lo fuera ya lo dominarían. Es la incompetencia en estado puro y duro; relativa, porque pueden ser unos hachas en sus cosas (o incluso programando!) pero en lo que aqui concierte la palabra que me viene a la mente es  “vergonzoso”. Y como son mayoría es como para plegar la oreja y subirse las mantas hasta la cabeza.

Pero lo mejor de todo es que los únicos que tienen competencias a día de hoy en informática son… los telecos! tócate el fofete! claro, nuestro menistro/a alega que la informática es una ciencia “transversal” y claro, no ha lugar asignar competencias para esa panda de muertos de hambre que están todo el día con sus chuminaditas de análisis – diseño y demás zarandajas que no van a ningún lado.

En total, que esto no hay quien lo arregle. La verdad es q no se porque el tema me molesta tanto; a fin de cuentas la informática es una puta mierda bien gorda donde nada funciona como debe: te instalas la ultima Ubuntu y lo primero que hace es descargarse 200 megas de parches y la gente se cooooorrre de gustoooo. “Tengo el sistema al día!” Lo mismo pasa con Windows pero peor: reiniciar 37 veces, actualiza el sistema de actualizaciones, parchear el parcheador de parches… ahora te coloco el historial del navegador aqui pero tranquilo que en la próxima versión te lo coloco allá y asi te entretienes buscándolo; y si hoy la config de ethernet esta en /etc/network/interfaces tu tranquilo, no te pongas nervioso que mañana te la ponemos en ifcfg-ethx como antaño o te cambio el inittab o te toco los cojones, que de eso sabemos un ratillo.

Y asi vamos tirando.

Publicado en informatica | Deja un Comentario »