SlideShare a Scribd company logo
GitHub Copilot:
vediamo chi comanda
Commit University - 25/03/2025
Il contesto è importante
● Frontend Developer @ Claranet
● GitHub Star & Microsoft MVP
● Open Source Maintainer
Leonardo Montini
Quanti sviluppatori ci
sono in sala?
󰢨
󰢧
󰢨
󰢨
󰢧
󰢧
Scrivere codice…
ci piace!
Scrivere codice…
non è il nostro lavoro
Non ci pagano per premere tasti
Il nostro obiettivo è:
● Creare prodotti
● Risolvere problemi reali
● Aiutare il prossimo
● Rendere il mondo un posto migliore
…ma comunque lo facciamo scrivendo codice!
Cosa facciamo quando scriviamo codice?
● Task ripetitivi o noiosi
○ …un’altra API REST
○ …un altro form
○ …un’altra label che “guarda me la faresti di un altro colore per favore?”
● Deadline stringenti
○ “Riesci a farmelo per ieri?”
● Qualcosa di nuovo!
○ Non ricordo la sintassi
○ Vado più piano di quanto vorrei
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Assistente AI alla
programmazione
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Una cosa per volta…
Copilot non è l’unico
Cursor
Copilot
Tabnine
Vercel v0
Windsurf
Bolt.new
Cline
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Il migliore?
Quello che ti torna più
comodo
Dove si posiziona
Copilot?
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Thomas Dohmke
GitHub CEO
Io
GitHub Copilot:vediamo chi comanda - Commit University.pdf
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Quindi, io come lo uso?
Demo Time
● Funzionalità di Copilot
● Interfaccia ed interazione con l’utente
● Importanza del contesto
● Gestione dei prompt
● Scelta dei modelli
…dal mio punto di vista
https://github.com/Balastrong/github-copilot-demos
Quindi chi comanda?
Marzo 2024
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Junior Developer AI
600$/mese
Dai, siamo salvi
GitHub Copilot:vediamo chi comanda - Commit University.pdf
"Probably in 2025, we at Meta [...] are
going to have an AI that can
effectively be a sort of mid-level
engineer [...] that can write code.”
Gennaio 2025
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Vibe Coding
Febbraio 2025
● Delegare tutto il possibile all’AI, possibilmente, tutto
● Come viene scritto il codice è irrilevante, sperando funzioni
● Fiducia totale nell’AI
● Trial and error, prima o poi funzionerà
Vibe Coding
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Project Padawan
Project Padawan
1. Assegna una issue a Copilot direttamente da Github
2. … 🤖
3. “Tieni, ecco la PR pronta per la review”
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Perchè non dovremmo
lasciargli pieno
controllo (e fiducia)?
Seguire le vibes dell’AI
Consegnamo codice senza
comprenderlo
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Seguire le vibes dell’AI
Se l’AI riuscisse a gestire il
90% del lavoro, chi risolve il
restante 10%?
Seguire le vibes dell’AI
Bello per i progetti del
weekend, ma nel mondo
reale ci sono dei requisiti
La responsabilità
comunque è la nostra
“Ah non lo so, questo
l’ha generato l’AI”
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Come validi l’output?
● Test manuali?
● Test automatici scritti dall’AI?
○ Chi li valida?
● AI che fa review all’AI?
Due opzioni:
A) Qualcuno ne capisce qualcosa
B) Ci si fida al 100% dell’AI
Cancellare codice
(generato) nuovo sport
olimpico
Ma ancora stiamo
parlando di codice…
Per un prodotto di successo è necessario:
● Comprendere a fondo i requisiti
● Risolvere i giusti problemi
● Costruire un sistema manutenibile
● Gestire i casi limite e gli errori
● Tenere in considerazione la sicurezza
● … e mille altre cose!
Programmare in
linguaggio naturale!
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Ad oggi, cosa ne penso
degli assistenti AI?
Non possiamo ignorarli
● Vibe coding fa ridere, ma fa anche riflettere
● Il nostro lavoro sta cambiando
● Seguire l’hype è sbagliato, ma tenersi aggiornati è necessario
Mi sento più produttivo
● Automatizzo le cose noiose e ripetitive
● Ho sempre un compagno per fare brainstorming
● Riesco a valutare soluzioni alternative a cui non avevo pensato
Cerco di non abusarne
● Sentirsi produttivo != risultati migliori
● Ottimo per andare veloci, ma anche la qualità conta
● Esperimento: disattivare copilot per un po’
Resta un Copilota
● Decido io che codice committare
● Devo capire tutto quello che viene generato
● Rimango sempre io il responsabile
Per farla breve…
E’ uno strumento.
Grazie!
@Balastrong
Leonardo Montini
Dev Leonardo
● Frontend Developer @ Claranet
● GitHub Star & Microsoft MVP
● Open Source Maintainer
Leonardo Montini
Ad

