El meu primer error amb Claude Code
Fa uns dies em vaig instal·lar l’extensió de Claude Code a l’entorn que faig servir per programar els controladors de reg. Per als prototips inicials no ho vaig fer, i simplement anava parlant del codi amb el bo d’en Claude a través de la web. Explicar el projecte, demanar una funció, copiar el codi, enganxar-lo, a vegades haver de fer alguna modificació a algun altre lloc, etc. Una mica de feina manual, si, però així jo podia estar molt més a sobre del codi i veure que tot anava ben encaminat.
Un cop instal·lat el Claude Code, el Claude de la web em va preparar els prompts per a cada mòdul, i jo li vaig anar passant al Code. Vaig il·lusionar-me i vaig cometre un error: no li vaig especificar que volia que el codi fos per a un prototip. Passada mitja hora ja tenia un codi llest per a instal·lar als mòduls, però em vaig adonar que era un monstre. Tot molt ben programat i estructurat, però era massa avançat. No puc instal·lar això en un hardware que encara no sé si funciona, i esperar poder fer un troubleshooting sense morir.
Tenint clar que m’havia equivocat, vaig demanar-li que fes una còpia simplificada per a poder testejar el hardware pas a pas. Pim pam, en un moment ja tenia el codi fet. Va passar de 13 fitxers, 55 funcions i 2500 línies de codi, a 1 fitxer, 7 funcions i 260 línies de codi. Ara sí que podia començar les proves.
Quan el codi l’escrivia el Claude de la web, normalment havia de fer algunes correccions, però amb Claude Code tot va compilar a la primera i estava preparat per funcionar! l que no estava tan preparat era jo, que encara no havia instal·lat les eines de MQTT per comunicar-me via internet amb el master. El Claude Code em va anar guiant i en un parell de minuts ja tenia el setup funcionant: L’ordenador envia una comanda a un fil de MQTT a través d’internet, el master està connectat a aquest fil i veu si és per a ell o per a l’esclau, i si cal la reenvia a través de LoRa a l’esclau.
No vaig tenir problemes de llibreries ni de connexions de hardware, i la comunicació via radio entre el master i l’esclau funcionava sense fricció. Vaig provar totes les funcionalitats i vaig confirmar que tot funcionava com esperava.
Vaig pensar: “Clar, normal, sort que jo li he demanat que em fes un codi simplificat per a prototip... A veure quants problemes tindré ara per a fer que el monstre de 2500 línies funcioni bé...”
Per a seguir, li vaig preguntar si volia anar afegint petits canvis al codi prototip, o si volia saltar directament al codi de producció, i em va proposar: prova de compilar el codi, solucionem els errors que pugui haver, i el provem. Vaig pensar que l’ego d’aquesta IA està pels núvols. Et penses que pots fer un programa així de cop i que funcioni o què?
Vaig compilar els dos programes (master i esclau) i només el master tenia un petit error. El va solucionar i vaig instal·lar els dos codis als controladors. Comandes d’obrir i tancar relés, telemetria de sensors, configuració d’horaris de reg... tot el que li havia demanat, funcionava.
Per a treure-li més suc al Claude Code, li estic afegint skills i proves funcionals que ha de fer amb el projecte. Aviat us diré com va!
Mentrestant, si tu també vols fer realitat una idea i validar-la al mercat, escriu-me o truca’m i en parlem! Et deixo aquí el meu Whatsapp: https://wa.me/34622148093