domingo, 14 de septiembre de 2008

"Las cruzadas vistas por los árabes" por Anim Maalouf

Enlace en una tienda web (no está disponible en Amazon): abebooks.com

El ISBN del libro es: 84-487-0636-6

Este libro narra la historia de las cruzadas (1096-1291) basándose en los testimonios y descripciones de historiadores árabes. Ha sido muy interesante conocer esta parte de la historia prácticamente ignorada en las clases de Historia de todos los niveles de enseñanza desde la primaria hasta el pre.

Aún lo estoy leyendo.

jueves, 31 de julio de 2008

"Applying Domain-Driven Design and Patterns" de Jimmy Nilsson

Enlace en Amazon

Me lo estoy leyendo en estos momentos, y parece muy prometedor. En las primeras páginas ya me ha dado seguridad en muchas de las cosas que he estado implementando con DDD, me ha aclarado dudas.

Algo que me parece muy importante es que el autor explica su proceso de pensamiento, lo que creo que es la mejor manera de enseñar a alguien.

Actualización:

- No propone una arquitectura definitiva.
- Se muestran varias soluciones a los problemas y me ha servido para ver que otros arquitectos y desarrolladores se encuentran con las mismas dificultades, y que las soluciones a las que llegan son similares.
- Tengo que estudiar con más profundidad el patrón de "Domain Rules" que se comenta. Parece muy útil para resolver el problema de reutilizar las reglas de negocio en varias capas.

jueves, 10 de julio de 2008

"Domain Driven Design: Tackling complexity in the heart of software" de Eric Evans

Enlace en Amazon

Trascendental. Aclara y guía en muchos aspectos de la construcción de software en los que habían demasiados agujeros.

Tengo que extenderme más en este post, el libro es realmente importante y me gustaría resumirlo aquí como un ejercicio individual de comprensión.

lunes, 19 de mayo de 2008

"The inmates are running the asylum" de Alan Cooper

Enlace en Amazon

El libro trata sobre la mala calidad de la interacción entre humanos y tecnología en general partiendo de la base de que "tecnología" significa computadoras (ordenadores).

Me lo estoy leyendo en este momento...

"1984" de George Orwells

Enlace en Amazon

Excelente continuación de Animal Farm. Se adentra un poco más en la motivación y los mecanismos utilizados por aquellos que están en el lado del poder, los que saben lo que está pasando.

No comparto la opinión de que haya tanto desconocimiento entre los que gobiernan y que lo hagan sólo porque crean que hacen lo correcto, pero sí de que el objetivo primordial es mantenerse en el poder.

Me encanta el análisis de la historia de la humanidad hecho. No es históricamente estricto y no es aplicable en general, pero da muchísimo en qué pensar. No soy historiador ni filósofo ni leo demasiado sobre esos temas así que pudiera ser que haya puntos de vista y análisis más interesantes y estrictos sobre lo mismo, pero no los conozco.

El hecho de que se defina que siempre han habido 3 clases: poderosos, sirvientes y manipulados, y no sólo 2 como me habían enseñado tan bien: explotados y explotadores, ha sido toda una revelación para mi, como también lo es la forma en que esas 3 clases interactúan y sobre todo, la forma en que los manipulados no cambian nunca y que siempre son los que peor viven, quizás merecidamente.

"Coder to Developer: Tools and Strategies for Delivering Your Software" de Mike Gunderloy

Enlace en Amazon

Comentario en Amazon: Pendiente de publicar. Recordar copy&paste.

"Refactoring: Improving the Design of Existing Code" de Martin Fowler

Enlace en Amazon

No puede compararse la importancia de este libro con "Patterns of Enterprise Application Architecture" pero aún así es un libro que me alegro de haber leído.

Siguiendo el estilo del autor, brinda muchos consejos basados en su experiencia sobre cómo debe afrontarse un proceso de refactorización, cómo valorar si vale la pena refactorizar y la importancia que tiene refactorizar el código sobre la marcha.

Yo me permito añadir a sus consideraciones que la refactorización es mucho menos importante cuando la calidad del código que se está generando no representa un valor añadido. Este es el caso de la mayoría de proyectos hechos por consultoras para clientes externos, al menos según el modelo que se utiliza en España.

En este tipo de proyectos, mi experiencia indica que los desarrolladores "rasos" deben limitarse a hacer refactorizaciones a nivel de métodos, y que sólo el arquitecto o alguien con una visión global de los objetivos de la aplicación y con un excelente juicio sobre el impacto en el proyecto deben acometer una refactorización más compleja.

Como regla general, las refactorizaciones deben estar orientadas a lograr una disminución de la complejidad del proyecto y a un adelanto de la fecha de terminación.

"Patterns of Enterprise Application Architecture" de Martin Fowler

Enlace en Amazon

Este libro lo compré hace cerca de 1 año en Amazon. Creo que es uno de los mejores libros que he leído sobre diseño y arquitectura de aplicaciones. El autor expresa en forma de patrones su experiencia en el desarrollo de aplicaciones en el mundo real, que según mis propias experiencias, dista muchísimo del académico.

