Seleziona la tua lingua

Programmare ieri e oggi

Turbo Pascal (1983, Borland)Sono nato e cresciuto in un tempo in cui certe cose erano più semplici, e forse è proprio questo il problema. Una volta i computer erano oggetti misteriosi e chi li programmava di conseguenza non poteva essere proprio normale. Scrivere del software che non fosse un videogioco significava mettere un nerd a produrre un tool destinato ad un altro nerd. Non esisteva integrazione, il problema dell'interscambio dei dati non se lo poneva nessuno in quanto ogni applicazione lavorava coi suoi formati proprietari.

Erano i tempi in cui un ragazzino di 14 anni poteva inventare la versione elettronica di Tic Tac Toe, una multinazionale dell'IT poteva nascere in un sotto scala o uno dei videogiochi più famosi ed imitati della storia veniva concepito da un ragazzo giapponese durante una cena in pizzeria con gli amici.

Scrivere un'applicazione significava ogni volta reinventare la ruota, sviluppare un'interfaccia che raramente esibiva un comportamento standard forse perché nessuno si era mai assunto davvero l'onere e onore di definire uno standard. I risultati erano chiaramente naive. Basti pensare allo SCUMM, che nel suo piccolo definiva uno standard per i videogiochi punta-e-clicca della Lucas Arts (vari Monkey Island, Future Wars, Loom e compagnia cantante). Al di fuori della Lucas ognuno creava la propria tecnologia. Il dispendio di forze era notevole.

XCopy Professional (Versione Amiga)La pirateria era molto diffusa anche allora, forse perché i sistemi di protezione del software erano molto deboli e dove XCopy falliva c'era sempre la strada del crack. Era piuttosto semplice debuggare un programma per trovare il punto esatto in cui un istruzione assembler invocava una routine di controllo. Bastava sostituirla con un salto incondizionato.

Il team degli sviluppatori era sempre molto limitato, si parlava di meno di dieci persone, includendo grafici e musicisti, e gli strumenti usati molto semplici. Linguaggi imperativi come BASIC o C senza tanti fronzoli.

Oggi tutto è cambiato, programmare significa montare sulle spalle di un gigante e da lì iniziare la salita. Esistono i framework per lo sviluppo, librerie sconfinate di codice che abbrevia il lavoro e permette di costruire sistemi software integrati ed accattivanti, sistemi talmente complessi da richiedere specialisti altamente qualificati nel loro uso, il pagamento di licenze e spese di formazione per chi deve imparare ad usarli. Tutto ciò si riflette sul costo finale del prodotto. L'alternativa è l'open source.

Sono sempre stato un accanito sostenitore dell'open source perché ho sempre creduto che software e reti debbano continuare ad assolvere allo scopo per cui sono stati concepiti. Penso che  oggi la tecnologia si sia evoluta al punto che lo sviluppo casalingo e hobbistico sia diventato qualcosa di fine a se stesso, ed è un peccato. In passato erano le idee a fare la differenza e non era necessario pagare royalties per creare qualcosa di innovativo. La comunità degli sviluppatori poteva davvero fare affidamento sugli sforzi di moltissime persone, mentre oggi gli unici attori sono le aziende, le uniche che possono permettersi di pagare licenze da record per stare sul mercato.