Vroby Pages — 22–28 ottobre 2026
Questa settimana ho scritto meno codice personalmente, ma paradossalmente ho prodotto parecchio software.
Il motivo è semplice: sto utilizzando sempre di più ChatGPT e gli agenti di programmazione non soltanto per farmi aiutare, ma per realizzare modifiche, verificare il codice, eseguire test e preparare Pull Request.
Ho anche ripreso alcuni esperimenti su Linux e sui vecchi computer, mentre il mio notiziario tecnologico continua a essere pubblicato quotidianamente.
ai-bar-fm: un file manager in Bash
Il progetto principale della settimana è stato ai-bar-fm.
Volevo un file manager da terminale estremamente leggero, utilizzabile anche all'interno della mia barra laterale ai-bar.
La richiesta iniziale era abbastanza semplice: una sola lista di file, navigazione da tastiera e i principali comandi di gestione.
Ho deciso di scriverlo interamente in Bash, senza utilizzare librerie TUI come curses o dialog.
Il risultato è un programma che ricorda Midnight Commander, ma con un solo pannello e alcune scelte personali.
La gestione dei file utilizza i tasti funzione, mentre la navigazione può avvenire con le frecce, secondo convenzioni simili a quelle di Lynx.
Durante lo sviluppo ho aggiunto il supporto al mouse, i colori ANSI, le cornici Unicode e una barra dei comandi cliccabile.
Naturalmente non è mancata qualche difficoltà.
Inizialmente le coordinate del mouse non corrispondevano perfettamente alle righe visualizzate. Poi ho dovuto eliminare uno sfarfallio provocato dal ridisegno completo dello schermo.
Un problema curioso riguardava invece la gestione del doppio clic: con la locale italiana, Bash può utilizzare la virgola come separatore decimale. Il programma non lo prevedeva e finiva per generare un errore.
Sono piccole cose, ma mostrano quanto possa essere complicato scrivere un'interfaccia da terminale apparentemente elementare.
Alla fine sono arrivati anche l'esecuzione dei file, la modifica dei permessi e del proprietario, la creazione di collegamenti simbolici e le finestre di dialogo in stile Midnight Commander.
Il programma dispone di un comando di installazione rapido e di una suite di test automatici.
Tra il 25 e il 26 ottobre sono state integrate otto Pull Request.
La cosa interessante è che gran parte del lavoro è stata realizzata collaborando con ChatGPT: io descrivevo il comportamento desiderato, l'agente modificava il repository e preparava i test, poi verificavo il risultato e chiedevo le correzioni.
Un modo di programmare decisamente diverso da quello al quale ero abituato.
Repository: vroby65/ai-bar-fm
Collaborare con Mattia attraverso GitHub
Un altro esperimento importante riguarda la collaborazione con Mattia, che sta sviluppando un videogioco multiplayer chiamato Mecha Fleet: Versus.
Inizialmente avevamo pensato di scambiarci il codice attraverso la posta elettronica, ma gli allegati diventavano rapidamente scomodi.
Abbiamo quindi deciso di utilizzare GitHub.
Il meccanismo è semplice: Mattia mantiene il repository originale, io posso lavorare su un fork e ChatGPT prepara modifiche e Pull Request.
Mattia rimane responsabile della revisione e dell'integrazione del codice.
È un modello di collaborazione che mi interessa molto, perché permette di coinvolgere un agente AI nello sviluppo senza perdere il controllo del progetto.
Il 26 ottobre abbiamo lavorato sulle meccaniche di combattimento, introducendo elementi ispirati a Super Robot Wars: abilità speciali, reazioni difensive, armature e nuove regole per le flotte.
Il giorno successivo sono intervenuto su due problemi individuati durante una revisione di Codex.
Il primo riguardava identificatori non validi che potevano provocare errori sul server. Il secondo era un problema nella gestione dei turni quando un contrattacco distruggeva l'unità attiva.
Le correzioni sono state integrate nel repository originale attraverso una Pull Request.
Il 28 ottobre abbiamo preparato un'ulteriore proposta, con quattro fazioni, nuove unità e un selettore tattico. Al momento della verifica questa modifica risultava ancora in revisione sul fork.
L'esperimento mi ha convinto soprattutto per un motivo: l'agente può diventare un collaboratore che propone modifiche verificabili, non semplicemente un generatore di codice da copiare.
GitHub Pages non è un server applicativo
Lavorando al progetto di Mattia abbiamo affrontato anche un problema interessante.
Il gioco utilizza Node.js e WebSocket per gestire le partite multiplayer.
Mi sarebbe piaciuto pubblicarlo direttamente su GitHub Pages, ma Pages ospita contenuti statici e non può eseguire il server del gioco.
Abbiamo quindi valutato diverse possibilità: separare frontend e backend, utilizzare un servizio esterno oppure mantenere il server su una macchina personale.
È una distinzione importante, soprattutto quando si comincia a pubblicare applicazioni Web più complesse.
Non tutto quello che funziona nel browser può essere ospitato gratuitamente su un servizio statico.
Piccoli aggiornamenti a bfetch e zepto-agent
Fra i repository aggiornati questa settimana ci sono anche due piccoli programmi.
Il primo è bfetch, una utility che mostra informazioni sul computer direttamente nel terminale.
Il 23 e il 25 ottobre ho aggiunto la visualizzazione delle temperature hardware, con una lettura della temperatura della CPU attraverso le thermal zone di Linux.
Mi piacciono questi programmi perché permettono di ottenere informazioni utili senza avviare applicazioni pesanti.
L'altro aggiornamento riguarda zepto-agent, uno dei miei esperimenti con agenti AI da terminale.
Questa volta il cambiamento è stato molto più piccolo: ho semplificato l'output iniziale del programma.
Zepto-agent rimane collegato alle sperimentazioni con freellmApi e za.py, attraverso le quali provo a permettere a un modello linguistico di eseguire operazioni controllate sul sistema operativo.
L'obiettivo non è dare all'intelligenza artificiale accesso indiscriminato alla macchina, ma costruire strumenti semplici che rendano possibile automatizzare operazioni ben definite.
ChatGPT è sempre più un agente operativo
Nel frattempo continua anche l'utilizzo di ChatGPT come assistente personale.
Lo sto integrando sempre di più con i servizi dell'ecosistema Google, utilizzandolo per lavorare con documenti, fogli elettronici, posta e calendario.
Non voglio entrare nei dettagli delle operazioni personali, ma il cambiamento è abbastanza evidente.
Prima chiedevo a un modello come svolgere un lavoro. Adesso, quando possibile, gli chiedo direttamente di eseguirlo.
La stessa cosa sta accadendo con GitHub: invece di copiare il codice generato, posso far lavorare l'agente sul repository e ottenere una Pull Request da esaminare.
Questo non elimina il bisogno di controllare. Anzi, più autonomia viene concessa a un agente, più diventano importanti test, revisioni e possibilità di annullare le modifiche.
Per questa ragione continuo a utilizzare branch separati e file AGENTS.md nei progetti che si prestano a questo metodo.
Anche ai-bar segue questa filosofia: un branch principale generico e personalizzazioni separate, così da mantenere il progetto riutilizzabile.
L'utilizzo di Hermes, invece, si è progressivamente ridotto.
L'ho rimosso dal computer principale insieme a PicoClaw. Hermes continua a funzionare sul Raspberry rakgateway, collegato a Telegram, ma una parte crescente del lavoro operativo viene ormai svolta attraverso ChatGPT.
Linux: ancora esperimenti e qualche piccolo problema
Questa settimana sono tornato a occuparmi anche dei miei computer Linux.
Sul desktop continuo a utilizzare Linux Mint, dopo gli esperimenti delle settimane precedenti con zram e con la compilazione e configurazione del kernel 7.3.
L'obiettivo rimane sempre quello: migliorare reattività ed efficienza senza compromettere la stabilità del sistema.
Non ho nuovi benchmark da pubblicare e preferisco evitare conclusioni sulle prestazioni che non siano supportate da misurazioni ripetibili.
Ho avuto anche un problema decisamente più tradizionale: il computer perdeva le impostazioni del BIOS e richiedeva un intervento all'avvio.
Alla fine la soluzione è stata sostituire correttamente la batteria CMOS.
Una riparazione banale, ma efficace.
Ho poi continuato a sperimentare con alcune distribuzioni Linux e con Ventoy, incontrando qualche difficoltà nel riconoscimento dei dispositivi USB durante l'avvio delle immagini ISO.
Mi ha colpito anche la velocità di download dei pacchetti di Arch Linux attraverso pacman, sensibilmente migliore di quella che sperimento abitualmente con Debian e Ubuntu.
Sono osservazioni pratiche, non confronti scientifici, ma fanno parte del piacere di continuare a provare sistemi differenti.
Il Raspberry che ha cambiato mestiere
Il piccolo rakgateway continua a funzionare, anche se ormai svolge un lavoro completamente diverso rispetto al progetto originale.
Dopo aver chiuso LoRa-One e rimosso la scheda LoRa, utilizzo il Raspberry come nodo Tor, per ospitare il sito dei Cantinari e per mantenere Hermes collegato a Telegram.
È uno degli aspetti che apprezzo maggiormente dell'hardware aperto: quando termina un progetto, la macchina può essere riutilizzata per qualcosa di completamente diverso.
Questa settimana ho anche dedicato un po' di attenzione alla sicurezza dei piccoli server Linux che mantengo in funzione, cercando soluzioni semplici per controllarne meglio gli accessi.
Tech News Daily: una settimana completa
Continua regolarmente anche Tech News Daily.
Fra il 22 e il 28 ottobre sono state pubblicate sette edizioni, con i relativi commit nel repository GitHub.
Ho insistito soprattutto su un dettaglio della navigazione: in fondo alla pagina principale voglio trovare soltanto i collegamenti alle cinque edizioni precedenti, uno per riga.
Sembra una modifica insignificante, ma è proprio il genere di particolare che rende più piacevole utilizzare quotidianamente un sito.
Il notiziario continua a concentrarsi su Linux, open source, intelligenza artificiale, nuovi programmi e sicurezza.
Fra le fonti rimane particolarmente importante Phoronix, soprattutto per kernel, driver, hardware e prestazioni.
Anche questo progetto è un esempio di utilizzo degli agenti: dalla ricerca delle informazioni fino alla preparazione e alla pubblicazione delle pagine.
RepoRoulette e gli altri esperimenti
Rimane disponibile anche il progetto RepoRoulette, nato per scoprire repository GitHub casuali attraverso un'interfaccia ispirata alla vecchia Chatroulette.
Non è stato uno dei progetti aggiornati questa settimana, ma continua a rappresentare un'idea che mi piace: esplorare software sconosciuto senza partire necessariamente da una ricerca precisa.
Restano inoltre sullo sfondo AIcad e oai-gateway, due progetti ai quali ho dedicato molto tempo nelle settimane precedenti.
AIcad continua a rappresentare il mio esperimento più interessante nel campo della modellazione tridimensionale attraverso il linguaggio naturale.
Il gateway, invece, è il tentativo di costruire un componente leggero che permetta ai miei programmi di comunicare con i modelli AI.
Continuo anche a osservare l'evoluzione della robotica personale, con progetti come Nori A3 e Microduck. Per ora mi interessano soprattutto come possibili piattaforme di sperimentazione, distinguendo le caratteristiche dichiarate dai produttori da quelle effettivamente verificate.
Conclusioni
Questa settimana il lavoro più consistente è stato quello su ai-bar-fm e sulla collaborazione con Mattia.
Su GitHub non risultano nuove release pubblicate nei repository aggiornati, ma ci sono state numerose Pull Request, diversi merge e una quantità considerevole di piccoli interventi sul codice.
La cosa che mi interessa maggiormente è il cambiamento nel processo di sviluppo.
Ho cominciato a programmare quando bisognava scrivere personalmente ogni istruzione. Oggi posso descrivere una modifica, farla implementare a un agente, verificare i test e decidere se integrarla.
Naturalmente non sempre funziona al primo tentativo. Il file manager, con i suoi problemi di mouse, colori e gestione del terminale, ne è un esempio.
Ma è proprio questo il punto: l'agente non sostituisce la necessità di capire cosa si sta facendo.
Permette piuttosto di sperimentare più rapidamente, lasciando a me la scelta di cosa costruire e la responsabilità di verificarne il funzionamento.
E per uno che ha cominciato a programmare in BASIC, vedere un'intelligenza artificiale che prepara una Pull Request su GitHub continua a essere una cosa piuttosto sorprendente.

Nessun commento:
Posta un commento