Programmare nel 2024 serve ancora?

_Tommy_

Utente Attivo
244
144
CPU
Intel i7 12700
Dissipatore
Thermalright Peerless Assassin 120 SE
Scheda Madre
msi MAG B660M Mortar WiFi DDR4
HDD
Samsung 980 Pro 1 TB + SK hynix Platinum P41 1 TB
RAM
Crucial Ballistix Elite 4x8GB, 3600MHz, CL16
GPU
XFX Speedster MERC 319 Radeon RX 7800XT
Audio
DAC/AMP FX-Audio X6 MKII + Beyerdynamic DT 990 Pro 80 Ohms + Altoparlanti Mackie CR3
Monitor
Dell S2719DGF, TN, 27 pollici, QHD, 155Hz, FreeSync
PSU
Cooler Master V850 SFX Gold
Case
Silverstone Alta G1M
Periferiche
Case fans: 1 Silverstone Penetrator da 180mm in immissione, 2 Noctua Redux NF-P12 da 120mm in espulsione; Pasta termica: Arctic Mx-4; Depastificante: Nilox NXA02187 alcol isopropilico; Tastiera: Durgod Taurus K320 TKL, ISO UK, Cherry Brown; Mouse: SteelSeries Rival 3; Tappetino mouse: SteelSeries QcK Heavy; Controller: Xbox One controller; Webcam: Logitech HD C270; Modem: AVM FRITZ!Box 7530; Powerline: AVM FRITZ!Box 510E; UPS: Epyc Nytro 1500VA; Stand casse: Stageek Stand in alluminio
Net
FTTC
OS
Windows 11 Pro
Nel frattempo mi è appena arrivato il libro che volevo per imparare Java (questo), chissà come mi troverò...
Me la son sempre cavata egregiamente in matematica/logica/grammatica, la meticolosità ce l'ho nel sangue da quando ero all'asilo, a lavoro iterizzo/schematizzo buona parte delle procedure con una naturalità estrema (ne ho bisogno sennò sto male con me stesso 😅), ho anche una laurea triennale in ingegneria industriale, per quanto sia diversa dall'ambito informatico almeno ho una base solida in materie scientifiche. Poi qualche settimana fa, in una tranquilla serata fra amici, uno di questi mi ha chiesto "come fai proprio tu a non essere un informatico??", diciamo che tale richiesta l'ho accolta come una sorta di sfida con me stesso. Spero che tutto ciò mi aiuti nello studio di Java, nel caso vi farò sapere più avanti :)
 

GraveKeeper

Utente Èlite
7,058
3,194
CPU
AMD Ryzen 7 3700X
Dissipatore
Enermax LiqMax III ARGB 240 Nero ARGB
Scheda Madre
Asus Tuf Gaming B550-PLUS (WIFI)
HDD
Samsung 970 EVO Plus 500GB NVMe + Crucial MX500 1TB + 2 x WD10EZEX Blue 1TB
RAM
Adata XPG Spectrix 16gb (2x8) 3200Mhz RGB
GPU
Asus NVIDIA GeForce GTX 750ti OC 2GB (in attesa di meglio)
Audio
Behringer U-PHORIA UM2 (chissà, magari un giorno prenderò una Scarlett Solo)
Monitor
LG 27GN800 UltraGear QHD IPS 27" 1ms 144Hz
PSU
ITEK GF 750W 80Gold
Case
NZXT H510i Nero
Periferiche
Studio Monitor Speakers Presonus Eris E3.5, Audio Technica ATH-M30x
OS
Windows 10 Home 64-bit
Almeno per quanto riguarda la versione pubblica di ChatGpt, non la considero in grado di programmare autonomamente.
E' un grande assistente, spesso più veloce di google, spesso con informazioni non facilmente trovabili su google. Sicuramente aiuta molto nella vita per comodità e performance, come anche CoPilot e affini.

