Anche quest’anno siamo tornati al DevFest Venezia, un appuntamento ormai fisso per Aton e per molte realtà del territorio.
La parola chiave del DevFest è “collegamento”: un’iniziativa pienamente inserita nel circuito globale delle DevFest, che porta speaker internazionali nella sede dell’Università Ca’ Foscari in terraferma, mantenendo al tempo stesso i piedi ben saldi nel territorio, al servizio degli studenti e delle aziende del Triveneto.
È un collegamento fra Università e aziende, favorito dalla collaborazione tra Google Developers Venezia e Ca’ Foscari: un’occasione per gli studenti di confrontarsi con professionisti e imprese, e per queste ultime di conoscere nuovi talenti, offrendo loro sfide interessanti da risolvere.
Ed è anche un ponte fra studenti, professionisti del territorio e mondo delle conferenze e del public speaking: un palco sufficientemente locale da rappresentare un punto di partenza amichevole, ma al tempo stesso abbastanza internazionale da diventare un’esperienza significativa da aggiungere al proprio curriculum.
Anche noi, qualche anno fa, abbiamo pensato che il nostro modo di lavorare potesse essere una storia interessante da condividere. Quest’anno è stata la volta di Ceren Özgür, che ha presentato il progetto realizzato durante il suo stage in Aton.
Gli stage in Aton nascono intorno a esigenze concrete, circoscritte quanto basta per arrivare a un risultato nel tempo a disposizione, ma di impatto sia per l’interesse dell’argomento, che sulle attività di Aton stessa.
Ceren si è occupata di un tema molto attuale: come mantenere coerenti metodi e architetture quando aumentano i progetti software, le tecnologie utilizzate e il codice, anche per effetto dell’AI. Pensiamo alle pipeline CI/CD, che automatizzano integrazione e distribuzione del software: quali progetti le utilizzano? Dove mancano? Quali strumenti vanno aggiornati? Controllare i repository uno per uno richiederebbe tempo; serviva un modo per raccogliere queste informazioni e valutarle secondo regole comuni.
Una possibilità era scrivere un programma con tutte le verifiche necessarie. Ma al crescere delle regole sarebbe cresciuto anche il codice da mantenere. Ceren ha scelto invece Open Policy Agent (OPA), un motore open source che permette di tenere le regole separate dal codice applicativo. Ha sviluppato uno strumento in Python che raccoglie informazioni dai repository e le sottopone a OPA, che le valuta attraverso policy scritte in Rego. Il risultato è una valutazione del livello di maturità dei progetti, con l’indicazione degli elementi mancanti.
Durante lo speech ha esplorato anche WebAssembly, per eseguire le policy direttamente nelle applicazioni Java senza dover gestire un server separato. È una soluzione originale che parte da regole certe e produce risultati verificabili, senza consumare token: un aspetto interessante proprio mentre il ricorso all’AI cresce in tante attività di sviluppo.
Con una interessante coincidenza, alla fine dell’estate l’importanza di questo tema è esplosa: sia per i nuovi obblighi legislativi sulla sicurezza del software, sia per la concomitante esplosione di problematiche di sicurezza, alcune con risvolti che hanno raggiunto il grande pubblico.
L’anno scorso Ceren era al DevFest fra il pubblico. È lì che ha conosciuto Aton e che è nato il confronto da cui sarebbe partito il suo stage. Quest’anno è tornata sul palco a raccontare ciò che aveva realizzato.
Il DevFest offre anche questa occasione: fermarsi a guardare con un po’ di spirito critico il lavoro di ogni giorno e scoprire, magari, che una soluzione merita di essere condivisa. Trovare il modo di raccontarla agli altri è sempre un esercizio proficuo. Ancora di più quando a farlo è una persona che, fino all’anno prima, era seduta fra il pubblico.
DevFest Venezia è un evento della rete internazionale DevFest che mette in contatto studenti, sviluppatori, aziende e speaker internazionali. Organizzato grazie alla collaborazione tra Google Developers Venezia e Università Ca’ Foscari, favorisce la condivisione di competenze, il networking e l’incontro tra giovani talenti e imprese.
Open Policy Agent (OPA) è un motore open source che permette di definire e applicare regole di controllo separate dal codice applicativo. Attraverso policy scritte in Rego, valuta informazioni provenienti dai progetti software e identifica eventuali elementi mancanti rispetto agli standard stabiliti.
Open Policy Agent esegue controlli basati su regole esplicite e verificabili, senza utilizzare modelli di AI generativa né consumare token. È utile quando le verifiche riguardano requisiti tecnici definiti, come la presenza di pipeline CI/CD o l’adozione di strumenti e standard comuni.
Il controllo può essere automatizzato raccogliendo dati dai repository e valutandoli attraverso policy condivise. Nel progetto presentato da Aton al DevFest Venezia, uno strumento Python interroga i repository e utilizza Open Policy Agent per verificare le regole e individuare gli elementi mancanti.
Open Policy Agent permette di applicare regole uniformi a progetti che utilizzano tecnologie diverse. Separando le policy dal codice applicativo, facilita l’aggiornamento dei controlli e la valutazione della maturità dei progetti, riducendo la necessità di verifiche manuali sui singoli repository.