Torna a tutti gli episodi
Ep.82 - Github copilot, AI, Coding e futuro

Episodio 82

Ep.82 - Github copilot, AI, Coding e futuro

Cosa succede quando lavori? Quanto tempo spendi a scrivere codice ripetitivo? Questa settimana abbiamo parlato di Github Coplit, il nuovo strumento/servizio di suggerimento codice basato sul modello codex di GPT3 che OpenAi anche con i fondi di Microsoft. Scrivi un commento e lui genera il codice pe...

15 luglio 202101:36:06
AIMusic
82

In Riproduzione

Ep.82 - Github copilot, AI, Coding e futuro

0:000:00

Note dell'Episodio

Cosa succede quando lavori? Quanto tempo spendi a scrivere codice ripetitivo? Questa settimana abbiamo parlato di Github Coplit, il nuovo strumento/servizio di suggerimento codice basato sul modello codex di GPT3 che OpenAi anche con i fondi di Microsoft. Scrivi un commento e lui genera il codice per te.Ne abbiamo parlato con Carmine e Alessio, in una chiacchierata che ha toccato diversi punti trai quali etica, futuro, licenze ma anche provato a capire meglio come funziona.Stanno forse Sto arrivando i Cylon colleghi? La nostra professione è finita?## Ricordati di iscriverti al gruppo telegram:https://t.me/gitbar## Supportaci suhttps://www.buymeacoffee.com/gitbarFabrizio Mele ci ha offerto 🍺## Balocchi- https://texaslawreview.org/fair-learning/- https://liamp.substack.com/p/my-gpt-3-blog-got-26-thousand-visitors- https://www.kite.com/## Contatti@brainrepo su twitter o via mail a info@gitbar.it.## CreditiLe sigle sono state prodotte da MondoComputazionaleLe musiche da Blan Kytt - RSPNSweet Lullaby by Agnese ValmaggiaMonkeys Spinning Monkeys by Kevin MacLeod

Trascrizione