Ma più di una volta dice una cosa e ne scrive un'altra, o il codice che scrive necessita di modifiche per funzionare, o non è l'approccio migliore architetturalmente, a volte si perde alcuni piccoli pezzi: insomma, ora come ora fa riflettere ma non mi sembra autonoma, c'è da capire quanto velocemente e come si evolverà, e se si portanno inserire accortezze per controllare i risultati, magari in accoppiata con una seconda IA.

Il punto è che per com'è il modello di intelligenza artificiale, effettua predizioni (in genere corrette) su quello che scrive basandosi sugli esempi, ma in genere viene mantenuto un livello di tollerabilità agli errori negli esempi iniziali per avere un modello più adattabile e generico, anche se èuò sbagliare, piuttosto che un modello estremamente specifico che non è però in grado di spaziare. Poi sui livelli di chatgpt parliamo id modelli molto più copmlessi, ma in ogni caso, per com'è fatta, da sola non è in grado di riconoscere i propri errori, e per una questione di probabilità può perfettamente introdurre errori, insomma non è perfetta.

Poi non sono assolutamente contro la sua invenzione, come ho detto è uno strumento straordinario già così per come è.
Da programmatore spero di poter continuare a lavorare in simbiosi più che essere sostituito, ma la AI non le sviluppo certamente io, e non sono nemmeno certo di quanto sia sensato limitarle, quindi staremo a vedere.

Lasco un divertente esempio recente girato su internet, ma ne è pieno

1710107789738.png
 
Ultima modifica:

faudiio

Nuovo Utente
109
11
CPU
i7 13700K
Dissipatore
Corsair iCUE H150i ELITE CAPELLIX XT
Scheda Madre
ASUS ROG Strix Z790-A Gaming WIFI
RAM
CORSAIR VENGEANCE DDR5 2x32GB 6000MHz
GPU
RTX 4080 MSI Suprim X
Monitor
Dell Alienware DW3423DW
PSU
Corsair RM850 (2021) 80+ GOLD
Case
Corsair iCUE 5000D RGB AIRFLOW
OS
windows 11
Credo la tua sia una delle domande "esistenziali" che ci si pone da tantissimi anni: specializzarsi in questo campo porterà dei frutti o rischio di studiare qualcosa che non sta al passo coi tempi?
Credo che ognuno di noi debba parlare per il proprio campo di competenza: non voglio esprimere giudizi o frasi fatte su cose che non mi competono e per questo ti espongo la mia esperienza: non devo venderti nulla nè convincerti xD

Lavoro da un decennio nella programmazione informatica e sono attualmente ad un livello che definisco decente: sviluppo, coordino, faccio colloqui e corsi di formazione sulle tecnologie che implemento e "mi offro" come technical leader, ossia colui che sa risolvere problemi e se anche non lo ha mai studiato prima ci si mette al volo e lo studia in breve tempo per implementarlo sin da subito.

In questo campo posso darti il mio parere: nell'azienda dove lavoro abbiamo sfruttato tutte le varie AI (microsoft, openai, google..) per arrivare a scriverne una nostra. a cosa serve? toglie lavoro ad altri?
Banalmente serve per l'esecuzione di task che anche un troglodita a cui si fa un corso di 3 settimane saprebbe fare! Boilerplate, documentazione, copia-incolla dal primo tutorial online e task simili che possono essere prodotti con pattern ricorrenti (trova la frase, o il pezzo di codice che fa questo e scrivi di conseguenza una certa frase/indentazione del foglio).
Non vado nei dettagli ma ora come ora l'azienda, con questo prodotto alla mano, non ha intenzione di ridurre l'organico, anzi sto facendo ancora colloqui per assunzioni su larga scala!
Questo per vari motivi:
  1. l' AI non è ancora affidabile e seppur lo fosse non assicura mai un risultato accurato al 100% che vada anche di pari passo con le molteplici richieste di business che fa il cliente. le manca e le mancherà sempre quel tocco che solo un essere provvisto di emozioni può fornire
  2. Per lo stesso motivo summenzionato non potrà mai sostituirsi ai creativi
  3. Qualora le aziende decidessero di soppiantare gli sviluppatori incompetenti in favore dell'AI, questo porterebbe ad una rivalutazione del mercato che farebbe subito diventare lo sviluppatore mid un senior ed uno sviluppatore senior un dio! come negli anni 80 e 90 gli stipendi medi per questo lavoro salirebbero.
  4. le logiche da implementare per determinati campi o occasioni non possono essere astratte da un AI: che ne può mai capire l'AI del trading o del cashpooling o di altre faccende che, tra l'altro, il cliente spiega male??
  5. l'AI necessita di input molto precisi e scrupolosi, e nonostante questi genera quasi sempre output differente (anche a parità di input). questo perchè, come dicevamo ai primi punti, la precisione e la scelta della soluzione più corretta è SEMPRE opinabile -> se è opinabile non è adatto ad un'AI.

