2005-09-27

El fin del programador

Existen dos tipos de informáticos. Los que creen que la gestión de la memoria es demasiada importante para dejársela a los programadores y los que creen que la gestión de la memoria es demasiada importante para dejársela a los compiladores.

Personalmente me decanto por la primera opción porque es la más avanzada de las dos. Mientras que en los albores de la informática los programadores eran artesanos que se lo hacían todo a medida. Con el tiempo la informática fue cogiendo cierto rodaje y empezaron a mejorarse las herramientas liberando al programador de las tareas más pesadas de la programación entre ellas la gestión de memoria; de esta forma el programador tiende a decantar el trabajo en favor de un enfoque de más alto nivel dejando el trabajo tediosos y repetitivo en manos de los compiladores y de las herramientas de nueva generación que van absorbiendo el trabajo más mecánico y más repetitivo de la misma forma que hemos tenido en la industria manufacturera donde el trabajador no cualificado se ha ido sustituyendo por maquinaria cada vez más sofisticada hasta que existen líneas de producción totalmente mecanizadas sin trabajadores.

La segunda premisa la de los que prefieren realizar la gestión por parte de los programadores y no por parte de los compiladores es conceptualmente retrograda y alimentada por el complejo de endiosamiento, el programador quiere tener el control de todo, lo que al final repercute en unos tiempos de desarrollo que se extienden indefinidamente, incapacidad de integración entre sistemas heterodoxos por falta de estandarización pues cada uno se lo monta a su manera y por un enorme y continuado flujo de errores, además de otros tipos de costes no imputables directamente a la informática.

El escenario de la segunda premisa, aunque les pese a muchos, es inevitable por la dinámica de una sociedad regida por el mercado, la automatización siempre es más barata, la desaparición del programador como el nuevo manufacturero de la industria de la era de las telecomunicaciones será un hecho, el programador pobremente formado o muy especializado desaparecerá en breve. Lo único que nos separa de los antiguos trabajadores del campo, y trabajadores de la industria secundaria es que mientras antes los cambios tardaban generaciones en producirse actualmente los cambios sucederán en una generación.

En el ciclo de nacimiento, auge, época dorada y caída del programador, el programador pasó de ser un elemento nuevo casi exótico en sus inicios, a un chaman que pronosticaba la mejora continuada de los beneficios, a un personaje que nadie sabia lo que hacía pero que cobraba mucho y finalmente un elemento que era necesario eliminar por el outsourcing o como mínimo reducir la plantilla de informáticos a una décima parte.

El programador pasa a ser una pieza de un engranaje mayor donde su trabajo es cada vez es más teórico y menos ‘picacodigos’. A medida que la informática automatiza partes de sus procesos productivos, el ‘picacodigos’ es la parte humana que será más obsoleta y en consecuencia más costosa, más prescindible, más eliminable.

En eso ciclo vital del programador nos encontramos al principio del fin, aunque algunos se empeñen en seguir haciendo “malloc’s y free’s” de memoria, que no se engañen; como todos los trabajos tienen su utilidad y el programador ‘llanero solitario’ igual que el cowboy desaparece.

Por suerte para los informáticos, que no los programadores a secas, existen infinidad de diferentes canales de trabajo posibles que seguirán vigentes suficiente tiempo como para que este articulo sea sonido de fondo en el océano de Internet.

Otros articulos en ECP : Futuro de hidrogeno, Sociedad jubilidad, Información o conocimiento.

Technorati tags : informática, informatica, programador.

