Todo está en el código fuente

Todo está en el código fuente

Desde hace años el software se ha instalado en la vida de las personas. De manera que la vida se está tornando mas virtual con el paso del tiempo. De alguna manera, ha acabado convirtiéndose en una realidad, mas real que la realidad en si misma.

Las toneladas de papeles llenando carpetas y cajones de las oficinas. Las viejas calculadoras y los bolígrafos. Fueron todos sustituidos por máquinas que automatizaban los procedimientos y almacenaban millones y millones de bits. Los programas de gestión se hicieron un hueco que pronto se convirtió en algo imprescindible para alcanzar un alto grado de productividad, y el papel de las personas se quedó relegado a utilizar esas aplicaciones desde interfaces de usuario sencillas, que ocultaban al usuario todo el mecanismo de acción necesario para funcionar, pero no imprescindible para hacerlo funcionar.

Con el paso del tiempo ha ocurrido lo inevitable. El software, se ha expandido a muchas otras áreas de la vida cotidiana. La metástasis no ha hecho más que comenzar.

Recuerdo aquellos tiempos en los que el mensajero del gigante Microsoft se hizo un hueco, revolucionando la interacción entre las personas. Una aplicación de la vieja escuela. De las que descargabas al ordenador e instalabas a la antigua. Ahora ya no son necesarias. Porque ahora lo que se lleva son las aplicaciones web. Aplicaciones que no funcionan directamente sobre un sistema operativo. Aplicaciones que se apoyan en un navegador que descarga una amigable interfaz de usuario de una aplicación instalada en algún servidor lejano.

Aunque en la vida real del mundo virtual sólo podemos percibir como real aquello que vemos, oímos y tocamos, hay mucho más escondido tras él. Hablo de lineas y lineas de código que se manifiestan y materializan en esas bonitas y usables interfaces que nos son tan familiares. Y que conforman el mundo virtual en el nivel más elevado pero menos profundo. Y aunque conozcamos esas interfaces de usuario como la palma de nuestra mano. Aunque nos sepamos todos los recovecos y escondrijos en ese nivel, esas leyes están ahí porque hay lineas de código que les dan forma. Y son leyes que, en esos profundos niveles, nos podemos saltar. Porque las leyes del nivel mas externo no tienen validez por encima de las del nivel mas profundo.

Pero no todo es tan sencillo. Hay un largo camino por recorrer hacia la comprensión de esas interfaces de usuario. Hay muchas maneras de implementarlas y de darles forma desde abajo. Hay diferentes lenguajes de programación y diferentes metodologías. Aunque en el fondo todas obedezcan a las mismas leyes.

El que es capaz entonces, de adentrarse en esos niveles de profundidad, es capaz de comprender e intuir gracias a su conocimiento como son los códigos que implementan las interfaces y aplicaciones que utilizamos en la realidad del mundo virtual. Para él, es lógico lo que ocurre en ese nivel, puesto que conoce y comprende que las causas están en los profundos niveles, que hay en los códigos más profundos.

Él es capaz de manipular lo que percibimos de la aplicación desde lo mas hondo. Y aunque, aun por encima de ese nivel de abstracción, hay una nueva conversión de leyes a un lenguaje aun mas abstracto y mas profundo, que él puede no ser capaz de comprender. En su nivel, él puede manipular la realidad del software. Lo que con nuestros sentidos somos capaces de percibir. Él, percibe mas información. Comprende más.

Aun que el conocimiento le proporciona cierta ventaja para tomar el control sobre esas aplicaciones a nivel de usuario. En muchas ocasiones, para poder cambiar ciertas cosas, necesita desplegar un entorno que le capacita para ir al nivel más profundo y poder reescribir las leyes que gobiernan una aplicación.

Este es un entorno especial. Un entorno con modos especiales de ejecución que pueden mostrar la realidad de una manera tramposa y trucada. Un entorno donde los códigos pueden ser cambiados, eliminados o reescritos en una manera que produzca los resultados deseados en el comportamiento de la aplicación que queremos cambiar.

En cualquier caso. Aprender programación no es una tarea sencilla ni atractiva. Muchas veces es mejor vivir usando esas amigables interfaces sin querer ni intentar ir mas allá. No hay que hacer perder el tiempo al que no tiene interés.

Previous Si planificar no sirve para nada, ¿para qué planificar?
Next DrupalCamp Spain 2014

About author

plfgavilan
plfgavilan 21 posts

Ingeniero de telecomunicaciones con casi 4 años de experiencia en la ingeniería de software. Forma parte del proyecto Borrowbits desde hace varios años, donde colabora como escritor.

You might also like

Desarrollo 1Comments

Symfonycon o deSymfony Day

Hace años que estoy asistiendo a las jornadas que más o menos, coincidiendo con el final del curso lectivo, se vienen celebrando en distintos puntos de de la geografía española,

Desarrollo 1Comments

Menus Cortados en Eclipse: Ubuntu 13

Me gustaría compartir con vosotros la manera que encontré de solucionar este Bug que resulta aparecer en Eclipse, en todas sus versiones, para Ubuntu 13. Relacionado

Desarrollo

Framework: ¿Por qué es mejor usarlos?

Un Framework es un conjunto de librerías y conceptos preparados para ser utilizados en tus proyectos. Te olvidarás de muchos problemas tediosos, que otros programadores ya han solucionado. Soluciones que

0 Comentarios

Ningún comentario... todavía ;)

Tú puedes ser el primero en comentar este artículo!

Deja un comentario