Opinion del libro: The Pragmatic Programmer.

El libro The Pragmatic Programmer (TPP) de Andrew Hunt y David Thomas es un básico en la literatura de los programadores, no es un libro que habla de la técnica, es un libro que habla de la filosofía o principios de un programador. Yo clasificaría este libro como un libro de conducta profesional, no hay tantos lenguajes, ni ejemplos prácticos o técnicas de trabajo. Lo único que encontraras son consejos, criticas y opiniones con las que puedes coincidir o no.

¿Porque deberías leer The Pragmatic Programmer?.

Debes leer este libro si buscas mejorar la calidad de tu trabajo o necesitas un mentor virtual. Osea, este libro puede convertirse en el punto de partida o un catalizador para dar un salto hacia la mejora de tus habilidades. El libro esta compuesto de capítulos que se dedican a un aspecto en particular del oficio,  cada capitulo se divide en secciones individuales, no tienes que leer todo un capitulo para entender algo. Basta con que leas una sección para ir avanzando. Por ejemplo: recién olvide de que iba el tema de la ortogonalidad en el software, no tenia claro el concepto como para poder explicarlo  a un compañero. Así que tuve que buscar la sección de ortogonalidad en el libro, leerla otra vez y  así volver a tener fresco el concepto en mi mente. Los conceptos que tocan los autores son universales, no importa el lenguaje que uses o la tecnología que trabajes, son conceptos con los que te habrás enfrentado antes, quizá con otro nombre pero eso no les quita valor.

Este libro es bastante citado.

Es posible que veas constantes referencias a este libro, citas o menciones que se usan como argumento de autoridad. Este punto fue el que me hizo comprar y leer el libro, para ser mas concretos tuve una discusión con otro programador acerca del manejo de errores. Mi codificación es defensiva y con un manejo de errores estricto. La otra persona consideraba que mi manejo de las excepciones era demasiado rígido, para darle peso a su idea cito la frase: Las excepciones deben ser excepcionales, según mi colega un manejo mínimo o no manejo de errores es mejor y superior porque se escribe menos código. Bueno, con ese argumento gano temporalmente la discusión mi colega. Tiempo después de leer el libro (Pag. 127) entendí que la cita estaba parcialmente mal. El autor no habla de remover el manejo de errores a través del bloque try/catch, sino que las excepciones son un estado mas del sistema y como tales, hay que contemplarlas en el flujo del programa y prevenir que se disparen siempre que sea necesario. Osea, no arrojes errores para todo, pero tampoco atrapes todos los errores, encuentra un equilibrio.

El libro se ha mantenido vigente a pesar de los años.

Esta publicación data de los 90s, se ha mantenido actualizado con el paso del tiempo. En cierto modo es natural, los conceptos, técnicas e ideas son mas o menos los mismos en la profesión. No somos consientes de que la programación de computadoras lleva mas de 60 años de existir. Como programador o programadora las herramientas que usas son nuevas y recientes; las técnicas de trabajo, la ética y la filosofía detras ya tienen su edad.

Donde si vas a notar el paso del tiempo es en la mención de lenguajes, herramientas y tecnologías que ya no están vigentes o son obsoletas. No es necesario que entre en detalles, son pocos los casos donde notaras ese olor a viejo.

Clean Code, Code Complete o TPP.

Clean Code y Code Complete son libros especializados en la técnica. Estimo que son  un 80% de como construyes las cosas y un 20% de la filosofía de como construyes las cosas. En cambio TPP pondera mas en la filosofía de como construyes, un 80% y solo un 20% en la técnica. No es un libro para escribir código de mejor calidad, por lo menos yo no lo considero así.

Conclusiones.

Este libro lo lei hace varios años (en 2018), fue de los primeros junto a Clean Code. No me ayudaron a saber con que acciones exactas iba a mejorar mi calidad personal, pero si me sirvieron como brujula profesional. TPP me ayudo a elegir mis siguientes pasos como profesional, a que me voy a dedicar y en que voy a dedicar mi tiempo de estudio. Te recomiendo leer este libro si estas comenzando en el camino de ser mejor profesional, si ya llevas tiempo formandote quiza no te sea tan util. Y tambien, lee el libro si es tu decision, si estas obligado o te ordenaron leerlo no te va a servir mucho. La mejora de tu carrera siempre debe ser una decision tuya y premeditada.

Gustavo Sánchez