Nuove invenzioni significative nel campo dell'informatica dal 1980


561

Questa domanda è nata dai commenti sui diversi tipi di progressi nel campo dell'informatica negli ultimi 50 anni circa.

Alcuni altri partecipanti mi hanno chiesto di sollevarlo come una domanda per l'intero forum.

L'idea di base qui non è quella di colpire lo stato attuale delle cose, ma di cercare di capire qualcosa sul progresso di trovare nuove idee e principi fondamentali.

Sostengo che abbiamo bisogno di idee davvero nuove nella maggior parte delle aree dell'informatica e vorrei conoscere quelle importanti e potenti che sono state fatte di recente. Se non riusciamo davvero a trovarli, allora dovremmo chiedere "Perché?" e "Cosa dovremmo fare?"


77
Jeff Atwood ha confermato che l'utente "Alan Kay" è THE "Alan Kay". Sai, il tizio che lavorava per quella compagnia di fotocopiatrici ... ;-) en.wikipedia.org/wiki/Alan_Kay
splattne,

1
Ho visto questo video: video.google.com/videoplay?docid=-533537336174204822 - Un video storico (1979) sullo sviluppo di Dynabook, Children and Computers e molto altro presentato da Alan Kay. Incredibili cose fatte prima del 1970 - in particolare la parte "Sketchpad" del 1962.
splattne

2
a seconda della propria definizione, la risposta potrebbe essere qualsiasi cosa, da "nessuna" fino a un elenco di ogni possibile tecnologia. E tutte quelle risposte sarebbero corrette o errate a seconda della definizione di "una nuova idea" che il lettore / osservatore usa ...
Emile Vrijdags,

3
Dopo aver visto tutte le risposte qui: buon dolore! Non abbiamo fatto nulla negli ultimi 30 anni ??
Jeremy Powell,

2
@Will: Stranamente credo di aver recentemente appreso una risposta interessante a questa domanda: algoritmi di clustering veloce . DBSCAN è lo stato dell'arte per gran parte di questo (O (n log n) nel numero di punti nel set di dati), e risale al 1996. Purtroppo, con la domanda chiusa non mi prenderò il tempo di leggere le molte risposte per scoprire se qualcuno mi ha battuto.
dmckee --- ex gattino moderatore

Risposte:


311

Internet stesso precede il 1980, ma il World Wide Web ("ipertesto distribuito tramite meccanismi semplici"), come proposto e attuato da Tim Berners-Lee, è iniziato nel 1989/90.

Mentre l'idea dell'ipertesto esisteva prima ( lo Xanadu di Nelson aveva cercato di implementare uno schema distribuito), il WWW era un nuovo approccio per l'implementazione di un sistema ipertestuale distribuito. Berners-Lee ha combinato un semplice protocollo client-server, un linguaggio di markup e uno schema di indirizzamento in modo potente e facile da implementare.

Penso che la maggior parte delle innovazioni siano create nel ri-combinare pezzi esistenti in modo originale. Ciascuno dei pezzi del WWW era esistito in qualche modo prima, ma la combinazione era evidente solo col senno di poi.

E so per certo che lo stai usando proprio ora.


26
+1 per il più ovvio ma anche il più facilmente dimenticato perché lo diamo per scontato :)
PolyThinker,

20
Non sto usando il World Wide Web in questo momento. Sto usando una serie di valvole conosciute come Internet, ottenute tramite Google.
Robert S.

13
@bruceatk: l'ipertesto è un'implementazione del testo. Il testo è stato inventato nel 3500 a.C.
Portman,

1
@bruceatk: non credo che abbia scritto del WWW fino al 1989. w3.org/People/Berners-Lee
Portman

2
@splattne: E pensare è diventato ricerca
u0b34a0f6ae,

235

Free Software Foundation (fondata nel 1985)

Anche se non sei un sostenitore sincero della loro filosofia, le idee che hanno spinto, del software libero, dell'open source hanno avuto un'incredibile influenza sull'industria del software e sui contenuti in generale (ad esempio Wikipedia).


9
Concordo sul fatto che FSF sia stato molto influente, ma c'è una tendenza tra i suoi sostenitori a sposare il "pensiero di gruppo". Così tanti FSF non possono accettare che Apple OSX e MS Windows siano molto meglio di qualsiasi sistema operativo open source per l'utente medio. Nessuno vuole ammetterlo.
RussellH,

32
L'intero scopo di FSF è quello di promuovere software che può essere liberamente utilizzato, modificato e ridistribuito da tutti. OSX e Windows non sono "migliori" in questo per nessuna definizione.
Adam Lassek,

5
@RussellH: stai confondendo "Open Source" e "Software gratuito (come in Freedom)". Il tuo commento, infatti, illustra con precisione il motivo per cui la distinzione è importante. Comunque, Firefox è migliore di Internet Explorer e Safari, ed è più importante per gli utenti di Windows vs MacOS vs Linux.
niXar,

8
Janie, non devi essere un sostenitore per vedere che i principi che stanno spingendo hanno avuto un effetto importante sul settore. Non mi interessa essere trascinato in una discussione sul fatto che il FSF sia comunista o se dovresti abbracciare alcuni principi comunisti.
Pensando in modo strano al

9
Invenzione legale, non invenzione informatica.
Charles Stewart,

150

Penso che sia giusto dire che nel 1980, se stavi usando un computer, o ti stavi pagando o eri un geek ... quindi cosa è cambiato?

  • Stampanti e desktop publishing di livello consumer . Volevo dire che non era necessaria una macchina da stampa per produrre materiale stampato di grande volume e alta qualità. Questo è stato grande - ovviamente, al giorno d'oggi lo diamo per scontato, e soprattutto non ci preoccupiamo nemmeno della parte di stampa perché tutti sono online comunque.

  • Colore . Sul serio. Gli schermi a colori hanno fatto un'enorme differenza nella percezione dei non-geek di giochi e applicazioni. Improvvisamente i giochi sembravano meno un duro lavoro e più come guardare la TV, che ha aperto le porte a Sega, Nintendo, Atari e altri per portare i giochi di consumo in casa.

  • Compressione multimediale (file MP3 e video). E un sacco di cose - come TiVO e iPod - che non pensiamo più ai computer perché sono così onnipresenti e facili da usare. Ma loro sono.

Il filo conduttore qui, penso, è roba che una volta era impossibile (fare documenti stampati; riprodurre accuratamente le immagini a colori; inviare messaggi in tutto il mondo in tempo reale; distribuire materiale audio e video), e quindi era costoso a causa delle attrezzature e della logistica coinvolto ed è ora a livello di consumatore. Quindi, cosa stanno facendo le grandi aziende che prima erano impossibili ma che potrebbero essere interessanti se riusciamo a capire come farlo in modo economico e piccolo?

Tutto ciò che comporta ancora il trasporto fisico è interessante da guardare. La videoconferenza non ha ancora sostituito le riunioni reali, ma con la giusta tecnologia potrebbe ancora. Alcuni viaggi ricreativi potrebbero essere eliminati da un ambiente immersivo completamente sensoriale - l'home cinema è un esempio banale; un altro è il "campo da golf virtuale" in un edificio per uffici a Soho, dove si gioca a 18 buche del vero golf su un campo simulato.

