Negli ultimi mesi si è parlato moltissimo e in molti ambiti di intelligenza artificiale e del caso di ChatGPT, il terzo modello sviluppato da OpenAI della serie GPT (Generative Pre-trained Transformer). Reso pubblico nel novembre 2022, ci ha sorpreso sia per potenza che per potenzialità: dalla naturalezza della conversazione alla scrittura creativa fino ad applicazioni che ci toccano su un piano più professionale come la scrittura in linguaggi di sviluppo, ad esempio Python, HTML, JavaScript e CSS.
È naturale che sorga una domanda: se i chatbot sono in grado di scrivere codice, sostituiranno gli sviluppatori? Spoiler: i developer non possono essere rimpiazzati dall’intelligenza artificiale, ora vi spiegherò perché.
Chatbot e scrittura di codice
Come sappiamo, i chatbot sono software che simulano le conversazioni umane rispondendo a frasi scritte o pronunciate dagli utenti, i quali possono interagire sia tramite dispositivi generali che siti internet. Nel caso specifico, ChatGPT attinge a un enorme archivio di documenti contenenti anche codici di progetto ed è così in grado di generare porzioni di codice in diversi linguaggi e trasformarli da un linguaggio all’altro partendo da istruzioni formulate dall’utente in linguaggio naturale su specifiche implementazioni.
Non si tratta dell’unico strumento di intelligenza artificiale in grado di fare questo. Sono diversi oggi i plug-in a disposizione degli sviluppatori che offrono supporto in fase di implementazione tramite intelligenza artificiale: per esempio, i nostri team in Intesys stanno sperimentando con risultati interessanti l’utilizzo di GitHub Copilot, un’estensione in grado di fornire in tempo reale suggerimenti sulla scrittura di codice nella maggior parte dei linguaggi di programmazione grazie ai milioni di righe di codice archiviati in GitHub.
Tornando quindi al nostro quesito di partenza, questi strumenti di intelligenza artificiale possono “rimpiazzare” gli sviluppatori?
La risposta è no: possono invece semplificare il processo di scrittura del codice.
Semplificare e supportare con l’AI
Come avviene questa semplificazione? Tramite l’automazione dello sviluppo di porzioni di codice ripetitive, non necessariamente complesse: in questi termini, inserendo due righe di codice l’intelligenza artificiale è in grado di offrirti come risposta un codice articolato, probabilmente valido.
… questo “probabilmente” è cruciale: l’AI deve infatti essere utilizzata da chi è già in grado di sviluppare e che quindi sa giudicare se il codice proposto è qualcosa di solido oppure no.
L’intelligenza artificiale è un supporto all’implementazione, non una sostituzione.
Inoltre, anche lo sviluppo (compresa la fase di implementazione) ha un’importante componente di processo creativo: i plug-in sono certamente in grado di creare delle integrazioni, ma sta allo sviluppatore la capacità di descrivere ciò che va integrato e avere la visione del contesto in cui sta implementando il codice.
Grazie all’automazione delle operazioni più semplici e ripetitive, gli sviluppatori hanno modo di concentrare le proprie energie su attività a maggiore valore aggiunto come per esempio:
1. Collaborare e confrontarsi con altri sviluppatori
2. Definire piani strategici per la risoluzione di problemi
3. Ideare soluzioni nuove e creative
4. Valutare quanto una struttura sia user-friendly
5. Migliorare la praticità di un ambiente di sviluppo
Vuoi vedere il nostro approccio in azione su un progetto mobile?
Soft skills che rendono insostituibili gli sviluppatori
Cosa rende alla fine gli sviluppatori unici e non sostituibili? C’è molto di più al di là della competenza dal punto di vista tecnico e delle specializzazioni più verticali.
Ben vengano le competenze tecniche, ma ancora meglio la capacità che si raffina col tempo di andare oltre la singola richiesta, puntando a realizzare ogni volta qualcosa di effettivamente valido e sempre più risolutivo e creativo.
… alla luce di questo, non esiste ancora intelligenza artificiale che regga il confronto con un abile sviluppatore!
Infatti, in Intesys siamo sempre alla ricerca di nuovi talenti per arricchire i nostri team IT!
Articoli correlati
Cosa si aspettano gli sviluppatori dalle aziende?
Approfondiamo i temi che un datore di lavoro deve affrontare per competere sul mercato delle risorse umane.
Come diventare developer? Consigli per il 2024
Scuole, università, ITS, academy online: scopriamo i possibili percorsi per diventare sviluppatori!
Un po’ di chiarezza sul mondo DevOps e SysOps
Approccio DevOps e SysOps: il loro contributo ai risultati aziendali
L’alternanza scuola-lavoro nel mondo IT e i vantaggi per le aziende
Un’opportunità per gli studenti e per le aziende, scopriamo l’alternanza scuola-lavoro: in cosa consiste, gli obiettivi, i vantaggi aziendali e il nostro PCTO con CodyLab!