¿Los Programadores Profesionales Saben Exactamente Qué Código Deben Escribir?

Este post está inspirado en una pregunta hecha en el sitio es.Quora.com y en algunas respuestas de sus lectores.

¿Los Programadores Profesionales Saben Exactamente Qué Código Deben Escribir?

Excepto por la sintaxis del lenguaje de programación, los atajos de teclado y las opciones del editor o IDE utilizado, y quizá también los de las herramientas que necesitan para su trabajo, los programadores no necesitan memorizar nada. Tampoco tienen en la mente el código que escribirán.

Generalmente, para resolver un problema, un programador profesional pasa más tiempo buscando y leyendo documentación técnica y libros, revisando la base de código, buscando mensajes de error en Google y respuestas en Stack Overflow, que meramente codificando.

El trabajo del programador consiste más en pensar que en cualquier otra cosa, y pensar no parece trabajo. En los días en que más se programa, damos la impresión de estar sentados frente a la computadora, alternando entre tomar café, teclear con cierta frecuencia, mirar la pantalla por periodos variables de tiempo, mientras leemos y pensamos.

De hecho, el tiempo de programación de los programadores modernos se divide más o menos así:

  • 20% del tiempo frente al editor/IDE, escribiendo código propiamente o revisando el que se escribe
  • 30% del tiempo probando los componentes con los que el software va a interactuar (bases de datos, otros programas, WebServices, etc.)
  • 10% chateando o llamando al usuario final o a un colega para aclarar requerimientos
  • 20% en internet buscando información o documentación de cómo hacer algo, o leyendo código de otros
  • 20% probando el código desarrollado (además de probar, preparar o reiniciar el ambiente de pruebas, coordinar con alguien más si la prueba impacta a otros, reiniciar componentes, etc.)

Por supuesto, con la práctica se aprenden cosas por repetición. Al empezar a utilizar un lenguaje de programación, consultamos frecuentemente la sintaxis, la documentación de las funciones de biblioteca o paquetes que se necesitan. Con el tiempo vamos memorizando la mayoría de las cosas, pero aún debemos recurrir a la documentación si no se la recuerda bien, o si las funciones o paquetes no son estándares. Con el tiempo, si entendemos bien las tareas a realizar, podremos codificar casi sin parar durante horas sin buscar nada. Sin embargo, eso no significa que tengamos en la memoria el código que debamos escribir.

Quizá la lección más importante que puedes sacar de este post es que, para mejorar como programador, debes memorizar los atajos de teclado y opciones de tus herramientas para aumentar tu productividad, y tener la documentación que necesitas en tu computadora (libros, páginas de interés, ejemplo de códigos, etc.) o en su defecto una conexión a internet para hacer las búsquedas que requieras.

Así que no creas que debes ser un superdotado o un sabelotodo para ser un excelente programador. Y no te impresione saber que los programadores profesionales de hoy busquen cosas todo el tiempo y no sean máquinas-escupe-código. Internet en general, y en especial Google, YouTube y Stack Overflow son herramientas realmente poderosas para acceder al conocimiento, y la programación es fundamentalmente una profesión del conocimiento. No hay ninguna razón para no usar estas herramientas: proporcionan tanto valor que no usarlas es un desperdicio enorme de tiempo. ¡No hay razón para complicarte la vida intencionalmente!


Espero que este post te ayude muchísimo en tu formación y crecimiento como programador como me ha ayudado a mí. Si sabes de otro dato que valga la pena incluir en este post, házmelo saber. No olvides dejar tu comentario y compartir el post con quienes consideres que pueda serle útil. Si encuentras algún link roto o vídeo que no aparece, por favor avísame para corregirlo.

Comentarios