"Primero hazlo, luego hazlo bien, luego hazlo mejor."

-- ✍️ Addy Osmani.

Imprime esta frase y cuélgala en un sitio bien visible. Contiene tres enseñanzas, todas rodeando al verbo imperativo hazlo. Porque esa es la base fundamental del trabajo, hacer algo productivo, algo que aporte valor.

Y esa es la primera enseñanza, haz las cosas, evita la parálisis por análisis, evita la procrastinación, las excusas. Siempre hay algo que hacer.. Primero hazlo.

📝 Hacer las cosas bien

Así que dan por hecho que no hacemos las cosas bien a la primera. Al menos en mi caso es rotundamente cierto. Ni siquiera a la segunda suelo acertar. Y tampoco me vienen nadie infalible a la mente... así que es probable que tú tampoco hagas las cosas bien a la primera.

Hacer las cosas bien implica que hay un criterio para validar lo hecho. ¿Qué está bien? ¿Quién dice que algo está bien? Coloquialmente se dice que algo está bien si cumple con lo esperado. Si el que lo encarga está satisfecho. Si pasa la prueba del usuario.

Formalmente, diremos que algo está bien si cumple unos requisitos. Si pasa las pruebas de software que lo validen. En definitiva, las pruebas del software son el primer check point que demuestra que lo hecho está bien. Si no las tienes, la demostración es más costosa o inexistente.

Del manifiesto ágil al artesano.

La artesanía se base en la mejora continua, por el orgullo y el saber hacer del artesano. Y para un artesano del software el código correcto es mejorable en su diseño interno. El refactoring. Hazlo cada vez mejor.

✒️ Disciplina y buenos hábitos.

Para iniciar la transformación que te llevará de la programación a la artesanía del software vas a necesitar algo más conocimientos. Vas a necesitar disciplina para aplicar lo aprendido. Y para ello has de incorporar buenos hábitos y desterrar los malos.

Es un viaje, no un salto. Tómate tu tiempo y entrena tu paciencia porque merece la pena dejar de ser un operario sin valor diferencial.

Ni artista 👩‍🎨 ni operario/a 👨‍🏭

Todo está en los libros:

Obviamente este cambio de actitud es mejor hacerlo acompañado. En persona y en conocimiento. Para lo segundo te dejo asuí una lista de libros que te ayudarán a enfocar tu carrera en el desarrollo de software.

Programación

  • Clean Code (Robert C. Martin.)
  • Extreme Programming (Kent Beck)
  • Refactoring (Martin Fowler)
  • The pragmatic programmer (Hunt & Thomas)
  • The Software Craftsman (Sandro Mancuso)

Gestión

Y un par de ellos que te pueden servir para organizarte y mejorar en otros aspectos de la vida.

  • Getting things done (David Allen)
  • Atomic habits (James Clear)

Bienvenidas y bienvenidos al gremio de los artesanos y artesanas del software.