Programar no es fácil ni divertido

Iniciado por graphixx, Mayo 29, 2017, 08:15:02 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Mayo 29, 2017, 08:15:02 PM Ultima modificación: Mayo 30, 2017, 12:12:37 AM por Gabriela

Los programadores requieren casi de un enfoque sobrehumano para manejar la complejidad de las tareas que realizan

Es común escuchar que programar computadoras es algo divertido. Vamos, incluso alguien ha dicho que programar es lo más divertido que se puede hacer con los pantalones puestos. Y además, se dice constantemente que "cualquiera puede aprender". Tim Cook, de Apple, ya ha escrito en alguna ocasión que escribir código es "divertido e interactivo" y que el arte y ciencia de hacer software es ahora tan accesible como lo es el abecedario.

Pero la realidad es otra. Para alguien que empieza, la manera de pensar de los programadores es poco común. Hay que ser altamente analítico y creativo. Los programadores requieren casi de un enfoque sobrehumano para manejar la complejidad de las tareas que realizan. Hay que prestar atención a los detalles. Así, tener este nivel de concentración requiere un estado de la mente llamado "en el flujo" o bien una relación cuasi-simbiótica entre el hombre y la máquina que mejore el desempeño y la motivación.

Programar es una actividad que demanda un enfoque muy intenso y eso es poco común en la mayoría de los trabajos. Igualmente, así como nadie ha escuchado que la cirugía cerebral es "divertida" o que la ingeniería estructural es "fácil", así parece ocurrir también con la programación. Tal vez la razón de querer hacer creer que programar es sencillo y divertido se deba a la propia industria de cómputo que está buscando de alguna manera seguir incorporando gente a sus filas.

El insistir en que el programar es glamoroso no es privativo del cómputo. En algunas películas, por ejemplo, se observa a un fotógrafo profesional tomando placas de una modelo guapísima. El fotógrafo tiene un enorme número de cámaras, montones de ayudantes y se dedica solamente a captar los mejores ángulos de la modelos, pero esto -lo saben los que se dedican a estos temas- no es así. Hay muchas veces que hay que hacer mucho trabajo entre bambalinas, mucha "talacha" y eso dista de ser divertido, fácil o glamoroso.

En programación insistir entonces de que hablamos de un mundo glamoroso es una mala idea para incorporar a los chicos a la industria del software. Esto insulta la inteligencia de los muchacho y plantea una noción equivoca (y perniciosa) de que no se necesita disciplina para progresar. Para quienes hacemos programación sabemos que un minuto de codificación se basa en horas de estudio previo.

Probablemente lo mejor sea admitir que escribir código es complicado, técnica y éticamente. Las computadoras de hoy, por el momento, sólo pueden ejecutar órdenes con ciertos grados de sofisticación. Por lo que para el desarrollador debe ser claro que: la máquina sólo hará lo que le digamos que haga, no lo que pensamos que debe hacer. Para colmo, cada vez las máquinas toman más decisiones a nivel cotidiano y la gente confía en que las decisiones que se toman en el software nos son correctas, incluyendo algunas que tienen que ver con asuntos de vida y muerte. Piénsese en los autos que se conducen autónomamente; en armas que son semi-autónomas piénsese en las inferencias lógicas que hacen Facebook o Google para llegar a la conclusión que un usuario está casado, o que tiene un estado psicológico particular, etcétera.

Y todos estos escenarios están construidos en un fundamente técnico exclusivamente. Pero no podemos responder solamente en términos técnicos. la programación no es un detalle que le debemos dejar solamente a la parte técnica considerando que los programadores serán neutrales científicamente hablando. Las sociedades son demasiado complejas: lo algorítmico puede considerarse en muchas ocasiones una cuestión política. La automatización nos ha dado un golpe a la seguridad de los trabajadores, particularmente aquellos con pocas capacidades o habilidades para desempeñar ciertos oficios y esto no solamente ocurre en un país, sino que es un problema ya mundial.

¿Y quiénes serán los siguientes empleados con dificultades para mantener sus trabajos? Los de cuello blanco. Los gigantes digitales de hoy funcionan con una fracción de empleados de las industrias del ayer, por lo que es una ironía buscar y tratar de jalar más gente al molino de la programación si esto en realidad está quitando empleos a muchas personas.

En este mundo tan intrincado y conectado, donde el software juega cada vez más un enorme papel en la vida cotidiana, es irresponsable hablar de programar como si fuese una actividad ligera. El software no son simples líneas de código y tampoco es solamente una cuestión técnica. En un par de años el entender la programación de computadoras parecerá ser parte de todo ciudadano activo. La idea de que codificar programas ofrece una trayectoria sin problemas al progreso social y a la mejora individual es absolutamente falsa pero es lo que se promueve.

Digamos que ya es el momento de decir la verdad y destruir este antiguo mito de lo fácil y divertido que es hacer programas.

Fuente: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Mi Blog Personal
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Excelente forma de ver el mundo de la programación, me recuerda a mis días de universidad cuando mis compañeros se creían programadores por copiar y adaptar código de Internet (a veces solo con cambiar el nombre de las variables), yo NO me considero programador, me faltan años de estudio y experiencia.

Este texto debería ser lectura obligada para los nuevos estudiantes que subestiman la programación.

Saludos!

no voy a negar que tenes razon Programar es un reto psicologico a la hora de ser creativos y saber que se tiene que hacer. Por otra parte interpretar lo que le dice el codigo escrito por otra persona a una computadora es facil esta bien dependiendo de la complejidad se hace mas dificil nadie te lee 20 mil o 20 millones de lineas de codigo y se acuerda de todo pero hablo de ejemplos entre 200 y 600 lineas(por mi parte veo que programar se puede interpretar lo que un usario X le dijo que haga a una pc de otro usuario X), a mi me frustra ver lo newe que soy ver que todo lo que me imagino llevaria un nivel de complejidad que no poseo en conocimientos pero es como el trabajo de un fisico teorico(la gravedad no se ve no se siente pero ejerce una fuerza en un objeto"no es una ley natural es la distorcion del tiempo sobre el espacio" en teoria cuantica seria una fuerza de energia que atrabieza varios universos dando una vuelta completa sobre si misma dando la ilucion de atraccion ) programar en si yo lo veo como resolver tus grandes interrgantes esta bien programas una calculadora para numeros atomicos, despues programas una pagina web para que te sirva de intermediaro y asi haces trampa en todos tus examenes de quimica XD bueno pero ese conocimiento fueron interrogantes que tu elegiste resolver.

Programar es hablar, pero no hablar con palabras sino con ideas.

Deberiamos educar a los managers, administradores o lideres de proyecto sobre estos temas!!!, muchas creen que desarrollar software es cosa de una sentada!!! pffff




No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Deberiamos educar a los managers, administradores o lideres de proyecto sobre estos temas!!!, muchas creen que desarrollar software es cosa de una sentada!!! pffff

Mi profesor de Ingeniería de Software II no puede disimular su preocupación por este tema de la formación de futuros líderes de proyectos.

Está interesante la nota, cada vez me convenzo más de que es algo a tener en cuenta en cada línea de código que escribimos. Pero por otro lado, además de la moral o intenciones que pueda llegar a tener un manager de proyecto junto con su equipo de desarrollo, también está el poder de influencia de quienes financian estos grandes proyectos.