¿Por qué?

Hola,

Hoy toca reflexionar un poco de las cosas, de por qué programo o por qué me van estas historias cuando tenía otras muchísimas disciplinas por las que interesarme. Lo cuento a ver si estáis de acuerdo y luego participáis si queréis contando vuestras sensaciones.

Programo por las mismas cosas por las que me gusta dibujar, esculpir, escribir, hacer circuitos o diseñar cosas. Me encanta crear cosas, sean las que sean, tener una idea y pasar a tener una cosa que funciona, que representa algo o lo que sea.

Voy a hablar sobre todo del caso que nos ocupa, que es la programación y el software libre, pero tiraré analogías con las otras cosas a las que me dedico, que no son pocas (soy un poco “hombre del renacimiento”).

Viendo un poco más arriba las cosas que me gusta hacer, se entiende que soy una persona que tira mucho por el arte y ese tipo de cosas, pero, como me suele gustar decir, me considero Ingeniero por encima de todo lo demás. Recordemos lo que es la ingeniería, según la wikipedia:

Engineering is the application of scientific, economic, social, and practical knowledge in order to invent, design, build, maintain, research, and improve structures, machines, devices, systems, materials and processes.

Y eso es lo que soy al final. Me encanta inventar cosas, arreglarlas y mejorarlas e investigar para hacerlo. La parte que más me atrae del arte es la parte de la creación, el mirar atrás y ver que has hecho algo que antes no existía, por eso considero que me atrae el arte desde un punto de vista ingenieril.

Yendo a lo que nos interesa, en la ingeniería del software se habla de que hubo un momento muy romántico en la historia llamado “El fracaso del Software” y se debe a que hubo una época en la que los programadores eran artistas, no eran personas técnicas, en el sentido de que se tomaban el proceso como los escritores o creativos de otros tipos. Todo el que está en el mundillo de los creativos sabe cuál es el mayor problema que suele tener esta gente, suele haber retrasos de producción y el proceso suele ser más caótico que, por ejemplo, cuando se trata de una producción industrial, donde todo el proceso está detallado al milímetro (y es lógico y precioso y así tiene que ser). Ocurrió que la industria era la que necesitaba a estos programadores en aquella época y, como la ingeniería del software no existía, los proyectos de software tenían muchos problemas de coordinación con la industria. Luego vino la ingeniería del software como proceso para evitar esto, se plantearon formas de atacar los proyectos y hacer pruebas, pero de eso hablamos otro día (un saludo para Juanjo Igarza, ya de paso).

Esto pasó porque el software no deja de ser un producto que requiere creatividad, que tiene un proceso casi artístico y romántico detrás. Evidentemente, como soy ingeniero también me gusta la parte de la estructuración del proyecto y la propia ingeniería del software me llama la atención, pero ese arte y ese amor que tiene el software me apasiona (sí, estos días estoy programando en Perl y me saca el lado amoroso).

Menciono todo este tema del fracaso del software porque una de las partes más divertidas del software es hacer pruebas, jugar, abocetar algo para borrarlo después, etc. Me gusta el software porque es divertido y es muy creativo.

Hay más razones detrás, además. Otra razón es que me hace sentir independiente. Quiero hacer algo, necesito un programa que haga algo y lo hago. Encontrar una solución simple a un problema complicado es una sensación inigualable.

Otra cosa que me atrae y a he mencionado un par de veces y está relacionada también con la creación de este blog y el propio software libre. Gracias al software libre puedo ver cómo han hecho los programas los grandes, esto es importante, porque permite aprender de los programas que usas e incrementa tu facilidad para aprender de forma radical. Además, la propia filosofía facilita la aparición de manuales y libros gratuitos (he mencionado alguno por aquí) y a grandes cantidades de información y tutoriales en internet (como este blog). Es como poder ver el “Making Off” de todas las películas que has visto, de todas las obras de arte que ves, etc.

El software libre también permite algo que para las personas con un ego elevado, como el mío, es absolutamente atrayente. Se trata de la repercusión. Con el software libre puedes hacer que lo que tú programes llegue a todo el mundo. No hablo de programas que hagas tú mismo y que subes a GitHub u otra plataforma, porque para tener éxito allí hay que ser muy bueno y hacer cosas muy chulas, sino que hablo, sobre todo, de colaborar en proyectos de software libre. Sin ir más lejos, yo ya he cumplido mi sueño en este aspecto, he colaborado en KDE-Telepathy añadiendo un poco de código fuente y esto está en todo el mundo. No se puede hacer más. Te puedes forrar y esas cosas, pero no significa nada frente a dedicar un rato para que la vida de la gente sea un poquito más fácil, ayudando a que todo el mundo tenga software que respete sus derechos, y, por encima de todo eso, que tengan un software de calidad, porque eres el puto amo y puedes hacerlo.

El software libre te permite llegar a miles de hogares del mundo. Es como escribir en un periódico con tirada internacional o, para que me entiendan los científicos que me leen: como una revista de índice de impacto infinito.

Esto no es tan fácil con el hardware, porque, aunque la definición del hardware sigue siendo libre porque se puede hacer con archivos informáticos y compartirlos, el hardware físico hay que acabar comprándolo, por tanto, el producto final no es tan fácil de compartir sin un gasto económico, lo que echa a la gente un poco para atrás a la hora de testear. Por eso aunque los circuitos y el hardware me llama muchísimo la atención, no le dedico tanto tiempo. Además, durante su propio desarrollo requiere de unas herramientas bastante caras mientras que para programar con un par de programas libres y un ordenador (que también necesito para el hardware) ya estoy a tope.

Si dejamos que se nos vaya un poco la pinza, pero sólo un poco, podemos decir que estamos haciendo activismo político en cierta manera. Una sociedad libre no puede tener software privativo, esto es una realidad, pero para que se pueda no tener software privativo, tendrá que haber software libre y alguien tiene que hacerlo. Siempre habrá gente que lo haga en su puesto de trabajo (que serían los políticos profesionales), tú o tú que estáis en vuestras casas haciendo en vuestro tiempo libre sois activistas. Lo hacéis por amor, o para engordar vuestro ego, o porque necesitáis una excusa para no tener que hablar con vuestros compañeros de piso, pero lo hacéis y sin ganar ni un duro con ello nos dais libertad a todos.

Resumiendo. Puedo hacer cosas, lo que quiera, y si no sé hacerlo puedo aprender sin demasiadas complicaciones. Si esto sirve para alguien más, mejor. No sólo me da independencia a mí, independencia para resolver mis propios problemas o la de poder aprender yo sólo y la de no necesitar de otros entes que distribuyan lo que hago, si no que lo que me hace desarrollar le da independencia a otros, la misma que yo recibo, la vuelco en los demás.

Y eso es un poco el tema. Me dejo miles de cosas y es una entrada muy rara, pero es un poco como me siento con esta mierda. Estoy un poco romanticote estos días.

Espero vuestras opiniones.

Un saludo.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s