More Related Content

Similar to GitHub Copilot:vediamo chi comanda - Commit University.pdf (20)

Introduzione html prima parte
Introduzione html prima parteIntroduzione html prima parte
Introduzione html prima parte
donmimi
 
Slide Web Lab
Slide Web LabSlide Web Lab
Slide Web Lab
andreadigrazia
 
Ttg 09 07_2015_debug_vs_2015
Ttg 09 07_2015_debug_vs_2015Ttg 09 07_2015_debug_vs_2015
Ttg 09 07_2015_debug_vs_2015
Piero Sbressa
 
Alice in WordPressLand - "We're all mad here"
Alice in WordPressLand - "We're all mad here"Alice in WordPressLand - "We're all mad here"
Alice in WordPressLand - "We're all mad here"
Nicola Costantino
 
Intelligenza artificiale nel mondo front-end - CodeGen2021
Intelligenza artificiale nel mondo front-end - CodeGen2021Intelligenza artificiale nel mondo front-end - CodeGen2021
Intelligenza artificiale nel mondo front-end - CodeGen2021
Michele Aponte
 
Programmiamo iPhone e iPad (e non solo!) con MonoTouch
Programmiamo iPhone e iPad (e non solo!) con MonoTouchProgrammiamo iPhone e iPad (e non solo!) con MonoTouch
Programmiamo iPhone e iPad (e non solo!) con MonoTouch
Stefano Ottaviani
 
One - L'assistente vocale fai da te
One - L'assistente vocale fai da teOne - L'assistente vocale fai da te
One - L'assistente vocale fai da te
Claudio Cama
 
Coding - intro -
Coding   - intro -Coding   - intro -
Coding - intro -
alexperoni
 
Introduzione a CoderDojo
Introduzione a CoderDojoIntroduzione a CoderDojo
Introduzione a CoderDojo
agnese addone
 
Test Driven Development @ Xe.Net
Test Driven Development @ Xe.NetTest Driven Development @ Xe.Net
Test Driven Development @ Xe.Net
Mauro Servienti
 
Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...
Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...
Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...
Commit University
 
Svilupparty 2017 - Come ho imparato a fare il nomade per inseguire il AAA
Svilupparty 2017 - Come ho imparato a fare il nomade per inseguire il AAASvilupparty 2017 - Come ho imparato a fare il nomade per inseguire il AAA
Svilupparty 2017 - Come ho imparato a fare il nomade per inseguire il AAA
Angelo Theodorou
 
Svilupparty 2017 - Angelo "Encelo" Theodorou
Svilupparty 2017 - Angelo "Encelo" TheodorouSvilupparty 2017 - Angelo "Encelo" Theodorou
Svilupparty 2017 - Angelo "Encelo" Theodorou
Bruno Barbera
 
Siamo tutti bravi con il browser degli altri!
Siamo tutti bravi con il browser degli altri!Siamo tutti bravi con il browser degli altri!
Siamo tutti bravi con il browser degli altri!
Francesco Sciuti
 
Il pensiero Computazionale come risorsa trasversale
Il pensiero Computazionale come risorsa trasversaleIl pensiero Computazionale come risorsa trasversale
Il pensiero Computazionale come risorsa trasversale
Laura De Biaggi
 
Personal kanban
Personal kanbanPersonal kanban
Personal kanban
Gavino Pintus
 
