El encanto del desarrollo de software: Introducción

Hace un tiempo, gracias a mi reconsolidación de libros, me reencontré con el excelente “El encanto de la física” de Sheldon Glashow. Me gustaría lejanamente inspirarme en ese libro, para ir comentando lo que veo que es el “encanto del desarrollo de software”.

Por un lado, el desarrollo de software es el “trabajo” de muchos de nosotros: es la actividad a la que nos dedicamos para obtener los ingresos de cada día, para mitigar las consecuencias de lo que llamo el “Efecto Coto”.

Pero por otro lado, para muchos de nosotros, es la actividad que nos interesa por muchos otros motivos, que disfrutamos y tratamos de entender, más allá de su aplicación inmediata.

Para mí, el desarrollo de software es lo que me permite “crear” nuevas cosas, más o menos nuevos programas, soluciones a viejos problemas. Me permite ir explorando lo abstracto y lo concreto al mismo tiempo, consiguiendo, de vez en cuando, la satisfacción de encontrar una solución sencilla y a la vez hermosa a un problema.

De alguna forma, en ese sentido, se acerca a las matemáticas. Pero por otro lado, se acerca a la ingeniería: construir cosas, nuevas o adaptadas de anteriores, que podemos compartir con otros. Gracias a la ubicuidad de Internet y de la web en particular, hoy el desarrollo de software puede ser una actividad colectiva, justamente, como las matemáticas y la ciencia fáctica.

Un desarrollador de software crea, comparte, descubre nuevas formas de resolver problemas. Un software puede contribuir a potenciar alguna actividad humana, o simplemente, aportar con su sencillez y belleza a satisfacer el anhelo estético de los que disfrutamos de esta actividad.

También destaco que esta actividad es una actividad humana que más niveles involucra: tenemos que estar atentos a la visión general, y a la vez, estar dedicados a los detalles. En ese sentido, se parece a la arquitectura de edificios, donde tanto tenemos que detenernos en la visión global de lo que queremos construir, como a los elementos minúsculos, como los materiales y la disposición de pequeñas piezas.

Con el software, construimos nuevas “máquinas”: el anhelo humano de crear lo que nunca ha sido creado, se ve potenciado en la programación de sistemas. Y en vez de trabajar en una “torre de marfil”, como la ingeniería de puentes también nosotros nos vemos enfrentados a la prueba de la realidad, a la prueba del uso y creación de valor para los usuarios de lo que creamos.

Y en los últimos tiempos, ha crecido la creación en equipo. De alguna forma, el desarrollo de software ha conservado las caracterísicas de una ingeniería, con sus reglas y mejores prácticas,  y en un arte, con la creatividad siempre bienvenida y necesaria.

Nos leemos!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

This entry was posted in 3463. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>