cis400langs

Voglio iniziare il nuovo anno con un articolo fuori dal normale, un articolo di riflessione per noi informatici: assistiamo a grandi novità giorno dopo giorno, eppure secondo voi, cosa ancora manca al mondo del software? Qualcuno fra noi ha più e più volte sostenuto che “il codice utile è stato già scritto” ma è davvero così? La storia dell’informatica è costellata di innovazioni susseguitesi a ritmo quasi costante, eppure, dalla nascita del paradigma di programmazione orientato agli oggetti non assistiamo a significativi, ovviamente secondo la modesta opinione di chi scrive, cambiamenti più che altro concettuali.Python, Ruby, PHP sono tutti prodotti attualissimi che hanno aperto aree di lavoro grandissime (PHP e Ruby forse più di Python, anche se da programmatore python mi piacerebbe vederlo più usato soprattutto qui in Italia) eppure nelle metodologie di sviluppo e nella concettualità dei suoi lessemi non si discosta molto da quanto tracciato da linguaggi più vetusti come C o Java.

“L’innovazione”, se così vogliamo considerarla, degli ultimi tempi (non quantifico la parola “tempi”, dato che in informatica c’è un certo margine di relatività) forse risiede nell’uso sempre più crescente di XML e Ajax o di applicazioni RIA (Rich Internet Application) sviluppate in Flex o Silverlight.

Il dubbio amletico che mi pongo, da programmatore, è: se il software potrebbe ulteriormente esplorare terreni incolti, il problema è alla radice? bisognerebbe spingere ancora un passo in la le potenzialità dei linguaggi di programmazione? ci sarebbe bisogno di un cambiamento concettuale e sintattico di questi ultimi? Anche Google in occasione dell’annuncio del suo linguaggio di programmazione si era posta questi interrogativi, affermando che nell’ultimo decennio i linguaggi anche se performanti non hanno distribuito nessuna nuova innovazione.

Voi cosa ne pensate?

3 COMMENTS

  1. Ormai con i linguaggi di programmazione abbiamo raggiunto risultati in precedenza impensabili, oggi infatti si contano milioni di programmatori in tutto il mondo, e a mio avviso il problema non risiede nel fatto che un linguaggio sia più o meno alto, più o meno simpatico o più o meno scelto religiosamente, secondo me si dovrebbe far evolvere la tecnologia che supporta i programmi e migliorare la formazione dei programmatori costretti a correre senza riuscire a capire.

    Ad esempio trovo difficile da accettare che il mio programma possa girare solo su una serie limitata di ambienti di esecuzione. Sebbene Java e .Net con Mono mi liberino da un sacco di problemi, la realtà e che non risolvo in modo completo il problema.

    Tengo poi in conto il fatto che HTTP/HTML non sono stati inventati per quello che siamo costretti a farci oggi… Però HTTP è l’unico protocollo che regge in un mondo in cui la connettività è quella che siamo stati in grado di costruire in un tempo così breve e i “thin client” (thin? sic!!!) come i browser sono ovinque, anche nei cellulari.

    Non ho una risposta precisa, se non che nel tempo ho imparato che i problemi sono come dei cubi, e se ne “guardo” una faccia e non trovo una soluzione, allora è il caso di ruotarlo per cambiare prospettiva e riprovare.

    In ogni caso oltre noi “tecnici” sono da tenere in conto anche i produttori di ambienti di esecuzione… secondo voi hanno voglia di evolvere? A me sembra ultimamente che alla faccia delle battaglie contro il dominio di mercato, invece abbiano solo voglia di diventare molto pochi per non essere costretti a cambiare.

    Questi i miei 2c.
    Buon anno a tutti!

    P.S.: Mi piace questo topic.

  2. Non saprei riguardo gli ambienti di esecuzione aldo….gli so della decade appena passata si sono concentrati sul miglioramento della semplicità e dell’immediatezza per poter allargare sempre più la base d’utenza che con la maturazione di internet ha cominciato a riversarsi incolta sui computer. L’unico vero problema a mio avviso è che Microsoft si è concentrata in questi anni troppo sull’aspetto del sistema operativo, e meno sulla sua capacità di resistere al deterioramento causato dal “passaggio” dei programmi sul disco fisico e alla capacità di mantenersi stabile quando anche solo un programma od un driver si blocca. Ho letto tempo fa che ci sarebbero stati cambiamenti enormi nel kernel in Windows 8, che ad esempio, nell’installazione delle applicazioni si sarebbe avicinato più a Mac OSX, e roba del genere. Speriamo

  3. Beh aldo le tue sono parole che renderebbero edotti molti: il punto della questione infatti, e ti giuro che mi ci sto spremendo, è da ricercarsi nel “quale sarà l’idea rivoluzionaria?”.

    I linguaggi, sappiamo essere vincolati da limiti teorici inderogabili (almeno per ora, poi come disse qualcuno, il nobel aspetta chiunque lo voglia) assoggettabili più o meno alla macchina di turing (e mi fermo, dato che parlare di linguaggi formali e automi sarebbe fuorviante).

    Parlando di qualcosa estremamente semplice: XML secondo me è qualcosa di geniale, è interrogabile, è descrivibile, è schematico, estensibile e volendo possiamo considerarlo anche un pochino interoperabile nel suo ambito.

    Per quanto riguarda i produttori di ambienti… ahimè quanto hai sottolineato è vero, nemmeno l’open source può fare molto contro questa “egemonia” del software, del resto alcune componenti (e si badi, non parlo di grandi software) vengono letteralmente fagocitate.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.