Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-5-copia-3@8x-100-scaled
Tavola-disegno-6@8x-100-scaled
Tavola-disegno-5-copia-3@8x-100-scaled
Tavola-disegno-5-copia-5@8x-100-scaled
Tavola-disegno-5-copia-6@8x-100-scaled
Tavola-disegno-5-copia@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-3@8x-100-scaled
Tavola-disegno-5-copia-7@8x-100-scaled
Tavola-disegno-5-copia-7@8x-100-scaled
previous arrow
next arrow

Tavola-disegno-6@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-5-copia-3@8x-100-scaled
Tavola-disegno-6@8x-100-scaled
Tavola-disegno-5-copia-3@8x-100-scaled
Tavola-disegno-5-copia-5@8x-100-scaled
Tavola-disegno-5-copia-6@8x-100-scaled
Tavola-disegno-5-copia@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-3@8x-100-scaled
Tavola-disegno-5-copia-7@8x-100-scaled
Tavola-disegno-5-copia-7@8x-100-scaled
previous arrow
next arrow

Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-5-copia-3@8x-100-scaled
Tavola-disegno-6@8x-100-scaled
Tavola-disegno-5-copia-3@8x-100-scaled
Tavola-disegno-5-copia-5@8x-100-scaled
Tavola-disegno-5-copia-6@8x-100-scaled
Tavola-disegno-5-copia@8x-100-scaled
Tavola-disegno-5-copia-8@8x-100-scaled
Tavola-disegno-3@8x-100-scaled
Tavola-disegno-5-copia-7@8x-100-scaled
Tavola-disegno-5-copia-7@8x-100-scaled
previous arrow
next arrow

Con ChatGPT il programmatore di computer va in pensione?

da | 15 Feb, 23 | Technology & Science |

La rivoluzione dell’intelligenza artificiale sta avendo un impatto significativo sul mondo del lavoro intellettuale, specialmente con chatGPT. Da un lato, l’IA può automatizzare molte attività e renderle più efficienti, liberando il tempo degli esseri umani per concentrarsi su compiti più impegnativi e più importanti. Dall’altro lato, c’è la preoccupazione che l’IA possa sostituire completamente alcuni lavori umani, creando disoccupazione e cambiamenti nella forza lavoro. Uno di questi è rappresentato dal ruolo del programmatore di computer, messo seriamente a rischio dall’IA. Quali sono gli sviluppi futuri?

L’intelligenza artificiale è la vera rivoluzione

E’ importante notare che l’intelligenza artificiale sta creando nuove opportunità di lavoro, come esperti in intelligenza artificiale, data scientist e analisti di dati. Inoltre, sta aiutando le aziende a migliorare la loro competitività e a innovare i loro processi aziendali. Dal lato della tecnologia elettronica, l’intelligenza artificiale sta giocando un ruolo sempre più importante nei dispositivi elettronici come smartphone, tablet, laptop e assistenti virtuali. Questi dispositivi utilizzano l’IA per comprendere meglio i comandi vocali degli utenti, personalizzare le esperienze dell’utente e offrire funzionalità come la traduzione automatica, la navigazione GPS e la fotocamera con riconoscimento delle immagini. Nel settore automobilistico, l’IA sta diventando un fattore chiave nello sviluppo di veicoli autonomi. Questi veicoli utilizzano l’IA per analizzare i dati sensoriali, comprendere l’ambiente circostante e prendere decisioni autonome sul da farsi. Questo sta aprendo la strada a un futuro in cui i veicoli possono condurre i passeggeri in modo sicuro e senza intervento umano. In entrambi i settori, l’IA sta migliorando l’efficienza, la sicurezza e l’esperienza dell’utente, ma c’è anche la preoccupazione che queste tecnologie possano creare nuove sfide, come la privacy, la sicurezza e l’impatto sulla forza lavoro. I settori di lavoro dove è utilizzata l’intelligenza artificiale aumentano ogni giorno, e ogni ruolo è pienamente coinvolto in questa nuova realtà che non può essere ignorata. Alcuni di essi sono elencati di seguito costituendo, tuttavia, una lista parziale in quanto le reali applicazioni della intelligenza sono molto più numerose:

  • tecnologia dell’informazione: l’IA è utilizzata per creare sistemi di assistenza virtuale, chatbot e sistemi di aiuto potenziale per migliorare l’esperienza utente;
  • healthcare: l’IA sta aiutando a migliorare la diagnosi e il trattamento delle malattie, nonché a identificare nuove terapie;
  • finanza: l’IA è utilizzata per analizzare i dati finanziari, identificare opportunità di investimento e prevenire frodi;
  • e-commerce: l’IA sta aiutando le aziende a personalizzare l’esperienza di acquisto online e a offrire raccomandazioni di acquisto basate sull’analisi dei dati dei clienti;
  • sicurezza: l’IA è utilizzata per analizzare grandi quantità di dati e identificare eventuali minacce, come intrusioni informatiche o attività sospette;
  • manufacturing: l’IA è utilizzata per ottimizzare i processi di produzione, migliorare la qualità e ridurre i costi;
  • trasporti: l’IA è utilizzata per migliorare la pianificazione dei viaggi e la gestione delle flotte di veicoli;
  • agricoltura: l’IA sta aiutando a migliorare la produttività e la sostenibilità delle attività agricole;
  • programmazione di computer: l’IA propone i suoi algoritmi e le sue analisi del software e del firmware, contribuendo a rendere il lavoro del programmatore molto più veloce e preciso.

