← Volver a la lista de posts

Cómo piensa un programador?

Ser programador no es sólo obtener los conocimientos, es desarrollar la mentalidad correcta. En este post veremos cuál es esa mentalidad y una técnica para adquirirla.

Ningún programador se las sabe todas, no importa cuánto tiempo lleve programando. De hecho, la cantidad de información que pueda tener el programador más sabio del planeta no va a ser más que una mínima fracción de todo el conocimiento en programación actual, que crece cada día.

Pero entonces cómo hace un programador para hacer su trabajo si no sabe prácticamente nada?

La respuesta es que los programadores son increíblemente recursivos.

Supongamos que necesitamos crear un componente que permita al usuario seleccionar una fecha, algo así:

Selector de Fecha

Un selector de fecha, una solicitud muy común en el desarrollo Web.

Quizá la primera pregunta que se hace un programador es: ¿ya he hecho esto antes? Si la respuesta es afirmativa el siguiente paso es buscar el proyecto y hacer copy-paste, hecho!

Si no lo ha hecho antes, la siguiente pregunta es ¿será que alguien ya lo ha hecho antes? El 98% de los problemas que existen en programación ya han sido solucionados y documentados. Sólo debes buscar en Internet (que es la habilidad más importante que desarrollamos los programadores).

La mayoría de veces el trabajo del programador es así de fácil, pero no siempre (si no, no les pagarían lo que les pagan). Sí, algunas veces nos toca pensar, adaptar, arreglar, frustrarnos por errores simples, etc. Una buena práctica en estos casos es documentar nuestra solución en un post, quizá le pueda servir a otros programadores más adelante.

En pocas palabras el trabajo de un programador es lograr que las cosas funcionen. Idealmente siempre deberíamos hacer un paso adicional y es organizar el código para que sea fácil de leer y entender. Desafortunadamente este no es siempre el caso y la mayoría de proyectos de software se convierten en retazos de código copiados de Internet.

El programador es una persona muy práctica enfocada en solucionar un reto a la vez. Por esta razón es bueno tener amigos programadores o un mentor a quién preguntar, un guía.

Eso no significa que los programadores no aprendamos de forma más estructurada, de hecho a muchos programadores nos encanta aprender constantemente, pero es un proceso paralelo a nuestro trabajo.

Por poner un ejemplo, una persona normal pensaría que para hacer un componente como el selector de fecha que vimos antes, debe aprender HTML, CSS y JavaScript, o es posible que ni siquiera sepa qué debe aprender. Pero igual, esa persona está pensando hacerlo desde cero, es decir, no está pensando como programador.

Aprender HTML, CSS y JavaScript (o cualquier otra tecnología) está perfectamente bien, pero es muy probable que después de hacer varios cursos encontremos que en ninguno expliquen lo que queremos hacer. En cambio, es posible que con una simple búsqueda en Internet encontremos exactamente lo que necesitamos. Así es la vida.

En general, una recomendación para aprender una nueva tecnología (después de terminar Make it Real ;) es empezar con algunos turoriales para tener una idea de lo que es posible con esa tecnología, hacer algún proyecto, y después si profundizar en la documentación o hacer un curso más estructurado.

En conclusión, un programador nunca piensa en hacer algo desde cero ni entenderlo todo completamente (a menos de que sea su área específica de conocimiento). Un programador se enfoca en encontrar soluciones utilizando todos los recursos que estén a su alcance: Internet es su mejor herramienta y aprender a buscar, su mejor habilidad.

¿Cómo convertirte en Desarrollador Web?

Descarga gratis el e-book

Conoce la mentalidad, los roles y las tecnologías que debes saber para convertirte en desarrollador Web.

Descargar e-book