Tutto ciò porterà alla creazione di nuove figure professionali che si occuperanno di perfezionare questi tool, evolverli per elaborare nuovi tipi di dati, perfezionare il linguaggio con cui si comunica con essi e tante altre cose.
L'automobile ha tolto lavoro ai cocchieri, ma ha introdotto (tra le tante altre cose) uno dei business più potenti al mondo che è il petrolio.

Ti consiglio, se vuoi proseguire nella tua scelta di formazione, di scegliere bene l'ambito in cui programmare: DispatchCode ti ha dato una splendida intro ma sappi che ci sono anche altri ambiti.. scegli prima cosa ti piace, poi cerca le tecnologie associate ad esso e verifica infine la richiesta sul mercato:
esempio:
-sviluppatore di videogiochi in C++
-sviluppatore di siti web in python
 
  • Mi piace
Reazioni: _Tommy_

alemian95

Utente Attivo
1,175
370
CPU
13600K
Dissipatore
Thermalright Peerless Assassin 120 SE
Scheda Madre
MSI PRO Z790-P WIFI ATX
HDD
WD Black 1TB SN850X
RAM
Kingston Fury Renegade DDR5 Silver 32GB 6400MT/s CL32
GPU
Gigabyte RTX 4070 Ti GAMING OC 12G
Monitor
BenQ MOBIUZ EX3415R
PSU
Thermaltake Toughpower GF3 750W
Case
NZXT H5 Flow
Periferiche
Mouse: Logitech G403 - Tastiera: Durgod Taurus K320
Net
FTTC 100 mega
OS
Windows 11 Home 64 bit
Per la mia esperienza dipende da vari fattori. Io per esempio sono full stack, in svariate occasioni mi è capitato di usare l'ai sia come aiuto sia di integrarla in un chatbot con un contesto specifico (multipli file pdf con medesima struttura ma informazioni diverse).

Usata come aiuto può dare una mano per velocizzare la scrittura di codice, cercare bug, tradurre codice da un linguaggio all'altro, trasformare un file csv in codice sql per velocizzare inserimenti nei database, tradurre file con stringhe per applicazioni multilingua, questi sono solo esempi ma in varie occasioni mi è tornata particolarmente utile non come mio sostituto ma come strumento per essere più produttivo.

Poi dipende anche dalla natura dell'azienda per cui lavori, c'è chi vede l'ai come strumento per ridurre il personale e aumentare i profitti, e c'è chi la vede come strumento per aumentare la produttività.
 

Guerriero con mazza

