HOME

MANIFESTI DI FINE '900


 

P R O G R A M M A T O R I

F U T U R I S T I
 

All'interno del sito americano di Silicon Graphics Industries è possibile trovare alcune singolari pagine redatte da un gruppo di programmatori informatici, autodenominatosi

FUTURIST PROGRAMMERS.

Riteniamo che queste pagine - da noi tradotte in esclusiva in italiano - siano esemplificative di un moderno, positivo ed innovativo 'atteggiamento' riguardo alla scienza della programmazione informatica, e che appunto in quanto 'atteggiamento' possa essere condiviso anche dai non-specialisti informatici, applicabile al settore della progettazione 'tout-court' e quindi ospitato da CASTELVETRO HOMEPAGE.

I testi redatti dai "Futurist Programmers" si articolano in tre blocchi:

PROGRAMMAZIONE FUTURISTA
Una introduzione al nuovo mondo della programmazione informatica alle soglie del XXI secolo, ovvero alle cause ed alle ispirazioni che hanno spinto un gruppo di programmatori a proclamare un nuovo atteggiamento nel mondo della programmazione.
IL MANIFESTO DEI PROGRAMMATORI FUTURISTI
E' il testo programmatico del gruppo, sulla falsariga del famoso "Manifesto della Pittura futurista" redatto all'inizio del XX secolo da Boccioni, Carrà, Russolo, Balla e Severini.
APPUNTI DI PROGRAMMAZIONE FUTURISTA
Una serie di brevi note, battute e slogans che esemplificano lo spirito dei "Futurist Programmers". Molto tecnico ed altrettanto arguto.
 

Dopo aver letto il "Manifesto dei programmatori futuristi" e gli "Appunti di programmazione futurista"
provate a dare un'occhiata al testo
Trappola nel cyberspazio (grazie a MacProf per la segnalazione).

 


.


Programmazione Futurista
Background on Futurist Programming

Paul Haeberli and Bruce Karsh

3 Febbraio 1994

Il futurismo é un movimento artistico italiano fondato nel 1909 dal poeta Filippo Tommaso Marinetti. L'obbiettivo dei Futuristi era la celebrazione della tecnologia moderna e la liberazione dell'arte italiana dalla psicologia del passato. Nel 1910 Umberto Boccioni pubblicò il Manifesto dei Pittori Futuristi. In seguito il Movimento futurista si estese nel campo della scultura, del teatro, della architettura, della moda e della musica. I Futuristi possono essere considerati gli artefici dello sviluppo dell’arte della performance e della poesia concreta. Essi crearono inoltre musica basata sul suono delle macchine chiamata "L'Arte dei Rumori". Il famoso gruppo musicale "The Art of Noises" rappresenta uno sviluppo moderno del Futurismo.

Il Futurismo ha esercitato un'enorme influenza sull'arte ed il design del XX secolo. E' facile riconoscere l'influenza che i primi Futuristi ebbero nelle opere del Bauhaus, di De Stijl, del Costruttivismo russo e del Cubismo francese.

I Futuristi Italiani aspiravano alla liberazione di tutte le espressioni artistiche dalla atmosfera bigotta che controllava la maggior parte della produzione artistica italiana. Essi sostenevano una forma d'arte relazionata ai moderni sviluppi del loro tempo - l'automobile, l'aereoplano e la comunicazione di massa. Essi rifiutavano la riproduzione pittorica di soggetti che fossero già stati rappresentati.

Noi crediamo che esista una grande possibilità per questi princìpi Futuristi di trovare applicazione nella scienza della programmazione informatica. Noi reagiamo contro la pesante atmosfera religiosa che circonda ogni aspetto della programmazione informatica. Noi crediamo che sia giunta l'ora di liberarsi dai vincoli del passato, e di celebrare un rinascimento nell'arte della programmazione informatica.

Noi vediamo che molti degli attuali sistemi informatici sono caratterizzati da sprechi ed inefficienza irrimediabili. Mentre nel campo dell’hardware dei computer si sono realizzati incrementi di performance di un fattore superiore a 200 negli ultimi 20 anni, nella programmazione e nel design del software sono stati compiuti ben pochi progressi dalla invenzione della subroutine. Noi vorremmo vedere avanzare la scienza della programmazione tanto velocemente quanto accade negli altri settori della tecnologia.

