Uno de los últimos ‘bárbaros’ de Borland, David I (ahora en la empresa Embarcadero), enlista las razones más importantes por las que programar es algo divertido. Dice David I: “Mi primera clase de computación fue en programación Fortran. Yo era un ingeniero en aeronáutica en ese tiempo y quería ser parte del programa espacial norteamericano, pero hubo noticias sobre la disminución de plazas en la industria aeroespacial y entendí que probablemente nunca tendría un trabajo en esta área. Por suerte, descubrí también que me gustaba perforar mis tarjetas que pasaban a ser los programas que corrían en una IBM 360/40”.
“Entonces, como era muy divertida mi clases de Fortran, fui al departamento de ciencias de la computación, en donde alguien me dijo que las computadoras estarían en todas partes y que, por lo tanto, siempre tendría trabajo. De alguna manera me inscribí en un curso de unos 37 años (y aún contando), en donde sigo teniendo mucha diversión.
Sin embargo, me cansé de los teletipos, de las tarjetas perforadas y de los sistemas de tiempo compartido. Yo quería mi propia computadora ‘personal’. Esto cambió en 1975 cuando compré el kit de computadora IMSAI 8080 y con mi cautín a la mano, puse los elementos juntos y la encendí. No funcionó. Me recordé a mí mismo que yo era un tipo dedicado al software, por lo que llevé la máquina a un ‘doctor’ de computadoras en Los Ángeles, conocido como George Tate, quien corrigió mis errores y me recomendó algunas compras extras de hardware.
Coincidentemente, en 1975, Fred Brooks publicó The Mythical Man-Month: Essays on Software Engineering; en la página 7 (en el capítulo ‘Joys of the Craft’), lista las cinco razones por las cuales la programación es divertida:
- Es el placer de hacer cosas.
- Es el placer de hacer cosas que le son útiles a otros.
- Es la fascinanción de armar complejos objetos con partes movibles que interactúan entre sí.
- Es el placer de siempre seguir aprendiendo.
- Es el placer de trabajar con un medio tratable.
Y estuve de acuerdo con las razones de Brooks. Me gustaría, no obstante, añadir a la lista de Brooks mis propias consideraciones, a partir del advenimiento de la PC y de Internet:
- Es el placer de trabajar con otros programadores en equipo.
- Ser capaz de jugar con hardware de última generación.
- Ayudar a depurar sistemas de software complejos que alguien más construyó.
- Construir herramientas de desarrollo que son útiles para otros y que puedo usar y mismo.
- Comunicarse y tener reuniones con los expertos en el campo del software.
- Usar internet para colaborar con otros desarrollos en proyectos y problemas de cómputo.
- Tener mi propia PC con gigas de hertz en velocidad y gigas de memoria y espacio en disco.
- Que te paguen por divertirte.
- Ser capaz de programar en cualquier parte, en cualquier momento, eligiendo la plataforma para ello, el lenguaje de programación y la arquitectura.
Esta lista fue después actualizada con gente que me escribió a mi blog:
- Porque es una combinación de trabajo creativo e inteligencia.
- Porque uno se convierte de alguna manera en un superhéroe nerd.
- Porque tiene gratificación casi instantánea.
- Por el orgullo de que otros vean mi trabajo.
- Porque puedo hacer de una máquina que no fue diseñada con ningún propósito en particular, algo que haga lo que yo quiera.
- Por el beneficio de hacer la vida más sencilla.
Unos comentarios que merecen una mención especial:
“Mi momento favorito de la programación es cuando logro corregir un bug en el código. Este trabajo es casi como poner bolas de golf en órbita alrededor de una estrella gravitatoria. Me embarga este sentimiento de que no estoy equivocado”. Kristofer Skaug.
“Si no es divertido y da dividendos, ¿qué diablos estás haciendo en este negocio?”. Robert Townsend.
Fuente: David I Blog.
(*) En la foto con David I, en un evento de CodeGear (antes Borland), cuando le hice su fotomorsaico en Delphi.