Julián Porta

Software Developer, ex musician, always ready to rock.

Read this first

There’s more than one way to do it.

Hace unos días, como parte de una tarea para el hogar musical, le encargué a @poteland que escuchara tres versiones distintas del Prelude de la Suite Bergamasque de Debussy, y eligiera la que más le gustaba.

Y me puse a pensar.

Una pieza musical no es más que una serie de instrucciones sobre notas, silencios y ritmo en un papel pentagramado.

Esta partitura después es ejecutada e interpretada por músicos, y cada uno le agrega sus cosas, su color, su tacto, su gusto.

Y lo mejor es que puede haber varias interpretaciones distintas de la misma obra, y todas ser igualmente bellas, cada una a su manera. Pero sigue siendo la misma pieza.

Y me puse a pensar que, tal vez, con el código pasa lo mismo.

Hace muchos, pero muchos años, leyendo una Guitar Player, no recuerdo quién lo dijo, pero me impactó mucho leerlo, y es lo siguiente.

Lo importante es la canción

Creo que lo decían porque...

Continue reading →


Un castillo de cartas de la Liga de la Justicia.

Es sabido que algunos superhéroes usan capa. Unos la usan para hacer facha cuando vuelan, otros como forma de protección y otros porque formaba parte de la vestimenta de su planeta natal.

Algunos humanos también usamos capas. Las usamos en forma de software, a veces para simplificar nuestro trabajo, para evitar la repetición, o sencillamente porque nos gusta como quedan.

Se suman a esta lista las cebollas, que también tienen capas, y cuando uno se mete a revolverlas, pueden hacer llorar.

Una vez estuve a punto de llorar por culpa de una capa de software. Y para empeorarlo, era una capa que puse porque tenía ganas de probarla.

Dejando de lado las analogías, encuentro que muchas veces se agregan capas (de software) porque creemos que nos protegen de algo. De algo complicado, de algo que no entendemos del todo, de algo que no queremos hacer de cero.

De hecho, a veces leo (en listas...

Continue reading →


Menos es más y el dilema del espartano mentiroso (+).

Acabo de leer, por septuagésima vez, eso de “Less is more”. Debo reconocer que nunca le presté atención, hasta ahora.

Mi primer impulso fue pensar “que estupidez”. El segundo fue preguntarme porqué me parecía una estupidez, El tercero, fue darme cuenta de donde veía el problema. El cuarto fue creer que podía escribir sobre eso.

Muchos de los que programamos hoy en día, de un modo u otro, somos hijos de una generación que valoró la abundancia. Déme dos, auto grande, casa más grande. Dos casas. Dos autos. Dos autos y una moto. Cuanto más, mejor.

Sin entrar en ese debate, creo que siguió esta corriente el “Menos es más”, apuntando al minimalismo, a despojarse de cosas de un modo ascético, espartano (todos calificativos que hoy tienen alguna connotación positiva, curiosamente).

No estoy en contra ni a favor del minimalismo, ni de ninguna corriente de pensamiento. Pero si me interesa que...

Continue reading →


Err

Llevo algunas semanas preguntándome por qué escribo sobre software. No logro responderme, pero en el proceso creo haber descubierto, al menos, desde dónde lo hago.

No soy un gran programador. Ni siquiera estoy seguro de ser uno bueno. No soy un teórico del software, no tengo educación formal en el tema y me ha faltado constancia y método, a lo largo de los años, para hacerme una base sólida. Cuando lo pienso, creo que lo que tengo es un poco de oficio, algunas ideas y otro tanto de experiencia.

Habiendo establecido eso, creo que escribo desde el error. Desde haber tomado incontables malas decisiones, de haberme equivocado fuerte. Pero también, desde poder revisarlo.

De todos los skills que he adquirido en relación a la programación, hubo dos que me costaron enormemente.

Uno fue aprender a reconocer mis limitaciones. A animarme a decir “no sé” en un canal de IRC. A aceptar que nadie...

Continue reading →


Tirar la moneda hasta que caiga de canto. La triste historia del impuro depurador apurado.

Save. Refresh. Error. Refresh. Error. Refresh. Anda. Refresh. Error.

Albert Einstein dijo.

Locura es repetir lo mismo una y otra vez y esperar resultados distintos.

– Claramente, nunca tuvo que aprender a programar

Hay algo enloquecedor cuando estás aprendiendo a programar, y es la sensación de que el universo te está gastando y lo hace moviendo electrones al azar cada vez que ejecutas el código.

(En realidad, el problema no es el azar sino que seguramente hay factores que uno no tiene en cuenta que pueden estar modificando el resultado.
Pero de eso te dás cuenta cuando estás tranquilo sentado en un sillón, tomando un café y mirando el techo. Y no cuando te corre una gota de sudor frío por la espalda y te preguntás que mierda estaba mal en el tutorial que copypasteaste de un blog de hace dos años)

Sin ánimo de irme por las ramas, y tomo nota mentalmente escribir sobre el tema, el...

Continue reading →


De 0 a 100 en segundos, y de vuelta a 0 en meses.

La primera vez que en una terminal escribí algo como:

sudo gem install rails
...
rails new blog
...
cd blog
...
./script/server

Casi me meo en los pantalones de la emoción.

Mi primera sensación fue de estar frente a un cambio fundamental en la forma en que podía programar.

Viniendo de perl y cansado de tener batallas épicas con Fast-CGI y Apache, la simplicidad aparente de Rails me resultó irresistible, y me dejé atrapar.

En el medio pasaron años. Y ahora, a la distancia, si bien no lamento haberme pasado a Rails, me pregunto en retrospectiva si realmente fue una buena decisión.

Hay algo en esas cuatro líneas, que llevan de la nada a un servidor local andando, en las decenas de tutoriales y screencasts que te llevan ciegamente de la mano a implementar (porque, no jodamos, seguir un screencast y terminar con un CMS de juguete andando en tu máquina, eso no es programar –es otra...

Continue reading →