La Naturaleza del Software

Desde siempre…

18 Octubre 2011
Desde siempre…

“On two occasions I have been asked , ‘Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?’ I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.” (En dos ocasiones he sido consultado , ‘Diganos por favor, Mr. Babbage, si coloca en la máquina las cifras incorrectas, ¿obtendremos la respuesta correcta? ‘ No soy capaz de comprender el tipo de confusión de ideas que pueda provocar semejante pregunta). – Charles Babbage, 1792-1871  

Read more »

Ensaladas y algoritmos

16 Octubre 2011
Ensaladas y algoritmos

Hace unos de años, probablemente inspirado por Ratatouille, me dió por cocinar. Mi mujer dice que no cocino mal, pero resulto un tanto caro como “chef”, aparte de desordenado (algo para mejorar). Pero he aprendido a preparar algunos platos, y he experimentado con otros, es una actividad que resulta bastante grata y relajante, quizás porque hay una relación con programar un algoritmo eficiente. Una de los platos mas sencillos y entretenidos para aprender a cocinar son las ensaladas, mejor si van acompañadas de alguna salsa. Ayer sábado en la tarde improvisamos con mi hija  mayor y mi esposa una...

Read more »

DMR

13 Octubre 2011
DMR

“C is quirky, flawed, and an enormous success.” – Dennis Ritche C es el lenguaje madre de todos los lenguajes de programación que importan hoy en día.Si fueramos linguistas C sería como el protoindoeuropeo, la teorica lengua que dio origen al sanscrito, el griego antiguo, el germánico, el latín, y de ahí las lenguas romances… Conozco muchos lenguajes de programación, y he escrito miles de lineas de código desde assembler hasta Groovy, pero mi lenguaje matriz es C, a pesar de que aprendí Ratfor, y Pascal antes. Hace poco escribí en mi trabajo un programita en C que convirtió...

Read more »

Creadores de Universos

11 Octubre 2011
Creadores de Universos

The computer programmer is a creator of universes for which he alone is responsible. Universes of virtually unlimited complexity can be created in the form of computer programs. (El programador de computadoras es un creador de universos para los cuales es el único responsable. Universos de complejidad virtualmente ilimitada pueden ser creados en la forma de programas de computadora.) – Joseph Weizenbaum, Computer Power and Human Reason

Read more »

Datos, datos, datos…

3 Octubre 2011
Datos, datos, datos…

En 1980 IBM introdujo estos dispositivos de almacenamiento de aproximadamente 2.5 Gigabytes:   Si mal no recuerdo vi algún "refrigerador" parecido a estos en la sala de servidores del CEC en la Escuela de Ingeniería cuando estudiaba. Ya para 1987 este modelito más compacto tenía la asombrosa capacidad de almacenar 7.5 Gigabytes: Hoy en día, tan solo 24 años después, contamos con dispositivos como este:   Con una capacidad de 1 Terabyte, unas 134 veces más capacidad que , en la palma de la mano. Asombroso ¿verdad? Dado que tenemos esta capacidad de almacenamiento de información, a costos cada...

Read more »

El mejor proceso de desarrollo de software

29 Septiembre 2011

Olviden el agilismo y los manifiestos, el mejor proceso para desarrollar software es muy simple. 1. Entender el problema, en este punto es buen conversar con el usuario, escucharlo. 2. Anotar en alguna parte lo que se debe hacer. 3. Sentarse a programar la solución. 4. Pasar a producción. 5. Corregir los bugs rapidamente y volver al punto 4. 6. Si funciona, buscar otro problema a resolver. Este proceso mejora si no se le piden muchas opiniones a los usuarios y se cuenta con programadores capaces de programar.

Read more »

Poesía, Caligramas y la Belleza del Código

11 Septiembre 2011
Poesía, Caligramas y la Belleza del Código

La lectura de un párrafo de texto  requiere un recorrido lineal de izquierda a derecha. Esto debido a la conformación de nuestro sistema de escritura, si estuvieramos en el oriente medio el sentido sería el contrario, de derecha a izquierda. La lectura es lineal, en una dimensión. A diferencia de la comunicación oral, por ejemplo, que tiene 2 ó quizás más dimensiones. Al conversar no sólo usamos el habla, está el lenguaje corporal, los gestos que acompañan nuestra expresión, la respuesta límbica, etc. ¿Cuantas dimensiones tiene el código de un programa? Escribir un programa no es lo mismo que...

Read more »

Sexto Aniversario

1 Agosto 2011

El uno de agosto de 2005 comenzaron las “transmisiones oficiales” de este sitio/blog, así que estamos de aniversario, cumplimos seis años. Estoy muy contento y orgulloso de mantener este espacio, hay muy pocos blogs que se mantengan desde esa época, lamentablemente muchos espacios que eran bien interesantes fueron “apagándose” y sus autores migraron a twiter, donde sus ideas se pierden en el ruido de la marea de balbuceos digitales. Así que este blog creo que es único en su especie, y sigue evolucionando, lo que incluso me sorprende como su autor. En este último año ha crecido en contenido...

Read more »

Personas especiales

19 Julio 2011
Personas especiales

Una de las premisas centrales del libro “The Tipping Point“, de Malcom Gladwell, es que unas pocas personas bien conectadas pueden expandir ideas, imponer modas, o influenciar en el comportamiento de muchas personas. En esencia el argumento es que hay unos pocos influenciadores que son capaces de dictar el comportamiento de muchos. A esto Gladwell lo llama la ley de los pocos, en cada fenómeno de “contagio social” hay unas pocas personas especiales que son los determinantes de la viralización de las ideas. Gladwell los clasifica en “conectores”, “especialistas” y “vendedores”. Los conectores serían personas con el don de...

Read more »

¿Qué es una arquitectura?

2 Julio 2011

El pasado jueves 30 de junio en el Colegio de Ingenieros de Chile, se realizó la charla: “¿Qué es una arquitectura?”, dictada por mi amigo Juan Carlos Barroux @jbarroux. La charla fue organizada por el grupo DCC8090. Aprovechamos de grabar la charla para El Test Acido, y Juan Carlos ha publicado su Charla bajo licencia Creative Commons. Les dejo el video y la charla, si están interesados en futuras charlas les sugiero seguir a @dcc8090 en twitter, y nuestra grupo en Meetup: http://www.meetup.com/dcc8090/ ¿Qué es una arquitectura? View more presentations from Juan Carlos Barroux

Read more »