Noi crediamo che la istruzione a livello universitario sprechi troppo tempo per trasmettere dogmi, anziché insegnare una solida teoria di design della programmazione che aiuti i programmatori a creare buoni programmi. Le università dovrebbero fornire agli studenti meno religione, e molta più esperienza pratica nel creare ed analizzare programmi che siano piccoli, veloci, utili ed efficienti.

Noi crediamo che il risultato dell'approccio accademico convenzionale sia un laureato in informatica che crea programmi pesanti, lenti e scorretti. Lo stato dell'arte attuale nella programmazione scoraggia la sperimentazione e l'analisi formale. Questo a noi sembra contrario a quanto ci si dovrebbe aspettare da una "scienza".

Perché la scienza informatica rifiuta i programmi automodificanti? Perchè in alcune università si é smesso di insegnare la programmazione in linguaggio assembly? Su quale base scientifica sono state fatte queste scelte? Dove si trova l'evidenza sperimentale a sostegno di queste azioni?

Nel 1991, dopo diversi incontri e discussioni abbiamo sviluppato il nostro Manifesto della Programmazione Futurista.

Unitevi a noi per celebrare e pubblicizzare il lavoro dei Programmatori Futuristi in tutto il mondo. Per avere ulteriori informazioni, leggete gli allegati Appunti di Programmazione Futurista.


Traduzione di Maurizio Castelvetro -1996





.



Manifesto dei Programmatori Futuristi
The Manifesto of Futurist Programmers

Ai giovani programmatori del mondo!

Il grido di ribellione che noi lanciamo, associando i nostri ideali a quelli dei pittori futuristi, non origina da una setta di esteti ma, al contrario, esprime il violento desiderio che ribolle oggi nelle vene di ogni programmatore creativo.

Noi vogliamo combattere accanitamente la religione fanatica, incosciente e puramente snobistica del passato, alimentata dall'esistenza nefasta delle riviste accademiche. Ci ribelliamo alla supina ammirazione dei vecchi sistemi operativi, dei vecchi linguaggi, degli arcaici standards e all'entusiasmo per tutto ciò che è zeppo di bugs (1), marcio rigonfio di codificazioni, e corroso dall'obsolescenza. E giudichiamo ingiusto - per non dire criminale - l'abituale disdegno verso programmi la cui costruzione è diversa e originale, nuova e palpitante di vita.

Compagni! Noi vi dichiariamo che il progresso trionfante nelle altre scienze ha determinato nell'umanità mutamenti tanto profondi da scavare un abisso tra il passato e noi libere creature sicure della radiosa magnificenza del futuro.

Noi siamo nauseati dalla pigrizia vile che, sin dagli anni '70, fa sopravvivere i nostri programmatori solo di una incessante riprogrammazione delle glorie del passato.

Per i professionisti di altre discipline, la programmazione è ancora una terra di morti, un'immensa Pompei ancora biancheggiante di sepolcri. Ma la programmazione sta rinascendo, e al suo risorgimento politico sta seguendo un risorgimento intellettuale. Nelle autostrade delle nostre formicolanti città i pistoni delle nostre automobili sono spinti dalle scintille dei microprocessori. Nel paese del dolce far niente i computers controllano gli elettrodomestici della nostra esistenza quotidiana. Nei settori tradizionali della tecnologia spiccano oggi il volo sfolgoranti ispirazioni di qualcosa di totalmente nuovo.

E' vitale soltanto quella programmazione che trova i propri elementi nelle persone che la utilizzano. I nostri antenati trassero materia per la loro programmazione dall'atmosfera religiosa che già incombeva sui loro programmi. Noi dobbiamo ora trarre ispirazione dai tangibili miracoli della vita contemporanea, dai lettori CD portatili che portano la musica digitale alle masse, dagli aerei supersonici che aumentano la velocità di volo grazie alla loro leggerezza, dai televisori portatili che sono disponibili in tutto il mondo e si attivano in tempi più brevi di qualsiasi computer, dalla lotta spasmodica per la conquista dell'ignoto. E come possiamo rimanere indifferenti alla frenetica attività delle grandi città, alla nuovissima psicologia della programmazione che prende il via solo al calare delle tenebre, alle febbrili figure del viveur, della cocotte, dell'hacker (2), del caffeinomane?

Volendo pure noi contribuire al necessario rinnovamento di tutte le espressioni della programmazione, dichiariamo risolutamente guerra a tutti quei programmatori ed a tutte quelle istituzioni che, per quanto possano camuffarsi di una veste di pseudo-modernità, rimangono invischiati nella tradizione, nell'accademismo, in una ripugnante pigrizia mentale.