ATDD - Acceptance Test Driven Development
ATDD - Acceptance Test Driven DevelopmentATDD - Acceptance Test Driven Development
ATDD - Acceptance Test Driven Development
Giorgio Marchetti
 
AI Work Revolution - #TDD2023
AI Work Revolution - #TDD2023 AI Work Revolution - #TDD2023
AI Work Revolution - #TDD2023
Francesco Ronchi
 
Personal kanban: diamo i numeri!
Personal kanban: diamo i numeri!Personal kanban: diamo i numeri!
Personal kanban: diamo i numeri!
Marco Bresciani
 
Laboratorio robotica Open Day I.C. Foscolo-Gabelli
Laboratorio robotica Open Day   I.C. Foscolo-GabelliLaboratorio robotica Open Day   I.C. Foscolo-Gabelli
Laboratorio robotica Open Day I.C. Foscolo-Gabelli
MarioPaoletti1
 
Introduzione html prima parte
Introduzione html prima parteIntroduzione html prima parte
Introduzione html prima parte
donmimi
 
Ttg 09 07_2015_debug_vs_2015
Ttg 09 07_2015_debug_vs_2015Ttg 09 07_2015_debug_vs_2015
Ttg 09 07_2015_debug_vs_2015
Piero Sbressa
 
Alice in WordPressLand - "We're all mad here"
Alice in WordPressLand - "We're all mad here"Alice in WordPressLand - "We're all mad here"
Alice in WordPressLand - "We're all mad here"
Nicola Costantino
 
Intelligenza artificiale nel mondo front-end - CodeGen2021
Intelligenza artificiale nel mondo front-end - CodeGen2021Intelligenza artificiale nel mondo front-end - CodeGen2021
Intelligenza artificiale nel mondo front-end - CodeGen2021
Michele Aponte
 
Programmiamo iPhone e iPad (e non solo!) con MonoTouch
Programmiamo iPhone e iPad (e non solo!) con MonoTouchProgrammiamo iPhone e iPad (e non solo!) con MonoTouch
Programmiamo iPhone e iPad (e non solo!) con MonoTouch
Stefano Ottaviani
 
One - L'assistente vocale fai da te
One - L'assistente vocale fai da teOne - L'assistente vocale fai da te
One - L'assistente vocale fai da te
Claudio Cama
 
Coding - intro -
Coding   - intro -Coding   - intro -
Coding - intro -
alexperoni
 
Introduzione a CoderDojo
Introduzione a CoderDojoIntroduzione a CoderDojo
Introduzione a CoderDojo
agnese addone
 
Test Driven Development @ Xe.Net
Test Driven Development @ Xe.NetTest Driven Development @ Xe.Net
Test Driven Development @ Xe.Net
Mauro Servienti
 
Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...
Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...
Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...
Commit University
 
Svilupparty 2017 - Come ho imparato a fare il nomade per inseguire il AAA
Svilupparty 2017 - Come ho imparato a fare il nomade per inseguire il AAASvilupparty 2017 - Come ho imparato a fare il nomade per inseguire il AAA
Svilupparty 2017 - Come ho imparato a fare il nomade per inseguire il AAA
Angelo Theodorou
 
Svilupparty 2017 - Angelo "Encelo" Theodorou
Svilupparty 2017 - Angelo "Encelo" TheodorouSvilupparty 2017 - Angelo "Encelo" Theodorou
Svilupparty 2017 - Angelo "Encelo" Theodorou
Bruno Barbera
 
Siamo tutti bravi con il browser degli altri!
Siamo tutti bravi con il browser degli altri!Siamo tutti bravi con il browser degli altri!
Siamo tutti bravi con il browser degli altri!
Francesco Sciuti
 
Il pensiero Computazionale come risorsa trasversale
Il pensiero Computazionale come risorsa trasversaleIl pensiero Computazionale come risorsa trasversale
Il pensiero Computazionale come risorsa trasversale
Laura De Biaggi
 
ATDD - Acceptance Test Driven Development
ATDD - Acceptance Test Driven DevelopmentATDD - Acceptance Test Driven Development
ATDD - Acceptance Test Driven Development
Giorgio Marchetti
 