Comentario en Amazon:

Desde que terminé mis estudios universitarios de informática y comencé a trabajar, me di cuenta de que las aplicaciones del mundo real son mucho más complejas que crear unas cuantas clases y una interfaz. Más sobre este problema aquí

Martin Fowler ataca los problemas más comunes a los que me había enfrentado y brinda soluciones. No son soluciones "abstractas" ni incompletas, sino que están expresadas en forma de patrones, y muy bien documentadas además.

Aunque diste de ser la solución definitiva a todos los problemas y de que no quede nada más por investigar y aprender después de leer este libro, debe ser un ejemplo para todos los demás autores.


El libro en sí es un resumen, así que no se puede resumir. Se ha convertido en mi libro de cabecera y de consulta, acompañado del sitio web del autor:

http://martinfowler.com/
http://martinfowler.com/books.html

y en particular su famosísima página de patrones:

http://martinfowler.com/articles/enterprisePatterns.html

Es un libro que deberían utilizar para la preparación de programadores para evitar este problema: Por qué no es lo mismo una aplicación "de escuela" que una aplicación "del mundo real"

jueves, 21 de febrero de 2008

Animal Farm (Rebelión en la Granja) de George Orwell

Enlace en Amazon

Nota personal: El autor no es H.G Wells, ni Orson Wells! Es George Orwell.

Este libro explica cómo una sociedad puede degenerar:

- fácilmente
- poco a poco
- incluso se podría decir que "lógica e inevitablemente"
- sin que haya ningún paso individualmente criticable
- sin que nadie imponga nada
- con el acuerdo e incluso con la ayuda de la gran mayoría

en un sistema social en el cual:

- unos pocos manipulan a todo el mundo, incluso hasta el punto de modificar la memoria colectiva
- la mayoría de la gente siente miedo de expresar lo que cree
- la mayoría de la gente se siente oprimida, pero no tiene argumentos ni hechos para demostrarlo
- no se aplica la violencia explícita, pero todo el mundo se siente violentado
- nadie siente que tiene la capacidad de hacer algo para que cambien las cosas

Desgraciadamente, la mayoría de mi familia y yo mismo hemos estado envueltos en una situación así, estando en el lado de los manipulados. Quizás por eso me ha sorprendido tanto la exactitud con la que se describe el proceso y también me he quedado con tantas ganas de que el autor intentara explicar, aunque fuera con mucha imaginación, cómo se vive el proceso desde el otro lado, desde el lado de los manipuladores.

miércoles, 16 de enero de 2008

"The Picture of Dorian Gray" by Oscar Wilde

Todo un clásico de la literatura. Por algún motivo me había hecho la idea de que ese libro era "gay", si es que un libro puede serlo; pero nada más lejos de la realidad. Es un libro asexual, jaja, y habla de muchísimas cosas, pero no de sexo ni inclinaciones sexuales. Sí que se expresa demasiada simpatía y dependencia entre las amistades masculinas, pero supongo que tiene más que ver con la época y sociedad en la que fue escrito que con las inclinaciones sexuales del autor.

El libro está muy bien, con todos los elementos necesarios para atraparte y está lleno de frases, deducciones y puntos de vista muy interesantes sobre la sociedad y la vida en sociedad. La mayoría siguen siendo válidas en la actualidad a pesar de todos los años que han pasado, y según mi punto de vista, seguirán siendo válidas hasta que la evolución cambie nuestros genes y estemos más "adaptados" biológicamente a los principios y a la moral que nos queremos imponer para ser "civilizados".

"A Man in Full" by Tom Wolfe

Un libro excelente para conocer detalles de la vida normal de un americano moderno. No la de las pelis sino una más cercana a la realidad.

El libro tiene una trama que te atrapa bastante, con suspense, acción y esas cosas que hacen que todos nos esforzamos por aparentar que no nos gustan por ser superficiales, pero que instintivamente nos interesan a todos.

- La zona de aparcamiento prohibido, al menos en el sur de los Estados Unidos, es roja.

- El salario de un alto ejecutive de un banco en Atlanta está alrededor de los 130,000 dólares anuales.

- La tasa anual de impuestos para ese rango salarial está alrededor del 30%.

- El alquiler de una casa "normalita" en las afueras de la ciudad cuesta unos 700 dólares al mes.

- La relación entre New York y Atlanta y otras ciudades del sur es como entre Ciudad de La Habana y Santiago de Cuba: los habaneros se creen mejores y los santiagueros se sienten acomplejados.

- Existe la xenofobia, el racismo, el clasismo, como en todas partes. Todos quieren sentirse mejores que alguien más, y por eso los negros se creen mejores que los inmigrantes, los blancos pobres mejores que los negros, los negros ricos mejores que los negros pobres, y así, todo el mundo busca un colectivo con respecto al cual sentirse superior.