Utente Attivo
420
432
CPU
i7-3770K
Dissipatore
Thermalright Macho Rev.B HR-02
Scheda Madre
MSI Z77A-GD65
HDD
SSD: Samsung 870Evo 500GB || HDD: WD Caviar Blue 1TB + WD Caviar Black 2TB
RAM
Kingston HyperX Beast DDR3 2x8GB 1866MHz
GPU
MSI RX 6600 MECH 2X - 8GB DDR6
Audio
Sound Blaster Z
Monitor
AOC 24G2SPAE
PSU
EVGA SuperNOVA 650 GS 80+Gold
Case
Corsair 400R
OS
Windows 10 Pro
Banalmente serve per l'esecuzione di task che anche un troglodita a cui si fa un corso di 3 settimane saprebbe fare! Boilerplate, documentazione, copia-incolla dal primo tutorial online e task simili che possono essere prodotti con pattern ricorrenti (trova la frase, o il pezzo di codice che fa questo e scrivi di conseguenza una certa frase/indentazione del foglio).
Hai praticamente descritto quello che bene o male farebbe un neolaureato al suo primo anno di esperienza.
 
  • Haha
Reazioni: _Tommy_

Tony_x

Utente Èlite
25,829
11,694
CPU
i5 11400F
Dissipatore
Cooler Master 212 Evo "by Noctua"
Scheda Madre
Msi MAG B560M Bazooka
HDD
Samsung 970 Evo Plus 1Tb + Corsair MX500 500gb + WD Blue 1Tb 7200rpm
RAM
Corsair Vengeance 2x16 GB 3200
GPU
Sapphire Radeon RX 6700 XT
Monitor
HP X24ih
PSU
Seasonic M12II Evo 520w Bronze
Case
Corsair Carbide SPEC 03
OS
Windows 10 Pro
strumento per ridurre il personale e aumentare i profitti, e c'è chi la vede come strumento per aumentare la produttività
sono due modi diversi per descrivere esattamente la stessa cosa eh...
 

alemian95

Utente Attivo
1,175
370
CPU
13600K
Dissipatore
Thermalright Peerless Assassin 120 SE
Scheda Madre
MSI PRO Z790-P WIFI ATX
HDD
WD Black 1TB SN850X
RAM
Kingston Fury Renegade DDR5 Silver 32GB 6400MT/s CL32
GPU
Gigabyte RTX 4070 Ti GAMING OC 12G
Monitor
BenQ MOBIUZ EX3415R
PSU
Thermaltake Toughpower GF3 750W
Case
NZXT H5 Flow
Periferiche
Mouse: Logitech G403 - Tastiera: Durgod Taurus K320
Net
FTTC 100 mega
OS
Windows 11 Home 64 bit
sono due modi diversi per descrivere esattamente la stessa cosa eh...
Oddio, ridurre il personale o aumentare la produttività. Non mi sembra proprio la stessa cosa 🤨

Cerco di essere più specifico: se parlo di velocizzare delle task con degli automatismi potrei ridurre lo stress del personale e di conseguenza anche il numero di errori.
Questo utilizzo mi sembra diverso rispetto ad usare l'aumento di produttività per ridurre il personale mantenendo così lo stesso livello di stress.
 

Tony_x

Utente Èlite
25,829
11,694
CPU
i5 11400F
Dissipatore
Cooler Master 212 Evo "by Noctua"
Scheda Madre
Msi MAG B560M Bazooka
HDD
Samsung 970 Evo Plus 1Tb + Corsair MX500 500gb + WD Blue 1Tb 7200rpm
RAM
Corsair Vengeance 2x16 GB 3200
GPU
Sapphire Radeon RX 6700 XT
Monitor
HP X24ih
PSU
Seasonic M12II Evo 520w Bronze
Case
Corsair Carbide SPEC 03
OS
Windows 10 Pro
Oddio, ridurre il personale o aumentare la produttività. Non mi sembra proprio la stessa cosa 🤨
Se fai 100 con 10 dipendenti perché prima ne avevi 20 per fare 100 ma con l' IA ne bastano 10
Oppure se ogni dipendente passa da 5 a 10 di produttività, cambia la forma ma non la pratica
 

Ibernato