AI Work Revolution - #TDD2023
AI Work Revolution - #TDD2023 AI Work Revolution - #TDD2023
AI Work Revolution - #TDD2023
Francesco Ronchi
 
Personal kanban: diamo i numeri!
Personal kanban: diamo i numeri!Personal kanban: diamo i numeri!
Personal kanban: diamo i numeri!
Marco Bresciani
 
Laboratorio robotica Open Day I.C. Foscolo-Gabelli
Laboratorio robotica Open Day   I.C. Foscolo-GabelliLaboratorio robotica Open Day   I.C. Foscolo-Gabelli
Laboratorio robotica Open Day I.C. Foscolo-Gabelli
MarioPaoletti1
 

More from Commit University (20)

Contract Driven Development - Branch 2024.pdf
Contract Driven Development - Branch 2024.pdfContract Driven Development - Branch 2024.pdf
Contract Driven Development - Branch 2024.pdf
Commit University
 
Cybersecurity & AI: Illusioni e Speranze
Cybersecurity & AI: Illusioni e SperanzeCybersecurity & AI: Illusioni e Speranze
Cybersecurity & AI: Illusioni e Speranze
Commit University
 
Migliorare la Developer Experience in un mondo Cloud Native
Migliorare la Developer Experience in un mondo Cloud NativeMigliorare la Developer Experience in un mondo Cloud Native
Migliorare la Developer Experience in un mondo Cloud Native
Commit University
 
Scopri come sfruttare la potenza della Hybrid RAG
Scopri come sfruttare la potenza della Hybrid RAGScopri come sfruttare la potenza della Hybrid RAG
Scopri come sfruttare la potenza della Hybrid RAG
Commit University
 
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Commit University
 
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdfOltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Commit University
 
Alla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAGAlla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAG
Commit University
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Commit University
 
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdfBreaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Commit University
 
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdfAccelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Commit University
 
Slide-10years.pdf
Slide-10years.pdfSlide-10years.pdf
Slide-10years.pdf
Commit University
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Commit University
 
Vue.js slots.pdf
Vue.js slots.pdfVue.js slots.pdf
Vue.js slots.pdf
Commit University
 
Commit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptxCommit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptx
Commit University
 
Sviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PASviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PA
Commit University
 
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Commit University
 
Prisma the ORM that node was waiting for
Prisma the ORM that node was waiting forPrisma the ORM that node was waiting for
Prisma the ORM that node was waiting for
Commit University
 
Decision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit UniversityDecision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit University
Commit University
 
Component Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdfComponent Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdf
Commit University
 
Contract Driven Development - Branch 2024.pdf
Contract Driven Development - Branch 2024.pdfContract Driven Development - Branch 2024.pdf
Contract Driven Development - Branch 2024.pdf
Commit University
 
Cybersecurity & AI: Illusioni e Speranze
Cybersecurity & AI: Illusioni e SperanzeCybersecurity & AI: Illusioni e Speranze
Cybersecurity & AI: Illusioni e Speranze
Commit University
 
Migliorare la Developer Experience in un mondo Cloud Native
Migliorare la Developer Experience in un mondo Cloud NativeMigliorare la Developer Experience in un mondo Cloud Native
Migliorare la Developer Experience in un mondo Cloud Native
Commit University
 
Scopri come sfruttare la potenza della Hybrid RAG
Scopri come sfruttare la potenza della Hybrid RAGScopri come sfruttare la potenza della Hybrid RAG
Scopri come sfruttare la potenza della Hybrid RAG
Commit University
 
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Commit University
 
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdfOltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Commit University
 
Alla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAGAlla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAG
Commit University
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Commit University
 
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdfBreaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Commit University
 
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdfAccelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Commit University
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Commit University
 
Commit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptxCommit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptx
Commit University
 
Sviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PASviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PA
Commit University
 
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Commit University
 
Prisma the ORM that node was waiting for
Prisma the ORM that node was waiting forPrisma the ORM that node was waiting for
Prisma the ORM that node was waiting for
Commit University
 
Decision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit UniversityDecision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit University
Commit University
 
Component Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdfComponent Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdf
Commit University
 
Ad

GitHub Copilot:vediamo chi comanda - Commit University.pdf