2026-09-03
Come l'AI ha cambiato per sempre lo sviluppo software — Costruire il futuro agentico con Andre Baltieri [MVP]
![Come l'AI ha cambiato per sempre lo sviluppo software — Costruire il futuro agentico con Andre Baltieri [MVP]](https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/60f2b3cc2fa57ceb80e5234f6b0c736b.jpg)
L'intelligenza artificiale sta cambiando lo sviluppo software a una velocità che raramente abbiamo visto prima.Gli sviluppatori sono già passati dallo scrivere personalmente ogni riga di codice al lavorare con assistenti AI in grado di generare codice, spiegare sistemi sconosciuti, creare test, eseguire il debug delle applicazioni e automatizzare il lavoro ripetitivo.Secondo Andre Baltieri, Microsoft MVP, questo è solo l'inizio.In questo episodio di M365.FM, Mirko Peters incontra Andre per un approfondimento sulla transizione dallo sviluppo software tradizionale allo sviluppo assistito dall'AI, agli agenti di coding, alle architetture agentiche, a Microsoft Agent Framework, .NET, RAG, al context engineering, alla sicurezza e all'economia dell'AI generativa.
DA .NET NEL 2003 ALL'ERA DELL'AI
Andre ci riporta ai primi tempi di .NET e C#, quando imparare una nuova tecnologia Microsoft significava spesso acquistare una formazione ufficiale e viaggiare in un'altra città.Da allora lo sviluppo software è passato attraverso desktop, web, mobile, cloud, container, microservizi e serverless computing.Andre sostiene che la transizione verso l'AI sia radicalmente diversa. Invece di introdurre semplicemente un'altra piattaforma o un altro framework, l'AI introduce un nuovo modo per le persone di interagire con il software.
ASSISTENTI AI VS. AGENTI DI CODING AI
Esiste una differenza importante tra avere un assistente AI all'interno del proprio IDE e delegare il lavoro a un agente.Un assistente può spiegare il codice, suggerire refactoring, rispondere a domande e aiutare gli sviluppatori a comprendere le proprie applicazioni.Un agente può ricevere un obiettivo, creare un piano, suddividere il lavoro in attività più piccole, utilizzare strumenti, coordinare agenti aggiuntivi e implementare parti significative della soluzione.Andre spiega come questo stia già cambiando il suo flusso di lavoro di sviluppo, con l'AI che ora genera gran parte del codice che in precedenza avrebbe scritto manualmente.
SVILUPPO SOFTWARE GUIDATO DALLE SPECIFICHE
Man mano che gli agenti diventano più capaci, le specifiche assumono un'importanza crescente.Invece di descrivere ogni dettaglio implementativo, gli sviluppatori possono definire requisiti, architettura, vincoli e comportamento atteso, lasciando che gli agenti determinino come completare le varie parti dell'implementazione.Questo sposta l'attenzione dello sviluppatore dal semplice produrre codice alla definizione di cosa debba essere costruito e perché.
MICROSOFT AGENT FRAMEWORK
La conversazione si sposta su Microsoft Agent Framework e sul suo ruolo nel portare funzionalità di AI nelle applicazioni esistenti.Andre spiega come il framework riunisca le funzionalità associate a Semantic Kernel e AutoGen e fornisca agli sviluppatori strumenti per collegare modelli, orchestrare flussi di lavoro, utilizzare MCP, implementare RAG, gestire l'acquisizione dei dati ed esporre le funzionalità applicative all'AI.Per gli sviluppatori .NET, in particolare, questo può ridurre in modo significativo la quantità di codice di integrazione necessario.
PERCHÉ .NET CONTINUA AD AVERE IMPORTANZA NELL'ERA DELL'AI
Python rimane uno dei linguaggi dominanti nello sviluppo di AI, ma Andre sostiene con forza che .NET e C# sono estremamente ben posizionati per le applicazioni AI aziendali..NET continua a evolversi rapidamente, mentre gli strumenti AI di Microsoft offrono sempre più agli sviluppatori C# un accesso nativo alle funzionalità AI moderne.Le organizzazioni con anni di logica di business già implementata in .NET possono quindi avere un vantaggio notevole: non necessariamente devono ricostruire tutto prima di introdurre l'AI.Le funzionalità esistenti possono invece essere esposte selettivamente agli agenti e alle applicazioni basate sull'AI.
DAL SOFTWARE DETERMINISTICO AI SISTEMI AGENTICI
Le applicazioni tradizionali sono in gran parte deterministiche:Se accade X, esegui Y.I sistemi agentici introducono un altro modello:Ecco l'obiettivo. Determina quali azioni sono necessarie per raggiungerlo.Questo rappresenta un cambiamento architetturale significativo.Invece di definire esplicitamente ogni possibile percorso, gli sviluppatori definiscono sempre più spesso obiettivi, strumenti, contesto, permessi, vincoli e confini entro cui l'AI può operare.
I DESIGN PATTERN NON SONO MORTI
Il codice generato dall'AI non elimina decenni di conoscenza dell'ingegneria del software.Codice pulito, manutenibilità, test, architettura e design pattern restano importanti perché l'AI spesso impara a implementare nuove funzionalità esaminando la codebase esistente.Un codice disordinato può quindi generare altro codice disordinato.Gli sviluppatori devono ancora comprendere l'architettura e i principi ingegneristici anche quando un agente AI svolge gran parte dell'implementazione.
IL PROBLEMA DEL SOFTWARE STOCASTICO
Gli sviluppatori tradizionali si aspettano che input identici producano output identici.L'AI generativa è probabilistica.La stessa richiesta può produrre implementazioni, risposte o comportamenti diversi in esecuzioni diverse.Andre discute perché questo richieda agli sviluppatori di ripensare i test e la validazione e perché guardrail solidi diventino sempre più importanti quando le funzionalità AI sono esposte a un grande numero di utenti.
IL CONTEXT ENGINEERING È PIÙ IMPORTANTE DEL PROMPTING
Scegliere l'ultimo modello non è necessariamente la decisione più importante.Andre sostiene che il contesto sia tutto.Gli sviluppatori devono comprendere sia il problema di business sia l'ambiente tecnico abbastanza bene da fornire all'AI le informazioni giuste.Un contesto insufficiente produce risultati deboli.Un contesto eccessivo può sovraccaricare il modello.La sfida è trovare le informazioni che contano davvero.
RAG, DATI E FINESTRA DI CONTESTO
La Retrieval-Augmented Generation diventa particolarmente importante quando le organizzazioni vogliono che i sistemi AI lavorino con la propria conoscenza.Ma costruire un sistema RAG non significa semplicemente inserire documenti in un database vettoriale.I dati devono essere puliti, strutturati, suddivisi in chunk, recuperati e inseriti nel contesto del modello in modo intelligente.Andre condivide un esempio tratto dalla sua piattaforma educativa, dove le videolezioni venivano trascritte e indicizzate in modo che gli utenti potessero cercare concetti e saltare direttamente al punto rilevante del video.
MEMORIA E GESTIONE DEL CONTESTO AI
Le conversazioni AI di lunga durata creano un'altra sfida: la memoria.Man mano che le finestre di contesto si riempiono, le conversazioni devono essere riassunte o compattate.Andre spiega perché gli sviluppatori dovrebbero gestire attivamente questo processo invece di presumere che un sistema AI conservi sempre le informazioni più importanti.A volte la soluzione migliore è sorprendentemente semplice: completare un'attività, chiudere la conversazione e ricominciare con un contesto pulito.Anche le specifiche e i file Markdown possono fornire un contesto persistente di progetto per gli agenti di coding.
SICUREZZA, PERMESSI E PRINCIPIO DEL MINIMO PRIVILEGIO
Dare a un agente AI accesso a strumenti e dati aziendali comporta implicazioni significative in termini di sicurezza.Andre raccomanda di trattare gli agenti secondo principi simili a quelli delle identità umane: chiudere tutto per impostazione predefinita ed esporre solo ciò di cui l'agente ha realmente bisogno.Invece di concedere a un sistema AI accesso illimitato al database, gli sviluppatori dovrebbero esporre funzioni attentamente controllate che restituiscono solo le informazioni necessarie per una determinata attività.Questo diventa particolarmente importante quando gli agenti possono leggere o modificare dati aziendali.
PROMPT INJECTION E GUARDRAIL PER L'AI
La prompt injection crea una nuova superficie di attacco per le applicazioni basate sull'AI.Gli utenti possono manipolare intenzionalmente i prompt, tentare di recuperare informazioni al di fuori del contesto previsto, consumare risorse aziendali o persuadere un sistema AI a eseguire azioni che i suoi progettisti non avevano previsto.La discussione esplora l'importanza delle istruzioni di sistema, delle restrizioni a livello applicativo, delle funzioni controllate, dell'identità, dei permessi e di piattaforme come Azure AI Foundry per stabilire ulteriori confini di sicurezza.
AI FINOPS — NON USARE L'AI GENERATIVA PER TUTTO
Una delle lezioni più pratiche emerse dalla conversazione è che il fatto che l'AI possa svolgere un compito non significa che debba necessariamente svolgerlo.Andre distingue tra carichi di lavoro generativi e deterministici.Se qualcosa deve accadere sempre allo stesso modo, la programmazione tradizionale può essere più veloce, più economica e più affidabile.Fa l'esempio di
Apple Podcasts · Spotify · YouTube · Deezer
How AI Changed Software Development Forever — Building the Agentic Future with Andre Baltieri [MVP] (English)