7 comentarios:

  1. Me permito declararme de un tercer grupo de programadores: los que preferimos que la memoria se maneje automáticamente el 99% de las ocasiones, pero nos gusta que en el 1% restante de situaciones aún sea posible solucionar manualmente los desaguisados creados por el código automático.

    Respecto a la desaparición de los programadores, no te voy a intentar convencer. Pero te recomiendo las mismas lecturas que a mí me hacen ver esa vieja profecía con escepticismo: The Mythical Month Man, Peopleware y The Pragmatic Programmer. Los tres libros son de gente con mucha experiencia en la industria y tirando más al sentido común que a las buzzwords.

    ResponderEliminar
  2. Hola pirx, apuntando lo que tu dices en el fondo eres del segundo grupo lo que sucede es que evidentemente la gestión automática de memoria aun no es perfecta y todo es mejorable pero creo que si el 99% de las veces soluciona el problema eso por lo menos indica tendencia,aun así nos guste o no, debemos solucionar cualquier caso donde los procesos automáticos fallen o no sean tan óptimos como desearíamos.
    Para mi no es una profecia simplemente es un hecho que la mejora de herramientas permite un mayor desarollo por programador. Por otro lado también es cierto, y esto no lo comente en el articulo, que aun estamos en expansión del negocio informático y puede pasar desapercibida dicha tendencia a corto plazo. Ciertamente la desaparición del picacodigos puede ser más o menos limpia o transparente pero pensar que la informática tendra un ciclo vital diferente a de la industria clásica me parece, como mínimo, naif.
    Aunque en este caso si que existen buzzwords al respecto el artículo habla de tendencias futuras no de realidades más acorde con las lecturas que comentas.
    Muchas gracias por tu comentario y opinión pirx e intentaré hacerme con el libro "The Pragmatic Programmer" porque no lo he leído.
    Espero que podamos continuar con el debate.

    ResponderEliminar
  3. A mí la informática no me parece nada parecida a la "industria clásica". Creo que es otra cosa y que por eso no va a evolucionar de la misma forma.

    Si vas a leer los recomendados, casi mejor empezar por Peopleware, es el más entretenido y a la vez el que cuenta mejor las peculiaridades de este negocio.

    ResponderEliminar
  4. Grácias por tu comentario pirx, buscaré el libro.
    Pero insisto en mi opinión. Por lo que deduzco eres un programador, pero como no se la edad que tienes te puede asegurar que para los que tenemos unos añitos en la profesión, la programación a cambiado mucho, a mejor. Un analista puede generar un modelo aproximado de lo que quiere y obtener esqueletos de codigos muy próximos a un programación. El picacodigos desaparecerá de la misma forma que poca gente programa en lenguaje máquina, para eso estan los compiladores. Lo que pienso que pasará no tiene porque ser lo que me gustaría que pasará pero este blog trata de encontrar pautas y tendencias y para mi esto es una tendencia.
    La industria clasica y la industria informática se parecen más de lo que nos gustaria, los dos tiene una fase creativa y una fase de producción; veremos.
    En la universidad de valencia han realizado un proyecto de un robot software programador capaz de generar codigo de alto nivel partiendo de una partitura en protocolo estandar tipo UML, es un prototipo pero...

    ResponderEliminar
  5. Dos veces se ha tragado el comentario un fallo... en fin :-(

    ResponderEliminar
  6. A ver ahora... sí, soy programador y más viejo que tú por un buen margen.

    Los coches voladores seguro que los habrá, pero no sé cuándo me los podré comprar con la nómina. Lisp tenía en los cincuenta gestión automática de memoria, introspección y generación de código por programa.

    Herramientas las había hace muuucho. Si no quieres manejar la memoria manualmente, siempre hay manera de encapsularlo y quedarte con un conjunto de funciones de alto nivel. Otra cosa es que se trabaje sin ningún método y contratando programadores de todo a cien.

    Al final, el trabajo tedioso que hay que hacer, hay que hacerlo: hablar con el cliente, averiguar lo que quiere, traducirlo a reglas formales, documentarlo y pasarlo a alguna herramienta. Lo de menos es que esa herramienta sea más o menos maravillosa. Lo de menos es que a quien hace el trabajo lo llames "programador", "analista", "ingeniero", "consultor" o "archichantre".

    Este trabajo no va a desaparecer. Quizás se haga más fácil o quizás no... porque yo no veo esa mejora que dices. Miro cinco años atrás y las herramientas han mejorado muy poquito. La única diferencia es que se usan otros lenguajes, otros entornos, otras metodologías... que son sólo los mismos perros con distintos collares y que además han necesitado estos cinco años para ponerse al nivel que estaban las otras más antiguas hace cinco años.

    ResponderEliminar
  7. Bueno, en el fondo yo no hablo de que desaparezca el trabajo de informático sino el de programador picacodigos.
    Claro que el trabajo irá cambiando eso no lo niego incluso lo afirmo en el post si lo lees detenidamente. Pero esta claro que el picacodigos irá desapareciendo por un trabajo de mayor nivel... claro se dirá de otro modo otro collar... mal iríamos si no quedarán collares nos quedariamos sin trabajo. Por cierto lo del coche volador no es mala idea pero seguro que con mi nómina tampoco llego con el precio de la adsl no tengo para muchos caprichos más.
    Saludos. Gracias por tu comentario y perdona el retraso hasta hoy no me he dado cuenta de tu último correo.

    ResponderEliminar