Facciamo appello a tutti i giovani programmatori affinchè esprimano il loro disprezzo verso tutta quella canaglia senza cervello che nella Scienza Informatica applaude una stomachevole rifioritura di classicismo rammollito; che che al Massachusetts Institute of Technology porta alle stelle i cultori nevrotici di sistemi Window NT - un arcaismo ermafrodito; che nelle società di informatica accumula premi in denaro in virtù di capacità opache e pedestri a la 1974; che a Berkeley adula la programmazione tipica di funzionari pubblici in pensione; che in IBM glorifica un farraginoso mucchio di immondizie prodotto da alchimisti fossilizzati! Insorgiamo, insomma, contro la superficialità, la banalità e la sciatta competenza pseudo-artigianale che rendono profondamente spregevole la maggior parte dei programmatori rispettati in ogni angolo di Silicon Valley.

Via, dunque, venduti riscrittori di programmi smanettati (2)! Via, archeologi affetti da necrofilia cronica! Via, dirigenti atavici, voi ruffiani compiacenti! Via, accademici gottosi, professori ignoranti e inebetiti! Via!

Chiedete ai sacerdoti del Vero Culto, a quei guardiani delle Regole della Programmazione Strutturata dove sia visibile oggi il lavoro di Henry Massalin; chiedete loro perchè i sistemi operativi ufficiali nemmeno riconoscono l'esistenza di un codice automodificante; domandate loro dov'è che l'arte dell'Interfaccia Utente viene apprezzata per ciò che veramente vale!... E chi è che si cura di pensare ai programmatori che non hanno ancora vent'anni di lotte e sofferenze ma che pur vanno preparando opere destinate ad onorare la patria? Oh no, quei critici sempre pronti a vendersi hanno ben altri interessi da difendere! Le esposizioni, le lobbies degli standards, ed i superficiali e mai-disinteressati reparti acquisti sono ciò che condannano l'arte della programmazione a quella che, parlando senza peli sulla lingua, si chiama prostituzione!

E cosa dovremmo dire degli "Esperti"? Suvvia! Finiamola una volta per tutte con i ‘livellisti’ (3) , con gli ‘estensionalizzatori’ (4), con i trafficanti di toolkit (5), con i fanatici delle librerie (6) - Li abbiamo sopportati abbastanza, assieme a tutti quegli impotenti programmatori di inutile software!

Finiamola anche con l'arbitrio dei dissipatori di spazio-disco, che intasano le nostre macchine e profanano le nostre memorie veloci come saette! Finiamola con l'architettura affaristica degli speculatori del prefabbricato! Finiamola con tutti i decoratori di programmi, coi falsificatori della tecnologia, coi maestri venduti della cosmetologia del software, e coi "managers" sciatti ed balordi!

Ed ecco le nostre conclusioni risolute e sintetiche. Con la nostra entusiastica adesione al Futurismo noi vogliamo:

1. Distruggere il culto del passato, l'ossessione dell'antico, il pedantismo ed il formalismo accademico.
2. Disprezzare profondamente ogni forma di recente imitazione.
3. Esaltare ogni forma di originalità anche se temeraria, anche se violentissima.
4. Trarre coraggio e orgoglio dalla taccia di “pazzia” con cui s'imbavagliano gli innovatori.
5. Considerare il mucchio degli "scienziati" informatici allo stesso tempo inutili e dannosi (pericolosi).
6. Ribellarci contro la tirannide delle parole "estendibile" e "riutilizzabile", espressioni troppo elastiche, con le quali si potrebbe facilmente demolire l'opera di Atkinson, quella di Baumgart e quella di Deutsch.
7. Spazzar via dal campo mentale della programmazione tutti i temi e tutti i soggetti già sfruttati.
8. Rendere e magnificare la vita odierna, incessantemente e tumultuosamente trasformata dalla scienza trionfante.

Siano sepolti i morti nelle più profonde viscere della terra! Sia sgombra di mummie la soglia del futuro! Largo ai giovani, ai violenti, ai temerari!

Pittore UMBERTO BOCCIONI (Milano)
Programmatore PAUL HAEBERLI (Menlo Park)
Programmatore BRUCE KARSH (Los Altos)
Programmatore RON FISCHER (San Francisco)
Programmatore PETER BROADWELL (Santa Cruz)
Programmatore TIM WICINSKI (Mountain View)


15 Giugno 1991


