¿Qué libros deben leer los estudiantes de informática, pero no son libros de texto?

02 feb 2004

Lectura recomendada para desarrolladores

Código completo 2
Code Complete 2 de Steve McConnell es la alegría de cocinar para los desarrolladores de software . Leerlo significa que disfrutas de tu trabajo, te tomas en serio lo que haces y quieres seguir mejorando. En Code Complete, Steve señala que el programador promedio lee menos de un libro técnico por año. El solo hecho de leer este libro ya lo diferencia del probablemente noventa por ciento de sus colegas desarrolladores. En el buen sentido.

El diseño de las cosas cotidianas
Desarrollar software puede ser increíblemente frustrante, porque muchas cosas pueden salir mal. Mucho de lo que hacemos es defensivo: tratar de anticipar lo que saldrá mal antes de que ocurra. Es mentalmente fatigante y eventualmente puede manifestarse de algunas maneras negativas. A veces describo esto a personas no técnicas como la construcción de un reloj con mil partes móviles, todo lo cual puede fallar al azar a la menor provocación. ¡Buenos tiempos!
Diseñar software es difícil, sin duda, pero diseñar una puerta también es difícil . Los matices del diseño se extienden a cada objeto que tocas, ya sea un nuevo motor SQL o un zapato humilde. Este libro le dará una nueva apreciación del “diablo en los detalles”. Si diseñar una puerta no es una obviedad que pensamos que era, tal vez sea hora de darnos un descanso por no poder diseñar el software perfectamente.

Los presos dirigen el asilo: por qué los productos de alta tecnología nos vuelven locos y cómo restaurar la cordura
Este es el libro que introdujo al mundo al concepto de personas: en lugar de pensar en los usuarios como un grupo de personas abstracto, difícil de describir y amorfo, las personas nos instruyen a hablar sobre usuarios específicos que tienen nombres, personalidades, necesidades, y objetivos. ¿Querrían nuestros usuarios una función de vista previa de impresión? ¿Quién sabe? Pero si Gerry Manheim, Ejecutivo de Cuentas, tiene que imprimir su informe de gastos semanal como parte de su trabajo, es mejor que crea que la vista previa de impresión debe estar allí. No hay nada mágico aquí; como siempre, se reduce a saber quiénes son sus usuarios y qué hacen realmente, y la técnica de personas es una excelente manera de llegar allí.
También hay un análisis interesante aquí de cómo los desarrolladores tienden a considerarse calificados para tomar decisiones de usabilidad en nombre de los usuarios “regulares”, cuando en realidad no son nada. Los desarrolladores son usuarios extraños y extremos en el mejor de los casos: “Homo Logicus” versus “Homo Sapiens”. A menos que esté escribiendo un compilador donde los desarrolladores son los usuarios finales.
Una lección oculta en este libro es que a veces no importa cuán bueno sea su diseño : el software del escáner y el software de desarrollo web que Alan consultó, y utiliza como ejemplos en este libro, ambos fallaron en el mercado por razones que tuvieron nada que ver con su facilidad de uso, que fue verificablemente excelente. * A veces, los productos excelentes fallan por razones que están fuera de su control, sin importar cuánto lo intente. Siéntase libre de usar este hecho para contrarrestar el tono a veces presumido del libro.
De todos modos, otro gran libro de Cooper, y una progresión lógica de About Face. En About Face, Cooper cubrió “Perpetual Intermediates” como público objetivo; aquí, eso se refina en las personas más específicas y, por lo tanto, más fáciles de desarrollar.

El programador pragmático: de oficial a maestro
Este libro me recuerda muchas Perlas de programación, pero en realidad es mejor, porque está menos enfocado en el código. En lugar de preocuparse por el código, los autores resumieron todos los enfoques prácticos que han encontrado que funcionan en el mundo real en este libro. No todas estas cosas son técnicamente programables . Por ejemplo, preguntándose “¿por qué estoy haciendo esto? ¿Vale la pena hacerlo?” no está pensando fuera de la caja; es algo que debes incorporar a tu rutina diaria para mantenerte a ti mismo y a tus compañeros de trabajo. Y eso es lo que hace que Pragmatic Programmer sea un libro tan bueno.

Dominar expresiones regulares, segunda edición
UNIX tiene una merecida reputación de ser complejo e impenetrable. También lo hacen las expresiones regulares.
Puedo ser un miembro del club “Keep It Simple Stupid”, pero estoy haciendo una excepción del tamaño de un meteorito para las expresiones regulares. Escrito correctamente, le ahorrarán una gran cantidad de tiempo en la manipulación de cadenas, y nunca me he encontrado con un proyecto en el que no fueron útiles en algún lugar . Ver por ti mismo.
Una vez que profundice en el mundo de las expresiones regulares, puede emborracharse con el increíble poder y potencial que tienen, lo que resulta en cosas como Perl. Recuerde, el poder absoluto corrompe absolutamente. Pero también oscila absolutamente.

Cómo resolverlo por G.Polya

Trabajo clásico sobre método matemático, heurística, forma de pensar y atacar un problema. Muy recomendable, no solo para un estudiante de informática sino para cualquier persona que tenga curiosidad analítica.

“En una prosa lúcida y atractiva, Polya revela cómo el método matemático de demostrar una prueba o encontrar un desconocido puede ser útil para atacar cualquier problema que pueda” razonarse “, desde construir un puente hasta ganar un juego de anagramas. Generaciones de los lectores han disfrutado de las hábiles, de hecho, brillantes, instrucciones de Polya sobre eliminar las irrelevancias y dirigirse directamente al corazón del problema.

En este clásico de mayor venta, George Pólya reveló cómo el método matemático de demostrar una prueba o encontrar un desconocido puede ser útil para atacar cualquier problema que pueda “razonarse”, desde construir un puente hasta ganar un juego de anagramas. Generaciones de lectores han disfrutado de las hábiles instrucciones de Pólya sobre eliminar las irrelevancias y dirigirse directamente al corazón de un problema. Cómo resolverlo popularizó la heurística, el arte y la ciencia del descubrimiento y la invención. Se ha impreso continuamente desde 1945 y se ha traducido a veintitrés idiomas diferentes.

Enlace:
Cómo resolverlo:

Soy estudiante de informática y me gustaría agregar un par de libros:

  1. Una guía para principiantes de la economía mundial
  2. El economista encubierto
  3. Economía desnuda
  4. Guerras de divisas
  5. El economista del sillón
  6. Genoma: la autobiografía de una especie en 23 capítulos.
  7. Física de lo imposible
  8. Mundos Paralelos
  9. Hiperespacio

Valentino Braitenberg: experimentos en psicología sintética

Explica cómo funciona el cerebro construyendo vehículos con una complejidad creciente, simplemente una lectura maravillosa.

Douglas Hofstadter’s Gödel, Escher, Bach: una eterna trenza dorada.

Además, envíeme su currículum si puede leer (comprender) todo el asunto. 🙂

1. Sistemas informáticos: una perspectiva de programadores
2. El diseño del sistema operativo UNIX.