Programant amb intel·ligència artificial després d'un any sense ordinador
Aprenentatges després d'utilitzar la "nova IA" per una mica més d'un mes
Quan vam engegar El Viaje, la Daisy i jo teníem una cosa clara: no volíem ser esclaus de la tecnologia mentre vivíem noves aventures i exploràvem nous mons. Per això vam decidir no portar cap ordinador portàtil (i jo vaig tancar Instagram). Al seu lloc portaríem un iPad amb teclat que, a més de gestionar el dia a dia, ens permetria dibuixar, llegir i veure sèries de tant en tant.
Sens dubte va ser una bona decisió, ja que mai vam trobar a faltar aquells quilos de més que suposava un portàtil. I encara sense aquest pes extra, em va ser possible crear un deck inicial per a la meva startup i utilitzar una mica d'intel·ligència artificial (IA) mitjançant Gemini, ChatGPT i Claude. Fins i tot vaig poder programar una coseta petita amb firebase studio.
En aquest context, durant gairebé un any vaig estar al marge de la IA. Si bé anava escoltant podcasts que m'actualitzaven sobre l'estat d'aquest nou paradigma, i xatejava de tant en tant amb alguna IA per demanar recomanacions o informar-nos sobre els llocs que visitàvem, no vaig arribar a utilitzar cap de les eines modernes fins fa un mes.
Em vaig comprar un Mac Mini als Estats Units per "estar a l'avantguarda" i en tornar a Espanya vaig començar a posar-me al dia. El primer que vaig fer va ser instal·lar Antigravity, VS Code i Claude Code. Tot seguit vaig començar a crear una pàgina web en React, un backend en Python amb FastAPI i una plataforma en Flutter per a un projecte relacionat amb El Viaje del qual en sabreu més detalls aviat (tot i que d'aquest post se'n poden deduir coses). Ho vaig fer amb cadascuna de les eines d'IA mitjançant vibecoding.
El vibecoding és (per a mi) donar instruccions mitjançant la interfície de xat fins que estiguis conforme amb el resultat final. En fer vibecoding vaig començar a entendre part del que la IA fa actualment a l'hora de programar. La primera lliçó va ser que la IA pregunta abans d'actuar i busca feedback constantment. La segona va ser que planeja i segueix passos amb més estructura. La tercera va ser que com millor és el context, millor és el resultat. La quarta va ser que ja no et fa scripts solts o t'autocompleta el codi; munta tot el framework, estructura el teu projecte i executa codi. La cinquena, cal parlar massa per aconseguir alguna cosa que t'agradi.
Aquestes lliçons les vaig obtenir mitjançant diversos proveïdors i els seus plans i eines de programació: 1) Google amb el seu pla AI Pro i Antigravity, 2) Microsoft i la versió gratuïta de Copilot a VS Code, 3) Anthropic amb la versió Pro utilitzant Claude Code, i 4) OpenAI amb el seu pla Plus i Codex.
El prompt inicial va ser el següent:
Vull aprendre a usar IA. No he programat en 1 any perquè he estat viatjant amb la meva dona per Àsia (9,5 mesos), els EUA (10 dies) i Colòmbia (1,5 mesos). He estat llegint i escoltant podcasts sobre l'evolució de la IA, especialment per a codificació i programació. Solia programar en Python i conec frameworks com React i Flutter. Soc economista i científic de dades, amb experiència en desenvolupament de programari. M'interessa usar la IA per programar. Estic planejant crear una startup sent el primer programador, així que realment necessito començar a aprendre a usar la IA al més aviat possible. Planifica'm una manera en què pugui aprendre a usar-la. Abans de començar a aprendre IA amb la meva idea de startup, tinc un projecte paral·lel en el qual vull treballar i aprendre IA. El projecte paral·lel és crear una mena de llibre sobre el viatge. Estava pensant en un lloc web on pugui tenir un blog (com a màrqueting) per vendre el llibre + alguns recursos com el nostre fitxer de pressupost i reservar sessions amb persones interessades a fer un viatge similar. Vull aprendre amb aquest projecte. M'encantaria tenir una pàgina d'inici (React) per a màrqueting i blog, a més d'una plataforma (Flutter) per al llibre, recursos i fotos. El backend hauria d'estar fet en Python. M'agraden molt les bones pràctiques com el disseny dirigit per proves (TDD), el codi net i l'arquitectura hexagonal. M'agrada treballar amb Python i TypeScript, utilitzant tipatge estricte. Faré servir FastAPI, UV i Pydantic per a Python. En React i Flutter (coneixements bàsics), usa les millors pràctiques de 2026. Faré servir la idea del viatge com la meva manera d'aprendre per al següent pas amb la meva startup.
Google amb Gemini 3.1 Pro, en el seu enfocament de desenvolupament impulsat per revisió, va realitzar un pla inicial i després el va executar tenint en compte una llista de tasques que va revisar amb mi. Era gairebé project manager i programador alhora. També va dividir el treball en frontend, backend i app. De tal manera que es va concentrar en cadascun per separat, tot i que en el context es carregaven els tres projectes. No obstant això, vaig notar que va crear l'estructura més bàsica en cadascuna de les parts, per la qual cosa li va faltar substància. Després d'iterar i demanar molts canvis, finalment vam arribar a un resultat més interessant: millor disseny, integració backend-frontend i una app bàsica amb un disseny coherent. Tot i això, quan la cosa millorava, se'm van acabar els tokens... per dues setmanes! M'imagino que tenir tres projectes en un consumeix molt més context i alhora tokens.
Microsoft amb Copilot va desenvolupar un pla en el qual vaig poder modificar i afegir els meus comentaris abans d'iniciar el desenvolupament. No obstant això, sembla que el pla no es va seguir com s'esperava. Primer va optar per no desenvolupar el backend en Python, sinó directament en Dart. Després, va crear una plataforma perquè persones que ja han fet un any sabàtic puguin vendre el seu llibre, cosa que no era el que s'havia especificat. Finalment, a nivell de disseny en va utilitzar un de bastant estàndard malgrat donar-li instruccions per adaptar-lo als colors que es veuen en el resultat d'Antigravity. D'aquesta manera, la sensació en general va ser molt pitjor que l'anterior, així que vaig decidir no continuar. Dit això, per ser una cosa completament gratuïta, el resultat obtingut, comparat amb el que jo hauria fet des de zero, va ser molt bo.
Anthropic amb Claude Code i Opus 4.8 va ser diferencial en la seva manera d'actuar. En primer lloc, va preguntar molt més, però mai va desenvolupar plans complets del que es volia fer. El punt positiu: no va assumir gaire; el negatiu: era difícil veure una foto global al principi. Això no obstant, aquesta foto es podia deduir mitjançant els arxius Claude.md que va generar; un de general i un altre per cada peça: backend, frontend i app. El resultat va ser correcte, però no tan increïble i ràpid com esperava. Tot i així, el disseny va millorar. Un altre aspecte a esmentar va ser que en aquest cas hi va haver més focus, cosa que en part explica que el resultat fos molt més complet per al frontend, però no hi va haver gens d'avenç en els altres fronts.
OpenAI amb Codex i GPT-5.5 em va donar la sensació d'oferir el millor resultat a nivell de funcionalitat i disseny. Va ser l'únic que realment va connectar backend i frontend explicant les seves decisions. Codex va arrencar suggerint prompts per fer diferents tasques i les seves primeres accions van ser crear un Agents.md i el primer backend funcional mitjançant TDD. L'estructura del codi era més interessant i complicada, cosa que em va generar dubtes que el model va resoldre de manera molt il·lustrativa. Amb aquest model vaig sentir que l'arquitectura la decidíem entre tots dos. Això va ser un fet força positiu perquè vam reflexionar sobre els diferents objectes i entitats i això va donar més claredat sobre els passos a seguir. Vam crear un veritable backlog a partir de les nostres converses. Addicionalment, fins que no vam tenir un backend realment funcional, no vam passar a dissenyar el frontend.
Pel que fa al frontal, la dinàmica d'interacció va ser molt semblant. En aquest front, vam iniciar creant un sistema de disseny implementat com a llibreria. Vam prendre com a inspiració elements d'El Viaje i, fins i tot, fotos. Tot i que el disseny fallava en alguns aspectes, en general estava ben aconseguit i era reactiu a diferents mides de pantalla. A nivell de textos li va costar un poc entendre la idea, però vam arribar a un bon primer contingut.
Tanmateix, no tot van ser flors i violes. A mesura que avançàvem es veia el deteriorament de les seves respostes i de la seva manera d'actuar i pensar. Malgrat que vaig reiniciar la sessió i vam prendre apunts del procés, el seu deteriorament va ser evident. És gairebé com un humà quan engega un projecte amb tota l'energia però, després d'un temps, amb la monotonia, les recurrents correccions i la repetitivitat, perd l'interès.
Com a propina (extra per als no colombians), mentre escrivia aquest text, va sortir Fable 5 d'Anthropic. Com no provar-lo si segons els mitjans és el millor model de la història (com cada nou que publica un laboratori d'IA) i a més és una edició limitada? Doncs en aquest cas no vam arribar a generar el frontend però crec que mai havia après tant de TDD, Domain-Driven Design, Event Sourcing, CQRS i molts altres principis d'arquitectura de programari (perdoneu tanta sigla i anglicisme, però toca sonar pro). Addicionalment, i tenint en compte que no he desenvolupat centenars de backends, mai n'havia arrencat un tan bé com aquest. Fable va ser sense dubte l'únic de tots els models que va entendre que la meva missió amb aquest projecte, a més de desenvolupar el millor side-project possible, era aprendre a usar la IA per construir producte en la meva startup. Sens dubte, atès el meu petit cas d'ús i el ventall de models, Fable és a dia d'avui el model publicat que més sap de programació. Com que l'accés al model va ser suspès per directives del Govern dels Estats Units, no vam poder continuar desenvolupant el frontal; just la tasca que tocava a continuació. No obstant això, us en continuaré explicant el resultat més endavant.
No soc per a res un expert, ni en IA ni en desenvolupament de programari, però donaré el meu veredicte i conclusions d'aprenent d'IA. 1) En un any la IA ha canviat radicalment la manera de desenvolupar codi al món. 2) Anthropic, principalment, i OpenAI de prop són els millors per programar (dels avaluats fins ara). 3) El context importa, i molt, però també la manera com ens relacionem amb la IA; és a dir, com generem fitxers de context, donem instruccions i feedback, emmagatzemem memòria i decisions, establim patrons. 4) No hi ha millor professor d'IA que la mateixa IA. 5) Si vols aprendre de veritat, t'hi has de posar de ple i construir una cosa real. 6) Les bases de desenvolupament de programari són cada vegada més importants, rellevants i fàcils d'implementar.
Si fa temps que sents que t'estàs quedant enrere, la meva única recomanació: posa-t'hi de ple i construeix alguna cosa de veritat. No per fer-ho com jo, sinó per trobar la teva pròpia manera.
"}
Comentaris
Encara no hi ha comentaris. Sigues el primer a comentar!