Número 28
5 de outubro de 2022

Programar é un pracer

Bastante teño escrito (e moito máis vou escribir) sobre as boas prácticas na programación. Tests unitarios, documentación, integración continua: a lista non ten fin. Do que non falei é da programación por afección: hai moita xente que programa como pasatempo e todo este falar de control de versións e guías de estilo e certificados de procedencia pode conducilos a pensar que a Folla non é para eles.

Obviamente, moitas desas cousas das que falei son axeitadas en ambientes profesionais nos que un equipo está a traballar para elaborar un produto. Cando programamos por pracer, non precisamos de facer todo “polo libro” e podemos tomar canto atallo se nos antolle. A ver quen son eu para vos dicir que non podedes gozar do voso lecer como queirades.

Un home mira de reollo, con noxo, ao libro que está a ler.“Gosto de ler, pero odio a insistencia en eu ollar todas esas letras…”

Porén, moitas veces podemos integrar algunhas desas boas prácticas sen diminuír o noso gozo da actividade de programar. Por exemplo, pouca xente queda xa que non use un sistema de control de versións, incluso cando programan eles sós. A posibilidade de recuperar unha versión antiga do código é atractiva dabondo para aturar o pequeno inconveniente de usar “git” ou “Mercurial” ou o VCS que estea de moda cando leades isto.

Incluso algo que crea opinións tan enfrontadas coma os tests unitarios ten cabida na programación por lecer, aínda que depende, obviamente, do proxecto. Cando traballei nunha demo non escribín tests unitarios porque o mellor test para ese tipo de programas é executalos e ver como saen, pero cando fixen un programa de procesamento de sinais, a ben seguro que escribín tests para todo, porque os erros nese tipo de programa poden ser ben sutís e difíciles de detectar e corrixir.

Non todos buscamos o mesmo nos nosos hobbies. Moitos queremos facer só as partes divertidas, pero hai xente que tamén atopa pracer nas partes que outros consideran aburridas. Moitos pilotos comerciais son afeccionados aos simuladores de voo, e no seu día feirado pasan horas pilotando un avión virtualmente. Se fora eu, collería un avión supersónico e pasaría o día voando por baixo de pontes e entre edificios, pero moitos deles preparan plans de voo e obedecen as indicacións da torre e seguen todos os procedementos e voan exactamente igual que no seu traballo, porque é así como lles gosta facelo.

Obviamente non vos vou suxerir que implantedes todas as prácticas dunha empresa de software moderna cando programades as vosas cousas, pero podedes botar un ollo e probar isto e aquilo para ver se algunhas delas melloran o voso gozo da actividade da programación. Podedes comezar polo control de versións, como xa mencionei, despois ver se algún test unitario vos axuda a evitar ou a diagnosticar erros no voso programa, e despois… quen sabe.

Outro beneficio de cultivar algunhas desas prácticas no voso tempo libre (por exemplo, escribir documentación) é que, cando traballedes profesionalmente ou o voso proxecto sexa tan grande como para requirilas, xa as coñeceredes ben e vos resultarán doadas e incluso pracenteiras.

Como sexa que decidades programar, espero que o desfrutedes!

A ilustración desta Folla procede dun gravado de John Tenniel.