Sondaggio linguaggio di programmazione del futuro

Se volete votare o conoscere il risultato di un sondaggio dal titolo
“Qual’e’ il linguaggio di programmazione del futuro?” andate sul mio
blog http://railsandruby.blogspot.com/

Lo so che siete di parte ma confido sulla vostra obiettivita’.

On 7/12/07, Marco B. [email protected] wrote:Se volete
votare o conoscere il risultato di un sondaggio dal titolo
“Qual’e’ il linguaggio di programmazione del futuro?” andate sul mio
blog http://railsandruby.blogspot

.com/

Lo so che siete di parte ma confido sulla vostra obiettivita’.

Secondo me il sondaggio è mal posto. Elenchi due linguaggi che sono
decisamente in calo, uno in ascesa e poi un generico “Altro”. Inoltre
non
indichi in alcun modo in quale ambito di programmazione poni la domanda.
Hai
fornito 3 opzioni, una delle quali (PHP) è praticamente usata solo per lo
sviluppo Web. Apprezzo comunque il tentativo di aprire una discussione
interessante basandola su gli esiti di un sondaggio.

Se parliamo di successo definendolo prettamente dal punto di vista
dell’adozione in generale, non ha senso escludere linguaggi .NET, tipo
C# e
Visual Basic, sulla base del loro valore tecnico. Appare evidente che è in
corso un progressivo shift da applicazioni desktop ad applicazioni Web,
per
cui è ragionevole assumere che Ruby e il suo framework Rails riusciranno a
garantirsi una buona fetta di mercato. Questa prominenza del browser
come
piattaforma per le applicazioni, porta anche Javascript, con tutti i
suoi
limiti e la cattiva reputazione, improvvisamente alla ribalta (e ci sono
diverse persone che lo considerano il vero linguaggio del futuro). Detto
questo, Java e .NET sono le due piattaforme di sviluppo più diffuse, con PHP
come terzo incomodo. Ruby potrà cercare di ottenere una posizione simile a
quella attualmente ricoperta da PHP, ma dubito che riuscirà a sostituire
Java come antagonista Open Source a .NET, e principale tecnologia
mainstream
(soprattutto se ci si limita ad un periodo di tempo di 5 o 10 anni).

I programmatori hanno inizialmente accettato il paradigma di
programmazione
ad alto livello (imperativo), poi si sono spostati verso la
programmazione
ad oggetti e ora stanno lentamente incorporando aspetti di
programmazione
funzionale e programmazione concorrente/parallela. Questi aspetti
definiranno il futuro ma ci vorrà parecchio tempo prima di vedere un
linguaggio con queste caratteristiche, sostituire i linguaggi mainstream
esistenti. Soprattutto se si pensa a quanto codice esiste già in
circolazione per Java e .NET.

Personalmente credo che Erlang ed Haskell siano meglio equipaggiati di
Ruby
da un punto puramente tecnico, per affrontare problemi complessi e
sfruttare
le potenzialità di un presente e futuro multicore. Ma se mi parli di
mercato, Ruby è più accessibile, ha un ottimo marketing, e un framework che
permette anche ad una scimmia di programmare per il Web. Questi sono
enormi
vantaggi rispetto a un linguaggio splendido ma più ostico come Haskell (che
poi non è nemmeno tanto il linguaggio in sé con la sua natura un po’
accademica, piuttosto si tratta di affrontare un cambio di paradigma, da
programmazione ad oggetti con side effects a programmazione puramente
funzionale).

I Pragmatic Programmers hanno posto almeno in parte la loro attenzione
su
Erlang, e sono certo che ne favoriranno la crescita e diffusione,
soprattutto se si considera che esistono già moltissime librerie adottate
nell’industria e i primi frameworks e web servers cominciano ad apparire
anche nella blogsphere. D’altro canto sia Java sia C# (o sopratutto C#)
tentano di incorporare nuovi paradigmi servendoli agli sviluppatori in
maniera addolcita, favorendone una possibile adozione di massa.
L’aggiunta
di funzionalità esistenti in Ruby, Erlang e Haskell in linguaggi come C# o
Java, permette una certa inerzia nell’industria per quanto riguarda
l’adozione di nuovi linguaggi. Se i linguaggi più comuni riescono ad
adattarsi riprendendo le migliori funzionalità dai “nuovi” antagonisti,
allora la selezione naturale giocherà a loro vantaggio, ed è per questo che
ritengo improbabile che Ruby riesca a sostituire completamente linguaggi
mainstream nel giro di pochi anni.

Secondo me Haskell ha le carte in regola per essere tecnicamente il
linguaggio del futuro, ma non ha senso illudersi. La popolarità di un
linguaggio dipende da moltissimi altri fattori, e Ruby ha un netto
vantaggio
che lo porterà ad essere molto più popolare di Haskell per un bel pezzo. Se
ci pensi, Lisp è in giro da quarantanni, ma la sua superiorità tecnica non
gli è bastata a contrastare anche solo un linguaggio verboso e senza
entusiasmo come Java.

Molte delle previsioni nel mondo IT finiscono con l’essere decisamente
poco
accurate, per cui prendi quello che dico con le pinze e perdonami se ho
impostato la discussione in un quadro temporale di pochi anni, piuttosto
che
un generico futuro del quale è veramente azzardato parlare con la
pretesa
di avere previsioni accurate.

Bisognerebbe forse cercare di sfruttare la rarità dei nostri skills e i
vantaggi delle tecnologie di nicchia, usando strumenti adatti per i vari
problemi che intendiamo risolvere, indipendentemente dalla
popolarità degli
stessi.

Ciao,
Antonio

Grazie Antonio della risposta, mi ha fatto molto piacere conoscere il
tuo parere. In effetti la domanda posta nel sondaggio è abbastanza
generica ma il motivo di questo sta proprio nella natura del sondaggio
in se.
Data la natura del mio blog, l’ambito dei linguaggi di programmazione
del sondaggio è lo sviluppo di applicazioni web.
Il punto su cui mi concentro, che mi interessa e nel quale con piacere
piace confrontarmi spesso è la sfida tra Ruby e Java. Parlo di sfida
perchè a tanti addetti ai lavori piace dire che Ruby rifara’ negli anni
prossimi il boom che ha fatto Java negli anni 2000 - 2006.
Questo è il motivo per cui nel sondaggio ci sono loro.
Certo io personalmente non mi sento di dire che java è in calo come tu
dici, perchè almeno in Italia e per i progetti “importanti” è
insostituibile.
La risposta Altri del sondaggio serve per capire quali altri linguaggi
possano conoscere da qui a un po di anni il successo. Per esempio gli
Erlang ed Haskell che tu hai citato non li avevo mai sentiti, ed avevo
aggiunto in un post di comunicarmi se secondo qualcuno avevo dimenticato
qualche linguaggio.
Per quanto riguarda la piattaforma .net, e tutti gli altri sistemi
proprietari ed a pagamento per lo sviluppo web, provo per principio una
sana antipatia. Ho iniziato con Visual Basic ma per fortuna ho
continuato con piacere con Java e continuerò ad appoggiare sempre il
mondo dell’open source.
Ciao e aggiungerò Erlang ed Haskell nel sondaggio.