Per me, tuttavia, la prossima grande cosa sarà la fabbricazione. Fare cose. Cucchiai e chitarre e sedie e vestiti e macchine, piastrelle e roba. Cose che fanno ancora affidamento su un'infrastruttura di produzione e distribuzione. Non devo più andare in un negozio per comprare un film o un album - per quanto tempo non devo andare al negozio per vestiti e stoviglie?

Certo, ci sono sviluppi interessanti in corso con display OLED e GPS e banda larga mobile e contenitori IoC e scripting e "il cloud" - ma è ancora solo un modo nuovo di mettere le immagini su uno schermo. Posso stampare le mie foto e scrivere le mie pagine Web, ma voglio essere in grado di fabbricare un cestino di lino che si adatta esattamente a quell'angolo accanto alla mia scrivania e una staffa di montaggio per attaccare la mia unità FX per chitarra alla mia scrivania, e qualcosa per agganciare il cellulare al manubrio della bici.

Non legato alla programmazione? No ... ma nel 1980, nemmeno la produzione del suono era corretta. O distribuzione video. O inviando messaggi ai tuoi parenti in Zambia. Pensa in grande, gente ... :)


1
Penso che la compressione dei media non sia un nuovo concetto (risale al lavoro di Shannon negli anni '50), è solo diventata fattibile con hardware migliorato (abbastanza veloce, in grado di riprodurre i media).
Kornel,

Dovrei essere d'accordo sul fatto che la fabbricazione sia qualcosa che penso possa essere una delle prossime grandi cose. Quando gli "stampatori" di oggetti diventano mainstream (stampanti in grado di replicare semplici oggetti fisici durevoli) penso che saremo lì.
Andy Webb,

Sarebbe anche bello scansionare gli oggetti esistenti in modo da poter effettuare sostituzioni. In molte occasioni ho dovuto acquistare una vite o una parte strana per sostituire quella che si è rotta in casa o sulla mia bici. Con un tale sistema ho potuto scansionare la parte vecchia, ripararla nel software e quindi creare la sostituzione.
Andy Webb,

44
La stampa desktop e la stampa di alta qualità sono state inventate da Xerox PARC negli anni '70, alcune delle Altos di allora avevano anche schermi a colori di alta qualità. Internet ha preceduto il 1980. La compressione dei media ha preceduto il 1980. La domanda è: quali nuove tecnologie fondamentali sono state inventate dal 1980
Alan Kay,

3
Signore, siete visionari. Non lasciarti abbattere dall'uomo. Le stampanti "da stampa" rappresentano la prossima grande rivoluzione.
Waylon Flinn,

137

Gestione dei pacchetti e controllo di revisione distribuito.

Questi schemi nel modo in cui il software viene sviluppato e distribuito sono abbastanza recenti e stanno ancora iniziando a produrre un impatto.

Ian Murdock ha definito la gestione dei pacchetti "il singolo più grande progresso che Linux ha apportato al settore". Bene, lo farebbe, ma ha ragione. Il modo in cui il software è installato è cambiato in modo significativo dal 1980, ma la maggior parte degli utenti di computer non ha ancora riscontrato questo cambiamento.

Joel e Jeff hanno parlato del controllo di revisione (o controllo della versione o controllo del codice sorgente) con Eric Sink in Podcast # 36 . Sembra che la maggior parte degli sviluppatori non abbia ancora raggiunto i sistemi centralizzati e DVCS è ampiamente considerato misterioso e superfluo.

Dalla trascrizione Podcast 36 :

00:06:37

Atwood: ... Se supponi - e questo è un grande presupposto - che la maggior parte degli sviluppatori abbia in qualche modo padroneggiato il controllo del codice sorgente fondamentale - che trovo non essere vero, francamente ...

Spolsky: No. La maggior parte di loro, anche se hanno, è il check-in, il check-out che comprendono, ma si ramificano e si fondono - che confondono il diavolo.


1
Se uno dovrebbe contare come una nuova invenzione significativa, è git.
hasen

8
hasen j: git è un fantastico DCMS, tuttavia ce ne sono stati molti altri implementati prima che git - git, sia una nuova significativa implementazione di un'idea.
Arafangion,

+1 per la gestione dei pacchetti. Ancora una delle cose più importanti che Linux / BSD deve tenere testa agli altri, anche se il resto ci sta arrivando (solo molto lentamente).
nuovo123456

Anche i sistemi di controllo delle revisioni basati su server sono in gran parte sviluppi successivi al 1980, e vanno dal solo stato attuale alla storia dello stato ... è un cambiamento colossale e sottile.
Donal Fellows

Il controllo di revisione distribuito è il nome sbagliato. A nessuno importa se il tuo sistema non è centralizzato. Ciò che è importante è se si tengono traccia dei set di modifiche o delle versioni. Ma il più delle volte, si incontrano (GIT, Mercurial), il che confonde tutti. Lo ha detto Joel Spolsky in un post sul blog :With distributed version control, the distributed part is actually not the most interesting part.
Benjamin Crouzier,

123

BitTorrent . Trasforma completamente quella che in precedenza sembrava una regola ovviamente immutabile: il tempo impiegato da una sola persona per scaricare un file su Internet aumenta in proporzione al numero di persone che lo scaricano. Affronta anche i difetti delle precedenti soluzioni peer-to-peer, in particolare per quanto riguarda la "sanguisuga", in modo organico rispetto alla soluzione stessa.

BitTorrent trasforma elegantemente quello che normalmente è uno svantaggio - molti utenti che cercano di scaricare un singolo file contemporaneamente - in un vantaggio, distribuendo il file geograficamente come parte naturale del processo di download. La sua strategia per ottimizzare l'uso della larghezza di banda tra due peer scoraggia le sanguisughe come effetto collaterale: è nell'interesse di tutti i partecipanti imporre la limitazione.

È una di quelle idee che, una volta che qualcun altro la inventa, sembra semplice, se non ovvia.


È vero, anche se BitTorrent può essere in qualche modo diverso / migliorato, la nuova significativa invenzione dovrebbe davvero essere la distribuzione P2P, piuttosto che qualsiasi implementazione specifica come BitTorrent.
Ilari Kajaste,

10
Non sono d'accordo. Il P2P non è affatto nuovo, è più vecchio di USENET. Le app "P2P" Pre-bitTorrent per desktop (Kazaa e simili) stanno semplicemente reimballando il concetto client-server, aggiungendo una directory centrale dinamica di server. Ogni client "peer" si connette a un singolo altro server "peer" per trasferire un file. Il fatto che un singolo nodo faccia entrambe le cose è vecchio cappello (almeno per i sistemi pre-Windows). Il protocollo bitTorrent è (AFAIK) un modo completamente nuovo di trasferire file, che sfrutta più sistemi per trasferire un file tra loro in modo veramente distribuito.
Kief,

7
@JL: In teoria, il download diretto è più veloce, ma non in pratica. Con una seminatrice e un distributore, non ci dovrebbero essere differenze. Non appena aggiungi un altro leacher, quel leacher può iniziare a prendere pezzi da chiunque abbia una connessione più veloce (anche se il client con la connessione più veloce non ha il file completo). Con un download diretto, per sfruttare la connessione più veloce, dovresti prima aspettare che il client finisca il download prima di poter iniziare.
Peter Di Cecco

1
Penso che la domanda migliore diventi quanta larghezza di banda risparmi ospitando un torrent e seminandolo con quella che sarebbe stata una casella di download diretto. Solo aziende come Blizzard lo sanno ora e non li ho mai visti parlare di numeri. Senza un "super seed" i torrent faranno affidamento sugli utenti del seed, che semplicemente non funziona con connessioni asincrone e persone che non vogliono lasciare il proprio computer acceso e saturo a monte.
semi

6
@JL: i torrent sono più lenti del download diretto? La mia esperienza "pratica" dice diversa; prova a scaricare Eclipse in entrambi i modi.
Decano J

120

L'inferenza di tipo Damas-Milner (spesso chiamata inferenza di tipo Hindley-Milner) fu pubblicata nel 1983 e da allora è stata la base di ogni sofisticato sistema di tipo statico. Era un'idea davvero nuova nei linguaggi di programmazione (ammessa sulla base di idee pubblicate negli anni '70, ma non resa pratica fino a dopo il 1980). In termini di importanza, lo metto con il Sé e le tecniche utilizzate per implementare il Sé; in termini di influenza non ha pari. (Il resto del mondo OO sta ancora facendo variazioni su Smalltalk o Simula.)

Le variazioni sull'inferenza del tipo sono ancora in corso; la variazione che vorrei individuare maggiormente è il meccanismo di classe di tipo di Wadler e Blott per la risoluzione del sovraccarico, che in seguito è stato scoperto per offrire meccanismi molto potenti per la programmazione a livello di tipo. La fine di questa storia è ancora in fase di scrittura.


3
+1 I sistemi di tipo statico rappresentano un enorme passo avanti nello sviluppo del software. Non potrei essere più d'accordo con questa risposta.
Jeremy Powell,

104

Ecco un plug -in per la riduzione delle mappe di Google , non solo per se stesso, ma come proxy per il raggiungimento da parte di Google della gestione di servizi veloci e affidabili su aziende agricole di macchine di materie prime inaffidabili. Sicuramente un'invenzione importante e totalmente diversa dagli approcci mainframe di grandi dimensioni al calcolo dei pesi massimi che hanno dominato il posatoio nel 1980.


10
map-reduce non è affatto un'invenzione di Google.
Akappa,

20
Sono un programmatore funzionale. La mia prima lingua era APL. Il tuo punto, esattamente?
Norman Ramsey,

15
Quindi (mapcar fl) e (riducono fl) in Lisp funzionano automaticamente su un numero arbitrario di macchine per materie prime, gestendo tutte le intercomunicazioni, i guasti e i riavvii?
Jared Updike,

16
La riduzione delle mappe di Google non ha molto a che fare con la riduzione delle mappe funzionale.
aehlke,

91

Tagging , il modo in cui le informazioni sono classificate. Sì, le piccole caselle di testo sotto ogni domanda.

È sorprendente che ci siano voluti circa 30 anni per inventare l'etichettatura. Abbiamo usato elenchi e sommari; abbiamo usato cose che sono ottimizzate per i libri stampati.

Tuttavia, 30 anni sono molto più brevi del tempo necessario alle persone per rendersi conto che i libri stampati possono essere in formato più piccolo. Le persone possono tenere i libri in mano.

Penso che il concetto di etichettatura sia sottovalutato tra i principali ragazzi CS. Tutta la ricerca è focalizzata sull'elaborazione del linguaggio naturale (approccio top-down). Ma il tagging è la prima lingua in cui sia i computer che le persone possono capire bene. È un approccio dal basso verso l'alto che consente ai computer di usare i linguaggi naturali.


1
D'accordo - questo è correlato alla mia tesi secondo cui l'unica cosa nuova che mi viene in mente è il markup sintattico da interrogare tra molti domini - ma lo hai affermato meglio.
dkretz,

40
Scopri Engelbart nel 1962-72
Alan Kay il

Per me il tagging è molto simile ai primi motori di ricerca che utilizzavano il tag meta = parole chiave (anche quello post-80, sto solo sostenendo che il tag non vale la pena menzionare).
Kornel,

1
Mentre il tagging nel computing è un approccio relativamente nuovo, il tagging è anche un concetto ereditato dai libri; nei libri, si chiama indicizzazione.
Domchi,

6
le librerie usano i "tag" da ... beh, non lo so, ma da molto tempo. Pensa alle carte dei libri (scusate, non sono sicuro di come siano chiamate in inglese) taggate "libri su xxx".
nico,

80

Penso che stiamo guardando questo nel modo sbagliato e traggendo le conclusioni sbagliate. Se lo capisco bene, il ciclo procede:

Idea -> prima implementazione -> adozione di minoranza -> massa critica -> prodotto di base

Dalla prima idea alla merce, spesso hai secoli, supponendo che l'idea arrivi mai a quel livello. Da Vinci potrebbe aver disegnato una specie di elicottero nel 1493 ma ci sono voluti circa 400 anni per ottenere una vera macchina in grado di sollevarsi da terra.

Dalla prima descrizione di William Bourne di un sottomarino nel 1580 alla prima implementazione nel 1800, hai 220 anni e gli attuali sottomarini sono ancora in una fase di infanzia: quasi non sappiamo nulla del viaggio sottomarino (con 2/3 del pianeta sott'acqua, pensa a il potenziale immobiliare;).

E non si può dire che non esistessero idee precedenti, molto precedenti di cui non abbiamo mai sentito parlare. Basato su alcune leggende, sembra che Alessandro Magno abbia usato una specie di campana subacquea nel 332 a.C. (che è l'idea di base di un sottomarino: un dispositivo per trasportare persone e rifornimento d'aria sotto il mare). Contando ciò, stiamo guardando 2000 anni dall'idea (anche con un prototipo di base) al prodotto.

Quello che sto dicendo è che cercare oggi implementazioni, per non parlare di prodotti, che non erano nemmeno idee prima del 1980 è ... Scommetto che l'algoritmo "ordinamento rapido" era usato da un impiegato di file senza nome nell'antica Cina. E allora?

40 anni fa c'erano computer collegati in rete, ma ciò non era paragonabile a quello di Internet di oggi. L'idea / tecnologia di base era lì, ma a prescindere non si poteva giocare a Warcraft online.

Sostengo che abbiamo bisogno di idee davvero nuove nella maggior parte delle aree dell'informatica e vorrei conoscere quelle importanti e potenti che sono state fatte di recente. Se non riusciamo davvero a trovarli, allora dovremmo chiedere "Perché?" e "Cosa dovremmo fare?"

Storicamente, non siamo mai stati in grado di "trovarli" così vicini all'idea, così in fretta. Penso che il ciclo stia diventando più veloce, ma l'informatica è ancora dannatamente giovane.

Attualmente, sto cercando di capire come realizzare un ologramma (tipo Star Wars, senza alcun supporto fisico). Penso di sapere come farlo funzionare. Non ho nemmeno raccolto gli strumenti, i materiali, i finanziamenti e tuttavia, anche se avessi successo in qualche modo, l'idea reale sarebbe già vecchia di diversi decenni, per lo meno e le relative implementazioni / tecnologie sono state utilizzate per altrettanto tempo .

Non appena inizi a elencare i prodotti reali, puoi essere abbastanza sicuro che concetti e prime implementazioni esistevano qualche tempo fa. Non importa

Potresti sostenere con qualche ragione che nulla è nuovo, mai, o che tutto è nuovo, sempre. Questa è filosofia ed entrambi i punti di vista possono essere difesi.

Da un punto di vista pratico, la verità sta nel mezzo. La verità non è un concetto binario, la logica booleana deve essere dannata.

I cinesi potrebbero aver inventato la macchina da stampa qualche tempo fa, ma sono solo circa 10 anni che la maggior parte delle persone può stampare foto a colori decenti a casa a un prezzo ragionevole.

L'invenzione non è in nessun luogo e ovunque, a seconda dei criteri e del quadro di riferimento.


1
+1. Date un'occhiata per esempio a iPad;) Vedi stackoverflow.com/questions/432922/...
VonC

4
Se solo ci fosse un fav. tag risposta ... se solo ci fosse un'opzione per dare 2 voti ...
tshepang,

Bella risposta. Forse dovremmo chiederci allora quali nuove idee ci sono state negli ultimi 30 anni (non nuovi prodotti / invenzioni). E dal momento che è troppo difficile dire se saranno "significativi" o rivoluzionari prima ancora che vengano costruiti ... forse possiamo speculare e quindi decidere dove spendere più energia.
mpen

3
Ci sono state innumerevoli nuove fantastiche idee negli ultimi 30 anni, ma non c'è stato necessariamente tempo per vedere quali contano. Scegli qualsiasi campo dell'informatica e sfoglia la ricerca rilasciata nell'ultimo anno e non mancheranno nuove idee, dai piccoli miglioramenti alle revisioni complete. Tuttavia, gli anni '80 e precedenti sembrano così rivoluzionari e pieni perché quelle idee sono ora state realizzate e sono onnipresenti, quindi sembrano significative. Avremo questa stessa discussione tra 30 anni, quando le idee da ora in poi si saranno ridotte a meravigliose invenzioni.
Perrako,

@Mark: Cosa si qualifica come una "nuova idea"? Ogni idea, pezzo di codice, organismo biologico ha un contesto, che in una visione non renderebbe nulla di veramente nuovo. Il problema con la domanda del Prof. Kay è che la filosofia alla base dell'incendio che lui e i suoi colleghi di Xerox Parc (e Engelbart 10 anni prima di lui) hanno acceso sotto l'industria della tecnologia / del computer ha bruciato come un fuoco incontrollato e ha cambiato il mondo, il contesto. Le idee veramente nuove là fuori non hanno alcun impatto, quindi nessuno di noi ne ha sentito parlare - Sistemi operativi scritti con prove della correttezza e sicurezza del kernel, architetture non ARM, non x86, ecc.
Jared Updike

68

Algoritmo di Page Rank di Google . Sebbene possa essere visto solo come un perfezionamento dei motori di ricerca per la scansione del Web, vorrei sottolineare che anche questi sono stati sviluppati dopo il 1980.


"Solo una raffinatezza" è spesso un ossimoro. In questo caso, la raffinatezza è la tecnologia. Internet era un posto molto più spaventoso prima che Google portasse quell'algoritmo di rango di pagina (e forniva i risultati rapidamente e senza ingombro di pagine, e tutte le altre drag che dovremmo soffrire per usare altri motori di ricerca in passato).
David Berger,

19
non penso che tu sappia cos'è un ossimoro.
Jason,

1
Ricordi l'altavista e quella piccola compagnia sconosciuta: Yahoo?
Esteban Küber,

@voyager: anche Hotbot e Lycos non erano male.
Decano J

2
@martin è un ossimoro non ossimoro . la contraddizione è nella definizione: ninjawords.com/oxymoron
Jason

66

DNS, 1983 e gli avanzamenti dipendenti come la risoluzione dell'host di posta elettronica tramite record MX anziché bang-path. *brivido*

Zeroconf funziona su DNS, 2000. Collego la mia stampante alla rete e il mio laptop lo vede. Avvio un server Web sulla rete e il mio browser lo vede. (Supponendo che trasmettano la loro disponibilità.)

NTP (1985) basato sull'algoritmo di Marzullo (1984). Tempo preciso su reti nervose.

La rotellina del mouse, 1995. Usare i topi senza di essa sembra così primitivo. E no, non è qualcosa a cui la squadra di Engelbart ha pensato e ha dimenticato di menzionare. Almeno non quando ho chiesto a qualcuno che era nella squadra in quel momento. (Fu ad un evento di Engelbart nel 1998 o giù di lì. Devo gestire uno dei primi topi.)

Unicode, 1987 e i suoi avanzamenti dipendenti per diversi tipi di codifica, normalizzazione, testo bidirezionale, ecc.

Sì, è abbastanza comune per le persone usare tutti e 5 questi tutti i giorni.

Sono queste "idee davvero nuove?" Dopotutto, c'erano i topi, c'erano le codifiche dei personaggi, c'era il cronometraggio della rete. Dimmi come posso distinguere tra "nuovo" e "davvero nuovo" e risponderò a quello per te. La mia intuizione dice che questi sono abbastanza nuovi.

Nei domini più piccoli ci sono avanzamenti facilmente più recenti. In bioinformatica, ad esempio, Smith-Waterman (1981) e più in particolare BLAST (1990) rendono effettivamente possibile il campo. Ma sembra che tu stia chiedendo idee che sono molto ampie in tutto il campo dell'informatica, e il frutto basso viene raccolto per primo. Così è sempre con un nuovo campo.


63

E le fotocamere digitali?

Secondo Wikipedia, la prima vera fotocamera digitale è apparsa nel 1988, con le fotocamere digitali del mercato di massa che sono diventate accessibili alla fine degli anni '90.


Ma l'idea, l'invenzione e i brevetti erano presenti all'inizio degli anni '70 (Vedi la sezione "Sviluppo precoce")
saschabeaumont,

10
Camera digitale? Ci si chiede, a giudicare dai voti più alti, cosa la gente capisce oggi con il termine "informatica".
MaD70,

1
Le immagini sono le basi del moderno consumer computing. Senza una webcam, una reflex point-and-shoot o costosa (per i giornali), i consumatori moderni non avrebbero davvero bisogno dei computer.
Marius

14
@ MaD70: suppongo che non ti piaccia tanto la fotografia, vero? Solo per citarne alcuni: riconoscimento facciale automatico, autofocus, "modalità panoramica", bilanciamento del bianco automatico ... rientra sicuramente nell'informatica.
nico,

6
Siamo spiacenti, la prima macchina fotografica digitale prototipo è stata fatta da Kodak nel 1975 a quanto pare. pluggedin.kodak.com/post/?ID=687843
Mark Ransom

50

Linguaggi di shading moderni e prevalenza delle GPU moderne.

La GPU è anche un supercomputer parallelo a basso costo con strumenti come CUDA e OpenCL per un veloce codice parallelo di alto livello . Grazie a tutti quei giocatori là fuori che fanno scendere i prezzi di queste meraviglie hardware sempre più impressionanti. Nei prossimi cinque anni spero che tutti i nuovi computer venduti (e anche gli iPhone) avranno la possibilità di eseguire il codice in modo massiccio parallelo come presupposto di base, proprio come la modalità protetta a colori a 24 bit o 32 bit.


Provalo. Non ti piacerà. I sistemi multi-core sono molto più veloci per la maggior parte dei problemi del mondo reale. YMMV. Buono per la grafica e non molto altro.
xcramps,

C'è un motivo per cui si chiamano GPU e non PPU ... (unità di elaborazione parallele). Molte persone non hanno la pazienza e / o le abilità per scrivere un buon codice per loro. Sebbene ci sia una quantità crescente di progetti di ricerca che stanno esplorando utilizzando GPUS per scopi non grafici.
RCIX,

3
L'ho provato. Mi è piaciuto. Posso eseguire tutto il mio codice Matlab sulla GPU, senza modifiche al codice sorgente, tranne alcune modifiche tipografiche che puoi fare con una ricerca. Google "Matlab GPU computing".
Contango,

3
Sono d'accordo con l'OP. La pipeline programmabile, mentre qualcosa che ora potremmo dare per scontato, ha completamente cambiato il mondo della grafica e sembra che potrebbe continuare a cambiare altre parti del mondo della programmazione. @xcramps: penso che mi manchi qualcosa; l'ultima volta che ho controllato, le GPU erano sistemi multi-core. Solo con molti più core. Un po 'come ... supercomputer. Ma immagino che quelli non vengano realmente utilizzati per nulla nel mondo reale ...
Perrako

Due anni dopo (non 5 come ho detto) e i dispositivi mobili spediti con OpenCL sono all'orizzonte: macrumors.com/2011/01/14/…
Jared Updike

43

La compilation JIT è stata inventata alla fine degli anni '80.


Bene, l'intero lavoro sull'implementazione del linguaggio autonomo (che è stato completamente compilato da JIT) è stato sorprendente, e la sua utilità può essere vista oggi per Javascript all'interno di Google V8. E questo è tra la fine degli anni '80 e l'inizio degli anni '90.
Blaisorblade,

7
Ho visto questa idea per la prima volta nell'ultimo capitolo del libro Anatomy of Lisp di John Allen, pubblicato negli anni '70. Ha dato un riferimento a una tesi di dottorato degli anni '70 come il creatore.
Darius Bacon,

Forse dovremmo perfezionarlo in "compilation JIT adattativa basata sul profilo" come Self JIT o Sun Hotspot Java
kohlerm,

34
Una delle tesi di dottorato nei primi anni '70 che aveva il JIT era quella di Jim Mitchell al CMU - in seguito andò al PARC
Alan Kay il

2
Nori, KV; Ammann, U .; Jensen; Nageli, H. (1975). Le note di implementazione del compilatore Pascal P. Zurigo: Eidgen. Tech. Hochschule. (Grazie wikipedia)
Arafangion,

42

Per rispondere alle due domande su "Perché la morte di nuove idee" e "cosa fare al riguardo"?

Sospetto che la mancanza di progressi sia dovuta al massiccio afflusso di capitali e alla ricchezza radicata nel settore. Sembra controintuitivo, ma penso che sia diventata saggezza convenzionale che ogni nuova idea ottenga un colpo; se non lo fa al primo tentativo, non può tornare. Viene acquistato da qualcuno con interessi radicati, o solo FAIL, e l'energia è sparita. Un paio di esempi sono i tablet e il software per ufficio integrato. Il Newton e molti altri avevano un vero potenziale, ma finirono (attraverso l'attrito competitivo e il cattivo giudizio) sperperando i loro diritti di nascita, uccidendo intere categorie. (Ero particolarmente affezionato al Framework di Ashton Tate; ma sono ancora bloccato con Word ed Excel).

Cosa fare? La prima cosa che mi viene in mente è Wm. Il consiglio di Shakespeare: "Uccidiamo tutti gli avvocati". Ma ora sono troppo ben armati, temo. In realtà penso che la migliore alternativa sia quella di trovare un'iniziativa Open Source di qualche tipo. Sembrano mantenere l'accessibilità e il miglioramento incrementale meglio delle alternative. Ma l'industria è diventata abbastanza grande da rendere necessaria una sorta di meccanismo collaborativo organico per ottenere trazione.

Penso anche che ci sia una dinamica che afferma che gli interessi radicati (in particolare le piattaforme) richiedono una notevole quantità di cambiamenti - abbandono - per giustificare flussi di entrate continui; e questo assorbe molta energia creativa che avrebbe potuto essere spesa in modi migliori. Guarda quanto tempo impieghiamo a calcare l'acqua con la più recente iterazione di Microsoft o Sun o Linux o Firefox, apportando modifiche ai sistemi che per la maggior parte funzionano già bene. Non è perché sono cattivi, è solo costruito nel settore. Non esiste un equilibrio stabile; tutti i meccanismi di feedback sono positivi, favorendo il cambiamento rispetto alla stabilità. (Hai mai visto una funzione ritirata o una modifica ritirata?)

L'altro indizio che è stato discusso su SO è la sindrome di Skunkworks (rif: Geoffrey Moore): la vera innovazione nelle grandi organizzazioni quasi sempre (90% +) si manifesta in progetti non autorizzati che emergono spontaneamente, alimentati esclusivamente da iniziative individuali o di piccoli gruppi ( e più spesso non contrastato da gerarchie formali di gestione). Quindi: domanda autorità, Buck il sistema.


Ho adorato Framework e puoi ancora acquistarlo, ma è costoso.
Norman Ramsey,

7
È sempre più facile avere nuove idee in una nuova area di conoscenza, quindi un numero molto grande di idee importanti è nato negli anni '50 e '60. Ora possiamo semplicemente fare la maggior parte di loro molto meglio.
David Thornley,

6
Penso che questa risposta e i commenti siano messi molto bene.
Alan Kay,

5
@ David: "molto meglio ora". E più economico. E più piccolo. Ciò consente nuovi modi di fare meglio altre cose. Ad esempio 10 canzoni -> 1.000 canzoni -> 1.000 album nella mia tasca, sicuramente è una questione di laurea, ma cambia tutto, anche se qualcuno prima del 1980 mostrò che poteva essere fatto, in teoria, su un gigantesco mainframe. I pezzi potrebbero essere stati lì, ma alcune invenzioni, come l'iPod, sono più della somma delle parti.
Jared Updike,

@Alan Kay, @le dorfier: mi sembra che un parziale contro-esempio con quell'attitudine radicata sia la decisione di Donald Knuth di aumentare asintoticamente il numero di versione di TeX verso pi. Ma è un'istituzione, non una società. Sono sconvolto da Mozilla e Google Race per la versione numero 100 dei loro browser, mentre la standardizzazione intelligente e creativa, nonché l'innovazione nell'accesso e nella trasformazione dei dati sono in ritardo.
Ogerard,

36

Una cosa che mi stupisce è l'umile foglio di calcolo. Le persone non programmatrici costruiscono soluzioni selvagge e meravigliose ai problemi del mondo reale con una semplice griglia di formule. La replica dei loro sforzi nell'applicazione desktop spesso richiede dalle 10 alle 100 volte di più di quanto ci sia voluto per scrivere il foglio di calcolo e l'applicazione risultante è spesso più difficile da usare e piena di bug!

Credo che la chiave del successo del foglio di calcolo sia l'analisi automatica delle dipendenze. Se l'utente del foglio di calcolo fosse costretto a utilizzare il modello di osservatore, non avrebbe alcuna possibilità di farlo bene.

Quindi, il grande progresso è l'analisi automatica delle dipendenze. Ora, perché nessuna piattaforma moderna (Java, .Net, Web Services) l'ha integrata nel nucleo del sistema? Soprattutto in un giorno ed un'era di ridimensionamento attraverso la parallelizzazione - un grafico delle dipendenze porta banalmente alla ricalcolo parallelo.

Modifica: Dang - appena verificato. VisiCalc è stato rilasciato nel 1979 - facciamo finta che sia un'invenzione post-1980.

Edit2: Sembra che il foglio di calcolo sia già stato notato da Alan comunque - se la domanda che lo ha acquistato in questo forum è corretta!


5
Avevo pensato a questa risposta, ma Visicalc è stato rilasciato solo un po 'prima della scadenza del 1980. ( en.wikipedia.org/wiki/VisiCalc )
Pensando in modo strano

ma questo rivela un punto interessante: semplicemente presentare un modo semplice per visualizzare e manipolare i dati ha creato una classe di strumenti incredibilmente utile. c'è qualche altra idea "abilitante" come questa? ne abbiamo bisogno? credo di si.
Javier,


Sono d'accordo con tutto il cuore. L'analisi automatica delle dipendenze potrebbe essere e dovrebbe far parte dei moderni linguaggi di programmazione.
Jesse Pepper,

1
@hasen j: Excel è un foglio di calcolo A proposito ci sono piattaforme moderne che mantengono le dipendenze tra i calcoli - ad esempio Haskel (Excel e i linguaggi funzionali hanno molto in comune - ad esempio funzioni pure e valutazione pigra). Excel è solo molto più intuitivo di Haskel :)
ajuc il

36

Software:

  • Virtualizzazione ed emulazione

  • Trasferimento di dati P2P

  • progetti guidati dalla comunità come Wikipedia, SETI @ home ...

  • web crawling e motori di ricerca web, ovvero indicizzazione di informazioni diffuse in tutto il mondo

Hardware:

  • il PC modulare

  • E-paper


6
La virtualizzazione è stata implementata su VM / CMS nel 1972. Cosa intendi per "PC modulare"?
Hudson,

Penso che per "PC modulare" significhi che chiunque può acquistare componenti quasi intercambiabili e costruire il proprio computer.
Psycho_Penguin,

14
Il P2P fu inventato alla Xerox PARC negli anni '70 - gli Altos erano tutti P2P e le risorse di file e le stampanti e i "router" erano tutti P2P Altos
Alan Kay

1
Ho visto "E-paper" e ho pensato, cosa? come mi fa effetto ogni giorno. Sono contento che esista, ma i lettori elettronici non sono tecnologie molto importanti su base diffusa, rispetto al cellulare o all'iPod.
Jared Updike,

3
Vorrei sottolineare che circa 40-50 anni fa tutti stavano ancora facendo matematica sulla carta principalmente e dicendo lo stesso sui computer ...
RCIX,

36

La riscoperta della monade da parte dei ricercatori di programmazione funzionale. La monade fu determinante nel permettere a un linguaggio puro e pigro (Haskell) di diventare uno strumento pratico; ha anche influenzato la progettazione delle librerie dei combinatori (i combinatori di parser monadici hanno persino trovato la loro strada in Python).

"Un resoconto teorico di categoria dei moduli di programma" di Moggi (1989) è generalmente accreditato di mettere in vista le monadi per un calcolo efficace; Il lavoro di Wadler (ad esempio "Programmazione funzionale imperativa" (1993)) presentava le monadi come strumento pratico.


36

Software di termoretraibile

Prima del 1980, il software era principalmente scritto appositamente. Se gestissi un'azienda e volessi informatizzarti, in genere avresti un computer, un compilatore e un database e scrivevi le tue cose. Il software aziendale era in genere scritto per adattarsi alle pratiche aziendali. Questo non vuol dire che non esistesse un software fisso (ho lavorato con SPSS prima del 1980), ma non era la norma, e quello che ho visto tendeva ad essere un software di infrastruttura e di ricerca.

Al giorno d'oggi, puoi andare in un negozio di computer e trovare, sullo scaffale, tutto il necessario per gestire una piccola impresa. Non è progettato per adattarsi perfettamente a qualsiasi pratica tu abbia mai avuto, ma funzionerà bene una volta che impari a lavorare più o meno in base al suo flusso di lavoro. Le grandi aziende sono molto più vicine al restringimento di quanto non fossero prima, con cose come SAP e PeopleSoft.

Non è una rottura netta, ma dopo il 1980 c'è stato un passaggio molto preciso da costosi software personalizzati a software standard a basso costo e la flessibilità è passata dal software alle procedure aziendali.

Ha anche influenzato l'economia del software. Le soluzioni software personalizzate possono essere redditizie, ma non si adattano. Puoi addebitare un solo cliente così tanto e non puoi vendere la stessa cosa a più clienti. Con il software di termoretraibile, puoi vendere molti e la stessa cosa, ammortizzando i costi di sviluppo su una base di vendita molto ampia. (Devi fornire supporto, ma questo si ridimensiona. Basta considerarlo un costo marginale per la vendita del software.)

Teoricamente, dove ci sono grandi vincitori da un cambiamento, ci saranno perdenti. Finora, il business del software ha continuato ad espandersi, così che quando le aree diventano mercificate si aprono altre aree. È probabile che questo finisca qualche volta, e sviluppatori di talento moderato si troveranno in una vera crisi, incapaci di lavorare per i ragazzi grandi e affollati fuori dal mercato. (Questo presumibilmente accade per altri settori; sospetto che la domanda di commercialisti sia molto più piccola di quanto sarebbe senza QuickBooks e simili.)


Turbo Pascal & C a $ 100 su un sistema MS-DOS ha provocato un prezzo di $ 100 su un complier C per un C / PM da altri.
CW Holeman II,

Spiacenti, abbastanza sicuro che Microsoft vendesse software di termoretraibile prima del 1980. Non che fossero i soli.
Mark Ransom,

34

Al di fuori delle innovazioni hardware, tendo a scoprire che c'è poco o niente di nuovo sotto il sole. La maggior parte delle idee davvero grandi risalgono a persone come von Neumann e Alan Turing.

Molte cose che sono etichettate come "tecnologia" in questi giorni sono in realtà solo un programma o una biblioteca che qualcuno ha scritto, o una ricostruzione di una vecchia idea con una nuova metafora, acronimo o marchio.


3
Non puoi vedere la foresta poiché tutti gli alberi sono in mezzo ... I mattoni sono più o meno gli stessi, ma il risultato è cambiato / evoluto.
Johan

8
... Questa è la definizione di tecnologia;) "l'applicazione pratica della conoscenza ..."
steamer25