Questi sono solo alcuni esempi di come l’IA sta cambiando e migliorando i vari settori lavorativi. Il prossimo paragrafo si focalizza proprio sull’ultimo aspetto dell’elenco, ossia quello dal punto di vista della programmazione in un linguaggio di programmazione.

La creazione di un software

In generale, i passaggi fondamentali per realizzare un programma al computer sono i seguenti:

  • analisi dei requisiti: comprendere le esigenze del programma, le funzionalità richieste e i problemi da risolvere;
  • progettazione: progettare la struttura del programma, la sua architettura e la sua interfaccia utente;
  • implementazione: scrivere il codice sorgente del programma, utilizzando un linguaggio di programmazione appropriato;
  • test: eseguire prove di sistema per verificare che il programma funzioni correttamente e che soddisfi i requisiti;
  • debugging: identificare e correggere eventuali bug o problemi presenti nel codice;
  • documentazione: creare la documentazione dettagliata del programma, comprese le istruzioni per l’uso e le spiegazioni sul funzionamento;
  • deployment: distribuire il programma ai clienti o all’utente finale, o renderlo disponibile per il download o l’acquisto;
  • manutenzione: mantenere il programma, correggere eventuali problemi futuri e apportare eventuali modifiche per soddisfare le esigenze future.

Questi sono i passaggi di base per creare un programma al computer, ma il processo esatto può variare a seconda della complessità del programma e della tecnologia utilizzata. Fino a oggi tutte queste mansioni sono state svolte dall’uomo ma ben presto, molto probabilmente, sarà la macchina a occuparsi di tutto ciò. Del resto, pensandoci bene, il fine ultimo della produzione del software è quella di creare un programma al computer, e chi meglio può svolgere tale mansione, se non il computer stesso? Si tratta di fasi abbastanza critiche, per le quali occorre la massima precisione possibile. E il fatto che una macchina è capace di creare un software per un’altra macchina è una realtà sempre più concreta.

Alcuni esempi di programmazione con chatGPT

Come modello di linguaggio evolutivo di intelligenza artificiale, chatGPT ha una conoscenza approfondita di molti linguaggi di programmazione, tra cui:

  • Python
  • JavaM
  • C++
  • JavaScript
  • C#
  • Ruby
  • PHP
  • Swift
  • Go
  • R

Inoltre, esso ha una conoscenza di base di molti altri linguaggi di programmazione ed è in grado di rispondere a domande su concetti di programmazione e su come utilizzare specifici linguaggi. Tuttavia, la sua conoscenza attuale è limitata alla sua formazione e al suo addestramento, per cui esso potrebbe non essere in grado di rispondere a domande molto specifiche o avanzate su alcuni linguaggi. Tutti gli esempi di creazione dei listati sorgenti mostrati nell’articolo sono scaricabili come allegati. Essi sono volutamente semplici e funzionante, sarà poi il lettore a creare i listati più complessi.

Un esempio in HTML

Iniziamo la nostra carrellata di esempi proponendo una semplice pagina HTML nella quale si chiede, a chatGPT, di creare una pagina HTML con un form di immissione per calcolare l’area e il perimetro di un rettangolo, partendo dalla misura della base e dell’altezza. La richiesta è osservabile in figura 1. E’ importante che l’operatore scriva la sua richiesta nel modo più chiaro possibile, come quello che segue:

Write me a simple html page where there is a form that asks for the measurement of the base and height and the page displays the area and perimeter of the rectangle. The background of the page should be light green and the title “Calculate the area and perimeter of a rectangle.” The page should also display a small red rectangle, in html5.

