lunes, 23 de julio de 2007

El profeta, de Khalil Gibran

Muy bonito. Increíble que haya sido escrito en el año 1901 por Khalil Gibrán, que nació en 1883.

Se puede leer una versión online
aquí

Debe haber mucho de nuestro pensamiento codificado genéticamente en nuestra especie para que cosas dichas hace tanto tiempo, con tantos cambios que hemos vivido, sigan teniendo tanta validez.

martes, 5 de junio de 2007

"Small Things Considered" by Henry Pretroski

Este libro no trata sobre ningún tema relacionado directamente con la informática o la programación sino con el diseño en general. Describe el proceso de diseñar algo y analiza ejemplos históricos de diseños satisfactorios y otros no tanto.

Me ha parecido que es demasiada lectura para aclarar tan sólo un par de conceptos y que el autor se repite demasiado. Sí que aporta una gran cantidad de información histórica y curiosa y ejemplifica ampliamente cada argumento expresado.

En resumen:
- Diseñar no es sólo establecer cómo luce un artículo, sino también cómo se utilizará, que función realizará, ergonomía, etc.
- Diseñar es complejo.
- El diseño de un producto para el mundo real está siempre limitado por la tecnología disponible y los costes de producción.
- Como norma general, las costumbres ya establecidas deben prevalecer al escoger aspectos del producto que se esté diseñando.
- "Copiar" diseños ya establecidos no es malo. Es peor forzar la diferencia, obteniendo muchas veces interfaces y funcionamientos incomprensibles para la gran mayoría de usuarios.

miércoles, 28 de marzo de 2007

"MapReduce", lo que hay detrás de Google

Artículo explicando la tecnología de paralelización que se encuentra detrás de Google.

Se encuentra online en:

La idea es GENIAL, y claro, muy sencilla (después que la lees). El gran impacto viene por la aplicación del principio de que los programas "funcionales", poco rigurosamente: "donde las variables nunca cambian de valor", son automáticamente paralelizable.

Los dos creadores de Google crearon un sistema operativo que implementa esta "paralelización automática de procesos" con lo cual lograron que aumentar el poder de precesamiento para cualquier tarea definida de acuerdo a su modelo (mas abajo) fuera virtualmente infinito y fácilmente aumentado añadiendo simplemente mas computadoras a la red de procesamiento.

El modelo Map-Reduce está inspirado en lenguajes de programacion funcionales, como Lisp. El programador proporciona una función map(string key, string value) y una función reduce(string key, List values). Ninguna de estas funciones hace cambios sobre sus argumentos (programación funcional).

"No Silver Bullet" by Frederick P. Brooks

No es un libro sino un artículo, un clásico en la literatura para informáticos.

Nota: hace 2 años que leí este artículo por lo que lo leeré de nuevo antes de hacer mi resumen. Esta será una de las cosas buenas de hacer este blog: repasar muchas de las cosas que ya he leído.

Siempre me ha impactado cuantas cosas nuevas aprecias en un texto CADA VEZ QUE LO LEES.

En fin, los comentarios sobre este artículos quedan diferidos hasta que lo lea, que debería ser hoy por la noche después de un poco de natación.

Comenzando...

Primer post en este blog en el que pienso mantener una lista de todos los libros y artículos que he leído y que lea a partir de ahora. Será muy fácil (solo un ejercicio de voluntad) ir añadiendo las nuevas lecturas pero hacer historia tomará mas tiempo; aunque también lo haré.

Creo que esto será muy útil para mi mismo y para mi hermana que en gran parte por mi culpa es "cibernética" y a la cual me gustaría tener conmigo cada día.