intive Argentina Blog

Los libros que todo dev debería leer

En intive-FDV hay muchos amantes de la lectura, tantos que tenemos un canal #literario en Slack donde compartimos nuestros autores y títulos preferidos. Algunos hasta vamos a talleres de lectura e intercambiamos sobre lo que leímos. Pero, en general, tanto los apasionados como los no tan aficionados a este placer, todos sabemos que es vital capacitarnos, nunca dejar de aprender. Por eso, aparte de nutrirnos de foros y eventos, también nos turnamos para preparar charlas internas de diferentes temáticas cada viernes en la tarde, y leemos artículos, papers y libros técnicos. Hoy queríamos dejarles una selección de estos últimos, los que creemos que son fundamentales para todo developer:

  • Título: Clean code: A Handbook of Agile Software Craftsmanship

Autor: Robert C. Martin

“Dice el refrán que un buen programador escribe código que la computadora entiende, pero un buen programador escribe código que los humanos entienden. El eje de este libro es inculcar la idea a los desarrolladores de la importancia de escribir código legible. Está orientado al paradigma de Orientación de Objetos; aunque muchos de los principios propuestos son funcionales para otros tipos de paradigmas. No es un libro que se enfoque en arquitectura de software, sino en la legibilidad del código.” Rodolfo Cordero Sancho – DevOps

  • Título: The Mythical Man-Month

Autor: Fred Brooks

“Some people have called the book the «bible of software engineering». I would agree with that in one respect: that is, everybody quotes it, some people read it, and a few people go by it.” Fred Brooks

(“Algunas personas han llamado al libro “la biblia de la ingeniería de software”. Estoy de acuerdo en que todos lo nombran, algunos lo leen y muy pocas personas lo aplican.” Fred Brooks)

“En este libro aparecen varias frases célebres, entre ellas ésta: “añadir más efectivos a un proyecto de software en retraso, lo retrasará más” (“Adding manpower to a late software project makes it later”). El autor es un experimentado ingeniero, quien trabajó dirigiendo proyectos importantes, como el sistema operativo IBM OS/360, que demoró casi el doble de tiempo estimado en ser terminado. Este libro contempla sus observaciones acerca de lo que falla normalmente en los proyectos de desarrollo de software. Se tiene que considerar que fue escrito en 1975, casi seis años después de la NATO Software Engineering Conferences(1968-1969), donde se acuña el término Ingeniería de Software. Es un buen libro para administradores de proyectos.” Rodolfo Cordero Sancho – DevOps

  • Título: Peopleware: Productive Projects and Teams

Autores: Tom DeMarco y Timothy Lister

“En mi opinión, es un verdadero “abridor de cabezas”. En su momento, al empezar a tomar los caminos del liderazgo, hizo que comience a ver las cosas desde un punto de vista completamente distinto al netamente técnico. Para ello, se apoya en una serie de estudios sobre las variables que afectan la productividad del trabajador en la era del conocimiento y la importancia del papel humano en el desarrollo. Te ayuda a entender cómo el “peopleware” es más importante que el hardware y el software.” Pablo Sanchez – Agile Coach

  • Titulo: No Silver Bullet – Essence and Accident in Software Engineering

Autor: Fred Brooks

“Es un paper que habla sobre la complejidad accidental y la complejidad esencial. Una apreciación sobre la complejidad durante la etapa de desarrollo. A grandes rasgos la primera es la complejidad generada por los propios desarrolladores mientras que la otra es la complejidad del problema en sí mismo. Este paper habla de cómo mitigarlas y de cuáles son los retos de ambas complejidades.” – Rodolfo Cordero Sancho – DevOps

  • Título: Effective Java

Autor: Joshua Bloch

“El libro es un compendio de buenas prácticas, bien explicadas y con ejemplos. En su tercera edición actualiza su contenido para estar al día con los features incluidos en las nuevas versiones de Java. Su autor se desempeñó como software engineer en Sun Microsystems y entre otras APIs estuvo a cargo del diseño e implementación de Java Collections Framework.”” Alejandro Gomez – Software Architect

  • TItulo Design Patterns: Elements of Reusable Object-Oriented Software

Autores: Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides

“Patrones de diseño fue un término creado por Christopher Alexander, un arquitecto especializado en urbanismo. Él propuso que se puedan identificar soluciones sencillas y reutilizables para problemas comunes. Existen muchos libros que tratan sobre este tema, pero éste es notable especialmente por los patrones y la forma en que los describe. Está enfocado en cómo diseñar la solución. Es la base para entender muchos frameworks y librerías, muy útil si se desea crear un framework o diseñar una aplicación de cero.” Rodolfo Cordero Sancho – DevOps

  • Título: The Hitchhiker’s Guide to the Galaxy

Autor: Douglas Adams

“No es un libro de programación, pero sí un clásico de la literatura de ciencia ficción. Te ayuda a pensar fuera de la caja, con un poco de humor.”  – Rodolfo Cordero Sancho – DevOps

  • Título: The Inmates are Running the Asylum

Autor: Alan Cooper

“Otro más de “ese tipo de libros” que me gustan, los que llamo “abridores de cabezas”. Al castellano lo han traducido como “Presos de la Tecnología”, tal vez por la propuesta del título extendido: “The Inmates Are Running the Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity” (“Los internos están gobernando el manicomio: por qué los productos de alta tecnología nos vuelven locos y cómo restaurar la cordura”). Si bien este libro tiene más de 30 años desde su publicación, sigue siendo referencia obligada tanto para gente de Computación como para el conjunto de tomadores de decisiones de las empresas. Ayuda a entender la condición de producto del software y a centrarnos en cuestiones como la usabilidad y la interacción para entregar verdadero valor al usuario.” Pablo Sanchez – Agile Coach

Esperamos te haya gustado este compendio de libros indispensables para desarrolladores. Si tenés uno de tu preferencia podés nombrarlo en los comentarios, para enriquecernos cada vez más en este intercambio. ¿Te sumás?

Paula Becchetti

Paula es la editora del blog de intive – FDV. Licenciada en Comunicación Audiovisual de la Universidad Nacional de San Martín (UNSAM), se destaca como Content Manager especializada en blogs, contenido web, email marketing y social media. Su amplia experiencia en la industria del software la hace muy valiosa a la hora de traducir contenidos técnicos a un lenguaje coloquial. Según sus propias palabras: “Me conecto con el mundo por medio de la tecnología, pero también a través de todo aquello que respira, del deporte, de la música y de mis viajes”.

2 comentarios

  • Muy buenas recomendaciones, Paula. Yo agregaría algunos que estoy leyendo en formato digital porque no se consiguen en papel o son inaccesibles para mí. No son libros técnicos sino de experiencias e historia:

    Historia de Developers
    El Libro Negro del Programador
    El Algoritmo de Ada

    Saludos.