Figura 1: la richiesta a chatGPT di creare una pagina HTML con un form di calcolo

E’ impressionante notare che l’intelligenza artificiale riesca a comprendere perfettamente la richiesta e a creare un codice come da specifiche. Il risultato del listato HTML, testabile con un qualsiasi browser, è visualizzato in figura 2. Con questo metodo, anche un operatore che non conosca affatto il linguaggio HTML può facilmente creare dal nulla una pagina Web.

Figura 2: la pagina HTML creata da chatGPT funziona perfettamente

Un esempio in Python

Quest’altro semplice esempio in linguaggio Python mostra come sia facile farsi aiutare da chatGPT a creare uno script che visualizzi il grafico delle funzioni sin(x)*50, cos(x)*50 e x^2. Relativamente all’ultima funzione, il grafico deve mostrare il punto di minimo. La richiesta deve essere espressa in un formato molto chiaro e completo, come nel testo che segue, e la risposta del sistema, di alta qualità, può essere osservata in figura 3.

ChatGPT please create a script in python to display the graph of sin(x)*50 and cos(x)*50 and x^2. Of the latter show the minimum point.

Oltre a fornire il codice dello script, chatGPT fornisce una esauriente descrizione del listato sorgente e dei vari dettagli utilizzati per la soluzione.

This code uses the numpy library to generate a range of values for x, and the matplotlib library to plot the graphs. The argmin function from numpy is used to find the index of the minimum value in the y_square array, and this value is then used to plot a red dot marking the minimum point of x^2.

Figura 3: chatGPT può scrivere in modo efficace gli script in Python

Un esempio in linguaggio C

L’ultimo esempio riguarda la creazione di un algoritmo, in linguaggio C, che esegua la somma di due matrici, inserite come input. La richiesta, in questo caso, è inoltrata in modo molto semplice con il seguente testo:

ChatGPT please create a C language program that sums two matrices

Come si può osservare in figura 4, chatGPT propone il lungo listato sorgente, compilabile in un computer locale con il comando di console:

gcc example1.c

Con l’esecuzione del programma, il sistema chiede all’utente di inserire le due matrici, elemento per elemento. La somma delle due matrici è visualizzata sullo schermo, in forma tabellare. Questo codice definisce due matrici matriceA e matriceB con ROWS e COLUMNS definite con il valore di 3. La funzione inputMatrix() prende in input una matrice e il numero di righe e colonne e riempie la matrice con i valori inseriti dall’utente. La funzione sumMatrices() prende in ingresso due matrici e calcola la somma delle matrici, memorizzando il risultato in una terza matrice. La funzione printMatrix() prende in ingresso una matrice e ne stampa gli elementi. La funzione principale utilizza queste funzioni per inserire gli elementi delle due matrici, calcolare la somma e stampare le matrici. Anche in questo caso non è stato necessario che l’utente conoscesse alcun fondamento pratico e teorico del linguaggio C.

Figura 4: chatGPT risolve egregiamente il problema della somma di due matrici in linguaggio C.

Conclusioni

E’ difficile prevedere se l’intelligenza artificiale sostituirà completamente i programmatori di computer, ma è molto probabile che cambierà il loro lavoro e le loro competenze. In alcune aree, come la generazione di codice o la risoluzione di problemi semplici, l’IA potrebbe automatizzare parte del lavoro dei programmatori, rendendo il loro lavoro più efficiente. Tuttavia, la capacità di creare software di alta qualità richiede ancora la creatività, la comprensione profonda delle esigenze degli utenti e la capacità di risolvere problemi complessi che solo i programmatori umani possono fornire. In futuro, i programmatori potrebbero lavorare a stretto contatto con l’IA per creare software più avanzati e di alta qualità. Potrebbero anche essere necessarie nuove competenze per sviluppare e utilizzare l’IA, quindi i programmatori potrebbero dover adattarsi a un nuovo tipo di lavoro. In generale, è probabile che l’IA diventi un’importante risorsa per i programmatori e che aiuti a migliorare la qualità e l’efficienza del loro lavoro. Pertanto, la domanda finale da porsi è se in futuro i programmatori di computer saranno aiutati dalla nuova tecnologia o sarà l’ennesimo esempio in cui l’uomo sarà sostituito completamente dalla macchina?

Categorie

Archivi

    ISCRIVITI ALLA NEWSLETTER













    The reCAPTCHA verification period has expired. Please reload the page.


    *Tutti i campi sono obbligatori



    Apri la chat
    1
    Ciao come possiamo aiutarti?
    Ciao come possiamo aiutarti?