Posts Tagged ‘ programación ’

Sobre cómo rascarse una oreja

3 Noviembre 2011
Sobre cómo rascarse una oreja

Hay veces que nos  encanta rascarnos la oreja izquierda con la mano derecha, por puro complicar las cosas Eso se da mucho en las etapas de diseño y modelamiento de datos. Un problema simple después de pasar por la etapa de análisis y diseño puede quedar así: ¡Ah!, que hermosos son estos modelos genéricos, con trazabilidad, controles de accesos, y perfiles, una orgía de tablas y relaciones (¿será que eso de las “relaciones foráneas” despierta alguna inconfesable fantasía en los analistas de sistemas?) A veces esto se convierte en puro onanismo, originado por un axioma que fue imbuido en...

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 »

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 »

El Arte de Don Hsi-Yun Yang

10 Junio 2011

Prueben esto: # wget http://www.de.ioccc.org/2000/dhyang.c # cc dhyang.c -o saitou # ./saitou > aku.c # cat aku.c # cc aku.c -o soku # ./soku > soku.c # cat soku.c # cc soku.c -o zan # ./zan > zan.c # cat zan.c # cc zan.c -o aku # ./aku | diff – aku.c Hay más arte de este estilo en http://uguu.org/omoikane.html  

Read more »

Buggy nights

13 Abril 2011

Un pequeño error de tipeo y se puede perder mucho tiempo, e incluso dinero, o quien sabe, vidas. Sucede que decidí optimizar cierto programita que estaba tomando unos 10 minutos para cargar un archivo de unos 50.000 registros, eso es bastante para el tipo de operación que se realizaba (solo había que ingresar los datos a dos tablas). Decidí modificar el código para usar un patrón típico de procesamiento de archivos en modo batch, pero como estaba apurado fui poco cuidadoso y el proceso terminó con un tiempo horrible (iba por la hora cuando lo detuve). Y aunque miraba el código...

Read more »

Aprende a programar

21 Marzo 2011

Hace un tiempo un comentarista habitual de este blog me preguntó ¿cuáles serían los conocimientos fundamentales que debe tener un buen progrmador?, para responder a esa pregunta decidí crear un blog. Partí por lo básico, enseñando a programar, a los interesados les dejo la dirección de mi curso de programación: aprende a programar.

Read more »

Knuth responde a todas las preguntas

21 Enero 2011
Knuth responde a todas las preguntas

Otro artículo, esta vez es una traducción de una charla de Knuth publicada en 2006, por cierto, Knuth fue premiado recientemente en España, de acuerdo a esta noticia en El Pais. Knuth responde a todas las preguntas Todos tenemos nuestros heroes personales, hombres representativos, sobretodo del campo en que nos desarrollamos. Uno de mis más antiguos héroes personales es el profesor y programador Donald Knuth. Autor del famoso Art of Computer Programming, y un gran programador. Creador de Metafont y TeX, usados por miles de científicos hoy en día para publicar sus artículos. Donald Knuth es profesor emérito en la...

Read more »

Zig Zag

11 Enero 2011
Zig Zag

Han habido varias contribuciones al desafío del Zig Zag, si todavía no lo has leido, y te animas a contestar el test, entonces antes de seguir lee el desafío e intenta resolverlo. La solución más concisa que conozco aparece en el sitio Rosseta Code, está escrita en el lenguaje J y es la siguiente: ($ [: /:@; <@|.`</.@i.)@,~ 5 Increible, ¿verdad? En este caso es la solución para una matriz de 5 x 5. Hay una explicación de ese código acá, pero antes de que emprendan la tarea de tratar de entenderla veamos que respondieron algunos lectores y después le...

Read more »