Monday, May 18, 2020

El rol del programador ha muerto



Vale la pena preguntar: si el rol del programador ha muerto; si seguirá siendo ese viejo sabio y amable; si morirá pronto con la cuarta revolución; si será una tarea remplazada por las máquinas que todo lo pueden, incluso más rápido y preciso que un ser humano; o si las competencias que necesita, para enfrentar los entornos digitales emergentes, son siempre una variable y el programador se reinventa todos los días. 


 Pareciera imposible ir detrás del exponencial crecimiento tecnológico, hoy en día hay miles de lenguajes de programación y evolucionan todos los días y en todas las capas de la arquitectura predominante de una aplicación; desde las bases de datos, pasando por los servicios, la lógica hasta el frontend o la vista. Se hace humanamente imposible, tener dominio sobre todos los lenguajes de programación, ¡a menos que seamos máquinas!, muchos humanos hoy en día así lo parecen.


Programar no es codificar, ese un trabajo operativo, lo más fácil para “una maquina” es codificar incluso hoy en día hay maquinas que nos corrigen, ¡son los entornos de desarrollo! Lenguajes como BPMN permiten dibujar la lógica o el proceso y a partir allí es posible, autogenerar el código, no es necesario saber un lenguaje de programación, puedo hacer que un robot se encargue del trabajo sucio. Hacer que un robot programe es un poco más DIFÍCIL, por lo que algunos países top en el desarrollo de aplicaciones, optan por crear capacidades de producción o subcontratos en países donde el costo de vida es menor, como en india.

Debido a la situación actual, la pandemia por el sarscov2, en algunos casos se ha incrementado el tiempo frente al computador, ya empiezan a aparecer las dolencias por las malas prácticas y se evidencian las desventajas que tienen; tanto el trabajo en casa, como el teletrabajo.

 No es nada fácil permanecer incontables horas frente al computador: Muchos han experimentado insomnio, ansiedad, incomodidad, estrés y no solo es por el virus, no es tarea fácil lograr la armonía de 3 espacios en uno solo.
¿Cómo se aporta alegría a un ingeniero aburrido, con un salario excesivo y sobrepeso?
Conciliar casa, diversión y trabajo en un solo lugar requiere método: separar las actividades y hacer que no se traslapen, necesita mucha disciplina y conciencia. De todas formas, este panorama no es solamente de los programadores, hoy todos estamos frente a un computador sin importar la profesión.


Friday, May 15, 2020

¡Comenzar con el arte de la programación es demasiado fácil!


¡Empecemos!, 
La mayoría de las cosas que hacemos a diario son un programa, obedecen a una serie de pasos que previamente configuramos, en ocasiones son una secuencia lógica de pasos probablemente anotados en una agenda. ¡Si nunca lo has hecho, es un buen ejercicio! de vez en cuando es importante parar y pensar que hacer por nuestras vidas. Es bueno perseverar, pero, para lograr nuestros objetivos es necesario tener distintos planes, planes como letras tiene el abecedario, de la “A” a la “Z”, de manera que se puedan ejecutar de acuerdo con diferentes alternativas que nos presenta la vida. De la misma forma, el computador evalúa, opera variables, para tomar distintos caminos o flujos de proceso.

El ser humano sabe programar desde tiempos inmemorables o tiempos remotos. Esta imagen corresponde al mecanismo de Anticitera o (Antikythera) podría decirse que es la primera computadora analógica, fue utilizada por los antiguos griegos, aparentemente entre el año 150 A.C y el año 100 A.C. Servía para trazar el movimiento del sol, la luna y 5 planetas, predecir eclipses lunares y solares e incluso señalar Juegos Olímpicos año que comenzaron desde 776 A.C. En otras palabras, un reloj mecánico con aditivos.

La otra imagen es la máquina de Charles Babbage o máquina analítica. Escrita por el profesor británico en 1837, aunque Babbage continuó refinando el diseño hasta su muerte en 1871. Era una máquina de propósito general, que podía ser programada por el usuario para ejecutar un repertorio de instrucciones, así podía facilitar cálculos como por ejemplo agilizar operaciones, de acuerdo con tablas de logaritmos, para ese tiempo esas tablas podrían ser consideradas una base de datos.

