¿Cuáles son los mejores libros para programadores?

Codificadores en el trabajo: reflexiones sobre el arte de la programación

Si tienes curiosidad acerca de la vida como programador, Coders at Work es el libro para ti. Está repleto de interesantes entrevistas de 15 programadores consumados y científicos informáticos, incluidos Joshua Bloch, Peter Norvig, Donald Knuth, Ken Thomson y Jamie Zawinski. El autor, Peter Seibel (un programador convertido en escritor), consiguió que los entrevistados hablaran sobre los famosos proyectos en los que trabajaron y las inspiradoras historias detrás de ellos. Coders at Work da un vistazo a lo que hace que algunos de los mejores programadores funcionen y cómo piensan. Definitivamente una lectura obligada!

Code Complete de Steve McConnell se considera la enciclopedia de la codificación práctica y una lectura obligada para cualquier programador profesional. Y es fácil de entender por qué: es una gran literatura en 900 páginas, pero cada capítulo está repleto de sugerencias y técnicas para mejorar la programación diaria y construir código que sea legible y más fácil de administrar. McConnell tiene una habilidad especial para presentar su material en un formato de historia que hace que el libro sea fácil de leer e incluso entretenido. No importa en qué nivel se encuentre, Code Compete indudablemente cambiará su forma de pensar y escribir código.

CONSEJO: Si no tiene tiempo para leer el libro en su totalidad, vaya a los últimos tres capítulos, ya que sirve como guía de recursos. Desde allí, puede leer los capítulos sobre los que desee información. Omita la edición Kindle y opte por la copia impresa, ya que los capítulos son más fáciles de consultar.

El mes del hombre mítico

La premisa de este libro se basa en el hecho de que las computadoras cambian, pero las personas no. The Mythical Man Month es un clásico de programación que analiza los elementos humanos de la ingeniería de software. Aunque el libro fue escrito hace 30 años (publicado por primera vez en 1975), ha resistido el paso del tiempo. ¿Por qué? Porque construir cosas, incluido el software, ha tenido tanto que ver con las personas como el éxito con los materiales o la tecnología. Si aspira a convertirse en gerente de proyectos, este libro lo ayudará a comprender las cosas que pueden salir mal en el desarrollo de software y le brindará consejos prácticos o trabajar con, organizar y administrar equipos.

No me hagas pensar, revisitado: un enfoque de sentido común para la usabilidad web

Si vas a leer un libro sobre usabilidad, ¡hazlo este! Don’t Make Me Think es un gran recurso para cualquier desarrollador web que quiera crear sitios web, sitios móviles o aplicaciones móviles que sean mucho más fáciles de usar. El libro está cargado de información útil que se presenta de una manera clara y concisa que podría ser entendida tanto por audiencias técnicas como no técnicas por igual.

El programador pragmático: de oficial a maestro

Otro viejo, pero bueno, que sigue resistiendo la prueba del tiempo. El programador pragmático es una colección de lecciones y recomendaciones para desarrolladores de software. El libro contiene un conjunto de consejos numerados, alrededor de 70 de ellos, que se recogen en una sola tarjeta extraíble situada en la parte posterior del libro. Los consejos por sí solos pueden parecer obvios, pero contienen algunas dimensiones sorprendentes que ayudarán a fortalecer su carrera de programación y perfeccionar su oficio.

Código limpio: un manual de artesanía de software ágil

Un código mal escrito puede poner de rodillas a un proyecto, ¡por eso es tan importante desarrollar un gran código! En Clean Code, el “Tío Bob” Martin comparte consejos y ejemplos sobre cómo crear un mejor código. El libro se sumerge en los principios y las mejores prácticas de escribir código limpio, y también presenta estudios de casos cada vez más desafiantes que desafían a los lectores a pensar sobre lo que está bien con el código y qué tiene de malo. Si bien los ejemplos en Clean Code se dan en Java, son aplicables a casi todos los lenguajes de programación.

SUGERENCIA: lea Clean Code después de completar Code Complete ya que trata algunos de los mismos temas pero a un nivel superior.

Programando Perlas

Este es un libro clásico para novatos que enseña los conceptos básicos para resolver problemas. Si resuelve los problemas por su cuenta (sin mirar hacia el futuro), aprenderá mucho y será un programador mucho más fuerte con una comprensión más profunda de los algoritmos y el diseño de algoritmos.

