lunes, 15 de febrero de 2010

Bibliografía informática - Hay joyas que nunca pasan de moda

Hace unos días estuve en un blog y me impactó un artículo sobremanera. Hablaba sobre la bibliografía básica que todo el mundo debe tener a la hora de decicarse a esto de la informática. Debo de decir que no tenía ningún libro de los que ahí se mencionaron, ni siquiera me sonaban los autores. Debe ser que estoy desactualizado, o que la gente a la que leo no tiene buen material, o que lo que yo considero bibliografía sagrada está ya obsoleta.

El caso es que también me he decidido a escribir un post refiriéndome a bibliografía básica informática, segmentada por temas, claro. Podré estar desactualizado, pero creo que hay cosas que hay que ver, aunque sea por pura anécdota. Es más, no hace mucho hablé con alguien que se supone sabe las mil y una noches de programación... vamos que yo no le llegaba a los pies. Y quizás lleve razón... es más, la lleva. Pero cuando le pregunté si conocía la obra de Donald Knuth, y me dijo que ese no sabía quien era..... No sé... es como el que dice saber mucho de coches y no sabe quien es Henry Ford, o por lo menos haber oido hablar de él.

Todos los libros que aquí presento son parte de mi biblioteca personal. De todos he leído capítulos enteros. No voy a mentir y decir que me los he leído todos desde el principio al final, porque no es cierto, pero si la mayoría de sus capítulos. He puesto los que a mi parecer, son los más representativos de las disciplinas que más me interesan (evidentemente hay muchas más referencias obligadas). Cada uno tiene sus gustos. Yo aprendí con estos libros, y creo que los que los escribieron algo tendrían que decir.

Programación. Fundamentos.

Título: El arte de programar ordenadores - Clasificación y búsqueda.
Autor: Donald Knuth
Editorial: Reverté SA
Obsevación: Biblia de la algoritmia en clasificación y búsqueda.

Título: Estructura de datos y algoritmos.
Autores: Aho, Hopcroft y Ullman
Editorial: Pearson
Observación: Referencia fundamental en la programación con punteros. Una joya pedagógica.

Título: Algoritmos y estructura de datos
Autor: Niklaus Wirth
Editorial: Prentice Hall
Observación: Un clásico. Tipos de datos. Estructuras con punteros. Básico.

Título: Esquemas algorítmicos fundamentales.
Autor: Scholl y Peyrin.
Editorial: Masson
Observación: Para aprender a programar desde cero. Es el libro de referencia de la programación estructurada. Excelente el enfoque de máquina secuencial de caracteres.

Título: Fundamentos de algorítmia
Autor: Brassard y Bratley
Editorial: Prentice Hall
Observación: Temas de programación avanzada. Algorítmica a gran nivel. Referencia obligatoria.

Programación. Lenguajes y sistemas.

En este apartado voy a indicar los que mas me han marcado, tanto por su nivel pedagógico como por su nivel técnico elevado. en los temas específicos de programación de sistemas y programación orientada a objetos.

Título: El lenguaje de programación C.
Autores: Kernighan y Ritchie.
Editorial: Prentice Hall.
Observación: Obra de arte. Como en un libro tan pequeño se puede contar tanto, y tan bien.

Título: UNIX Programación avanzada.
Autor: Márquez
Editorial: Ra-ma
Observación: Referencia fundamental en la programación en sistemas UNIX. El tema de sockets, simplemente brillante.

Título: Introducción a la programación con orientación a objetos.
Autores: Camelia Muñoz, Alfons Niño, Aurora Vizcaíno.
Editorial: Prentice Hall
Observación: Excelente libro para aprender desde cero a programar con orientación a objetos. Alto nivel pedagógico, sin meterse demasiado en el lenguaje con el que se trata el tema (Java). Me ha gustado muchísmo.

Bases de datos.

