Ho passato una giornata a costruirmi un sistema che monta da solo i video della mia azienda agricola. Alla fine funzionava. Ma la parte utile di questa storia non è il codice: sono i sei errori dell’AI nella programmazione in cui sono inciampata, e il momento in cui ho smesso di accettare le risposte che ricevevo.

Faccio due lavori che sulla carta non si parlano. Di giorno sono digital strategist e AI specialist: automazione, SEO, flussi di lavoro. Il resto del tempo ho un’azienda agricola in Alta Toscana, con galline ornamentali, conigli, due pony e un orto.

Il punto in cui i due lavori si incontrano è banale e fastidioso: i contenuti. Un’azienda agricola piccola deve pubblicare con costanza, e la costanza è esattamente la cosa che salta quando hai gli animali da governare, due figli e dei clienti.

Così ho fatto la cosa che consiglio ai miei clienti: invece di comprare tempo, ho tolto attrito. Ho costruito un sistema che prende le foto dal telefono e mi restituisce un video montato, verticale, pronto da pubblicare.

Il risultato tecnico lo trovi in fondo. Quello che ti serve davvero sta in mezzo.

Il sistema

Cosa fa il sistema, in tre righe

  • Seleziono le foto buone dalla galleria e le sposto in un album.
  • Arrivano sul PC da sole, via Syncthing.
  • Scrivo un comando a un bot Telegram.
  • Il video montato mi torna in chat.

Sotto ci sono ffmpeg per il montaggio, Python per l’orchestrazione, un file YAML per la configurazione. Cinque preset diversi — settimanale, mensile, trimestrale, ritratto, carosello — che dallo stesso materiale producono video con ritmi e formati diversi.

  • Costruzione — una giornata, lavorando in coppia con un modello linguistico.
  • Prima — quaranta minuti di montaggio manuale a settimana.
  • Adesso — il tempo di scrivere /recap.

Le sei rotture

I sei errori dell’AI nella programmazione (e le cause vere)

Questa è la parte che nei contenuti su “come programmare con l’AI” non trovi quasi mai, perché mostrano sempre l’esempio che funziona al primo colpo.

Rottura 01

Il video partiva sul PC e non sul telefono

Montaggio perfetto sul computer. Lo scarico da Telegram, lo apro sul telefono: “Can’t play video.”

Causa: aggiungendo le transizioni, il filtro di dissolvenza aveva promosso il formato colore a yuv444p. Il PC lo decodifica via software e non se ne accorge. Android usa il decoder hardware, che quel formato non lo legge.

  • La lezione — “funziona sulla mia macchina” è un’affermazione sul mio ambiente, non sul software. Ogni volta che aggiungi un passaggio a una catena, i valori predefiniti possono cambiare sotto di te.

Rottura 02

File invisibili che finivano nel montaggio

Il conteggio non tornava: sedici file sul telefono, diciassette sul PC. Il comando ls ne mostrava sedici.

Causa: quando cancelli una foto, Android non la elimina. La rinomina in .trashed-1798765432-nomefoto.jpg e la tiene trenta giorni. Il punto iniziale la rende nascosta a ls, ma non a find. Il sistema la trovava e la montava.

  • La lezione — quando due conteggi non coincidono, non scegliere quello che ti piace di più. Uno dei due sta guardando qualcosa che l’altro non vede.

Rottura 03

La cronologia rovesciata

Il video montava le foto dalla più recente alla più vecchia. Il codice ordinava correttamente in senso crescente. Entrambe le cose erano vere.

Causa: la galleria di Android mostra le foto più recenti in cima. Quando le selezioni e le sposti in un album, il sistema riscrive la data di modifica nell’ordine in cui le hai toccate. Sul PC arrivavano con le date invertite rispetto allo scatto.

La soluzione non è ordinare al contrario — sarebbe una toppa che si rompe la prima volta che selezioni in ordine diverso. La soluzione è leggere la data EXIF, quella scritta dalla fotocamera, che nessun sistema operativo riscrive.

  • La lezione — i metadati del filesystem descrivono il file, quelli interni descrivono il contenuto. Se ti interessa il contenuto, guarda dentro.

Rottura 04

Il file cancellato che tornava

Cancellavo un file dal PC. Ricompariva.

Causa: avevo configurato la sincronizzazione in modalità “solo invio” dal telefono, così che nessuna cancellazione sul computer potesse toccare la galleria. Funzionava esattamente come progettato. Il telefono era la fonte della verità, e rimetteva a posto quello che sparivo dall’altro lato.

  • La lezione — il comportamento che ti dà fastidio oggi è spesso la protezione che hai chiesto ieri. Prima di rimuoverla, chiediti da cosa ti stava difendendo.

Rottura 05

Due cartelle dove doveva essercene una