Questo manifesto è basato su:
Umberto Boccioni, Manifesto dei Pittori Futuristi, Febbraio 1910.
Dal libro:
E. Coen, Umberto Boccioni, Abrams, 1988.

NOTE



(1) Trad.: Cimice. Incongruenza nella linea di programmmazione che produce errori nell'esecuzione del programma.
(2) Trad.: Hack. Con questo termine si intende un approccio intuitivo ad un problema, anche per tentativi, che permette tuttavia di ottenere rapidamente risultati utili. Il termine derivato "hacker" identifica il non-professionista informatico (smanettone) che non di rado si pone in posizione di sfida rispetto ai grandi sistemi informatici.
(3) Trad.: Layerists (da “layer”= strato,livello). Indica una categoria di specialisti esperti nella realizzazione di routines di esecuzione di determinate operazioni o sequenze di operazioni in linguaggi informatici complessi.
(4) Trad.: Extensabilitists (da “extension” = estensione). Indica una categoria di specialisti esperti nella realizzazione di applicazioni-figlie che operano come ampliamento delle funzioni e/o delle potenzialita' di una determinata applicazione-madre.
(5) Trad. lett.: Cassetta degli attrezzi. Si intende un insieme di strumenti software (utilities) che permettono di effettuare automaticamente varie operazioni di supporto operativo all’attività informatica.
(6) Per “libreria” si intende un programma o file o altro richiamabile durante l'esecuzione di un determinato software, allo scopo di eseguire operazioni o estrarre informazioni o altro.


Traduzione di Maurizio Castelvetro -1996






.


Appunti di Programmazione Futurista
Notes of Futurist Programming

Paul Haeberli and Bruce Karsh

Un elenco di letture sulla Programmazione Futurista

Queste sono alcune referenze che potreste trovare utili.

Lessico di "Scienza" informatica

Il software moderno è incredibilmente sprecone.

Il tempo dell'utente è una cosa preziosa. Date un'occhiata ai tempi di avvio di alcune macchine:

Non é sorprendente che le macchine più costose sprechino maggiormente il tempo dell'utente? Una workstation Unix eseguirà più di un bilione di istruzioni per sé stessa, prima di eseguire anche solo una delle istruzioni per l'utente.

E' stato fatto qualche progresso nello sviluppo di software?

Negli ultimi 20 anni le performance delle macchine sono incrementate di un fattore 200. Perchè le performance del software non sono incrementate neanche di un fattore 2 ?

Slogan

Appunti sulla tradizione della scienza informatica

Esercizi di Programmazione Futurista

Bagagli

Alla ricerca di uno status tecnologico

Come lavereste una finestra?

Immaginiamo che ci venga richiesto di lavare una finestra e che noi decidiamo di farlo nello stesso modo in cui il software viene sviluppato. Noi otterremo cose di questo tipo:

Chi preferireste che "risolvesse" questo problema per voi, uno "scienziato" dei computer o un uomo delle pulizie?

Programmatori futuristi

La tirannia dell'eleganza strisciante

"Guarda questa stupenda auto sportiva che ho appena comprato!"

Le massime priorità della Programmazione Futurista

Noi RIFIUTIAMO


NOTE



(1) Object-Oriented : Tecnica di progettazione del software orientata ad oggetti.
(2) Top-Down Design: Tecnica di progettazione del software dove le principali funzioni del programma sono prima definite e poi sviluppate con maggiore dettaglio.
(3) Type safe: Linguaggio di programmazione dove entità come "carattere" o "numero a virgola mobile" sono accuratamente distinte tra loro, oppure assegnate l'una all'altra.
(4) Trad.: Hack. Con questo termine si intende un approccio intuitivo ad un problema, anche per tentativi, che permette tuttavia di ottenere rapidamente risultati utili. Il termine derivato "hacker" identifica il non-professionista informatico (smanettone) che non di rado si pone in posizione di sfida rispetto ai grandi sistemi informatici.
(5) Trad.: Cimice. Incongruenza nella linea di programmmazione che produce errori nell'esecuzione del programma.
(6) Sistema operativo dove i programmi vengono generati dinamicamente per fare cose come leggere dati da uno specifico file su disco, o salvare e ricostituire lo stato dei processi. Henry Massalin dimostrò che egli avrebbe potuto realizzare un sistema operativo in grado di girare circa 10 volte più velocemente dei sistemi operativi progettati con tecniche convenzionali di programmazione.
(7) Quick Draw: Gestione grafica del sistema operativo Apple.


Traduzione di Maurizio Castelvetro -1996







HOME