Timeline - 1930-79
1930sβ
π Lambda calculus is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution, introduced by mathematician Alonzo Church in the 1930s as part of an investigation into the foundations of mathematics, though the original system was shown to be logically inconsistent in 1935.
π A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules, invented by Alan Turing in 1936 and named by his doctoral advisor Alonzo Church in a later review.
1940sβ
π In computer programming, assembly language is any low-level programming language with a very strong correspondence between the instructions in the language and the architecture's machine code instructions, with the first assembly code used to represent machine code instructions appearing in Kathleen and Andrew Donald Booth's 1947 work.
1950sβ
π§ The Turing test, originally called the imitation game by Alan Turing in 1950, is a test of a machine's ability to exhibit intelligent behavior equivalent to, or indistinguishable from, that of a human.
π Regular expressions originated in 1951, when mathematician Stephen Cole Kleene described regular languages using his mathematical notation called regular events.
βοΈ The caesium atomic clock was first built in 1955 by Louis Essen at the National Physical Laboratory (NPL) in the UK, providing a form of timekeeping far more stable and precise than astronomical observations, and laying the foundation for the modern definition of the SI second and Coordinated Universal Time (UTC).
π Lisp is a family of programming languages with a long history and a distinctive, fully parenthesized prefix notation, originally specified in 1958 when John McCarthy developed it at the Massachusetts Institute of Technology (MIT), making it the second-oldest high-level programming language still in common use.
π ALGOL (short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958 that heavily influenced many other languages and became the standard method for algorithm description.
π§ In machine learning, the perceptron (or McCulloch-Pitts neuron) is an algorithm for supervised learning of binary classifiers, with the first implementation being a machine built in 1958 at the Cornell Aeronautical Laboratory by Frank Rosenblatt.
π§ The term machine learning was coined in 1959 by Arthur Samuel, an IBM employee and pioneer in the field of computer gaming and artificial intelligence. The synonym self-teaching computers was also used in this time period.
1960sβ
π Passwords have been used with computers since the earliest days of computing. The Compatible Time-Sharing System (CTSS), an operating system introduced at MIT in 1961, was the first computer system to implement password login.
βοΈ In May 1961, IBM engineer Bob Bemer submitted a proposal to the American Standards Association's (ASA) X3.2 subcommittee, initiating formal standardization work on ASCII (American Standard Code for Information Interchange). Bemer, who also invented the escape sequence, later became known as "the father of ASCII."
π Simula is the name of two simulation programming languages developed in the 1960s at the Norwegian Computing Center in Oslo by Ole-Johan Dahl and Kristen Nygaard, with Simula 67 introducing objects, classes, inheritance, subclasses, virtual procedures, coroutines, discrete event simulation, and garbage collection, first appearing in 1962.
π§ In machine learning, backpropagation is a gradient estimation method used to train neural network models. The term "back-propagating error correction" was introduced in 1962 by Frank Rosenblatt, but he did not know how to implement it, even though Henry J. Kelley had a continuous precursor of backpropagation already in 1960 in the context of control theory.
βοΈ The first edition of ASCII (ASA X3.4-1963) was published in 1963, coinciding with the introduction of the Teletype Model 33. It was first used commercially as a seven-bit teleprinter code for AT&T's TWX (TeletypeWriter eXchange) network.
π₯οΈ In 1964, for the Multics operating system, Louis Pouzin conceived the idea of "using commands somehow like a programming language," and coined the term shell to describe it.
π’ Conway's law is an adage that states organizations design systems that mirror their own communication structure. It is named after the computer programmer Melvin Conway, who introduced the idea in 1967.
π The PIN originated with the introduction of the automated teller machine (ATM) in 1967, as an efficient way for banks to dispense cash to their customers. The first ATM system was that of Barclays in London, in 1967; it accepted cheques with machine-readable encoding, rather than cards, and matched the PIN to the cheque.
βοΈ Pseudoterminals appeared as early as 1967 in the DEC PDP-6 Timesharing Monitor, where they were primarily used to implement batch processing.
π₯οΈ ed is a line editor for Unix and Unix-like operating systems, developed by Ken Thompson in August 1969 on a PDP-7 at AT&T Bell Labs as one of the first three key elements of the Unix operating system alongside the assembler and shell.
π Hoare logic is a formal system with a set of logical rules for reasoning rigorously about the correctness of computer programs. It was proposed in 1969 by the British computer scientist and logician Tony Hoare, and subsequently refined by Hoare and other researchers.
βοΈ Unix (trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, first released in 1969.
π The Advanced Research Projects Agency Network (ARPANET) was the first wide-area packet-switched network with distributed control and one of the first networks to implement the TCP/IP protocol suite, both of which became the technical foundation of the Internet, established in 1969.
π In computing, "server" dates at least to RFC 5 (1969), one of the earliest documents describing ARPANET (the predecessor of Internet), and is contrasted with "user", distinguishing two types of host: "server-host" and "user-host".
π Telnet (short for "teletype network") is a client/server application protocol that provides access to virtual terminals of remote systems on local area networks or the Internet, developed as secret technology beginning in 1969 with RFC 15.
1970-74β
π The term "relational database" was first defined by E. F. Codd at IBM in 1970. Codd introduced the term in his research paper "A Relational Model of Data for Large Shared Data Banks".
π The File Transfer Protocol (FTP) is a standard communication protocol used for the transfer of computer files from a server to a client on a computer network, introduced on April 16, 1971.
βοΈ mail is a command-line email client for Unix and Unix-like operating systems, first released on November 3, 1971.
π roff is a typesetting markup language and the first Unix text-formatting computer program, serving as a predecessor of the nroff and troff document processing systems, first released on November 3, 1971.
π In 1971 the first ARPANET network mail was sent, introducing the now-familiar address syntax with the '@' symbol designating the user's system address. Over a series of RFCs, conventions were refined for sending mail messages over the File Transfer Protocol.
π yacc (Yet Another Compiler Compiler) is a parser generator for context-free grammars that produces C code for LALR parsers. It was first developed by Stephen C. Johnson at Bell Labs in 1971, inspired by Donald Knuth's work on LR parsing; the self-deprecating name reflected the existence of other compiler-compilers at Bell Labs from the Multics project. By 1973 it had reached a form recognizably similar to its C implementation, though early versions were extremely slow and Johnson rewrote it over a dozen times to improve performance by a factor of roughly 10,000.
π ML (Meta Language) was released in 1972 by Robin Milner at Stanford (and later Cambridge) as the meta-language for the LCF (Logic for Computable Functions) proof assistant, providing the foundational type system for OCaml.
π C is a middle-level, general-purpose computer programming language created by Dennis Ritchie between 1972 and 1973 at Bell Labs to construct utilities running on Unix, remaining very widely used and influential due to its design that cleanly reflects the capabilities of targeted CPUs.
π Smalltalk is an object-oriented, dynamically typed reflective programming language designed for educational use as the product of research led by Alan Kay at Xerox Palo Alto Research Center (PARC), with the first system (Smalltalk-72) running on a Xerox Alto and designed to support Kay's new object-oriented programming paradigm.
π’ In June 1972, five IBM engineers from the AI department founded SAP (Systemanalyse und Programmentwicklung, "System Analysis and Program Development") as a private partnership under German Civil Code, launching its first commercial product, the RF financial accounting system, in 1973.
βοΈ In 1973, Version 4 Unix was rewritten in the higher-level language C, contrary to the general notion at the time that an operating system's complexity and sophistication required it to be written in assembly language.
π₯οΈ sed ("stream editor") is a Unix utility that parses and transforms text using a simple, compact programming language, developed from 1973 to 1974 by Lee E. McMahon of Bell Labs.
π TCP provides reliable, ordered, and error-checked delivery of a stream of octets (bytes) between applications running on hosts communicating via an IP network. In May 1974, Vint Cerf and Bob Kahn described an internetworking protocol for sharing resources using packet switching among network nodes, with the specification of the resulting protocol (TCP/IP) written by Vint Cerf, Yogen Dalal, and Carl Sunshine and published in December 1974.
π Structured Query Language (SQL) is a domain-specific language used in programming and designed for managing data held in a relational database management system (RDBMS) or for stream processing in a relational data stream management system (RDSMS), first appearing in 1974.
1975-79β
π The Data Encryption Standard is a symmetric-key algorithm for the encryption of digital data whose short key length of 56 bits makes it too insecure for modern applications, yet it has been highly influential in the advancement of cryptography. The origins of DES date to 1972 when a National Bureau of Standards study of US government computer security identified a need for a government-wide standard for encrypting unclassified, sensitive information. On March 17, 1975, the proposed DES was published in the Federal Register, with public comments requested and two open workshops held in the following year to discuss the proposed standard.
π’ The Mythical Man-Month: Essays on Software Engineering by Fred Brooks was first published in 1975.
βοΈ The cron command-line utility is a job scheduler on Unix-like operating systems used to schedule jobs (commands or shell scripts), also known as cron jobs, to run periodically at fixed times, dates, or intervals, first released in May 1975.
π lex is a lexical analyzer generator that reads a specification of tokens and produces C code for a lexer. It was developed at Bell Labs by Mike Lesk and Eric Schmidt and first documented in October 1975 as Computing Science Technical Report #39. The same year, Stephen C. Johnson published the formal yacc paper; among the first languages implemented with yacc were AWK, C++, eqn, and Pic.
π₯οΈ Make is a build automation tool that automatically builds executable programs and libraries from source code by reading files called Makefiles that specify how to derive the target program, first appearing in April 1976.
π₯οΈ vi is a screen-oriented text editor originally created for the Unix operating system, with the original code written by Bill Joy in 1976 as the visual mode for a line editor called ex that Joy had written with Chuck Haley.
π DiffieβHellman key exchange is a mathematical method of securely exchanging cryptographic keys over a public channel, published in 1976 by Diffie and Hellman as the earliest publicly known work proposing the idea of a private key and a corresponding public key.
π AWK is a domain-specific language designed for text processing and typically used as a data extraction and reporting tool, initially developed in 1977 by Alfred Aho (author of egrep), Peter J. Weinberger (who worked on tiny relational databases), and Brian Kernighan.
π RSA is a public-key cryptosystem widely used for secure data transmission, with the acronym "RSA" coming from the surnames of Ron Rivest, Adi Shamir and Leonard Adleman, who publicly described the algorithm in 1977.
π The Data Encryption Standard was standardized in January 1977, despite its short 56-bit key length making it too insecure for modern applications, yet it has been highly influential in the advancement of cryptography.
π₯οΈ Bill Joy's ex 1.1 was released as part of the first Berkeley Software Distribution (BSD) Unix release in March 1978, with many of the ideas in this visual mode taken from Bravo β the bimodal text editor developed at Xerox PARC for the Alto.
π In 1978, Brian Kernighan and Dennis Ritchie published the first edition of The C Programming Language. This book, known to C programmers as K&R, served for many years as an informal specification of the language. The version of C that it describes is commonly referred to as "K&R C".
π TeX is a typesetting system designed and written by Donald Knuth and first released in 1978. The first version of TeX, called TeX78, was written in the SAIL programming language to run on a PDP-10 under Stanford's WAITS operating system.
π’ Taiichi Ohno published his seminal book, "Toyota Production System: Beyond Large-Scale Production," in 1978, formalizing the philosophy for a global audience.
π The problem of obtaining Byzantine consensus was conceived and formalized by Robert Shostak, who dubbed it the interactive consistency problem. This work was done in 1978 in the context of the NASA-sponsored SIFT project in the Computer Science Lab at SRI International.
π Model-view-controller (MVC) is a software design pattern commonly used for developing user interfaces that divides the related program logic into three interconnected elements. Trygve Reenskaug created MVC while working on Smalltalk-79 as a visiting scientist at the Xerox Palo Alto Research Center (PARC) in the late 1970s.
π₯οΈ The Bourne shell, sh, was a new Unix shell developed by Stephen Bourne at Bell Labs and distributed as the shell for UNIX Version 7 in 1979.
βοΈ A chroot on Unix and Unix-like operating systems is an operation that changes the apparent root directory for the current running process and its children. The chroot system call was introduced during development of Version 7 Unix in 1979.
π Both lex and yacc became standard tools in the Unix toolchain with the release of Version 7 Unix in 1979, establishing them as foundational components for compiler and language development on Unix systems.
π Oracle Database (commonly referred to as Oracle DBMS, Oracle Autonomous Database, or simply Oracle) is a proprietary multi-model database management system produced and marketed by Oracle Corporation, first released in 1979.
βοΈ Jef Raskin, an Apple employee, initiated the Macintosh project in 1979, envisioning an affordable, easy-to-use computer for the masses. He named the project after his favorite apple variety, the McIntosh.
1980-84β
π Smalltalk-80 was the first language variant made available outside of PARC, first as Smalltalk-80 Version 1, given to a small number of firms and universities.
βοΈ Steve Jobs took over the Macintosh project in 1981 after being removed from the Lisa team, redirecting the design toward a Xerox PARC-inspired graphical user interface while retaining Jef Raskin's vision of producing computers by the millions.
βοΈ The Berkeley r-commands are a suite of computer programs designed to enable users of one Unix system to log in or issue commands to another Unix computer via TCP/IP network, first released in June 1981.
βοΈ IPv4 is described in RFC 791 (1981).
π’ In March 1982, the US Department of Defense declared TCP/IP as the standard for all military computer networking.
π’ The Mythical Man-Month was reprinted with corrections in 1982
π Microsoft Multiplan, an early spreadsheet program developed by Microsoft, was released in August 1982.
π Revision Control System (RCS) is an early implementation of a version control system (VCS), a set of UNIX commands that allow multiple users to develop and maintain program code or documents. RCS was first released in 1982 by Walter F. Tichy at Purdue University and is currently maintained by the GNU Project.
π₯οΈ John Warnock and Charles Geschke left Xerox PARC and founded Adobe Systems in December 1982. They began developing PostScript, a page description language drawing on Warnock's earlier Interpress research at Xerox, with the goal of providing a device-independent way to describe printed pages.
π TeX82, a new version of TeX rewritten from scratch, was published in 1982. Among other changes, the original hyphenation algorithm was replaced by a new algorithm written by Frank Liang.
βοΈ The migration of the ARPANET from NCP to TCP/IP was officially completed on flag day January 1, 1983, when the new protocols were permanently activated.
π Lotus 1-2-3 was officially released for the IBM PC on January 26, 1983, quickly becoming the platform's "killer app" by integrating spreadsheet, graphing, and data management capabilities into a single, high-performance program written in x86 assembly.
βοΈ The r-commands (including rlogin, rsh, and rcp) were fully incorporated into 4.2BSD in August 1983, a release that provided the mature interprocess communication (IPC) primitives that enabled them to become the de facto standards for Unix networking throughout the 1980s.
π Development of the GNU operating system was initiated by Richard Stallman while he worked at MIT Artificial Intelligence Laboratory. It was called the GNU Project, and was publicly announced on September 27, 1983.
βοΈ The Internet Engineering Task Force published the DNS original specifications in RFC 882 and RFC 883 in November 1983.
βοΈ The Simple Mail Transfer Protocol (SMTP) protocol was implemented on the ARPANET in 1983.
βοΈ The modern Unix pseudoterminal interface originated in 1983 during the development of Eighth Edition Unix and was widely popularized following its inclusion in the 4.2BSD (Berkeley Software Distribution) release.
π₯οΈ In the spring of 1983, Steve Jobs visited Adobe and was dazzled by PostScript's potential for the Macintosh. Apple and Adobe signed a PostScript licensing deal in December 1983, with Apple investing in Adobe and agreeing to use PostScript in its upcoming laser printer.
βοΈ The original Macintosh 128K was introduced by Steve Jobs on January 24, 1984, at a price of US$2,495. It was the first commercially successful personal computer to feature a mouse-driven graphical user interface, using a Motorola 68000 processor and a 9-inch monochrome display.
βοΈ In 1984, four UC Berkeley students, Douglas Terry, Mark Painter, David Riggle, and Songnian Zhou, wrote the first Unix name server implementation for the Berkeley Internet Name Domain, commonly referred to as BIND.
π’ X/Open group was a consortium founded by several European UNIX systems manufacturers in 1984 to identify and promote open standards in the field of information technology.
π’ Eliyahu M. Goldratt introduced the Theory of Constraints to a wide audience in his business novel, The Goal, in 1984.
π TeX has been the official typesetting package for the GNU operating system since 1984.