Bene e benvenuti su Gitbar.Lo so, lo so, l'audio non è uno dei migliori ma mi trovo in viaggio e questo è il setup migliore che potevo tirar su.Di cosa parliamo oggi? Oggi potremmo parlare di argomenti diversi.Il primo è la rabbia dei miei colleghi della perfida albione dopo la partita di ieri sera.Ma forse non è il caso visto le code review che mi hanno fatto.allora possiamo mettere la cospiracy mode in off e con i miei amici siloni di oggi Alessio e Carmine parlare di github copilot ciao ragazzi come va ciao ciao a tutti ciao tutto a posto e io invece sono col setup a casa che probabilmente è peggiore del tuo quando sei in viaggio.Almeno da te non arriva questo rumore di elicottero in atterraggio del mio Mac che sta fondendo con i 45 gradi di Yamamet.Che mi dite ragazzi? Quali novità avete in questi ultimi giorni? Cosa mi raccontate di bello? fa caldo.Molto molto caldo, come stavamo dicendo anche prima, leggermente fuori onda a Mauro, anche io ho il condizionatore rotto, a me me lo cambiano domani, molto bene, me lo mettono wifi compatibile con Alexa e tutte cose, quindi poi probabilmente mi rilascerà del veleno nel il sonno.Guarda io ti consiglio di riguardare una puntata famosa di Black Mirror, se non ricordo male la Black Mirror, sì, riguardante la domotica e più o meno un po' si avvicina all'argomento di oggi.Devo però prima ricordare che anche Luca ci sarebbe dovuto essere, salvo che trovandosi in spiaggia ci ha chiamato e ha preferito chiudere la chiamata per andarsi fare un tuffo quindi grande invidia nei suoi confronti e allora direi che possiamo iniziare benvenuti su github il podcast dedicato al mondo dei full stack developer i mezzo artigiani mezzo artisti che ogni giorno infilano le mani nel fango per creare nel modo più efficiente possibile quei prodotti digitali che quotidianamente usiamo.Dobbiamo chiudere Skynet.Dov'è il nucleo del sistema? È qui, in questo edificio? Skynet.Il virus ha infettato Skynet.Skynet è il virus! Ecco perché sta andando tutto a pezzi! Skynet ha acquisito l'autocoscienza.Tra un'ora darà inizio a un massiccio attacco nucleare contro il nemico.Quale nemico? Noi! L'umanità! Oggi parliamo di quella cosa che Github ha presentato qualche giorno fa.La definisco cosa in realtà perché ancora una definizione chiara non esiste o almeno io non l'ho trovata.Infatti il 25 giugno Github ha presentato un nuovo tool, chiamiamolo così, che in qualche modo si propone come copilota nella scrittura del codice.Fondamentalmente si tratta di un'estensione per Visual Studio Code che grazie all'intelligenza artificiale, per meglio dire al machine learning, per meglio dire ancora grazie a OpenAI sulla quale è basata riesce a dare dei suggerimenti in qualche modo coerenti col codice che stiamo andando a scrivere e quasi a scrivere il codice per noi.Adesso, questo argomento in qualche modo stappa un vaso di Pandora enorme e di cose da dire ce ne sarebbero tantissime ma quello che io voglio chiedere sia a Alessio che a Carmine è che prima impressione vi ha fatto questo questo robo di GitHub? Vai Carmine ti ce la do subito lo scelto.No allora diciamo in realtà curiosità perché diciamo che esistono già sul mercato da un po' delle estensioni o comunque dei tool che hanno più o meno uno scopo simile, ad esempio c'è Kite, Mac, come quello ce ne sono tanti altri, che promettono che grazie a questa intelligenza artificiale che riesce a dedurre il contesto del codice di fare sostanzialmente un autocomplete che sia più intelligente.Una volta che ho cominciato a vedere i primi video, le prime GIF, insomma, anche quelle ufficiali, dove effettivamente si sfrutta pieno OpenAI e con un commento scritto in un certo modo viene tutto, sia il contesto dell'applicazione, sia il contesto stesso di quel commento viene generato codice, In realtà ho dei sentimenti abbastanza contrastanti.Secondo me può essere un tool come un altro, insomma, che effettivamente ti permette di scrivere meno codice riperitivo e andare un po' meno su Stack Overflow e sulle varie documentazioni.Diciamo, se volessi essere completamente positivo, direi che è un altro strumento per cercare di uscire dall'editor il meno possibile e quindi riuscire a mantenere il focus sul codice senza andare in giro, insomma, su internet, sulle varie documentazioni, o perché no, anche su Stack Overflow.Quindi se la dovessi vedere solo dal punto di vista dell'utilità, secondo me è un grande strumento che può fare la differenza se abbiamo effettivamente dei pezzi di codice che sono ripetitivi.Sono comunque un po' dubbioso su tutta la parte di licenze, telemetri e cose del genere, Insomma, lì secondo me c'è solo da stare a vedere effettivamente quello che succede.Comunque, in questo momento in cui stiamo registrando, stiamo comunque parlando di una versione di Copilot che è una preview, giusto? Quindi nel senso è qualcosa che è in divenire, è disponibile in accesso anticipato, se la vogliamo dire alla Steam maniera, quindi boh, secondo me ci sono più lati oscuri che chiari, però è uno strumento utile, insomma.Secondo voi? - Molto politicamente corretto direi questo messaggio, In realtà io sono qui per sfondare questo muro di Yomerta, che ricopre GitHub Copilot in vari modi.Vediamo se me li ricordo tutti quanti, perché mentre parlavi mi sono preso degli appunti mentali, solo che io in questo momento sono tipo una vittima dell'Alzheimer, perché c'ho avuto una giornata veramente possente.Tra l'altro ho fatto colazione con Luciano Mammino, che saluto.In realtà, allora, come funziona GitHub Copilot? Ci abbiamo varie tematiche da eviscerare.Diciamo, lui si prende un dataset immenso, ci fa gpt3 sopra, e poi praticamente ti spara quello che lui ritiene essere il codice di cui tu hai bisogno in quel momento.Questa cosa, inizio con le note positive, questa cosa probabilmente può essere fatta se stai scrivendo l'applicazione Cina React che fa due cose con due bottoni perché secondo me, probabilmente in casi di domini più complessi, interazioni più complesse e altro tipo di cose molto più complesse il ruolo del programmatore non è solo quello di scrivere il codice, scrivere la funzioncina, chiamare la funzioncina, ma è quello di andare a modellare un dominio.Io purtroppo su sta cosa devo fare il parrocone tipo Sgarbi, quindi me perdonerete.E mi dispiace, perché di solito quando ascolto le persone, questi parecchi così cattedratici, mi stanno veramente antipatici.però effettivamente il lavoro del programmatore, come dicono spesso tanti amici miei, "Coding is the easiest part of the job".In realtà, quando noi andiamo a scrivere un'applicazione, quello che andiamo a fare è districare una matassa fatta di tante cose, quasi squarciare il velo di maia nei confronti della complessità del dominio applicativo a cui ci andiamo ad approcciare.Questa cosa qua, GitHub Copilot, non consente di farla perché non è un tool che ti fa da copilota nel design di un'applicazione, ma è un tool che ti fa da copilota nel tattico, nel trovare qualche risposta intrigante, anziché prendere la vostra cover flow.In questo senso, come abbiamo detto anche prima di andare in onda, e ve la rubo perché tanto lo penso pure io, è una versione interessante di un IntelliSense evoluto.Il problema, e qua sparo veramente la bold opinion, è che io l'IntelliSense non lo uso.Vabbè, vengo preso sempre in giro dai miei colleghi perché io programmo in un modo molto particolare che è Vim senza autocomplete di nessun tipo a parte il plugin deoplete per gli affezionati che lo conoscono che praticamente fa solo autocomplete sulle keyword dentro lo stesso file non è che fa nient'altro questo perché a me non piace ridurre il mio carico cognitivo quando io programmo ma mi piace avere sotto controllo bene tutto quello che sto facendo ci sono chiaramente casi in cui questo non è possibile e secondo me Copilot in quei casi dà il meglio di sé.Il problema è che allo stesso tempo, e qua finisco perché se no la puntata diventa dei due anni, secondo me GPT3 può funzionare molto meglio di così quindi sicuramente vedremo tra poco qualche sicuro miglioramento.Secondo me hai espresso insomma anche quello che avrei potuto dire io prima in una maniera meno prolissa.Cioè alla fine è un tool secondo me che ti aiuta sì nell'applicazione piccolina, ma ti aiuta anche in quei casi in cui devi fare scaffolding, proprio di cose.Cioè quindi, non lo so, fare il setup della test suite o il setup di una determinata libreria ed è effettivamente un sostituto del copia e incolla dalla documentazione o da sacco per flonzo, ma anch'io sono convinto che non sia il sostituto di un programmatore o di qualunque mente pensante.Diciamo, a me quello che scorcia più di tutto è il fatto che comunque in questo momento qui, ovviamente sta P è una scelta fatta anche comunque per spingere verso quella piattaforma lì è disponibile solo su Visual Studio Code, se non erro.Quindi diciamo ti taglia comunque fuori tutta quella parte di persone che non usano Visual Studio Code o che comunque magari non lo sostituirebbero con il loro editor oppure idee di fiducia.Io conosco tante persone che fanno Java, che fanno Scala, che fanno Kotlin e non rinuncierebbero per niente al mondo ad un'idee come intelligente.Io in realtà ho la preview da 4 o 5 giorni, adesso non ricordo quanto l'ho usato.Da con prove alla hello world come hanno fatto tutti i commentatori e poi da oggi tutta la giornata l'ho utilizzato su una codebase abbastanza grossa e abbastanza seria e devo dire che sono d'accordo con voi sul fatto che possa essere interpretato come un tool che in qualche modo affianca lo sviluppatore né più né meno di come fa IntelliSense un po' più evoluto perché in realtà va a cercare dentro una base dati che va a cercare sbagliato, ti propone delle soluzioni calcolate a partire da una base dati ben più grande che dovrebbe utilizzare da quello che si dice in giro tutti i repository pubblici di GitHub, su questo ci ritorniamo poi, e le risposte di Stack Overflow.Adesso io non ho trovato una conferma per quanto riguarda le risposte di Stack Overflow, però quasi tutti i commentatori le citano.Di lì mi viene da pensare che essendo Stack Overflow stata acquisita qualche tempo fa, abbastanza di recente, da Prosus, non so se la conoscete, è un fondo, una corporation che tra gli altri ha Tencent, ha Code Academy, è una corporation sudamericana che ha acquisito Stack Overflow per 1.5 miliardi di dollari.Quello che viene da pensare è che abbia subito fatto cash out permettendo a OpenAI di utilizzare quei dati per il training, per la creazione del modello che viene chiamato Codex, che è un modello fatto apposta per ragionare sul codice sorgente che è alla base di GitHub Copilot.La mia domanda è una, io lo sto provando oggi, ripeto, l'ho usato pesantemente di cui mi viene da ricollegarmi a quello che Luciano Mammino nel suo libro scriveva riguardo le librerie Node.js, una particolarità delle librerie di NPM che stanno su NPM, Node.js è sbagliato, JavaScript, una particolarità delle librerie JavaScript che stanno su NPM è la superficie abbastanza piccola, quindi vanno a risolvere una piccola cosa e c'è libreria per tutto.Quanto secondo voi GitHub Copilot può sostituire l'utilizzo di queste librerie di terze parti con un copy paste evoluto? È un'ottima domanda.Secondo me, fammi pensare, secondo me può sostituire cose tipo l'Fpad.Infatti pensavo proprio a quello.Esatto, quello è proprio l'esempio classico, c'è il Fpad che è una libreria super semplice che è stata abbastanza chiacchierata per vari fatti legati al fatto che hanno fatto un publish del del pacchetto in un'epoca in cui NPM non era per niente resiliente rispetto all'unpublish dei pacchetti e quindi è fallita la CIAI de Mezzo Mondo e siamo stati tutti praticamente un giorno in ferie.Secondo me in quei casi può sostituire il leftpad de turno perché fai un commento e ci scriviamo una funzione che ne va dai caratteri 4 a sinistra e probabilmente questa cosa la fa.Altri tipi di risoluzione dei problemi? Forse sì, perché non lo so, secondo me là entriamo più nel campo dell'inconoscibile, per quello che so adesso.e forse Carmine ha una risposta più precisa su altri tipi di cose tipo reverse alberi binari? No, no, allora secondo me ecco può essere un sostituto sì, però nel senso come ho detto più volte io sono un fan delle dipendenze, insomma se c'è qualcosa che non posso, che non devo scrivere posso affidarmi ad una libreria ben scritta con la community dietro che è seguita da migliaia di persone e soddisfa il mio caso d'uso, sono comunque per quella via lì.Quindi anche da questo punto di vista sì, probabilmente per le FtPad sì, però a questo punto non vorrei che potesse diventare anche, diciamo, un "ok, lo faccio scrivere a Copilot e non metto una dipendenza" quindi mi perdo gli aggiornamenti, mi perdo le nuove feature o queste cose così, anche perché comunque chi me lo scrive Copilot nel codice, siamo comunque d'accordo, ma diventa comunque un pezzo di codice che devo manutenere io.Se poi quel pezzo di codice è incidentalmente molto simile a quello della libreria che sto cercando di non portarmi dentro, boh, probabilmente un po' meno utile.Rispetto a quella cosa invece che dicevi tu prima, Sì, secondo me può dare effettivamente un bel boost nelle code interview, diciamo, nello scalare la classifica di che rank o anche banalmente per prepararsi ad un certo tipo di interview.Avere comunque uno strumento che ti può assistere nella scrittura del codice e con cui puoi dialogare in una maniera più o meno umana probabilmente ti può aiutare molto nella risoluzione di quei problemi più o meno standard per prepararti ad un interview.Certo, poi, effettivamente, probabilmente, se uno è abbastanza furbo, può anche essere utilizzata per, diciamo, barare in interview, però, diciamo, io sono abbastanza combattuto Perché è uno strumento che mi piace, ma non voglio utilizzare.Ma non perché Skynet poi prende il mio codice e fa chissà che cosa.Però nel senso, io personalmente prima di aggiungere un tool alla mia cintura, ci penso molto bene.e un tool del genere può far veramente diventare addicted, insomma.Quindi è qualcosa che, diciamo, nel mio flusso di lavoro, che voglio che sia quanto più minimale possibile, vorrei cercare di tenere fuori, insomma.Io non so se questo qui è un sentimento, diciamo, solo mio, ma aggiungere comunque un tool che è così tanto potente e che mi può rendere in un certo modo dipendente, non lo so, c'ho un po' di dubbi sul fatto, insomma, se debba effettivamente rientrare tra i miei tool di tutti i giorni.Voi che dite? Guarda, io credo che...anzi, io sono pienamente d'accordo con quello che ha detto Alessio all'inizio riguardo al nostro ruolo, che fondamentalmente la scrittura del codice è una parte marginale e terminale del nostro processo creativo.Quindi alla fin dei conti mi chiedo, in realtà non ho una risposta, se quello che stiamo vedendo oggi è la naturale evoluzione degli strumenti e quindi anche dei nostri ruoli che in qualche modo si stanno spogliando di tutte le attività accessorie, oppure è la marginalizzazione di quello che andiamo a fare.Cioè la mia domanda è quando inizia il processo creativo nel nostro lavoro e quale parte del nostro processo vale la pena tutelare? Lo scrivere il codice vale la pena tutelare? Secondo me sì fino al punto, allora diciamo io sono d'accordo che la parte più importante del nostro lavoro e che non può comunque essere sostituita da uno strumento del genere in questo momento qui, sia tutta la parte di modellazione del dominio, di raccolta dei requisiti di progettazione.Quindi quella parte lì no.Anche se comunque avere un bel copilot che mi disegna i diagrammi, quello sarebbe uno strumento che userei tantissimo.Non so voi, ma io ho proprio questa avversione per tutti gli strumenti di visual diagram che esistono, che sia draw, che sia mirror, che sia qualunque cosa, io perdo delle ore spostare quelle freccettine da un ancolo all'altro.Quindi se ci fosse una cosa del genere sarei veramente contento.Però ecco, diciamo, secondo me scrivere il codice è la parte finale di tutto il processo creativo e di engineering che c'è prima.A me una cosa che mi piace dire spesso è che magari si fa progettazione e discussione di un algoritmo per giorni interi o per settimane ed è bello vedere poi che quel complessissimo sistema di cui abbiamo parlato, una volta che lo andiamo a scrivere è 200 righe di codice.Quindi nel senso il Il codice non è sicuramente la parte più importante, però secondo me è una parte da non dover sottolotare.Il mio diventare addicted allo strumento era semplicemente che ho scritto questo commento, copilot, mi dice "sì, ok, è questa qui la soluzione", più o meno funziona, un po' così da martello, però magari mi sto ritrovando questo codice che non è performante, mi sto ritrovando questo codice che ho adattato per il puro gusto di non scrivere più codice perché mi l'ha detto Copilot.Quindi, secondo me, ben venga uno strumento del genere, ma non deve farci credere che la soluzione che ci sta dando sia necessariamente la migliore possibile quella che fa al caso nostro.Finché magari ci approcciamo a questa cosa qui con la ricerca su internet, su cover flow con le varie community, c'è un processo di ricerca e di cernita di queste soluzioni un po' più consapevole.Il fatto comunque di scrivere un commento e avere la possibilità di schippare un pezzo di codice che rende quel processo secondo me un po' meno consapevole, ma almeno questa è la mia sensazione.Guarda Carmine, io sono un paio di giorni che ci gioco ed ho fatto diversi esperimenti.Ho iniziato con "fammi un Halo World", quindi le cose più basic del mondo e me lo faceva bene, poi ho iniziato con copiare qualche testo di stupidi esercizi in JavaScript e quelli me li risolveva senza troppa complessità.Ho iniziato a fare delle query SQL giusto per provare su più linguaggi e ho visto che quando si andavano a iniettare degli elementi di dominio nel ragionamento, io lo dico con le mie parole, Copilot entrava in bolla e iniziava dei loop, alcune schermate ve le ho condivise anche nel gruppo, entrava in dei loop senza condizione di uscita, cioè ripeteva 70 volte la stessa cosa, quindi in realtà quelli sono i limiti.Da qui mi sento di dire che oggi copilot non è altro che un copy and paste avanzato che tiene conto del contesto, ti sostituisce le variabili e fa poco di più.Ti può servire per non scriverti a mano una espressione regolare salvo poi che quando la descrizione dell'espressione regolare si complica ti scrive una mondezza che non funziona.Quindi la cosa a me piace nel senso che poi io per esempio l'ho usato tanto per la generazione dei test, Copilot ha capito come in quella codebase andavano scritti i test di quel controller in particolare, quindi boilerplate come dicevi tu Carmina appunto e li ha scritti con quella struttura sostituendo i nomi alle variabili e facendola anche abbastanza bene quindi con una rilettura per farlo funzionare perché io credo su 7 casi su 10 il codice che mi ha prodotto non funzionava out of the box, però con una riaggiustatina e una rilettura necessaria appunto per farlo funzionare la cosa è andata, cioè mi ha ridotto di brutto i tempi specie nella scrivere del codice ripetitivo e quindi questa cosa mi ha gasato e sono preso benissimo da Copilot.C'è da dire però che sono d'accordo anche sul fatto che questo strumento una volta che lo metti nella tua cintura degli attrezzi rischia di diventare uno strumento necessario.Io mi chiedo però, allo stesso modo, quanti sviluppatori che usano Visual Studio Code con tutti i plugin del caso oggi passerebbero a un altro editor senza atroci sofferenze.E quindi mi dico, il problema è davvero lo strumento o il contesto? Secondo me il vero problema è il contesto, cioè la presenza di uno strumento senza un'alternativa.OpenAI, il cui nome è, come dicevamo nel fuorionda, tra i più furvianti del mondo è nata come una no profit e si è velocemente trasformata in una profit cap company no? E quindi Open è rimasto, non dico quello che ho detto fuori onda, ma Open è rimasto solo come un bel fiocchetto da mettere sopra.Microsoft ha investito nello sviluppo di GPT-3, adesso non ricordo qualcosa tipo un miliardo di dollari è normale che Microsoft non faccia beneficenza e non crei Visual Studio Code, non acquisti GitHub per il bene degli sviluppatori perché siamo tutti degli animaletti pucciosi e Microsoft ci ama per questo.No, Microsoft è una società che fa del profito.Ecco, sul fatto che ci sia una sola possibilità di questo strumento, sul fatto che ci sia una sola entità a detenere uno strumento che è così utile, che è così game changer, che in qualche modo evolve il nostro modo di lavorare, è questo forse quello su cui dobbiamo ragionare? Cosa ne dite voi? Io sono super d'accordo, cioè il fatto che comunque ci sia questo tipo di tool in realtà libera tempo a noi per pensare a magari altre questioni architetturali e sicuramente pensare a questo tipo di tool in maniera super entusiastica, riguardo scrivere il codice più in fretta perché bisogna consegnare il progettino, secondo me è un sintomo di un contesto che non è esattamente quello per cui l'informatica è disegnata e un contesto virtuoso in cui un prodotto evolve da sé.Secondo me, io sono molto eccitato in realtà su questa cosa e cioè il fatto che Copilot abbia scritto un test che tu poi hai che qualche pack ha fatto andare, secondo me è finissimo.Secondo me quello è il tipo sicuramente di boilerplate di cui un ingegnere produttivo necessita.Dall'altra parte, il fronte su cui secondo me vedremo le più grosse migliorie tra un bel po' di tempo è il fatto che in realtà il miglior compagno dei pair non è quello che scrive il codice al posto tuo ma è quello che te tana i buggy o le stupidaggini quando tu scrivi il codice per cui magari un tool che se scannerizza la codebase mentre scrivi e ti dice "guarda, ho trovato questo ciclo for" l'hai fatto altre duciotto volte A me personalmente risulta un macello più utile e su questo, se qualcuno alza il sopracciglio mentre parlo di queste cose, il problema è che il campo su cui vengono fatti questi progressi non è quello di GitHub Copilot, ma in realtà esistono dei compilatori di alcuni linguaggi che tannano questo tipo di cose, in particolare alcuni linter, se configurati in maniera aggressiva, fanno delle cose che personalmente le ha avuto allucinanti molto più di Govilot.Mi riferisco in particolare a RustC che fa delle cose di die painting che io non ritenevo proprio possibili e che come ho detto scherzando a Mauro poco tempo fa, io ho detto "secondo me una cosa come Copilot diventerà utile nel momento in cui le macchine avranno l'autocoscienza" perché a quel punto la macchina ha tutto un altro grado di approccio ai problemi e questo è una questione più di intelligenza artificiale che di altro.e invece i compilatori fanno un altro, hanno proprio un altro tipo di approccio a queste cose qua, in particolare, dicevo, RustC fa delle cose type painting clamorose, e in generale sulla sintassi, sul borrow checker, se approfondite Rust, controllate che cos'è il borrow checker, comunque è una cosa relativa al memory model, e oggi sono insopportabile come fate a fare questo podcast con me dentro.Comunque praticamente l'altra cosa Cargo Clippy è uno dei link che la community ha scritto per Rasta.È una cosa allucinante, tanto è che io sul mio codice l'ho dovuto disattivare perché mi danava troppe cose rispetto a quelle che io volevo danare.Ho visto che Carmine si smutava.No, no, volevo dire che sono assolutamente d'accordo, mi fa ricordare insomma anche tutta la suite di linting, di code quality che c'è in Go, o anche semplicemente Go Lang sia il lint che è un aggregatore, insomma, di vari lint e di varie regole di linting che fa veramente delle cose che sono pazzesche e sì apprezzo di più un copilota del genere rispetto magari ad una cosa come copilot.No, secondo me, diciamo, la frontiera di questa cosa, diciamo, è riuscire ad automatizzare completamente tutte le parti ripetitive e che portano poco valore del nostro lavoro.un po' insomma come si fa sulla parte infrastrutturale, ovviamente lì non c'è l'intelligenza artificiale di mezzo, sono tutti processi diversi, ma se dovessi pensare ora a deploiare la mia applicazione qualunque a mano sul server con la unit di Systemd, con un capistrano, con lo script, diciamo, è una cosa che difficilmente riuscirei ad accettare, visto comunque il grado di automazione possibile.Ecco, se riuscissimo ad arrivare ad un'automazione simile per tutte quelle task ripetitive e diciamo anche error prone, no? Ad esempio, se andiamo a riprendere l'esempio che ha fatto prima Mauro sul test, io vi posso garantire che a fare il setup delle suite o a risettare i mock tra le varie esecuzioni dei test eccetera eccetera comunque queste tasche sono ripetitive sono le cose che ripeto di più, appunto, perché sbaglio, perché sono error prone, perché è una grande rottura di palle farlo.Quindi avere uno strumento e una pipeline di automazione che sia in grado di farlo con un certo livello di confidenza, sono assolutamente d'accordo.Ma a questo punto vi chiedo qual è il livello di confidenza e di accuratezza che per voi è accettabile da una soluzione del genere? Cioè nel senso qual è il grado di sicurezza con la quale voi potreste dire ok questa roba qui che è pallosa che è ripetitiva che è automatizzabile mi fido a tal punto da farla gestire tutta uno strumento come copilot in autonomia ammesso che sia possibile ammesso che sarà possibile.Guarda Carmine dalla mia esperienza il mio livello di confidenza è prossimo allo zero.Perché? Perché il training che Copilot ha fatto, l'ha fatto su codice scritto bene e su codice scritto male.Gli esempi proposti da Copilot per alcune delle prove che ho fatto erano molti dei 10 esempi, perché Copilot quando tu scrivi un commento e fai generare volendo ti genera 10 proposte.Buona parte di questo codice generato era spazzatura, scritto palesemente male con degli errori.Questo perché in realtà Copilot è stato trainato su una codebase non scritta bene, ma su una codebase grande.Ecco perché in realtà Copilot da questo punto di vista potrà difficilmente essere autonomo, perché dov'è la discriminante del codice scritto bene? Come fa Copilot a capire che il codice è scritto bene così e non col A? Quindi secondo me, da quello che ho visto io, la confidenza verso questo pezzo di codice e questi pezzi di codice è prossimo allo zero.È là che entra in gioco il nostro ruolo da altro copilota nel leggere il codice, capire cosa fa e farlo funzionare, correggerlo.Si suppone che il processo di correzione che noi andiamo a fare su questo codice serva per continuare a trainare questi algoritmi in modo da avere un modello sempre più preciso.Dovrebbe convergere verso quella soluzione.Da lì a dire però che oggi quello che ti genera è affidabile ne passa e ne passa tanto.Tanto! Io ho una visione su questo, cioè secondo me tra 20 anni...perché il problema qual è? Tu hai il codice da una parte e il dominio che stai esplorando dall'altra e non è affatto detto chiaramente che il codice generato per un dominio vada bene per un altro dominio, quindi in realtà quello che uno deve fare è andare a matchare tutte le combinazioni lineari di funzione e dominio in modo che per esempio io che lavoro in Prima.it nell'ambito assicurativo ci abbia determinati short hand utili per, che ne so, per tirare fuori una targa da un veicolo, come per dire, no? Una cosa stupida.Quindi in realtà tra 20 anni probabilmente in riunione con i colleghi disegnando una soluzione, quello che succederà è che io guarderò il monitor del mio computer, alzerò gli occhi, guarderò il mio collega Federico, gli dirò "Federico, fermate, perché il copilot mi ha fatto una proposta interessante".Però, questa cosa probabilmente succederà tra un milione di anni, perché nel frattempo il modello dei machine learning deve imparare a risolvere proprio il problema del contesto, come dicevi tu, appena gli hai dato due informazioni di dominio, quella è una tompa appa, probabilmente tra un po' non succederà più, tra un po' un botto di tempo.A questo punto io vi faccio la domanda quella un po' più tricky, ma in base a cosa allora possiamo un giorno valutare se uno strumento come Copilot è affidabile o comunque ci sta dando un suggerimento affidabile e di cui ci possiamo fidare a scatola chiusa.Come facciamo a misurare e a dare comunque una metrica a quella cosa lì? Io comprendo che non è comunque semplice.Alla fine se volessimo far l'ora con il codice scritto magari da noi, scritto da un nostro collega, mettiamo facendo una code review oppure del programming, useremo come metrica, sia il codice che stiamo scrivendo, che stiamo mettendo, più il contesto di cui magari stiamo discutendo.Come possiamo tradurre questa esperienza? Ti stai dimenticando un pezzo al volissimo che faccia fare una grossa risata.Usa Copilot e prova a infilare del codice prodotto da Copilot dentro una PR di cui qualcuno fa raccogliere vivo e ti dì che succede.No, esatto, perché lì possono succedere due cose.O viene quel commento tipo "ma questo pezzo di codice è veramente bellissimo e performante e non ti riconosco".Quindi siamo tutti molto contenti.Oppure può uscire il commento scritto che è questa merda con il forno e il forra che ha scritto l'indiano su questo forum.Questo è Blame Radio.Radio Amatori.Ve lo dico io, Copilot diventerà Charles Manson.Sì, la vittima perfetta di tutte quante cose.Esatto, leggevo proprio oggi un articolo.Com'è che si chiama quell'attore famoso che c'è anche su Narcos, l'attore sudamericano che era in Oman e stato più in galera che sui set.C'è l'Ishin no? Non mi ricordo il nome, vabbè praticamente quest'attore aveva preso sotto il suo braccio protettrice nel carcere dove si trovava Charles Manson che era super bullizzato.Ecco secondo molte code review co-pilot verrebbe talmente tanto bullizzato che uscirebbe il mostro, un po' come l'intelligenza artificiale di Microsoft nazista, avrete sicuramente letto un riguardo che aveva preso una deriva estremista all'ennesima potenza.Vabbè, cazzeggi a parte.Mi chiedo, qualche tempo fa proprio a ridosso dell'uscita di CoPilot Armin Ronacher spero di averlo letto giusto e anche se l'ho letto sbagliato abbiate pietà di me, che era un dipendente di GitHub ha lasciato la corporation per capire chi è questo soggetto è giusto il creatore di Flask il framework Python e ha lasciato GitHub proprio perché riteneva, si può recuperare un suo tweet, strano il comportamento, cioè l'attività che stava facendo GitHub sul codice che custodisce come servizio.Tra l'altro leggendo i termini d'uso di GitHub c'è indicato che GitHub utilizza il codice, quello pubblico e quello meno, per attivare processi di miglioramento dei servizi e dell'esperienza di sviluppo.Adesso non è riportato tal quale, ma il significato è quello.Un'azione da buon legale, devo dire, scritta in modo certosino che però giustifica l'utilizzo di codice pubblico per il training ma, questa è una mia opinione, non esclude anche l'utilizzo del codice privato.D'altro canto la pagina di Copilot, la pagina del sito di Copilot dice che i modelli di machine learning sono trainati dal codice pubblicamente disponibile considerando una licenza che è il Fair Use.Che cos'è il Fair Use? Molti di voi lo sapranno, ma prendendo, vi leggo tal qual è quello che dice Wikipedia, il Fair Use è una disposizione legislativa dell'ordinamento giuridico degli Stati Uniti che regolamenta sotto alcune condizioni la facoltà di utilizzare materiale protetto da copyright per scopi di informazione, critica o insegnamento senza chiedere l'autorizzazione scritta a chi detiene i diritti.Adesso io mi chiedo, è il problema delle licenze? Come lo vedete il il fatto che Github possa utilizzare del codice a prescindere delle licenze utilizzando appunto questo elemento, questa disposizione legislativa che riguarda gli Stati Uniti d'America, quando Github comunque ha un impatto globale e raccoglie codice da tutto il mondo.Secondo me questa cosa verrà più o meno gestita, un po' come c'è anche scritto, insomma, verrà gestita citando il fatto che comunque Copilot genera del codice nuovo, insomma, quindi nel senso alla fine se usa del materiale con una licenza particolare non lo usa tanto per ridistribuirlo, ma comunque per apprendere poi a ridistribuire un prodotto che non so nemmeno se può essere definito come prodotto derivato dal punto di vista legale.Quindi secondo me questa cosa sarà una diatriba che nei prossimi giorni, nei prossimi mesi veremo sicuramente emergere.Lasciando comunque il fatto che se metto del codice open con una certa licenza che prevede determinati obblighi, un po' personalmente mi giggierebbe il cazzo.Se poi passa insomma Copilot, lo leggo, lo interpreto per generare delle soluzioni simili.Quindi, effettivamente non saprei.Dipende dallo scopo della licenza, nel senso che i nostri ascoltatori sicuramente sapranno che c'è differenza tra licenza open e licenza open.Ci sono licenze permissive e licenze meno permissive.permissive sono quelle tipo l'MIT, la BSD e io rilascio il codice sotto queste licenze perché ritengo che insomma sia quello che si confà di più a quello che faccio io di solito però effettivamente c'è senso ogni tanto rinforzare un po' i vincoli e a questo scopo diciamo è nata anche la licenza gpl che è quella della general public license che è definita una licenza virale perché se tu prendi tutto un contenuto rilasciato solo del codice rilasciato sotto licenza gpl chissà dall'altra parte poi è obbligato a rilasciare il codice che si basa sul tuo software sotto licenza GPL.Quindi in realtà non è secondo me un tema banale perché nel momento in cui Copilot produce un'opera derivata di a voglia di Fair Use, se Copilot produce un'opera derivata del tuo codice sorgente sotto GPL, quella roba dovrebbe essere sotto GPL, giuridicamente parlando.Io non lo so se il Fair Use ti salva da una cosa del genere.Quindi, secondo me, la sfida, oltre ad avere un compagno di programming che ti dà i bug, come dicevo prima, è soprattutto in questo momento, più che mai, paradossalmente più che 20 anni fa, a questo punto la tutela legale di quello che facciamo? Tornerà ad essere un tema secondo me sul tavolo? Posso dire una super mega iper gigante bold opinion ma grande grande grande grande.Punto primo, credo che le licenze come dici tu Alessio non siano adeguate a questo momento storico, specie a questo tipo di contesti.Punto secondo, credo che dal momento in cui nelle condizioni di utilizzare...faccio una premessa, ne ho parlato già in diverse altre puntate di una domanda che ho fatto a molti ospiti, come immaginate quali sono i rischi di centralizzare il codice open all'interno di un contenitore che è privato e che è quello, no? Un single point of failure no? Altra cosa le condizioni di utilizzo come dicevo prima dicono che github può accedere in lettura e utilizzare il codice, il tuo codice anche privato per migliorare il servizio.A questo punto mi dico ma raga ma le licenze che noi mettiamo nelle nostre repo non sono forse come quei post che leggevamo su facebook e che dicevano non autorizzo facebook a utilizzare i miei dati personali? Secondo me è un'ottima provocazione al punto che vabbè qua parto proprio con la deriva io ultimamente mi sono letto il neuromante che è un libro che consiglio a tutti quelli che vogliono sapere come va il mondo tra qualche anno.Il problema è che più diventano veloci le nostre forme di comunicazione, le tecnologie che abbiamo a disposizione, più la proprietà intellettuale diventa liquida.Quindi non è più possibile.Adesso con tutte le tecnologie che abbiamo e Disney+ che è uscito sull'onda dei pari Netflix e Amazon Prime che hanno squarciato quella barriera, già alcuni concetti non tanto di proprietà intellettuale quanto di fruizione di contenuti sono stati veramente rivoluzionati in maniera super pesante.secondo me Copilot in questo senso è una spaccatura immensa nella barriera di come noi fino all'altro giorno fruivamo del codice che stesse su GitHub o meno perché poi chiaramente il codice GitHub se lo legge dal database ma nessuno impedisce a Microsoft di scrivere un mega-scriver che si scrive tutto GitHub quindi in realtà la barriera che è stata rotta è stata quella tra come fruivamo del codice sorgente prima e come lo fruiremo tra un po dove in realtà l'utente che fruirà del codice non saremo noi, ma saranno potenzialmente altre macchine però io qua sto facendo un discorso veramente che mi dovete fermare perché se no è finita andiamo a parlare dell'apocalisse tecnologico che sta arrivando.No abbiamo fatto il disclaimer iniziale che mettevamo il conspiracy mode in off.No però credo che comunque il problema che tu hai sollevato cioè la questione che tu hai sollevato allevato tirando in causa Disney+, Netflix, Amazon Prime e quant'altro, ha una differenza di fondo che è la pluralità e che è una cosa che in questo caso e in questo momento storico non si ha, vuoi anche perché quando Microsoft ha investito il suo miliardo di dollari nello sviluppo di GPT-3 li ha investiti con una clausola che gli permetteva l'utilizzo completo dei modelli rispetto ad altre società che invece possono accedere solo alle API quindi intermediate poi dalla corporation open AI.Quindi in realtà ripeto secondo me il vero problema è un problema di antitrust più che di altro e per quanto riguarda le licenze credo che secondo me si debba fare un passo indietro e si debba fare un passo indietro pensando a come si comporta oggi Copilot.Quello che mi è sembrato di vedere poi ma anche da molti tweet è che Copilot si comporti come uno...esiste un bellissimo articolo che definisce l'effetto dello stochastic parrot, io direi come un bambino con una memoria fotografica fortissima.In questo caso il problema non è tanto il fatto che una macchina possa scrapparsi e leggersi tutto, ma vero il vero problema è su quello che la macchina produce cioè se produce un qualcosa di veramente nuovo allora a quel punto secondo me il fair use ha senso nel momento in cui può essere assimilato al modello di apprendimento di uno sviluppatore cioè io ho letto un bellissimo libro sul domain driven design funzionale e inizia a scrivere domain driven design funzionale.L'autore del libro domani mattina non è che viene a chiedermi diritti perché la mia applicazione è scritta così.Magari Copilot cominciasse a scrivere Functional al BBB che sarebbe molto meglio.Esatto, un altro caso è quando in realtà io sono azienda, faccio un algoritmo figo che risolve un problema X, un'altra azienda adesso sto estremizzando, scrive un commento devo risolvere il problema X, l'intelligenza artificiale va a generare un algoritmo uguale, perché no, che risolve lo stesso problema dove in realtà il confine di segreto industriale può sfumarsi.Questo secondo me è il problema e oggi vedendo quello che vedo fondamentalmente, Copilot non è niente di più che un bambino con una forte memoria fotografica, cioè è un copia e incolla, da sta cover flow che capisce grosso modo il contesto della tua applicazione e ti va a sostituire le variabili.Scusate se mi sono un po' riscaldato.Che voglio dire, buttalo via? No, ha valore però in questo caso ha senso attivare un processo di rimmaginazione delle licenze proprio in quest'ottica? Considera che all'epoca già il copyleft fu una cosa allucinantemente disruptive rispetto al mercato del diritto d'autore.Secondo me qua ancora di più ci sono delle tematiche da esplorare in questo senso perché ormai è tutto talmente fluido e talmente indistinguibile.Noi già abbiamo fatto una super fatica a non fabbrevettare i software per cui si scrivevi lo stesso ciclo ford de uno sviluppatore a Kathmandu quello te poteva fa' causa.Secondo me si pone quel tipo di problema solo che ti propongo questa cosa facciamo un'altra puntata in cui invitiamo degli avvocati che ci spiegano come funziona questa cosa perché sono sicuro innanzitutto tutto che Microsoft ci ha pensato perché Microsoft non è Uber che fa "always be hustling" e fa disruption di tutti i taxi di San Francisco poi si prende un miardo di multa e non gli frega niente loro sicuramente ci avranno pensato a qualcosa del genere e in realtà io sarei super interessato a parlare con qualcuno del dipartimento legal di Microsoft perché sicuramente l'avranno super sbagliata questa cosa.Ma sì assolutamente, in realtà loro sventolano la bandiera del Fair Use, anche nel loro sito c'è spiegato proprio precisamente.Io vorrei che un giudice della Corte Suprema mi dicesse sì ok a Fair Use, perché nel senso finché lo sbandierano sul sito ok, però quando vai in corte d'appello è un'altra storia secondo me.Il problema vero secondo me che non te lo dovrebbe dire solo un giudice della Corte Suprema Americana, ma te lo dovrebbe dire i diversi organi giudiziari dei diversi Paesi dove comunque questa disputa può essere fatta.Trasciando l'aspetto legale, che è sicuramente interessante, secondo voi proprio scendendo sul pratico.Copilot è uno strumento che fareste utilizzare al nuovo junior appena entrato nel team che deve farsi le ossa e deve imparare? Assolutamente no perché il junior che si deve fare le ossa non ha ancora, dal mio punto di vista, la capacità di discernere e di capire cosa Copilot sta proponendo.Quindi posso dirla così che è uno strumento per adulti? Invece io vi dirò la seguente cosa, voi sembrate i miei professori di matematica quando vi vietavano di usare la calcolatrice, io adesso so fare gli integrali a mente ma non so ancora fare le divisioni con il resto in colonna, quindi non lo so, è complesso.Secondo me è uno strumento che è evoluto un po', rischia di cambiare in questo senso veramente la dinamica del mondo del coding, non tanto in quanto hard skill, spiccola, ma proprio come viviamo l'ufficio, virtuale o fisico che sia, come ci approcciamo tra di noi come comunità, perché sicuramente è game changer da quel punto di vista.Allora io voglio fare usare Aduno Junior per questo motivo qui, ma anche perché credo che se sei junior e se comunque ti stai approcciando a questo mondo, a questo mestiere da poco o comunque ti stai approcciando ad una nuova tecnologia, ad un nuovo linguaggio, più cose riesci a...cioè più riesci a comprendere di quello che avviene sotto al cofano, più puoi diventare una persona consapevole ed una persona utile per gli altri.nel senso che tu stai scrivendo il controller con il framework MVC che più ti piace e te lo fai scrivere da copilot e vedi magari il tuo collega senior che se lo fa scrivere da copilot ma poi non sai come funziona davvero ma ti limiti comunque al fatto che per aggiungere il tuo goal spicciolo Fartelo fare da co-pilot è abbastanza, secondo me diventi ancora di più un assemblatore.Ecco direi che non è qualcosa che va usato solo da adulti, ma è qualcosa che va usato solo da persone che hanno la consapevolezza di quello che stanno facendo e di quello che stanno chiedendo.Anche perché comunque il copilot non è akinator, no? Che indovina quello che vuoi dire.Quindi alla fine anche per chiedere qualche cosa a copilot, per chiedere un suggerimento devi comunque sapere quello che devi chiedere.Cioè c'è comunque tutto un contesto di fondo e una conoscenza dello strumento, del linguaggio su cui vuoi i suggerimenti che ci deve essere, al mio secondo me.Però qui si rientra in un discorso...Io qua ti dico due cose su questa cosa qua.La prima cosa è che quello dipende dall'atteggiamento della persona e non...cioè una persona a cui tu impedisci di usare Copilot non diventerà in alcun modo più skillata e invece la più skillata o comunque più curiosa e invece la persona curiosa indipendentemente da copilot.Sandra guarda come funziona un controller drills.L'altra cosa che ti dico è quanto sarebbe bello un transpiler da linguaggio naturale a codice.Che funziona? sarà una delle cose che funziona, esatto, e questo probabilmente sarà la sfida dei co-pilot da un po' di tempo.Anzi possiamo dire anche che sarà il sogno di tutti gli studenti universitari, invece di scrivere quegli pseudo linguaggi di turno sulle slide loro professori che assomigliano tanto a Python ma sono più brutti potranno scriverlo in linguaggio nasale.Stai per caso parlando di Jython che viene tuttora insegnato all'università di Roma Torvergata? Che? Non la tagliate, vi prego! Io ho fatto Torvergata, ho dei sentimenti bellissimi verso supermercata però già con memoria.Io invece ho questi ricordi di pseudocodice che formalmente era la stessa cosa, ma è che da un professore all'altro la sintassi cambiava leggermente e quindi era un dover reimparare la sintassi di quel professore per passare l'esame.Qual era il risultato di un professore tanto bravo da pensare un linguaggio ma tanto capra da non sapersi scrivere il compilatore? Non lo detto io.Che grandi, altro che il flavor dell'ISP ragazzi.Ma vogliamo dire che co-pilot noi non sappiamo che cos'è ma potrebbe benissimo essere una macro racket che fa qualcosa che a partire da un commento ci tira fuori il codice.No vabbè ma guarda che secondo me da quello che ho visto dell'utilizzo dei commenti e il codice che ha tirato fuori secondo me è una ricerca avanzata di stackoverflow.Raga niente di più con la possibilità di capire il contesto e di iniettare le variabili cioè questo è come vi l'ho ripetuto due volte ma lo ripeto la terza perché secondo me questo rappresenta cioè è un bambino con una memoria fotografica sviluppatissimo ragazzi io vi devo chiedere un secondo perché devo fare un mia colpa devo ringraziare Fabrizio Mele che due settimane fa ci ha invitato una birra e io non l'ho citato quindi Fabrizio...Ma che davvero? Sì sono una merda! Veramente un pessimo! Fabrizio Mele sei il nostro nuovo dio per questa mezz'ora ma soprattutto ragazzi io vi ricordo sempre che Gitbar accetta donazioni e abbiamo un gruppo telegram su cui Fabrizio Mele è presente quindi ci potrai dire che siamo stati delle merda non citarti prima sei un grande grazie grazie grazie grazie devo leggere il messaggio che ci ha scritto Fabrizio una scoperta recente che mi ha aperto un mondo di conoscenze e mi ha dato modo di entrare in una community eccezionale grazie grazie a te Fabrizio perché non fai sì che durante questa puntata le nostre gole si asciughino.Soprattutto grazie a Mauro per aver schippato la seconda parte del commento piena di bestemmie e insulti agli speaker.No no la colpa è mia e me ne prendo la completa responsabilità.Vi faccio una domanda e la faccio a entrambi però collegandomi con una cosa che ha detto Alessio dicendo appunto che secondo lui Microsoft ha pensato a quasi tutto prima di rilasciare in preview Copilot ma perché non ha pensato a a filtrare in ingresso ste cavolo di chiavi delle API.Mvp, hanno pensato a tutto però poi...Una feature, voi quante volte avete detto "madò che palle non ho la chiave di Twilio" e beh, a prenderlo vai lo! No in realtà ci sono due stranezze, una è questa delle chiavi ma pare sia subito rientrata semplicemente immagino abbiano messo un filtro in uscita visto che esistono dei prodotti commerciali che scannerizzano e riconoscono delle chiavi all'interno dei repository quindi penso che sia stata abbastanza semplice metterci una pezza però la cosa simpatica è un tweet che ho visto io ci ho provato in realtà e non ci sono riuscito dove si andava a generare una about page e poi al ritrozzo si andava a generare la license sopra l'about page e praticamente Copilot generava l'about page e quando provavi a generare la license vedevi che veniva generata una license che non permetteva l'utilizzo senza citazione del pezzo di codice software e qui gli sviluppatori sono tutti incazzati come delle iene e sta cosa diciamo che insomma mi piace immaginare che Microsoft comunque si inizi un processo con le community per ripensare le licenze dai immaginiamola così sono sicuro che lo faranno.Guarda quello che succede sicuramente è che loro fanno un prototipo minimale pur pensando a tutti i problemi del legalize e del sacco di cose però poi in realtà il feedback proprio da società nordamericana loro pensano che il feedback ve lo da il mercato quindi a quel punto chi urla più forte ottiene più voti sulle feature e tutto a posto nel senso adesso si, verrà sicuramente messo in piedi un working group per fare questa cosa qua.Ma voi lo paghereste Copilot? Ah, grossa domanda.Io, figurate, come ho detto nei commenti, nella chattina, perché ogni tanto io scrivo qualche cavolata mentre i grandi parlano, io non uso manco l'intellisence, quindi figurate Copilot, sono veramente un pessimo esempio su queste cose quindi probabilmente personalmente in questo momento no.Io devo dire la verità? Ce l'ho già, lo sto usando nel senso che sì cacchio per molte cose è comodissimo per altre cose fa un po' di rumore.Lo pagherei un prezzo onesto? Secondo me due euro al mese.Ma ma guarda anche 5, basta che non sia quanto una licenza di Oracle, lo pagherei però avrei sempre quell'ansia, in fondo pago l'abbonamento di IntelliJ, avrei sempre quell'ansia di dipendere da uno strumento che non ha alternative nel mercato, è questa cosa che mi fa cagare addosso ed ecco perché mi piacerebbe immaginare una comunità che condivide la potenza di calcolo per creare qualcosa veramente open ma penso che la mia è una mera utopia che copilot sarà una roba tipo google e basta e va bene così.Te lo ricordi Electric Ship? No.Electric Ship era una cosa terribile che che è andata di moda per un periodo all'interno della mia gricca de Hager e praticamente era una cosa tipo boink però molto meno nobile negli intenti praticamente era un generatore di screensaver che praticamente quando il tuo computer andava in pausa usava la potenza computazionale inutilizzata del tuo computer elaborare dei dati messi in cluster con tutti i computer che usavano Electric Sheep.Per cui si generavano sempre nuove pegore, nuovi screensaver.Sì, mi ricordo qualcosa del genere.Io ho comprato una maglietta di Electric Sheep.Vabbè, tu stai sempre 10 passi avanti.Ho comprato una maglietta qualche anno fa e l'ho persa perché ho diventato un po' più abbondante.Te l'hanno rubata dalla cassetta delle poste? Guarda, guarda, veramente non ne parliamo, ormai non mi faccio spedire più niente.No, dobbiamo dirlo ai nostri ascoltatori, ho spedito, ho fatto arrivare la maglietta di Gitbar a Carmine che non è mai arrivata quindi adesso la nuova arriverà un altro indirizzo con la speranza che non gli freghino anche quella.Io mi sto immaginando poi questa persona che va in giro con la maglietta con la mia faccia sopra non sapendo il contesto tra l'altro.Poi ce ne sono otto di quelle magliette."Ma chi cazzo sono questi?" C'è un'immagine di incontrare questa persona magari sulle scale del mio palazzo e faccio "Ciao, sei tu? Sai che quello sono io?" Io ho avuto l'enorme fortuna di avere un gruppo di amici estremamente guasconi che una volta hanno fatto una maglietta con la mia faccia e quindi quando è arrivato la maglietta di Gitbar la sorella della mia ragazza mi ha guardato e mi ha detto "Alessio un'altra maglietta con la tua faccia".Ho visto che siamo già un'ora e venti l'ultima domanda e poi chiudiamo.Credo che comunque ne abbiamo parlato a lungo e secondo me va fatta una puntata sulla parte legal con degli esperti di licenze dove affrontiamo anche questo argomento.me lo annoto e l'andiamo a fare.La mia domanda è copilot e no code movement vedete dei collegamenti? Nel senso strettamente parlando no perché uno è no code e l'altro è code però secondo me come mindset ci siamo e secondo me copilot in quel segmento trova un product fit perfetto perché mentre quando tu fai codice in una realtà established, ad esempio un prodotto che deve essere mantenuto per n anni, mamma mia è terribile quando dico queste cose, quando tu fai queste cose ti preoccupi dell'architettura, del design, di un sacco di cose.Quando tu disegni un mvp all'inizio prendi debito in maniera veramente imbarazzante perché tanto poi dopo ci ritorni.Secondo me in quel senso Copilot ti può aiutare veramente a fare tantissimo scaffolding dei robacce per magari riscrivere e in questo secondo me è un match perfetto con le soluzioni no code, nel senso che magari un pezzo lo fai con una cosa tipo Zapier, una soluzione super no code, magari qualche integrazione riesci a scriverla in maniera stentata con Copilot e ecco qua che anche veramente per un MVP schifoso che macina due lire al giorno, che però ti dà l'idea, il polso di quello che è il mercato a cui ti rivolgi secondo me ecco che veramente sto per dire una cosa che vi farà esplodere la testa ecco che anche il peggiore dei cani diventa un fantastico sitio.CoPilot è l'air table dell'editor.A voglia.Bello! Potremmo anche dire che Co-Pilot is the new video terminalista metal meccanico.Esatto io voglio un Co-Pilot metal meccanico.Bellissimo ragazzi è stata una super super bellissima puntata siamo arrivati però al momento del paese dei balocchi perché qua sono ormai le 7 e un quarto da voi le 8 e un quarto quindi penso che gli stomaci si può dire così penso di sì inizino a gorgogliare e conducono il paese dei balocchi il paese dei balocchi allora sì se non siete nella preview di copilot e avete voglia di nonostante sono prodotti diversi che funziona in una maniera diversa anche come ergonomia.Se volete provare l'ebbrezza di avere nell'editor un autocomplete più, diciamo, più consapevole e che ha dietro di sé un'intelligenza artificiale c'è Kite che è in giro già da un po' ed è non è nient'altro che un autocomplete con dei suggerimenti che tengono conto un po' del contesto e diciamo in linguaggi dove diciamo è più difficile fare un intelligence che sia fatto bene, Ruby, Python o similaria, può veramente fare la differenza.Io vi regalo sta cosa.Allora, io non so se abbiamo parlato più diffusamente anche in altri episodi di GPT3, che è un modello di machine learning allucinante che fa delle cose assurde.Io l'ho approfondito, perché una volta ho letto questo articolo, che vi regalo, che si chiama "Il mio blog scritto con GPT3 ha avuto 26.000 visite in due settimane" 26.000 penso si, perché lo sto traducendo on the fly dall'inglese è allucinante perché questo, con GPT3, ha scritto un blog e il blog è andato pure in prima posizione su Hacker News un sacco di volte senza che nessuno si accorgesse che era scritto da un'intelligenza artificiale.Quindi per carità sul codice c'è tanta strada da fare, ma sulla scrittura insomma, leggere un post di una macchina su un blog e leggere i commenti delle persone che dicono "sì, sì, io mi ci riconosco veramente tanto", è stata un'esperienza che vi auguro di fare, perché adesso vi acchiappo il link e lo mando a Mauro.Eccoci qua.In sottofondo sentite il clicchettio della mia tastiera meccanica che tutti i colleghi mi invidiano e me lo dicono.conosco il feel poi se siete veramente oltre e volete avere la possibilità di non superare il vostro periodo di prova potete prendere una bella tastiera con gli switch blu.Posso dire che la mia tastiera ha gli switch blu.Ah sei della gang che c'è tu.Anche la mia tastiera ce l'ha.Vabbè ragazzi che dire.Ragazzi mi avete, Carmine mi ha soffiato sotto il naso il balocco ma non mi faccio trovare impreparato.In realtà io ho utilizzato anche TAB9 che è un prodotto molto simile ma il mio balocco è un articolo un po' palloso di un'attestata che tratta argomenti prevalentemente di legali è la Texas Law Review è un articolo a firma Lemley e Casey che parla appunto del concetto del fair use nel machine learning ed è un articolo che poi dal quale viene appunto il ragionamento che facevo prima sul fatto che fondamentalmente l'operato di Copilot ha una scure grandissima sopra la testa legata a quello che deciderà poi un giudice giudice americano, giudice che potrà decidere di chiedere un compenso o accreditare la fonte, citare la fonte di ciò che si prende a Copilot, cosa che da un algoritmo di intelligenza artificiale vedo molto difficile, quindi ne decreterà poi la fine del tool, oppure se il giudice decide che non si tratta di Fair Use allora a quel punto annullerebbe la necessità per GitHub e per OpenAI di citare le licenze dei programmatori che hanno scritto appunto i dati utilizzati per il training.Comunque siccome io sono una capra in fatto di argomenti legali nelle note dell'episodio vi metto quest'articolo che approfondisce l'argomento e quindi se ne avete voglia, un bel muro di testo, se ne avete voglia potete buttarci un occhio.Ciao Mauro, ciao a tutti.Allora lascio un messaggio perché sono mare e non ho la possibilità di partecipare e mi dispiace.Mi dispiace non perché abbia chissà che cosa da dire, quale rivelazione da dire, ma anzi proprio perché ho un sacco di dubbi e di domande che mi piacerebbe fare a tutta la squadra, gli ammutinati e perché no anche al gruppo Telegram.Abbiamo un gruppo Telegram è vero? Sì, mi sembra di sì.Allora no, il fatto è che guardando il copilota di Github mi sorgono ancora di più i dubbi sulle applicazioni pratiche del machine learning più in generale di un'intelligenza artificiale magica che chissà fa cosa, proprio perché appunto inizialmente si si pensa che è una cosa figa, che è una cosa che funziona, poi la applichi e vedi quante cose non funzionano, questo copilota ti crea del codice che funziona ma ha bisogno di una controllata, di un'aggiustatina, quando va bene, quando va male ti produce del codice che cosa è successo, mi hai mandato uno screenshot sul gruppo di un codice che generato che Dio ci scampi e se qui noi ce ne accorgiamo perché sappiamo programmare o sapete programmare io me ne tiro fuori e leggiamo un codice che non è che non è corretto alla fine perché a volte non è corretto magari funziona ma funziona su un subset di dati o funziona e non si sa perché allora giustamente si dice "eh ma è un copilota ti dà una mano però l'ultima parola aspetta a te" sì, vero, oggi, però oggi ci sono tanti programmatori o aspiranti programmatori che stanno scrivendo i loro primi codici, il loro piccolo programma da zero e questi programmatori saranno aiutati da questo copilota saranno aiutati o saranno anche loro trainati da questo copilota e poi il loro codice che sarà frutto di un aiuto di questo tool sarà a sua volta dato impasto alla macchina per migliorarsi creando una sorta di cortocircuito.La mia paura è che alla fine verrà costruiremo un'enorme torre di Pisa basata su fondamenta del tutto sbagliate e pian piano si raddrizzerà.La domanda è si raddrizzerà in futuro quindi riuscirà a stare in piedi oppure no? Tanto c'è anche la base di dati su cui si attinge, questa base di dati non è è controllata da nessuno, adesso non so se ha davvero preso tutto il codice pubblico senza discriminazioni, senza niente, quindi codice che è sostanzialmente anche baggato, codice che può non fare quello che promette di fare.Adesso noi ce ne accorgiamo perché diamo una controllata, ma in futuro quando non avremo più gli strumenti per accorgersene cosa succederà e questo vale anche proprio nel machine learning in generale nell'applicazione in tutti i campi come la medicina o come la giurisprudenza in cui si emetteranno diagnosi e nessuno sa perché il medico sì dovrebbe controllare ma con che coraggio un medico andrebbe contro l'opinione dell'intelligenza artificiale che nell'immaginario collettivo non sbaglia.In tutto questo c'è la base di dati che oggi sappiamo non essere corretta, perché tagliamo fuori tante cose, soprattutto per quanto riguarda le donne, abbiamo visto anche il riconoscimento facciale che per le sue determinate etnie non funziona.Siamo a un livello ancora embrionale che però riusciamo ad accorgerci dei problemi che ci sono, ma in futuro? Sì, ho parlato tanto ma va bene così, me ne torno a mare.Ciao a tutti, aspetto le vostre risposte, grazie.Ragazzi, siamo arrivati alla fine anche oggi.Quindi, voi lo usate o non lo usate? Alessia ha detto di no, Carmine? No, no però se ci dovessi fare un MVP a cazzo di cane sì, però mi riservo comunque di ritornarci in futuro anche una volta che esce diciamo da questa versione per review e sono anche curioso di vedere come si evolverà anche commercialmente, perché secondo me lì è la parte più interessante di tutto.Sono d'accordo con te anche perché voglio capire quanto dovrò pagare questa feature.Bene è arrivato il momento di salutarvi e di ridarvi appuntamento alla prossima settimana.La chiacchierata con i miei Cylon compagni di viaggio, in realtà sto rubando una citazione a un famoso podcast digitale che se non seguite mi raccomando facetelo.Detto questo la puntata è arrivata alla fine, io vi ricordo rapidamente i nostri contatti info@gitbar.it via email o @brenrepo su Twitter e poi? Poi c'è il gruppo Telegram, c'è il gruppo Telegram che potete trovare cercando Gitbar nel vostro client Telegram preferito e ci trovate tutti quanti lì per poter fare con noi e poter scoprire veramente una bella community e diciamo nel panorama mostrano non è una cosa da po' non è una cosa scontata.Tra l'altro siccome di voi, insomma di noi scusate, avete già sentito abbastanza insomma parole, pensieri, parole, opere veramente, sul gruppo in realtà Telegram di Gitbar trovate tanti degli ospiti dei precedenti episodi quindi in realtà è anche un'occasione per fargli domande in più per sapere che ne so che pasta gli piace qualsiasi altra caratteristica da fanboy uguale io per esempio sono io sono contentissimo di questa cosa e di rompere le scatole a tutti quanti quindi venite anche voi a rompere le scatole insieme a me.Venghino signori anche perché nel gruppo telegram rimandiamo alla continuazione di questa nostra chiaccherata quindi diciamo che la continueremo a parlare di questo argomento anche perché github bar essendo un bar vive delle opinioni delle persone che lo frequentano quindi è quasi più importante la discussione nel gruppo telegram del nostro episodio siete d'accordo con me? Assolutamente sì sono d'accordo con te a meno che tu che stai ascoltando non sia un avvocato di Microsoft in quel caso ti consiglio di chiamare il mio avvocato perché altrimenti insomma ci sono dei temi insomma però a parte di scherzi no, venite numerosi anche gli avvocati di Microsoft.Detto questo vi ricordo giusto l'ultima cosa, se ascoltate Gitbar con un device Apple mi raccomando aprite l'applicazione podcast, metteteci una bella stellina e una recensione dove scrivete qualunque cosa, bella o brutta, l'importante è che scriviate qualunque cosa perché così saliremo nelle classifiche e potremo in qualche modo arrivare a più ascoltatori possibili.Detto questo ho parlato anche troppo, io ringrazio Alessio e Carmine che sono stati i miei co-pilot per questo episodio e niente vi do appuntamento alla prossima settimana ciao ciao ciao gitbar il circolo dei full stack developer una volta a settimana ci troviamo davanti a due birre e con brinreppo parliamo di linguaggi e tecniche di sviluppo web di metodologie e di strumenti immancabili nella la cassetta degli attrezzi dei Full Stack Dead.