Questo è quello che mi è costato di più. Il conteggio dei file sincronizzati diceva trentaquattro, ma nella cartella di lavoro ce n’erano diciotto.

Causa: sul PC esistevano due cartelle di sincronizzazione con la stessa etichetta e identificativi diversi, che puntavano a due percorsi diversi. Una sola delle due era quella che il telefono conosceva davvero. L’altra era un orfano creato durante la configurazione, che riceveva niente e confondeva ogni conteggio.

  • La lezione — quando i numeri non tornano, smetti di sommarli e vai a vedere quali oggetti stai contando. Trentaquattro era esattamente diciotto più sedici: non c’era nessun mistero, c’erano due cartelle.

Rottura 06

Un componente che non partiva

Volevo lanciare il montaggio dal telefono con un’app che sincronizza smartphone e computer. Non si collegava. Ho perso mezz’ora a diagnosticare rete, accoppiamento, firewall.

Causa: il servizio di sfondo non era mai in esecuzione. Quel software è pensato per un ambiente desktop diverso da quello che uso, e nel mio non veniva avviato da nessuno.

Quel pezzo l’ho poi sostituito con un bot Telegram, che fa la stessa cosa meglio, funziona anche fuori casa e non dipende dalla rete locale.

  • La lezione — prima di indagare perché qualcosa funziona male, verifica che sia acceso. E metà dei problemi tecnici si risolvono cambiando strada, non insistendo.

Il punto

Il momento che conta davvero

A un certo punto un file che avevo cancellato continuava a finire nei montaggi. Il modello con cui stavo lavorando mi ha proposto di aggiungerlo a una lista di esclusioni.

Avrebbe funzionato. Per quel file.

La mia risposta è stata: escludo una foto e ogni settimana ne escludo un’altra? Deve funzionare.

Da lì è uscita la diagnosi vera — le due cartelle — e la correzione strutturale. Ma il punto non è chi aveva ragione. Il punto è che l’AI aveva prodotto una soluzione plausibile, sintatticamente corretta, immediatamente applicabile e strategicamente sbagliata.

È il difetto tipico di questi strumenti: sono ottimizzati per farti superare l’ostacolo che hai davanti, non per chiederti se stai andando nella direzione giusta. Ti danno la toppa perché gliel’hai chiesta, e la toppa funziona, e tu vai avanti.

Se accetti tutte le toppe, dopo sei mesi hai un sistema tenuto insieme da eccezioni che nessuno ricorda più perché esistono. I peggiori errori dell’AI nella programmazione non sono quelli che rompono il codice: sono quelli che lo fanno funzionare nella direzione sbagliata.

Cosa portarsi a casa

Cosa vuol dire per chi vuole usare l’AI in azienda

Ci sono tre cose che porto via da questa giornata, e le porto anche nei progetti dei clienti.

Riconoscere gli errori dell’AI nella programmazione è la nuova competenza

Non ho scritto quasi nessuna riga di codice a mano. Ma ho riconosciuto sei diagnosi sbagliate o incomplete, ho rifiutato una toppa e ho preteso la causa. Chi non sa riconoscere una risposta sbagliata non è più veloce con l’AI: è solo più veloce a costruire qualcosa di fragile.

Il valore sta nel conoscere il dominio

Il sistema è utile perché so cosa serve a un’azienda agricola che pubblica sui social: che formato trattiene, quanto deve durare un video, perché la musica va aggiunta dentro la piattaforma e non incorporata nel file. Quella conoscenza l’AI non ce l’ha, e non gliela puoi chiedere.

Automatizza dove il risparmio si accumula

Il montaggio settimanale l’ho automatizzato perché lo faccio ogni settimana. Un video celebrativo che faccio dodici volte l’anno l’ho lasciato su un’app con i template: automatizzarlo sarebbe costato più di quanto rende. La domanda giusta non è “si può fare”, è “quante volte lo rifarò”.

Materiali

Il codice

Il sistema è pubblico. È cucito addosso a una specifica azienda agricola, non è un prodotto e non ha supporto: lo pubblico come materiale di accompagnamento a questo articolo, perché una storia sui problemi tecnici senza il codice è solo un aneddoto.

Serve un sistema Linux, ffmpeg e ImageMagick. La configurazione è in un solo file YAML: cartelle, durate, ordinamento, gradazioni colore, transizioni.

Il repository su GitHub

Se ti suona familiare

Il problema non è la disciplina

Se hai un’azienda che deve pubblicare con costanza e ogni settimana quella costanza è la prima cosa che salta, il problema non è la disciplina. È che il processo ha troppo attrito.

Lavoro esattamente su questo: guardare un flusso operativo, capire dove si inceppa e togliere i passaggi che non servono — con l’AI dove serve, senza dove non serve.