Template:Timeline History of Computing
From Open Educational Resources
<timeline> Preset = TimeHorizontal_AutoPlaceBars_UnitYear ImageSize = width:1406 barincrement:17 PlotArea = left:15 right:20 bottom:30
Colors =
id:canvas value:rgb(0.97,0.97,0.97) id:grid1 value:gray(0.7) id:grid2 value:gray(0.88) id:black value:rgb(0,0,0) id:section value:rgb(0.8,0.8,0) id:mark1 value:rgb(0.7,0,0) id:years value:gray(0.5)
BackgroundColors = canvas:canvas
Period = from:1940 till:2024 ScaleMajor = unit:year increment:10 start:1940 gridcolor:grid1 ScaleMinor = unit:year increment:1 start:1940 gridcolor:grid2 AlignBars = justify
BarData=
bar:title
- bar:periods
bar:dummy0 # empty bar functions as separator bar:section1 barset:quotes bar:dummy1 bar:section2 barset:open_problems bar:dummy2 bar:section3 barset:first_use bar:dummy3 bar:section4 barset:hardware_systems bar:dummy4 bar:section5 barset:operating_systems bar:dummy5 bar:section6 barset:sys_dev_software bar:dummy6 bar:section7 barset:applications bar:dummy7
- explanation: attribute 'barset' instead of 'bar' means consecutive data lines are automatically placed on new bar
- data lines are lines containing at: or from: & till: attributes
- 'barset:break' means 'reset barcounter' = next line will be placed at first bar in barset
- 'barset:skip' means 'increment barcounter' = skip one bar for next data line (to allow extra space
- for text containing line break = ~)
PlotData =
mark:(line,black) width:16 fontsize:S
- bar:periods
- from:1964 till:1972 text:"3rd Generation" width:16"
- at:1975 text"Microsoft founded"
- at:1976 text"Apple Computer founded"
- at:1983 text"Borland founded"
fontsize:M width:16 color:section mark:(line,section) shift:(5,-6)
bar:title from:start till:end text:"History of Computing" fontsize:XL anchor:middle align:center width:25 color:canvas mark:(line,canvas) bar:section1 from:start till:end text:"Predictions and concepts" bar:section2 from:start till:end text:"Open problems/(Competitions)" bar:section3 from:start till:end text:"First use/(Inventions)" bar:section4 from:start till:end text:"Hardware Systems/(Processors)" bar:section5 from:start till:end text:"Operating Systems" bar:section6 from:start till:end text:"Programming Languages" bar:section7 from:start till:end text:"New Application Areas"
shift:(5,-5) fontsize:M mark:(line,mark1)
- quotations and predictions
width:8 barset:quotes at:1949 text:"'Computers in the future may weigh no more than 1.5 tons.' —Popular Mechanics" at:1950 text:"'We'll have to think up bigger problems if we want to keep them busy.' —Howard Aiken" at:1965 text:"Moore's law: processor complexity will double every year - revised in 1975: complexity will double every two years. —Gordon E. Moore" at:1968 text:"No computer will be able to beat David Levy at chess in the next 10 years~ - David Levy" barset:skip at:1970 text:"Relational database —Edgar Codd" at:1970 text:"'In from three to eight years we will have a machine with the general intelligence of an average human being.' —Marvin Minksy" at:1977 text:"'There is no reason anyone would want a computer in their home.' —Ken Olson, Chairman DEC" barset:break at:1995 text:"'The Internet will suffer a catastrophic collapse~ sometime during 1996.' —Bob Metcalfe, Ethernet inventor" barset:skip
- open problems / (competitions)
barset:open_problems at:1950 text:"Turing Test —Alan Turing" barset:break at:1970 text:"(North American Computer Chess Championship)" at:1971 text:"P versus NP problem" at:1981 text:"Quantum Computer —Richard Feynmann" barset:break at:1989 text:"(International Olympiad in Informatics)" at:1992 text:"(TPC-C)" at:1996 text:"(CADE ATP System Competition)" at:1998 text:"(ICFP Programming Contest)" at:2001 text:"(TopCoder)" barset:break at:2003 text:"(Google Code Jam)" at:2005 text:"(POPLmark Challenge)"
- first use / (inventions)
fontsize:M barset:first_use shift:(5,-5) at:1940 text:"teletype" at:1946 text:"electrostatic memory" at:1947 text:"(transistor)" at:1948 text:"random access memory" at:1948 text:"magnetic drum" at:1949 text:"registers" at:1953 text:"magnetic core memory" at:1956 text:"hard disk" at:1957 text:"dot matrix printer" at:1958 text:"integrated circuit" at:1959 text:"garbage collection" barset:break at:1962 text:"spooling" at:1962 text:"interrupts" at:1962 text:"virtual memory" at:1962 text:"paging" at:1963 text:"mouse" at:1965 text:"time-sharing" at:1965 text:"fuzzy logic" at:1965 text:"packet switching" at:1969 text:"ARPANET" at:1969 text:"RS-232" barset:break at:1970 text:"dynamic RAM" at:1971 text:"floppy disk" at:1971 text:"microprocessor~(4004)" barset:skip at:1972 text:"game console~(Magnavox Odyssey)" barset:skip at:1973 text:"ethernet" at:1973 text:"touchscreen" at:1974 text:"TCP/IP" at:1975 text:"single-board computer" at:1976 text:"laser printer" at:1976 text:"supercomputer" at:1979 text:"compact disk" at:1979 text:"VMEbus" barset:break at:1981 text:"ISA bus" at:1981 text:"WIMP (GUI)" at:1981 text:"CGA video card" at:1981 text:"Smartmodem" at:1982 text:"MIDI" at:1982 text:"RISC CPU" at:1982 text:"portable PC" at:1982 text:"Multi-touch technology" at:1983 text:"math~coprocessor" barset:skip at:1983 text:"PC harddisk" at:1984 text:"DNS (Domain~Name Server)" barset:skip at:1984 text:"IDE interface" at:1985 text:"Expanded Memory" at:1985 text:"EGA video card" at:1985 text:"CD ROM" at:1986 text:"ATA interface" at:1986 text:"SCSI interface" at:1986 text:"Personal digital assistant" barset:break at:1987 text:"massive parallel computing~(Connection Machine)" barset:skip at:1987 text:"VGA video card" at:1987 text:"sound card for PC (AD-LIB)" at:1988 text:"optical chip" at:1988 text:"EISA bus" at:1990 text:"SVGA video card,~VESA driver" barset:skip at:1991 text:"PCMCIA" at:1992 text:"CD-I" at:1993 text:"PCI bus" at:1994 text:"Smartphone" at:1994 text:"DNA computing" at:1994 text:"Beowulf cluster" at:1995 text:"Firewire" at:1995 text:"USB" at:1995 text:"DVD-ROM" at:1997 text:"AGP" at:1998 text:"ADSL" barset:break at:2001 text:"Blade servers" at:2003 text:"Serial ATA" at:2004 text:"PCI Express" at:2004 text:"Onion routing~(Tor)" barset:break at:2009 text:"Cryptocurrency" at:2009 text:"Blockchain" at:2013 text:"Docker"
- Hardware systems and processors
barset:hardware_systems at:1940 text:"Model I~Relay Calculator" barset:skip at:1941 text:"Atanasoff–Berry Computer" at:1941 text:"Z3" at:1943 text:"Harvard Mark I" at:1943 text:"Relay Interpolator" at:1943 text:"Colossus" at:1946 text:"ENIAC" at:1948 text:"IBM SSEC" at:1948 text:"Manchester SSEM" at:1949 text:"Manchester Mark 1" at:1951 text:"Ferranti Mark 1~first commercial computer" barset:skip at:1951 text:"LEO I - first business computer" at:1951 text:"UNIVAC I" at:1951 text:"Whirlwind" at:1952 text:"UNIVAC 1101" at:1952 text:"IBM 701" barset:break at:1953 text:"Strela" at:1954 text:"IBM 650" at:1954 text:"IBM 704" at:1955 text:"Harwell CADET" at:1956 text:"IBM 305 RAMAC" at:1957 text:"IBM 608" at:1958 text:"UNIVAC II" at:1958 text:"AN/FSQ-7 - largest~computers ever built" barset:skip at:1959 text:"IBM 1401" at:1960 text:"DEC PDP-1" at:1960 text:"CDC 1604" at:1961 text:"IBM 7030 Stretch" at:1962 text:"ATLAS" at:1962 text:"ReserVec" at:1963 text:"DEC PDP-6" at:1964 text:"IBM 360" at:1964 text:"DEC PDP-8" barset:break at:1965 text:"CDC 6600~1st supercomputer" barset:skip at:1966 text:"BESM-6" at:1968 text:"DEC PDP-10" at:1970 text:"Datapoint 2200" at:1970 text:"DEC PDP-11" at:1971 text:"electronic~calculator TI" barset:skip at:1971 text:"(4004)" at:1972 text:"scientific~calculator HP" barset:skip at:1972 text:"(8008)" at:1972 text:"1st 32-bit~ supermini" barset:skip at:1974 text:"(8080)" at:1974 text:"(MC 6800)" barset:break at:1975 text:"Altair 8800~1st personal~computer" barset:skip barset:skip at:1976 text:"(Z80)" at:1976 text:"(6502)" at:1976 text:"Cray-1" at:1976 text:"Apple I" at:1977 text:"DEC VAX-11" at:1977 text:"Apple II" at:1977 text:"TRS-80" at:1978 text:"(8086)" at:1979 text:"PET" at:1979 text:"(MC68000)" barset:break at:1980 text:"VIC-20" at:1980 text:"ZX80" at:1980 text:"Apple III" at:1981 text:"8010~Star" barset:skip at:1981 text:"ZX81" at:1981 text:"IBM PC" at:1982 text:"BBC Micro" at:1982 text:"C64" at:1982 text:"(80286)" at:1982 text:"Compaq~Portable" barset:skip at:1982 text:" ~ZX Spectrum" barset:skip at:1983 text:"Apple IIe" at:1983 text:"Lisa" at:1983 text:"IBM XT" at:1983 text:"IBM PC jr" barset:break at:1984 text:"Macintosh" at:1984 text:"LaserJet printer" at:1984 text:"IBM AT" at:1984 text:"(MIPS R2000)" at:1985 text:"Atari ST" at:1985 text:"Commodore Amiga" at:1986 text:"Amstrad 1512" at:1986 text:"(ARM2)" at:1987 text:"Acorn Archimedes" at:1987 text:"Connection Machine" at:1987 text:"IBM PS/2" at:1989 text:"(80486)" barset:break at:1993 text:"(66MHz~Pentium)" barset:skip at:1998 text:"iMac" at:1999 text:"PowerMac" barset:break at:2000 text:"(1GHz Pentium)" at:2001 text:"(POWER4) (dual core)" at:2001 text:"(Itanium)" at:2003 text:"(PowerPC G5)" at:2003 text:"(Athlon 64)" at:2006 text:"(Cell)" barset:break at:2010 text:"iPad" at:2011 text:"Kindle~Fire"
- major or well known operating systems selection based on
- http://en.wikipedia.org/wiki/Operating_systems_timeline
barset:operating_systems at:1955 text:"GM Research~ OS for the~ IBM 701" barset:skip barset:skip at:1956 text:"GM-NAA I/O" at:1958 text:"UMES" at:1959 text:"SHARE" barset:break at:1960 text:"IBSYS" at:1961 text:"CTSS" at:1961 text:"Burroughs MCP" at:1962 text:"GECOS" at:1964 text:"DTSS" at:1964 text:"TOPS-10" at:1965 text:"OS/360" at:1965 text:"Multics" at:1967 text:"ITS" at:1967 text:"MTS" at:1967 text:"CP/CMS" at:1967 text:"WAITS" at:1969 text:"ACP" at:1969 text:"TENEX/TOPS-20" at:1969 text:"Unix" barset:break at:1970 text:"RT-11" at:1970 text:"RSTS-11" at:1972 text:"VM/CMS" at:1974 text:"MVS" at:1976 text:"CP/M" at:1978 text:"Apple DOS 3.1" at:1978 text:"VMS" at:1980 text:"OS-9" at:1981 text:"MS-DOS" barset:break at:1982 text:"SunOS" at:1983 text:"Lisa OS" at:1983 text:"UNIX System V" at:1984 text:"Macintosh OS" at:1984 text:"GNU project" at:1985 text:"AmigaOS" at:1985 text:"Atari TOS" at:1985 text:"Windows 1.0" at:1986 text:"Mach" at:1986 text:"AIX" at:1986 text:"GS-OS" at:1986 text:"HP-UX" at:1987 text:"IRIX" at:1987 text:"Minix" at:1987 text:"OS/2" at:1987 text:"Windows 2.0" at:1987 text:"RISC OS" barset:break at:1988 text:"OS/400" at:1988 text:"POSIX Standard" at:1989 text:"NeXTSTEP" at:1989 text:"SCO Unix" at:1990 text:"BeOS" at:1990 text:"OSF/1" at:1991 text:"Linux kernel" at:1992 text:"Solaris" at:1992 text:"Windows 3.1" at:1992 text:"OS/2 2.0" at:1992 text:"SLS Linux" at:1992 text:"UnixWare" at:1993 text:"Windows NT 3.1" at:1993 text:"Slackware Linux" at:1993 text:"Debian GNU/Linux" at:1994 text:"Red Hat Linux" barset:break at:1995 text:"OpenBSD" at:1995 text:"OS/390" at:1995 text:"Windows 95" at:1996 text:"MkLinux" at:1996 text:"SUSE Linux" at:1997 text:"Mac OS 7.6" at:1997 text:"Symbian" at:1998 text:"Windows 98" at:1999 text:"BlackBerry OS" at:1999 text:"Mac OS 8" at:2000 text:"Mac OS 9" at:2000 text:"Windows Me" at:2000 text:"Windows 2000" at:2001 text:"Mac OS X" at:2001 text:"Windows XP" at:2001 text:"z/OS" barset:break at:2002 text:"Gentoo Linux" at:2003 text:"Windows Server 2003" at:2004 text:"Ubuntu" at:2007 text:"iOS" at:2007 text:"Windows Vista" at:2008 text:"Android" at:2009 text:"Windows 7" barset:break at:2011 text:"Chrome~OS"
- major or well known programming languages & dev tools selection based on
- http://en.wikipedia.org/wiki/Timeline_of_programming_languages
- generally only first versions are listed
barset:sys_dev_software at:1945 text:"Plankalkül~ (Plan Calculus)" barset:skip barset:break at:1952 text:"A-0" at:1954 text:"Mark I" at:1957 text:"FORTRAN I" at:1958 text:"ALGOL 58" at:1958 text:"LISP" at:1959 text:"MAD" barset:break at:1960 text:"COBOL" at:1962 text:"APL" at:1962 text:"Simula" at:1962 text:"SNOBOL" at:1964 text:"BASIC" at:1966 text:"FORTRAN 66" at:1967 text:"BCPL" at:1968 text:"ALGOL 68" at:1968 text:"Logo" at:1969 text:"PL/I" at:1969 text:"B" barset:break at:1970 text:"Pascal" at:1970 text:"Forth" at:1972 text:"Smalltalk" at:1972 text:"C" at:1972 text:"Prolog" at:1973 text:"ML" at:1975 text:"Scheme" at:1977 text:"FORTRAN 77" at:1977 text:"IDL" at:1978 text:"VISICALC" at:1978 text:"Modula-2" at:1978 text:"SQL" at:1979 text:"AWK" at:1979 text:"REXX" at:1979 text:"DBASE-II" barset:break at:1983 text:"Ada" at:1983 text:"C++" at:1983 text:"Turbo Pascal" at:1984 text:"Common Lisp" at:1985 text:"PARADOX" at:1985 text:"PostScript" at:1985 text:"Caml" at:1986 text:"Eiffel" at:1986 text:"Objective-C" at:1987 text:"HyperTalk" at:1987 text:"SQL" at:1987 text:"Perl" at:1987 text:"Erlang" at:1987 text:"Tcl" at:1988 text:"Mathematica" barset:break at:1990 text:"Haskell" at:1991 text:"Python" at:1991 text:"Visual Basic" at:1993 text:"AppleScript" at:1995 text:"Delphi" at:1995 text:"JavaScript" at:1995 text:"Java" at:1995 text:"Ruby" at:1996 text:"OCaml" at:1997 text:"PHP" at:1999 text:"XSLT" barset:break at:2000 text:"D" at:2000 text:"C#" at:2000 text:"ActionScript" at:2003 text:"Scala" at:2005 text:"F#" at:2007 text:"Clojure" at:2009 text:"CoffeeScript"
- New application areas
barset:applications at:1951 text:"electronic music" barset:break at:1960 text:"compiler compiler" at:1961 text:"timesharing (CTSS)" at:1962 text:"flight booking" at:1962 text:"computer game" at:1965 text:"bulletin board" at:1965 text:"email (CTSS)" at:1965 text:"super computing" at:1968 text:"interactive computing~(mouse, windows, hypertext,~full screen word processing)" barset:skip barset:skip at:1969 text:"networking" barset:break at:1970 text:"flight data processor" at:1971 text:"Non-linear video editing" at:1972 text:"arcade video game" at:1977 text:"spreadsheet" at:1977 text:"electronic stock market" at:1979 text:"Usenet" barset:break at:1984 text:"WYSIWYG word~processing" barset:skip at:1989 text:"World Wide Web" barset:break at:1993 text:"Web search engine" at:1995 text:"wikis" at:1997 text:"blogs" at:1997 text:"wireless networking"
- extra years
mark:(line,grid1) bar:dummy1 shift:(2,-8) fontsize:XS textcolor:years at:1940 text:40 at:1950 text:50 at:1960 text:60 at:1970 text:70 at:1980 text:80 at:1990 text:90 at:2010 text:10 shift:(-10,-8) at:2000 text:2000 bar:dummy2 shift:(2,-8) at:1940 text:40 at:1950 text:50 at:1960 text:60 at:1970 text:70 at:1980 text:80 at:1990 text:90 at:2010 text:10 shift:(-10,-8) at:2000 text:2000 bar:dummy3 shift:(2,-8) at:1940 text:40 at:1950 text:50 at:1960 text:60 at:1970 text:70 at:1980 text:80 at:1990 text:90 at:2010 text:10 shift:(-10,-8) at:2000 text:2000 bar:dummy4 shift:(2,-8) at:1940 text:40 at:1950 text:50 at:1960 text:60 at:1970 text:70 at:1980 text:80 at:1990 text:90 at:2010 text:10 shift:(-10,-8) at:2000 text:2000 bar:dummy5 shift:(2,-8) at:1940 text:40 at:1950 text:50 at:1960 text:60 at:1970 text:70 at:1980 text:80 at:1990 text:90 at:2010 text:10 shift:(-10,-8) at:2000 text:2000
</timeline>