Utente Èlite
4,333
2,048
OS
Windows 10 Pro / Ubuntu 22.04
L'AI attualmente ancora non è pronta per sostituire al 100% l'uomo.
Ora come ora serve solamente a velocizzare la produttività. Io la uso spesso. Ad esempio, se devo convertire qualcosa da un linguaggio ad un altro, gli passo il file e me lo traduce. In questo modo recupero molto tempo per fare altro.

Sicuramente in futuro l'AI sarà in grado di scrivere un intero progetto (attualmente già lo fa ma non è perfetta).
Io credo che una posizione futura sarà quella di scrivere e ottimizzare i prompt per una AI.

Se arriviamo ad un punto in cui l'hai può fare tutto da sola, spererei che i governi applicherebbero qualche legge per fare in modo che l'AI non vada a sostituire completamente l'uomo.
 

GraveKeeper

Utente Èlite
7,058
3,194
CPU
AMD Ryzen 7 3700X
Dissipatore
Enermax LiqMax III ARGB 240 Nero ARGB
Scheda Madre
Asus Tuf Gaming B550-PLUS (WIFI)
HDD
Samsung 970 EVO Plus 500GB NVMe + Crucial MX500 1TB + 2 x WD10EZEX Blue 1TB
RAM
Adata XPG Spectrix 16gb (2x8) 3200Mhz RGB
GPU
Asus NVIDIA GeForce GTX 750ti OC 2GB (in attesa di meglio)
Audio
Behringer U-PHORIA UM2 (chissà, magari un giorno prenderò una Scarlett Solo)
Monitor
LG 27GN800 UltraGear QHD IPS 27" 1ms 144Hz
PSU
ITEK GF 750W 80Gold
Case
NZXT H510i Nero
Periferiche
Studio Monitor Speakers Presonus Eris E3.5, Audio Technica ATH-M30x
OS
Windows 10 Home 64-bit
L'AI attualmente ancora non è pronta per sostituire al 100% l'uomo.
Ora come ora serve solamente a velocizzare la produttività. Io la uso spesso. Ad esempio, se devo convertire qualcosa da un linguaggio ad un altro, gli passo il file e me lo traduce. In questo modo recupero molto tempo per fare altro.

Sicuramente in futuro l'AI sarà in grado di scrivere un intero progetto (attualmente già lo fa ma non è perfetta).
Io credo che una posizione futura sarà quella di scrivere e ottimizzare i prompt per una AI.

Se arriviamo ad un punto in cui l'hai può fare tutto da sola, spererei che i governi applicherebbero qualche legge per fare in modo che l'AI non vada a sostituire completamente l'uomo.

Il punto è: sara mai pronta? I modelli di ML attuali sono modelli predittivi, l'uomo no. Ti spara fuori qualcosa che il più probabilmente è giusto secondo lei in base a innumerevoli esempi. Questi esempi non sono necessariamente sempre esempi corretti, specie se allenati su basi molto ampie.

L'uomo non è un modello predittivo, possiede una memoria e lavora con quella. E' in grado di memorizzare gli errori, e imparare da essi. Se per un certo livello il modello può essere guidato in maniera simile, non è in grado di ragionare completamente. Gli manca una base di assiomi da cui partire, su algoritmi che la programmazione classica esegue senza errori, l'IA è invece in grado di sbagliare.
Tu mi dirai, anche l'uomo sbaglia, vero, però ha capacità di problem solving, è in grado di trovare il problema e correggerlo definitivamente. I modelli con cui ho interagito spesso hanno difficoltà anche solo a capire il problema, figuriamoci a risolverlo.

Almeno per quanto riguarda ChatGPT poi, ha il vizio di ripetersi e di assumere che roba completamente sbagliata o non funzionante sia corretta. In un mondo di mercato non è sostenibile. Dovrebbe crescere in continuazione in teoria, ma ormai è qualche anno e ancora mi va in loop spesso.

Secondo me Machine Learning e Generative AI sono utili strumenti e un'ottima base ma servirà un modello più espanso per avvicinarsi all'uomo. Per il momento è Google ma più conveniente, in grado di manipolare il contenuto, e di dare risposte sbagliate.
 