Descifrando la entrevista de codificación: 150 preguntas y soluciones de programación

Este es uno de los libros de referencia para programar entrevistas si buscas conseguir un concierto en una empresa líder como Amazon, Apple, Facebook, Google o Microsoft. Como sugiere el título, el libro contiene 150 preguntas de programación que puede encontrar en las entrevistas, y luego desglosa cómo resolverlas. El resto del libro se centra en los aspectos no codificantes del proceso de la entrevista, como la preparación de la entrevista, la preparación del currículum, la preparación conductual, etc. Definitivamente uno de los mejores libros de entrevistas de programación que existen. Otro buen libro de preparación es Introducción a los algoritmos, que se considera la “biblia de los algoritmos”.

Soft Skills: el manual de vida del desarrollador de software

Para la mayoría de los desarrolladores de software, la codificación es la parte divertida. Las partes difíciles implican tratar con clientes, pares y gerentes, mantenerse productivos, lograr la seguridad financiera, etc. Este libro cubre todo lo demás, aparte de la codificación, desde la carrera profesional hasta la marca personal, los blogs, el aprendizaje, la enseñanza, las finanzas e incluso el estado físico y las relaciones.

Como se esperaba, una lista de los mejores libros para programadores es variada y cubre una amplia gama de cosas. De todos modos, creo que los siguientes libros deben ser leídos por cualquier programador.

  • Código completo por Steve McConnell
  • El lenguaje de programación C de Kernighan y Ritchie
  • Introducción a los algoritmos de Cormen, Leiserson, Rivest y Stein
  • Refactorización: mejora del diseño del código existente
  • El mes del hombre mítico
  • El arte de la programación de computadoras por Donald Knuth
  • CÓDIGO por Charles Petzold
  • Perlas de programación por Jon Bentley
  • Desarrollo de software ágil, principios, patrones y prácticas por Robert C. Martin
  • La práctica de la programación por Kernighan y Pike
  • Algoritmos + Estructuras de datos = Programas
  • Pensando en Java por Bruce Eckel
  • Sistemas operativos modernos por Andrew S. Tanenbaum
  • El lenguaje de programación C ++ (3a edición) por Stroustrup
  • Patrones de diseño en C # por Steve Metsker
  • El tao de la programación
  • El arte del engaño por Kevin Mitnick
  • C ++ Cómo programar por Deitel
  • Análisis y diseño orientado a objetos con aplicaciones de Brady Booch
  • El programador pragmático: de oficial a maestro
  • Hechos y falacias de la ingeniería de software por Robert L. Glass

También algunos libros que proporcionan antecedentes teóricos para la programación

  • Cómo resolverlo por George Polya
  • Matemática discreta para informáticos por JK Truss.
  • Belleza computacional de la naturaleza
  • El dilema del innovador
  • El tercer manifiesto de Hugh Darwen y CJ Date

Aquí están los libros que un programador debe leer antes de morir bromeando, pero estos son los más importantes que conozco.

  1. Introducción a los algoritmos por Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest y Clifford Stein. Estos chicos hicieron sus mejores esfuerzos para hacer este libro y, por supuesto, como programador, debes tener conocimiento sobre algoritmos, por lo tanto, no puedes encontrar nada mejor y más completo que este.
  2. Patrones de diseño : elementos de software orientado a objetos reutilizables por Erich Gamma, John Vlissides, Ralph Johnson y Richard Helm. El patrón de diseño es la parte más importante de un software y este libro es uno de los mejores libros para aprender patrones de diseño.
  3. JavaScript: The Good Parts por Douglas Crockford: La mayoría de los libros sobre Javascript no están bien explicados, por lo que para comprender realmente el concepto y la estructura de JavaScript, debe leer este libro.
  4. Introducción a la programación Java por Y. Daniel Liang: mi libro favorito para aprender Java.

Aquí están mis favoritos. En mi opinión, cada programador necesita leer y releer estos y pensar profundamente sobre sus contenidos.

Redacción de código sólido por Steve Maguire

Código completo Steve Mcconnell

Patrones de diseño de Erich Gamma (y otros)

Léelos. Aprendelos. Hazlo. Vívelos

Si desea establecer la mejor base, puede usar los libros Head first.

Head First Labs de O’Reilly Media, Inc.

Están enseñando en un enfoque diferente. Y el mecanismo de enseñanza fácil de mantener en nuestra mente.