En este apartado se podrían decir multitud de referencias, y muchas más si nos dedicamos a ver cada sistema gestor de bases de datos. Yo sólo voy a incluir un libro.

Título: Fundamentos de sistemas de bases de datos.
Autor: Elmasri y Navathe.
Editorial: Addison Wesley.
Observación: Fundamental en bases de datos. Lo ve todo.

Redes.

Título: Redes de computadoras.
Autor: Tanenbaum.
Editorial: Pearson.
Observación: Hablar de redes sin hacer mención del Tanenbaum es absurdo.

Título: Redes de computadores - Un enfoque descendente basado en Internet.
Autores: Kurose y Ross.
Editorial: Pearson - Addison Wesley.
Observación: Manual más actualizado para ver el tema de redes en profundidad.

Sistemas operativos.

Título: Sistemas operativos.
Autor: Stallings.
Editorial: Prentice Hall.
Observación: Manual fundamental de sistemas operativos.

Título: Sistemas operativos - Diseño e implementación.
Autores: Tanenbaum y Woodhull.
Editorial: Prentice Hall.
Observación: Evidentemente, el Tanenbaum de SO. Nada más que decir.

Sistemas.


Título: Lenguaje ensamblador y programación para PC IBM y compatibles.
Autor: Peter Abel.
Editorial: Prentice Hall.
Obervación: Referencia fundamental en la programación en ensamblador. Es un libro antiguo, y desfasado, pero explica de una manera formidable, con multitud de ejemplos el funcionamiento de un PC por dentro (ALU, registros, interrupciones y un largo etcétera). De los pocos libros que me leido por completo.

Título: Organización y diseño de computadoras - La interfaz hardware/software.
Autores: Patterson y Hennessy.
Editorial: McGraw Hill.
Observación: La biblia del diseño de computadoras. Fundamental.

Para mí estos son los libros fundamentales que se deberían ver, o por lo menos saber que existen, ya que forman parte de la base de la informática. Puede que esté desactualizado en ciertas materias, pero lo cierto es que no he visto ninguna referencia a estos libros, ni siquiera a uno, del blog en el que estuve hace unos días.

Y es que después de los años que han pasado, miro con añoranza estos libros, y de vez en cuando da gusto leerlos. Para los que nos gusta nuestra profesión (yo soy informático convencido) hay joyas que nunca pasan de moda.

3 comentarios:

  1. Qué envidia de biblioteca, ojalá tuviera tanto espacio.
    Conozco a los autores y tengo el Tanenbaum de redes, que se lee como si fuera una novela. También algunos clásicos más que no aparecen.
    Me parece importantísimo este tipo de bibliotecas porque así como los lenguajes vienen y van, la algoritmia nunca pasa de moda y siempre es la misma.

    Antes que decantarse por uno u otro "idioma" un programador siempre debería dominar el arte de la algoritmia, es por eso que hay tanto código malo. Se conforman con chapurrear un par de lenguajes antes que dominar la creación de algoritmos.
    De los que yo tengo, me permito sugerir el clasicazo "Fundamentos de Programación" de Luis Joyanes Aguilar. Y por citar un clásico moderno diría "Análisis y diseño de aplicaciones informáticas de Gestión" de Piattini Velthuis y otros.

    ResponderEliminar
  2. Hola Daniel. Gracias por comentar esos libros. De Joyanes Aguilar tengo 2 de Pascal 7. Llevas razón, faltan libros,... pero no tenía más dinero!!!! :)

    De Piattini tengo algunos, y es fundamental, pero sólo algunos temas, no el original. Libros modernos ahora tengo de Python y bases de datos. A ver si tengo tiempo y hago otra recopilación. Llevas completa razón en lo de la algoritmia, y en que hay código por ahí que más valdría no haberse escrito nunca.

    Saludos cordiales.

    ResponderEliminar
  3. me puedes vender el libro de rganización y diseño de computadoras - La interfaz hardware/software. en pdf
    gracias

    ResponderEliminar