1
Sono d'accordo che è tempo per la prossima grande cosa. Sono stanco di tutto il reimballaggio delle cose dimenticate dal passato come qualcosa di nuovo. Come Javascript = AJAX.
James,

32

Computer Worms sono stati studiati nei primi anni ottanta del secolo scorso nel Centro di ricerca Xerox Palo Alto.

Dai programmi "Worm" di John Shoch e Jon Hupp - Prime esperienze con un calcolo distribuito "(Communications of the ACM, March 1982 Volume 25 Number 3, pp.172-180, marzo 1982):

In The Shockwave Rider , J. Brunner sviluppato l'idea di un onnipotente programma "tenia" che si scatena attraverso una rete di computer - un'idea che può sembrare piuttosto inquietante, ma che è anche al di là delle nostre attuali capacità. Il modello di base, tuttavia, rimane molto provocatorio: un programma o un calcolo che può spostarsi da una macchina all'altra, sfruttando le risorse secondo necessità e replicandosi quando necessario.

Allo stesso modo, una volta abbiamo descritto un modello computazionale basato sul classico film di fantascienza, The Blob: un programma che è iniziato in esecuzione su una macchina, ma con l'aumentare dell'appetito per i cicli di calcolo, ha potuto raggiungere, trovare macchine inutilizzate e crescere fino a comprendere quelle risorse. Nel mezzo della notte, un tale programma potrebbe mobilitare centinaia di macchine in un edificio; al mattino, mentre gli utenti reclamavano le loro macchine, il "blob" avrebbe dovuto ritirarsi in modo ordinato, raccogliendo i risultati intermedi del suo calcolo. Nascosto in una o due macchine durante il giorno, il programma potrebbe emergere più tardi man mano che le risorse diventavano disponibili, espandendo di nuovo il calcolo. (Questa affinità per l'esplorazione notturna ha portato un ricercatore a descriverli come "programmi per vampiri").

Citando Alan Kay: "Il modo migliore per predire il futuro è inventarlo".


@Bobby: Secondo le basi della sicurezza informatica, 2006, Lehtinen, Russell & Gangemi, questo lavoro iniziò "intorno al 1980". Quindi, se ignori i precursori della fantascienza, questo conta.
Charles Stewart,

31

Interfacce utente migliori.

Le interfacce utente di oggi fanno ancora schifo. E non intendo in piccoli modi ma in grandi modi fondamentali. Non posso fare a meno di notare che anche i migliori programmi hanno ancora interfacce estremamente complesse o che richiedono molta riflessione astratta in altri modi e che non si avvicinano alla facilità degli strumenti convenzionali non software.

Certo, questo è dovuto al fatto che il software consente di fare molto di più rispetto agli strumenti convenzionali. Non è un motivo per accettare lo status quo. Inoltre, la maggior parte dei software non è semplicemente ben fatta.

In generale, le applicazioni mancano ancora di un certo "giusto funzionamento" sentendosi troppo orientate da ciò che può essere fatto, piuttosto che da ciò che dovrebbe essere fatto. Un punto che è stato sollevato più volte, e che non è ancora stato risolto, è il punto di salvare. Le applicazioni si bloccano, distruggendo ore di lavoro. Ho l'abitudine di premere Ctrl + S ogni pochi secondi (ovviamente, questo non funziona più nelle applicazioni web). Perché devo farlo? È stupidamente stupido. Questo è chiaramente un compito per l'automazione. Ovviamente, l'applicazione deve anche salvare un diff per ogni modifica che faccio (sostanzialmente una lista infinita di annullamenti) nel caso in cui commetta un errore.

Risolvere questo problema non è nemmeno difficile. Sarebbe difficile implementarlo in ogni applicazione poiché non esiste una buona API per farlo. Gli strumenti di programmazione e le librerie devono migliorare significativamente prima di consentire un'implementazione senza sforzo di tali effetti su tutte le piattaforme e programmi, per tutti i formati di file con archiviazione di backup arbitraria e nessuna interazione dell'utente necessaria. Ma è un passo necessario prima che iniziamo finalmente a scrivere applicazioni "buone" anziché semplicemente adeguate.

Credo che Apple al momento si avvicini al sentirsi "solo funziona" per alcuni aspetti. Prendi ad esempio la loro versione più recente di iPhoto che presenta un riconoscimento facciale che raggruppa automaticamente le foto in base alle persone che appaiono in esse. Questa è un'attività classica che l'utente non vuole fare manualmente e non capisce perché il computer non lo fa automaticamente. E anche iPhoto è ancora molto lontano da una buona interfaccia utente, poiché tale funzionalità richiede ancora la massima conferma da parte dell'utente (per ogni foto!), Poiché il motore di riconoscimento facciale non è perfetto.


3
Picasa di Google lo ha da un po '. In effetti, Picasa ha tante altre funzionalità che stanno lentamente eseguendo la scansione in iPhoto.
akshaykarthik,

30

Sistemi HTM ( Hiearchical Temporal Memory ).

Un nuovo approccio all'intelligenza artificiale, avviato da Jeff Hawkins attraverso il libro " On Intelligence ".

Ora attivo come una società chiamata Numenta in cui queste idee vengono messe alla prova attraverso lo sviluppo di un'IA "vera", con un invito alla comunità a partecipare utilizzando il sistema tramite SDK.

Si tratta più di costruire da zero l'intelligenza artificiale, piuttosto che cercare di emulare il ragionamento umano.


11
Quando faranno qualcosa di interessante, sarò il primo e il più forte leader degli applausi
Alan Kay,

@AlanKay Bene, sembra che HTM sia già utilizzato in prodotti reali. Ad esempio: vitamind inc consente di riconoscere oggetti o persone nei filmati TVCC. Vitamindinc è interamente alimentato da HTM. In questo documento , puoi vedere che HTM batte effettivamente l'approccio SVM per il riconoscimento scritto a mano su set di dati come USPS. Il fatto che sia allo stesso tempo biologicamente ispirato e di alto valore pratico mi stupisce. Penso che puoi iniziare ad applaudire proprio ora.
Benjamin Crouzier,

26

L'uso della fisica nell'interazione con il computer umano per fornire una metafora alternativa e comprensibile. Questo combinato con gesti e tattili si tradurrà probabilmente in un rimpiazzo per l'attuale metafora della GUI comune inventata negli anni '70 e di uso comune dalla metà alla fine degli anni '80.

La potenza di calcolo non era presente nel 1980 per renderlo possibile. Credo che i giochi probabilmente abbiano aperto la strada qui. Un esempio può essere facilmente visto nell'interazione dello scorrimento dell'elenco in iPod Touch / iPhone. Il meccanismo di interazione si basa sull'intuizione di come lo slancio e l'attrito funzionano nel mondo reale per fornire un modo semplice per scorrere un elenco di elementi e l'usabilità si basa sul gesto fisico che causa lo scorrimento.


Il primo esempio che mi viene in mente fu il Kit di realtà alternativa di Randy Smith, costruito in Smalltalk-80 al PARC nell'86 o nell'87. Potresti implementare nuovi oggetti con una metafora fisica. Ogni oggetto aveva posizione, massa, quantità di moto e un menu a comparsa per interagire con esso tramite la sua interfaccia di messaggio.
PanCrit

25

Credo che Unit Testing, TDD e Integrazione continua siano invenzioni significative dopo il 1980.


2
Il primo test è stato un metodo molto vecchio che è stato sottoposto a nuova sperimentazione, credo.
Johnno Nolan,

Questa è una questione di ingegneria del software, non una cosa "informatica"
SquareCog,

7
Concordo con John, ad esempio Brooks descrive un approccio test-first in The Mythical Man-Month (1975).
Fabian Steeg,

28
L'integrazione continua è stata fatta seriamente per la prima volta in BBN Lisp 1.85 alla fine degli anni '60, che è diventata Interlisp al PARC. Anche Smalltalk al PARC negli anni '70 era un sistema di integrazione continua.
Alan Kay,

3
Il TDD è diventato generalmente utile solo quando i computer sono diventati abbastanza veloci da eseguire piccoli test così rapidamente da essere disposti a eseguirli più e più volte.
Jay Bazuzi,

25

Cellulari.

Mentre il primo brevetto del "telefono senza fili" risale al 1908, e stavano cucinando da molto tempo (0G nel 1945, 1G lanciato in Giappone nel 1979), i moderni telefoni cellulari digitali 2G non apparvero fino al 1991. Non esisteva SMS fino al 1993 e l'accesso a Internet è apparso nel 1999.


4
Il Giappone nel 1979, prima del 1980. Stiamo cercando nuove invenzioni - pensiamo a laboratori di ricerca, università, dimostrazioni pratiche di domande di brevetto ... tutto ciò che precederà la disponibilità del mercato di massa di un certo numero di anni.
saschabeaumont,

1
La differenza tra 1G e 2G è grande quanto la differenza tra computer analogico e digitale. Penso che 2G (1991) meriti lo status di "nuova" invenzione.
Domchi,

E dipende dalle tecnologie di risparmio energetico e buone batterie.
Johan

23

Ho iniziato a programmare il 2 gennaio 1980. Ho provato a pensare a nuove invenzioni significative nel corso della mia carriera. Faccio fatica a pensare a nessuno. La maggior parte di ciò che ritengo significativo sono stati effettivamente inventati prima del 1980, ma non sono stati ampiamente adottati o migliorati fino a dopo.

  1. Interfaccia grafica utente.
  2. Elaborazione veloce.
  3. Grande memoria (ho pagato $ 200,00 per 16k nel 1980).
  4. Piccole dimensioni: telefoni cellulari, pocket pc, iPhone, netbook.
  5. Grandi capacità di memoria. (Sono passato dal portare un grande floppy da 90k a una chiavetta USB da 8 gig.
  6. Processori multipli. (Quasi tutti i miei computer ne hanno più di uno adesso, il software fa fatica a tenerli occupati).
  7. Interfacce standard (come USB) per collegare facilmente periferiche hardware.
  8. Display a tocco multiplo.
  9. Connettività di rete - che porta all'esplosione di Internet a metà degli anni '90.
  10. IDE con Intellisense e compilazione incrementale.

Mentre l'hardware è migliorato enormemente, l'industria del software ha faticato a tenere il passo. Siamo avanti di anni luce rispetto al 1980, ma la maggior parte dei miglioramenti sono stati i perfezionamenti piuttosto che le invenzioni. Dal 1980 siamo stati troppo impegnati ad applicare ciò che i progressi ci hanno permesso di fare piuttosto che inventare. Di per sé la maggior parte di queste invenzioni incrementali non sono importanti o potenti, ma quando guardi indietro negli ultimi 29 anni sono piuttosto potenti.

Probabilmente dobbiamo abbracciare i miglioramenti incrementali e guidarli. Credo che le idee veramente originali verranno probabilmente da persone con scarsa esposizione ai computer e stanno diventando più difficili da trovare.


"Le idee originali verranno probabilmente da persone con scarsa esposizione ai computer" così vero. e ancora più triste dal momento che la maggior parte di quella esposizione "paralizzante" è Windows / Office.
Javier,

1
Alcune date per invenzioni precedenti: la GUI di Engelbart è stata dimostrata nel 1968 e Xerox PARC Alto è stata sviluppata nel 1973. Più CPU sono nuove sul desktop, ma non nella sala macchine - il cluster VAX è stato disponibile per la prima volta nel 1978.
Hudson

Stavi programmando prima che io nascessi. Ho molta strada da fare.
Kezzer,

Ahia. Non ho iniziato fino a quando avevo 26 anni, ora mi sento davvero vecchio. :)
Bruceatk,

Hai tenuto conto dell'inflazione per quel chip di memoria da $ 200 16k?
Tim Tonnesen,

22

Niente.

Penso che sia perché le persone hanno cambiato il loro atteggiamento. La gente credeva che se avessero trovato quella "grande idea", l'avrebbero resa ricca. Oggi, le persone credono che sia l'esecuzione e non la scoperta che paga di più. Hai mantra come "le idee sono un centesimo alla dozzina" e "il secondo topo prende il formaggio". Quindi le persone si concentrano sullo sfruttamento delle idee esistenti piuttosto che su quelle nuove.


3
Quindi molte delle idee esistenti non sono ancora state implementate.
Breton,

3
Ci sono sempre alcuni pazzi che escogitano nuove idee, non possono proprio evitarlo ;-)
Johan

