Está bien, nadie puede recordar todo

Hace un par de días tuve una conversación con un amigo que está aprendiendo a programar.

Estábamos hablando sobre la dificultad de recordar qué significa cada concepto y qué hace cada palabra clave en un lenguaje de programación. La conversación eventualmente llevó a esta pregunta:

Ok, ¿pero cuándo dejaré de necesitar la documentación?

Yo (probablemente la mayoría de las personas) tuve la misma sensación cuando estaba aprendiendo a programar. De alguna manera me imaginé que eventualmente, después de aprender por mucho tiempo, conocería cada detalle del lenguaje que estoy usando, y cada función de las librerías que uso.

Me tomó algunos meses trabajando como desarrollador de software aprender que así no es como se escribe software. Por eso quiero compartir algunas de las cosas que he aprendido a lo largo de los años sobre la relación que los desarrolladores de software tienen con la documentación, su memoria y otros recursos en línea:

  • La mayoría de las palabras clave y conceptos importantes eventualmente se quedarán grabados en tu mente, siempre que escribas suficiente código. Esto sucede cada vez que comienzas a aprender un nuevo lenguaje de programación o técnica: Al principio, necesitarás buscar muchas cosas, pero mientras más familiarizado te vuelvas con las herramientas que estás usando, más detalles retendrá tu cerebro.
  • Entiende conceptos, busca detalles: Es mucho más importante entender los conceptos básicos e ideas y dónde usarlos que conocer detalles sobre la sintaxis de un lenguaje. Cuando desarrolles “intuición de programador” sabrás qué usar y cuándo usarlo. Todo lo demás se puede encontrar en la documentación.
  • Todos usan documentación, todos buscan cosas. Solía tener esta extraña idea de que los programadores veteranos nunca buscaban nada. No sucede de esa manera, cada programador experimentado entiende el valor de la buena documentación y que la parte importante de la programación no es lo que puedes memorizar, sino las conexiones que puedes hacer entre conceptos y cómo convertir especificaciones en buen software. Ve a la oficina de cualquier equipo de desarrollo de software y encontrarás lo mismo en cada mesa: Un monitor tiene un editor de texto o IDE, y el otro tiene documentación.
  • Usa tu exocorteza. Todas esas libretas, páginas de documentación, libros, y básicamente cualquier cosa donde puedas escribir detalles están ahí para ayudarte. Liberan tu cerebro de especificidades y te permiten concentrarte en lo importante. Recuerda, tu cerebro tiene capacidad limitada, úsala donde importa.

Eso es todo, no te estreses demasiado si no puedes recordar todo lo que aprendes. Solo sigue escribiendo código, sigue construyendo cosas, sigue haciendo preguntas y buscando información. Eventualmente, todas estas cosas se volverán una parte natural de quien eres. Y las que no, está bien, siempre las puedes encontrar en la documentación.

¡Gracias por leer!

Juan Luis Orozco Villalobos

¡Hola! Soy Juan, ingeniero de software y consultor en Budapest. Me especializo en computación en la nube e IA, y me encanta ayudar a otros a aprender sobre tecnología e ingeniería