Guerriero con mazza

Utente Attivo
420
432
CPU
i7-3770K
Dissipatore
Thermalright Macho Rev.B HR-02
Scheda Madre
MSI Z77A-GD65
HDD
SSD: Samsung 870Evo 500GB || HDD: WD Caviar Blue 1TB + WD Caviar Black 2TB
RAM
Kingston HyperX Beast DDR3 2x8GB 1866MHz
GPU
MSI RX 6600 MECH 2X - 8GB DDR6
Audio
Sound Blaster Z
Monitor
AOC 24G2SPAE
PSU
EVGA SuperNOVA 650 GS 80+Gold
Case
Corsair 400R
OS
Windows 10 Pro
D'accordo l'IA non è perfetta ora e forse non lo sarà mai.
Eppure la si vuole (o la si è) introdotta nella guida completamente autonoma.
Ora immaginatevi un IA che può sbagliare che ha il controllo totale del vostro mezzo.
Eh ma anche l'uomo fa gli incidenti alla guida....
 

Skills07

Head of Development
Staff Forum
Utente Èlite
35,524
11,548
CPU
Ryzen 7 5800x
Dissipatore
Deepcool gammax l240 v2
Scheda Madre
Aourus Gigabyte X-470 ultra gaming
HDD
Samsung Evo 850 250gb ,2tb x 2 toshiba P300, 256 Ssd silicon power, Samsung evo plus 1tb nvme
RAM
32 gb G.Skill Tridentz 3200 mhz RGB
GPU
Zotac - RTX 3070 Ti Trinity OC
Monitor
ASUS TUF QHD 165hz IPS, ITEK GCF 165hz IPS QHD, Samsung Curvo 144hz QHD
PSU
Seasonic Focus 650w 80 platinum
Case
Coolermaster h500p
Periferiche
Asus Tuf Wireless
Net
Fibra Tim 100mb
OS
Windows 10 Pro 64 bit
Allora io sono un dev nudo e crudo, Full Stack per l'esattezza, di cui conosco si e no almeno tra backend e frontend circa 10/15 linguaggi.
Da .net (Core, Ajax, C#, Visual Basic) a Java FX e Spring Boot, Python con Flask, sto iniziando a guardare Golang etc.
L'IA al momento non è in grado di rimpiazzarci e credo che non riuscirà per lo meno a farlo.
Riuscirà probabilmente ad agevolare alcune cose, dove ora sbaglia e anche parecchio.
Esempio se chiedi a CHAT.GPT o COPILOT qualcosa su React (spesso e volentieri ti da qualcosa di funzionante ma scritto male) o scritto con paradigmi sbagliati.
Ad esempio fare le componenti :any in typescript (cosa sbagliata) altrimenti cosa lo hanno inventato a fare? tanto vale usare javascript dove l'any è contemplato.

Oppure lato SpringBoot ogni tanto per il BE non è aggiornato alle linee guida di Spring 3, e ti suggerisce cose di Spring 2 oramai deprecate.
Ergo almeno per i prox 30 anni siamo saldi sul nostro lavoro, può essere solo uno strumento in mano per aiutare.
Chiaro se lo usi per farti suggerire tutto, non ha senso fare il programmatore.
L'IA deve essere uno strumento di aiuto, abusarne, ed usarla male non farà mai di te un programmatore
 

BAT

Moderatore
Staff Forum
Utente Èlite
22,993
11,604
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
Io penso che saper programmare serva a prescindere, perché è un ottimo esercizio per la mente, lavoro o non lavoro, IA o non IA.

C'è chi si diverte con l'enigmistica, chi con le arti, chi con la fisica, non hanno smesso di giocare a scacchi solo perché è stato dimostrato che un computer può battere qualunque grande campione.

Quindi non vedo perché non imparare a programmare e divertirsi a risolvere problemi con la programmazione
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!