Ma sono pazzi, quindi non possono vendere le loro idee perché nessuno le ascolterà.
Adam Jaskiewicz,

Le idee sono più la provincia degli artisti. L'implementazione pratica è ciò che facciamo noi ragazzi. Guardare gli ingegneri per idee nuove di zecca è una specie di pesca nello stagno sbagliato. Per nuove idee brillanti, leggi Sf e scopri come si potrebbe fare questa roba (immagino che si potrebbe fare molto). Tuttavia, l'implementazione di un'idea selvaggia può richiedere anni. Gli artisti possono cavarsela vendendo idee e sogni, ma gli ingegneri dovrebbero inventare prodotti ... e anche loro devono mangiare.
Sylverdrag,

16

Sviluppo di comunità Open Source.


2
In realtà, il gruppo di utenti SIG / M disegna un tipo di pre-data che ora chiamiamo open source. Conteneva centinaia di dischi (della varietà floppy) pieni di software CP / M, molti dei quali open source (anche se il termine "open source" non esisteva allora).
Mike Thompson,

2
Nel senso di cooperazione aperta e sviluppo tra le persone che avevano accesso a un computer, è molto simile ai gruppi di utenti IBM negli anni '60. È solo che ora più persone possono permettersi i computer.
David Thornley,

2
Concordo con David, è diventato solo più importante ora che i computer si sono spostati dalle aree dell'istruzione e della scienza al mondo degli affari, questo ha dato origine a software "closed source", confondendo le licenze. È sempre stato lì, non ha avuto bisogno di un nome finché non sono stati coinvolti gli avvocati.
saschabeaumont,

1
Sì, devo anche essere d'accordo con David qui. L'open source è molto prima del 1980. Lo precede di almeno 20 anni. Pensavo che fossero gli anni '50, non gli anni '60.
Brendan Enrick,

16

L' iPad (rilasciato ad aprile 2010): sicuramente un tale concetto è assolutamente rivoluzionario!

testo alternativo http://www.ubergizmo.com/photos/2010/1/apple-ipad//apple-ipad-05.JPG

Non c'è modo di Alan Kay ha visto che venendo dal 1970!
Immagina un simile "manipolatore di informazioni personale e portatile" ...


...

Aspettare? Che cosa!? Il Dynabook che dici?

testo alternativo

Pensato da Alan Kay nel 1968 e descritto in dettaglio in questo articolo del 1972 ??

NOOOooo ooooo ....

Oh bene ... non importa.


Vedi stackoverflow.com/questions/432922/… per un contesto più ampio illustrato da questa risposta.
VonC,

Beh, sicuramente l'idea era già in circolazione prima (ad esempio apple newton); tuttavia la tecnologia ora ha proceduto così lontano che è possibile costruire un dispositivo di consumo economico (e eccezionale).
Nils,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.