Existe el mito de que las mujeres no pueden programar, que las actividades de lógica y abstracción se les dan mejor a los hombres, sin embargo, la realidad es que; sin ellas, no existiría el computador tal y como hoy lo conocemos. De hecho, conozco mujeres programadoras, con más talento, que muchos hombres.


En la fotografía, se puede observar a la condesa de Lovelace, conocida con también como Ada igual que el lenguaje de programación usado en la NASA, precisamente es nominado así en honor a ella. Su padre, George Gordon Bairon era poeta una carrera controversial para la época, al parecer por eso ella estudió para convertirse en matemática, informática y escritora británica. Entre sus notas está el primer algoritmo para calcular los números de bernulli, esta lógica funcionó para desarrollar; cartas de navegación y diseñar edificios o cualquier otra superficie tridimensional sobre un plano. Sus notas planteaban algoritmos, tenía una cosmovisión adelantada para la época; ella misma declaró estarían destinados a ser procesados por una máquina.  

Por todo esto Ada Bairon se considera la primera programadora de ordenadores, y está junto a varias mujeres que han hecho fabulosos avances por la computación; “La profe angelita con el libro mecánico o Grace Hopper con el lenguaje cobol” entre muchas otras…

En el caso de Margaret Hamilton su código llevó al hombre a la Luna. Ella era una líder en una época donde ellas difícilmente podían serlo, prueba de esto Es que Hamilton llegó a estar a cargo de la dirección y supervisión del software de las misiones Apolo 11.




Como vemos, programar es un viejo sabio y amable; no distingue de raza, edad o género. Además de eso programar es tan común que lo hacemos todos los días y en ocasiones ni siquiera nos damos cuenta; Desde que interactuamos con la alarma de nuestro celular, cuando agendamos o grabamos las películas, definiendo un ciclo de lavado o incluso cuando usamos una agenda para hacer un listado de actividades.


Thursday, May 14, 2020

Entender la importancia y retos de la programación


Entender la importancia y retos de la programación

  • "El impacto de las nuevas tecnologías y la responsabilidad social"


Lo primero es hacer una invitación a abandonar el hiper positivismo, hoy en día está por todos lados. Es importante considerar puntos de vista opuestos o diferentes a los nuestros, así se llega a una buena síntesis. 

Esta agenda, es una invitación a reflexionar desde distintos aspectos; presenta los retos que tienen los programadores del futuro, y cuáles capacidades se deben generar, re-diseñar o incluso reinventar. Siempre es importante tener en el radar, los retos que implica tener este poder en nuestras manos y también dudar frecuentemente o de vez en cuando. Ser positivos es muy importante, pero igual de relevante tener varios indicadores para tener una noción aterrizada acerca del cumplimiento de nuestros objetivos.

“No quiero mostrar la programación como la panacea, aunque lo sea” DIOA. 

No quiero mostrar la programación omitiendo todo lo que pueda ser contrario a esa opinión, voy a tratar de presentar distintos aspectos, colocar todo sobre la mesa de manera que nos aproximemos a una visión equilibrada si no holística del asunto. Al final, el estudio de estos aspectos puede ser considerados buenos o malos y crear aceptación o ser una fuente de debate. 
Aspectos: ver 5 artículos listados a continuación.
Antes quiero dirigirme sobre todo a los temerosos pero curiosos de la programación, diciendo:


2.   (ver aquí  Luego presentaré una serie de características que nos ayuden a reflexionar si el rol del programador ha muerto. 

3.    (ver aquíDespués los retos que tenemos como programadores. 

4.    (ver aquí) También cuál es el poder y la responsabilidad de esta habilidad, a la que califico como mágica

5.    (ver aquíFinalmente daré algunos tips para aquellos que quieren saber por dónde empezamos, ¿Cuál es la mejor ruta para lograr ser un buen programador? Como REENCAUSAR, algunas personas, que han tomado un mal camino, esos que sienten que se han perdido en el intento.