La primera clase de programación no debería ir de enseñar conceptos como variable, constante, condicional,… sino utilizarse para explicar conceptos mucho más fundamentales. Hablo de hacer entender a los nuevos programadores que la programación va mucho más allá de escribir código. Estas verdades no se suelen explicar en los cursos de programación. Ya no el primer día, tampoco el último.

Inspirando por este post, os pongo mi pequeña lista de grandes verdades sobre la práctica de la programación. ¿Añadís las vuestras?

No hay ningún lenguaje mejor que otro

No perdáis el tiempo en guerras inútiles entre lenguajes. Hay lenguajes más nuevos o más populares, pero no mejores. Cada lenguaje es adecuado para un contexto o tipo de aplicación determinado. No hay ninguno que sea mejor que todos los demás de forma absoluta. No dejéis que el marketing os engañe.

Los lenguajes de programación son una herramienta, no una religión - M. Lemos Click To Tweet

Tú no eres tu código

Tendemos a relacionar nuestra valúa personal con la calidad del código que escribimos. Y eso es un error. Si mi autoestima dependiera de lo bueno que es el código que yo escribo , hace tiempo que me hubiera tirado a la vía del tren. Esto se aplica también a la inversa. No vayas tan rápido en evaluar la calidad de un programador mirando su código. No sabes en qué condiciones tuvo que escribirlo (a lo mejor parte lo heredó de otro, el deadline era irrealizable, …).

Más no es mejor

No seas una máquina de “vomitar” código. Sé una máquina de solucionar problemas. Y si es con poco código aún mejor.

La mejora manera de tener menos bugs es escribir menos código Click To Tweet

Leerás más código del que nunca vas a programar

Cuando empecé mi doctorado (hace ya casi veinte años 🙁 ), el jefe del grupo me dijo: “espero que te guste leer”. En ese momento no le entendí.  El tiempo le ha dado razón. Durante mi tesis, me pasé más tiempo leyendo los resultados publicados por otros que investigando. Y es que todo lo que haces depende y se construye a partir de lo que hacen otros.

Exactamente lo mismo pasa con el desarrollo del software. Pocas veces tendrás la oportunidad de programar algo de cero. E incluso en esos casos dependerás de librerías/servicios de terceros. El 99% de los tiempos estarás colaborando en un proyecto ya en marxa (o depurando uno viejo o …).

Casi más que programar, lo importante es ser bueno leyendo programas. Click To Tweet

Programar es mucho más que escribir código

Programar es una actividad social. Eso del programador encerrado en su cubículo es un mito. Programar requiere entender bien los requisitos de lo que vas a programar, el contexto en que se va a utilizar el programa, el perfil del usuario,… Para ser un buen programador tienes que desarrollar no sólo código sino también habilidades sociales.

Tiene más éxito un desarrollador con buenas habilidades sociales aunque sea mediocre programando que a la inversa - Gregory Bown⠀ Click To Tweet

Nunca escribirás un código perfecto

El código perfecto no existe. Nadie ha creado nunca un código perfecto, no vas a ser tú el primero. E intentarlo te puede llevar al grave problema de la optimización prematura donde, en la búsqueda de la perfección, acabas escribiendo un montón de código inútil. Inútil porque intenta prever posibles problemas (ej. de escalabilidad) que a día de hoy no existen y que puede que nunca lleguen. Una cosa es definir un código bien legible y fácil de extender y la otra perder el tiempo preparando el código en previsión de una guerra nuclear.

Primero hazlo, después hazlo bien y luego hazlo mejor - Addy Osmani⠀ Click To Tweet

Imagen por Jerry Wang en Unsplash