Categories
Cloud History Software Engineering

! Template Authors-Teachers CS Pioneers

See also: List of pioneers in computer science and Timeline of the History of Computers

” (WP)

” (WP)

Sources:

Fair Use Sources:

Categories
Cloud History Software Engineering

List of pioneers in computer science

See also: Timeline of the History of Computers

” (WP)

This article presents a list of individuals who made transformative breakthroughs in the creation, development and imagining of what computers could do.

Pioneers

To put the list in chronological order, click the small “up-down” icon in the Date column. The Person column can also be sorted alphabetically, up-down.

Achievement
date
PersonAchievement
830~Al-KhwarizmiThe term “algorithm” is derived from the algorism, the technique of performing arithmetic with Hindu–Arabic numerals popularised by al-Khwarizmi in his book On the Calculation with Hindu Numerals.[1][2][3]
1944Aiken, HowardConceived and codesigned the Harvard Mark I.
1970, 1989Allen, Frances E.Developed bit vector notation and program control-flow graphs. Became the first female IBM Fellow in 1989. In 2006, she became the first female recipient of the ACM’s Turing Award.
1939Atanasoff, JohnBuilt the first electronic digital computer, the Atanasoff–Berry Computer, though it was neither programmable nor Turing-complete.
1822, 1837Babbage, CharlesOriginated the concept of a programmable general-purpose computer. Designed the Analytical Engine and built a prototype for a less powerful mechanical calculator.
1954, 1963Backus, JohnLed the team that created FORTRAN (Formula Translation), the first practical high-level programming language, and he formulated the Backus–Naur form that described the formal language syntax.
1964Baran, PaulOne of two independent inventors of the concept of digital packet switching used in modern computer networking including the Internet.[4][5] Baran published a series of briefings and papers about dividing information into “message blocks” and sending it over distributed networks between 1960 and 1964.[6][7]
1874Baudot, ÉmileA French telegraphic engineer patents the Baudot code, the first means of digital communication.[8] The modem speed unit baud is named after him.
1989, 1990Berners-Lee, TimInvented World Wide Web. With Robert Cailliau, sent first HTTP communication between client and server.
1966Böhm, CorradoTheorized of the concept of structured programming.
1847, 1854Boole, GeorgeFormalized Boolean algebra, the basis for digital logic and computer science.
1947Booth, KathleenInvented the first assembly language.
1969, 1978Brinch Hansen, PerDeveloped the RC 4000 multiprogramming system which introduced the concept of an operating system kernel and the separation of policy and mechanism, effectively the first microkernel architecture.[9] Co-developed the monitor with Tony Hoare, and created the first monitor implementation.[10] Implemented the first form of remote procedure call in the RC 4000,[9] and was first to propose remote procedure calls as a structuring concept for distributed computing.[11]
1959, 1995Brooks, FredManager of IBM System/360 and OS/360 projects; author of The Mythical Man-Month.
1908Brouwer, Luitzen Egbertus JanFounded intuitionistic logic which later came to prevalent use in proof assistants.
1930Bush, VannevarAnalogue computing pioneer. Originator of the Memex concept, which led to the development of Hypertext.
1951Caminer, DavidWith John Pinkerton, developed the LEO computer, the first business computer, for J. Lyons and Co
1978Cerf, VintWith Bob Kahn, designed the Transmission Control Protocol and Internet Protocol (TCP/IP), the primary data communication protocols of the Internet and other computer networks.
1956Chomsky, NoamMade contributions to computer science with his work in linguistics. He developed Chomsky hierarchy, a discovery which has directly impacted programming language theory and other branches of computer science.
1936Church, AlonzoMade fundamental contributions to theoretical computer science, specifically in the development of computability theory in the form of lambda calculus. Independently of Alan Turing, he formulated what is now known as Church-Turing Thesis and proved that first-order logic is undecidable.
1962Clark, Wesley A.Designed LINC, the first functional computer scaled down and priced for the individual user. Put in service in 1963, many of its features are seen as prototypes of what were to be essential elements of personal computers.
1981Clarke, Edmund M.Developed model checking and formal verification of software and hardware together with E. Allen Emerson.
1970Codd, Edgar F.Proposed and formalized the relational model of data management, the theoretical basis of relational databases.
1971Conway, LynnSuperscalar architecture with multiple-issue out-of-order dynamic instruction scheduling.
1967Cook, StephenFormalized the notion of NP-completeness, inspiring a great deal of research in computational complexity theory.
1965Cooley, JamesWith John W. Tukey, created the fast Fourier transform.
1965Davies, DonaldOne of two independent inventors of the concept of digital packet switching used in modern computer networking including the Internet.[4][12] Davies conceived of and named the concept of packet switching in data communication networks in 1965 and 1966.[13][14]
1962Dahl, Ole-JohanWith Kristen Nygaard, invented the proto-object oriented language SIMULA.
1968Dijkstra, EdsgerMade advances in algorithms, pioneered and coined the term structured programming, invented the semaphore, and famously suggested that the GOTO statement should be considered harmful.
1918Eccles, William and Jordan, Frank WilfredBritish physicists patent the Eccles–Jordan trigger circuit.[15] The so-called bistable flip-flop, this circuit is a building block of all digital memory cells. Built from Vacuum tubes, their concept was essential for the success of the Colossus codebreaking computer.
1943, 1951Eckert, J. PresperWith John Mauchly, designed and built the ENIAC, the first modern (all electronic, Turing-complete) computer, and the UNIVAC I, the first commercially available computer.
1981Emerson, E. AllenDeveloped model checking and formal verification of software and hardware together with Edmund M. Clarke.
1963Engelbart, DouglasBest known for inventing the computer mouse (in a joint effort with Bill English); as a pioneer of human–computer interaction whose Augment team developed hypertextnetworked computers, and precursors to GUIs.
1973Thacker, Charles P.Pioneering design and realization of the Xerox Alto, the first modern personal computer, and in addition for his contributions to the Ethernet and the Tablet PC.
1971Faggin, FedericoDesigned the first commercial microprocessor (Intel 4004).
1974Feinler, ElizabethHer team defined a simple text file format for Internet host names. The list evolved into the Domain Name System and her group became the naming authority for the top-level domains of .mil, .gov, .edu, .org, and .com.
1943Flowers, TommyDesigned and built the Mark 1 and the ten improved Mark 2 Colossus computers, the world’s first programmable, digital, electronic, computing devices.
1994Floyd, SallyFounded the field of Active Queue Management and co-invented Random Early Detection which is used in almost all Internet routers.
1879Frege, GottlobExtended Aristotelian logic with first-order predicate calculus, independently of Charles Sanders Peirce, a crucial precursor in computability theory. Also relevant to early work on artificial intelligencelogic programming.
1880, 1898Sanders Peirce, CharlesProved the functional completeness of the NOR gate. Proposed the implementation of logic via electrical circuits, decades before Claude Shannon. Extended Aristotelian logic with first-order predicate calculus, independently of Gottlob Frege, a crucial precursor in computability theory. Also relevant to early work on artificial intelligencelogic programming.
1985Furber, Stephen
Sophie Wilson
Are known for their work on creating ARM 32bit RISC microprocessor.[16]
1958, 1961, 1967Ginsburg, SeymourProved “don’t-care” circuit minimization does not necessarily yield optimal results, proved that the ALGOL programming language is context-free (thus linking formal language theory to the problem of compiler writing), and invented AFL Theory.
1931Gödel, KurtProved that Peano arithmetic could not be both logically consistent and complete in first-order predicate calculus. Church, Kleene, and Turing developed the foundations of computation theory based on corollaries to Gödel’s work.
1989Goldwasser, ShafiZero-knowledge proofs invented by Goldwasser, Micali and Rackoff. Goldwasser and Micali awarded the Turing Award in 2012 for this and other work.
2011Graham, Susan L.Awarded the 2009 IEEE John von Neumann Medal for “contributions to programming language design and implementation and for exemplary service to the discipline of computer science”.
1953Gray, FrankPhysicist and researcher at Bell Labs, developed the reflected binary code (RBC) or Gray code.[17] Gray’s methodologies are used for error detection and correction in digital communication systems, such as QAM in digital subscriber line networks.
1974, 2005Gray, JimInnovator in database systems and transaction processing implementation.
1986, 1990Grosz, Barbara[undue weight? – discuss]Created the first computational model of discourse, which established the field of research and influenced language-processing technologies. Also developed SharedPlans model for collaboration in multi-agent systems.
1988, 2015Gustafson, JohnProved the viability of parallel computing experimentally and theoretically Gustafson’s Law. Developed high-efficiency formats for representing real numbers Unum and Posit.
1971Hamilton, MargaretDeveloped the concepts of asynchronous software, priority scheduling, end-to-end testing, and human-in-the-loop decision capability, such as priority displays which then became the foundation for ultra reliable software design.
1950Hamming, RichardCreated the mathematical field of error-correcting codeHamming codeHamming matrix, the Hamming windowHamming numberssphere-packing (or Hamming bound), and the Hamming distance.[18][19] He established concept of perfect code.[20][21]
1972, 1973Thi, André Truong Trong and François Gernelle[undue weight? – discuss]Invention of the Micral N, the earliest commercial, non-kit personal computer based on a microprocessor.
1981, 1995, 1999Hejlsberg, AndersAuthor of Turbo Pascal while at Borland, the chief architect of Delphi, and designer and lead architect of C# at Microsoft.
2008, 2012, 2018Hinton, GeoffreyPopularized and enabled the use of artificial neural networks and deep learning, which rank among the most successful tools in modern artificial intelligence efforts. Received the Turing Award in 2018 for conceptual and engineering breakthroughs that have made deep neural networks a critical component of computing.[22]
1961, 1969, 1978, 1980Hoare, C.A.R.Developed the formal language Communicating Sequential Processes (CSP), Hoare logic for verifying program correctness, and Quicksort. Fundamental contributions to the definition and design of programming languages.
1968Holberton, BettyWrote the first mainframe sort merge on the Univac
1889Hollerith, HermanWidely regarded as the father of modern machine data processing. His invention of the punched card tabulating machine marks the beginning of the era of semiautomatic data processing systems.
1952Hopper, GracePioneered work on the necessity for high-level programming languages, which she termed automatic programming, and wrote the A-O compiler, which heavily influenced the COBOL language.
1997Hsu Feng-hsiungWork led to the creation of the Deep Thought chess computer, and the architect and the principal designer of the IBM Deep Blue chess computer which defeated the reigning World Chess ChampionGarry Kasparov, in 1997.
1952Hurd, CuthbertHelped the International Business Machines Corporation develop its first general-purpose computer, the IBM 701.
1945, 1953Huskey, HarryEarly computer design including contributions to the ENIACEDVACPilot ACEEDVACSEACSWAC, and Bendix G-15 computers. The G-15 has been described as the first personal computer, being operable by one person.
1954, 1962Iverson, KennethAssisted in establishing the first graduate course in computer science (at Harvard) and taught that course; invented the APL programming language and made contribution to interactive computing.
1801Jacquard, Joseph MarieBuilt and demonstrated the Jacquard loom, a programmable mechanized loom controlled by a tape constructed from punched cards.
1206Al-JazariInvented programmable machines, including programmable humanoid robots,[23] and the castle clock, an astronomical clock considered the first programmable analog computer.[24]
1953Spärck Jones, Karen[undue weight? – discuss]One of the pioneers of information retrieval and natural language processing.
1970, 1990Karnaugh, MauriceInventor of the Karnaugh map, used for logic function minimization.
1973Karpinski, JacekDeveloped the first differential analyzer that used transistors, and developed one of the first machine learning algorithms for character and image recognition. Also was the inventor of one of the first minicomputers, the K-202.
1970~Kay, AlanPioneered many of the ideas at the root of object-oriented programming languages, led the team that developed Smalltalk, and made fundamental contributions to personal computing.
1957Kirsch, Russell GrayWhilst working for the National Bureau of Standards (NBS), Kirsch used a recently developed image scanner to scan and store the first digital photograph.[25] His scanned photo of his three-month-old son was deemed by Life magazine as one the “100 Photographs That Changed The World.”
1936Kleene, Stephen ColePioneered work with Alonzo Church on the Lambda Calculus that first laid down the foundations of computation theory.
1968, 1989Knuth, DonaldWrote The Art of Computer Programming and created TeX. Coined the term “analysis of algorithms” and made major contributions to that field, including popularizing Big O notation.
1974, 1978Lamport, LeslieFormulated algorithms to solve many fundamental problems in distributed systems (e.g. the bakery algorithm).
Developed the concept of a logical clock, enabling synchronization between distributed entities based on the events through which they communicate. Created LaTeX.
1951Lebedev, Sergei AlekseyevichIndependently designed the first electronic computer in the Soviet Union, MESM, in Kiev, Ukraine.
1670~Leibniz, GottfriedMade advances in symbolic logic, such as the Calculus ratiocinator, that were heavily influential on Gottlob Frege. He anticipated later developments in first-order predicate calculus, which were crucial for the theoretical foundations of computer science.
1960Licklider, J. C. R.Began the investigation of human–computer interaction, leading to many advances in computer interfaces as well as in cybernetics and artificial intelligence.
1987Liskov, BarbaraDeveloped the Liskov substitution principle, which guarantees semantic interoperability of data types in a hierarchy.
1300~Llull, RamonDesigned multiple symbolic representations machines, and pioneered notions of symbolic representation and manipulation to produce knowledge—both of which were major influences on Leibniz.
1852Lovelace, AdaAn English mathematician and writer, chiefly known for her work on Charles Babbage’s proposed mechanical general-purpose computer, the Analytical Engine. She was the first to recognize that the machine had applications beyond pure calculation, and created the first algorithm intended to be carried out by such a machine. As a result, she is often regarded as the first to recognize the full potential of a “computing machine” and the first computer programmer.
1909Ludgate, PercyCharles Babbage in 1843 and Percy Ludgate in 1909 designed the first two Analytical Engines in history. Ludgate’s engine used multiplication as its basis (using his own discrete “Irish logarithms”), had the first multiplier-accumulator (MAC), was first to exploit a MAC to perform division, stored numbers as displacements of rods in shuttles, and had several other novel features, including for program control.
1971Martin-Löf, PerPublished an early draft on the type theory that many proof assistants build on.
1943, 1951Mauchly, JohnWith J. Presper Eckert, designed and built the ENIAC, the first modern (all electronic, Turing-complete) computer, and the UNIVAC I, the first commercially available computer. Also worked on BINAC(1949), EDVAC(1949), UNIVAC(1951) with Grace Hopper and Jean Bartik, to develop early stored program computers.
1958McCarthy, JohnInvented LISP, a functional programming language.
1956, 2012McCluskey, Edward J.Fundamental contributions that shaped the design and testing of digital systems, including the first algorithm for digital logic synthesis, the Quine-McCluskey logic minimization method.
1986Meyer, BertrandDeveloped design by contract in the guise of the Eiffel programming language.
1963Minsky, MarvinCo-founder of Artificial Intelligence Lab at Massachusetts Institute of Technology, author of several texts on AI and philosophy. Critic of the perceptron.
850~Banū MūsāThe Banū Mūsā brothers wrote the Book of Ingenious Devices, where they described what appears to be the first programmable machine, an automatic flute player.[26]
1950, 1960Nakamatsu YoshirōInvented the first floppy disk at Tokyo Imperial University in 1950,[27][28] receiving a 1952 Japanese patent[29][30] and 1958 US patent for his floppy magnetic disk sheet invention,[31] and licensed to Nippon Columbia in 1960[32] and IBM in the 1970s.[29][27]
2008Nakamoto, SatoshiThe anonymous creator or creators of Bitcoin, the first peer-to-peer digital currency. Nakamoto’s 2008 white-paper introduced the concept of the blockchain, a database structure that allows full trust in the decentralized and distributed public transaction ledger of the cryptocurrency.[33]
1934, 1938Nakashima AkiraNEC engineer introduced switching circuit theory in papers from 1934 to 1936, laying the foundations for digital circuit design, in digital computers and other areas of modern technology.
1960Naur, PeterEdited the ALGOL 60 Revised Report, introducing Backus-Naur form
1945Neumann, John vonFormulated the von Neumann architecture upon which most modern computers are based.
1956Newell, AllenTogether with J. C. Shaw[34] and Herbert Simon, the three co-wrote the Logic Theorist, the first true AI program, in the first list-processing language, which influenced LISP.
1943Newman, MaxInstigated the production of the Colossus computers at Bletchley Park. After the war he established the Computing Machine Laboratory at the University of Manchester where he created the project that built the world’s first stored-program computer, the Manchester Baby.
1962Nygaard, KristenWith Ole-Johan Dahl, invented the proto-object oriented language SIMULA.
500 BC ~PāṇiniAshtadhyayi Sanskrit grammar was systematised and technical, using metarules, transformations, and recursions, a forerunner to formal language theory and basis for Panini-Backus form used to describe programming languages.
1642Pascal, BlaiseInvented the mechanical calculator.
1952Perlis, AlanOn Project Whirlwind, member of the team that developed the ALGOL programming language, and the first recipient of the Turing Award
1985Perlman, RadiaInvented the Spanning Tree Protocol (STP), which is fundamental to the operation of network bridges, while working for Digital Equipment Corporation. Has done extensive and innovative research, particularly on encryption and networking. She received the USENIX Lifetime Achievement Award in 2007, among numerous others.
1964Perotto, Pier Giorgio[undue weight? – discuss]Computer designer for Olivetti, designed one of the first electronic programmable calculators, the Programma 101[35][36][37]
1932Péter, RózsaPublished a series of papers grounding recursion theory as a separate area of mathematical research, setting the foundation for theoretical computer science.
1995Picard, Rosalind[undue weight? – discuss]Founded Affective Computing, and laid the foundations for giving computers skills of emotional intelligence.
1936Post, Emil L.Developed the Post machine as a model of computation, independently of Turing. Known also for developing truth tables, the Post correspondence problem used in recursion theory as well as proving what is known as Post’s theorem.
19672011Ritchie, DennisWith Ken Thompson, pioneered the C programming language and the Unix computer operating system at Bell Labs.
1958–1960Rosen, SaulDesigned the software of the first transistor-based computer. Also influenced the ALGOL programming language.
1910Russell, BertrandMade contributions to computer science with his work on mathematical logic (example: truth function). Introduced the notion of type theory. He also introduced type system (along with Alfred North Whitehead) in his work, Principia Mathematica.
1975Salton, Gerard[undue weight? – discuss]A pioneer of automatic information retrieval, who proposed the vector space model and the inverted index.
1962Sammet, Jean E.Developed the FORMAC programming language. She was also the first to write extensively about the history and categorization of programming languages in 1969, and became the first female president of the Association for Computing Machinery in 1974.
1963, 1973Sasaki TadashiSharp engineer who conceived a single-chip microprocessor CPU, presenting the idea to Busicom and Intel in 1968. This influenced the first commercial microprocessor, the Intel 4004; before Busicom, Intel was a memory manufacturer. Tadashi Sasaki also developed LCD calculators at Sharp.[38]
1937, 1948Shannon, ClaudeFounded information theory, and laid foundations for practical digital circuit design.
1968, 1980Shima MasatoshiDesigned the Intel 4004, the first commercial microprocessor,[39][40] as well as the Intel 8080Zilog Z80 and Zilog Z8000 microprocessors, and the Intel 8259825582538257 and 8251 chips.[41]
1956, 1957Simon, Herbert A.A political scientist and economist who pioneered artificial intelligence. Co-creator of the Logic Theory Machine and the General Problem Solver programs.
1972Stallman, RichardStallman launched the GNU Project in September 1983 to create a Unix-like computer operating system composed entirely of free software. With this, he also launched the free software movement.
1982Stonebraker, MichaelResearcher at MIT’s Computer Science and Artificial Intelligence Laboratory (CSAIL) who revolutionized the field of database management systems (DBMSs) and founded multiple successful database companies
1979Stroustrup, BjarneInvented C++ at Bell Labs
1963Sutherland, IvanAuthor of Sketchpad, the ancestor of modern computer-aided drafting (CAD) programs and one of the early examples of object-oriented programming.
1967Thompson, KenCreated the Unix operating system, the B programming languagePlan 9 operating system, the first machine to achieve a Master rating in chess, and the UTF-8 encoding at Bell Labs and the Go programming language at Google.
1993Toh Chai KeongCreated mobile ad hoc networking; Implemented the first working wireless ad hoc network of laptop computers in 1998 using Linux OS, Lucent WaveLan 802.11 radios, and a new distributed routing protocol transparent to TCP/UDP/IP.
1991Torvalds, LinusCreated the first version of the Linux kernel.
1912, 1914, 1920Torres Quevedo, LeonardoIn 1912, Leonardo Torres Quevedo built El Ajedrecista (the chess player), one of the first autonomous machines capable of playing chess. As opposed to the human-operated The Turk and Ajeeb, El Ajedrecista was a true automaton built to play chess without human guidance. It played an endgame with three chess pieces, automatically moving a white king and a rook to checkmate the black king moved by a human opponent. In his work Essays on Automatics, published in 1914, Torres Quevedo formulates what will be a new branch of engineering: automation. This work also included floating-point arithmetic. In 1920, Torres Quevedo was the first in history to build an early electromechanical version of the Analytical Engine.
1965Tukey, John W.With James Cooley, created the fast Fourier transform. He invented the term “bit”.[42]
1936Turing, AlanMade several foundamental contributions to theoretical computer science, including the Turing machine computational model, the conceiving of the stored program concept and the designing of the high-speed ACE design. Independently of Alonzo Church, he formulated the Church-Turing thesis and proved that first-order logic is undecidable. He also explored the philosophical issues concerning artificial intelligence, proposing what is now known as Turing test.
1950~Wang AnMade key contributions to the development of magnetic core memory.
1955, 1960s, 1974Ware, WillisCo-designer of JOHNNIAC. Chaired committee that developed the Code of Fair Information Practice and led to the Privacy Act of 1974. Vice-chair of the Privacy Protection Study Commission.
1968Wijngaarden, Adriaan vanDeveloper of the W-grammar first used in the definition of ALGOL 68
1949Wilkes, MauriceBuilt the first practical stored program computer (EDSAC) to be completed and for being credited with the ideas of several high-level programming language constructs.
1970, 1978Wirth, NiklausDesigned the PascalModula-2 and Oberon programming languages.
1875, 1875Verea, RamónDesigned and patented the Verea Direct Multiplier, the first mechanical direct multiplier.
1938, 1945Zuse, KonradBuilt the first digital freely programmable computer, the Z1. Built the first functional program-controlled computer, the Z3.[43] The Z3 was proven to be Turing-complete in 1998. Produced the world’s first commercial computer, the Z4. Designed the first high-level programming language, Plankalkül.
1970Wilkinson, James H.Research in numerical analysis to facilitate the use of the high-speed digital computer, having received special recognition for his work in computations in linear algebra and “backward” error analysis.[44]
1973Bachman, CharlesOutstanding contributions to database technology.[45]
1976Rabin, Michael O.The joint paper “Finite Automata and Their Decision Problems,”[46] which introduced the idea of nondeterministic machines, which has proved to be an enormously valuable concept. Their (Scott & Rabin) classic paper has been a continuous source of inspiration for subsequent work in this field.[47][48]
1976Scott, DanaThe joint paper “Finite Automata and Their Decision Problems,”[46] which introduced the idea of nondeterministic machines, which has proved to be an enormously valuable concept. Their (Scott & Rabin) classic paper has been a continuous source of inspiration for subsequent work in this field.[47][48]
1978Floyd, Robert W.Having a clear influence on methodologies for the creation of efficient and reliable software, and helping to found the following important subfields of computer science: the theory of parsing, the semantics of programming languages, automatic program verificationautomatic program synthesis, and analysis of algorithms.[49]
1985Karp, Richard M.Contributions to the theory of algorithms including the development of efficient algorithms for network flow and other combinatorial optimization problems, the identification of polynomial-time computability with the intuitive notion of algorithmic efficiency, and, most notably, contributions to the theory of NP-completeness.
1986Hopcroft, JohnFundamental achievements in the design and analysis of algorithms and data structures.
1986Tarjan, RobertFundamental achievements in the design and analysis of algorithms and data structures.
1987Cocke, JohnSignificant contributions in the design and theory of compilers, the architecture of large systems and the development of reduced instruction set computers (RISC).
1989Kahan, WilliamFundamental contributions to numerical analysis. One of the foremost experts on floating-point computations. Kahan has dedicated himself to “making the world safe for numerical computations.
1989Corbató, Fernando J.Pioneering work organizing the concepts and leading the development of the general-purpose, large-scale, time-sharing and resource-sharing computer systems, CTSS and Multics.
1991Milner, Robin1) LCF, the mechanization of Scott’s Logic of Computable Functions, probably the first theoretically based yet practical tool for machine assisted proof construction; 2) ML, the first language to include polymorphic type inference together with a type-safe exception-handling mechanism; 3) CCS, a general theory of concurrency. In addition, he formulated and strongly advanced full abstraction, the study of the relationship between operational and denotational semantics.[50]
1992Lampson, Butler W.Development of distributed, personal computing environments and the technology for their implementation: workstationsnetworksoperating systems, programming systems, displayssecurity and document publishing.
1993Hartmanis, JurisFoundations for the field of computational complexity theory.[51]
1993Stearns, Richard E.Foundations for the field of computational complexity theory.[51]
1994Feigenbaum, EdwardPioneering the design and construction of large scale artificial intelligence systems, demonstrating the practical importance and potential commercial impact of artificial intelligence technology.[52]
1994Reddy, RajPioneering the design and construction of large scale artificial intelligence systems, demonstrating the practical importance and potential commercial impact of artificial intelligence technology.[52]
1995Blum, ManuelContributions to the foundations of computational complexity theory and its application to cryptography and program checking.[53]
1996Pnueli, AmirIntroducing temporal logic into computing science and for outstanding contributions to program and systems verification.[54]
2000Yao, AndrewFundamental contributions to the theory of computation, including the complexity-based theory of pseudorandom number generationcryptography, and communication complexity.
1977Rivest, RonIngenious contribution and making public-key cryptography useful in practice.
1977Shamir, AdiIngenious contribution and making public-key cryptography useful in practice.
1977Adleman, LeonardIngenious contribution and making public-key cryptography useful in practice.
1978Kahn, BobDesigned the Transmission Control Protocol and Internet Protocol (TCP/IP), the primary data communication protocols of the Internet and other computer networks.
2007Sifakis, JosephDeveloping model checking into a highly effective verification technology, widely adopted in the hardware and software industries.[55]
2010Valiant, LeslieTransformative contributions to the theory of computation, including the theory of probably approximately correct (PAC) learning, the complexity of enumeration and of algebraic computation, and the theory of parallel and distributed computing.
2011Pearl, JudeaFundamental contributions to artificial intelligence through the development of a calculus for probabilistic and causal reasoning.[56]
1976Hellman, MartinFundamental contributions to modern cryptography. Diffie and Hellman’s groundbreaking 1976 paper, “New Directions in Cryptography,”[57] introduced the ideas of public-key cryptography and digital signatures, which are the foundation for most regularly-used security protocols on the Internet today.[58]
1976Diffie, WhitfieldFundamental contributions to modern cryptography. Diffie and Hellman’s groundbreaking 1976 paper, “New Directions in Cryptography,”[57] introduced the ideas of public-key cryptography and digital signatures, which are the foundation for most regularly-used security protocols on the Internet today.[59]
2018Bengio, YoshuaHinton GeoffreyLecun YannConceptual and engineering breakthroughs that have made deep neural networks a critical component of computing.[22]
2012Silvio MicaliFor transformative work that laid the complexity-theoretic foundations for the science of cryptography and in the process pioneered new methods for efficient verification of mathematical proofs in complexity theory.
2017John L. HennessyFor pioneering a systematic, quantitative approach to the design and evaluation of computer architectures with enduring impact on the microprocessor industry.
2017David PattersonFor pioneering a systematic, quantitative approach to the design and evaluation of computer architectures with enduring impact on the microprocessor industry.
2019Edwin CatmullFor fundamental contributions to 3-D computer graphics, and the revolutionary impact of these techniques on computer-generated imagery (CGI) in filmmaking and other applications
2019Pat HanrahanFor fundamental contributions to 3-D computer graphics, and the revolutionary impact of these techniques on computer-generated imagery (CGI) in filmmaking and other applications

~ Items marked with a tilde are circa dates.

See also

References

  1. ^ Mario Tokoro, ed. (2010). “9”. e: From Understanding Principles to Solving Problems. pp. 223–224. ISBN 978-1-60750-468-9.
  2. ^ Cristopher Moore; Stephan Mertens (2011). The Nature of Computation. Oxford University Press. p. 36. ISBN 978-0-19-162080-5.
  3. ^ A. P. Ershov, Donald Ervin Knuth, ed. (1981). Algorithms in modern mathematics and computer science: proceedings, Urgench, Uzbek SSR, September 16–22, 1979. Springer. ISBN 978-3-540-11157-3.
  4. a b “The real story of how the Internet became so vulnerable”Washington Post. May 30, 2015. Archived from the original on 2015-05-30. Retrieved 2020-02-18. Historians credit seminal insights to Welsh scientist Donald W. Davies and American engineer Paul Baran
  5. ^ “Inductee Details – Paul Baran”. National Inventors Hall of Fame. Archived from the original on 6 September 2017. Retrieved 6 September 2017.
  6. ^ Baran, Paul (2002). “The beginnings of packet switching: some underlying concepts” (PDF). IEEE Communications Magazine40 (7): 42–48. doi:10.1109/MCOM.2002.1018006ISSN 0163-6804Essentially all the work was defined by 1961, and fleshed out and put into formal written form in 1962. The idea of hot potato routing dates from late 1960.
  7. ^ Monica, 1776 Main Street Santa; California 90401-3208. “Paul Baran and the Origins of the Internet”www.rand.org. Retrieved 2020-02-15.
  8. ^ “Jean-Maurice- Emile Baudot. Système de télégraphie rapide, June 1874. Brevet 103,898; Source: Archives Institut National de la Propriété Industrielle (INPI)”.
  9. a b “Per Brinch Hansen • IEEE Computer Society”Computer.org. Retrieved 2015-12-15.
  10. ^ Brinch Hansen, Per (April 1993). “Monitors and Concurrent Pascal: a personal history” (PDF). 2nd ACM Conference on the History of Programming Languages.
  11. ^ Brinch Hansen, Per (November 1978). “Distributed processes: a concurrent programming concept” (PDF). Communications of the ACM21 (11): 934–941. CiteSeerX 10.1.1.107.3108doi:10.1145/359642.359651S2CID 11610744.
  12. ^ “Inductee Details – Donald Watts Davies”. National Inventors Hall of Fame. Archived from the original on 6 September 2017. Retrieved 6 September 2017.
  13. ^ Roberts, Dr. Lawrence G. (November 1978). “The Evolution of Packet Switching”. Archived from the original on March 24, 2016. Retrieved 5 September 2017. Almost immediately after the 1965 meeting, Donald Davies conceived of the details of a store-and-forward packet switching system; Roberts, Dr. Lawrence G. (May 1995). “The ARPANET & Computer Networks”. Archived from the original on March 24, 2016. Retrieved 13 April 2016. Then in June 1966, Davies wrote a second internal paper, “Proposal for a Digital Communication Network” In which he coined the word packet,- a small sub part of the message the user wants to send, and also introduced the concept of an “Interface computer” to sit between the user equipment and the packet network.
  14. ^ Donald Davies (2001), “A Historical Study of the Beginnings of Packet Switching”Computer Journal, British Computer Society
  15. ^ William Henry Eccles and Frank Wilfred Jordan, “Improvements in ionic relays” British patent number: GB 148582 (filed: 21 June 1918; published: 5 August 1920). Available on-line at: http://v3.espacenet.com/origdoc?DB=EPODOC&IDX=GB148582&F=0&QPN=GB148582 .
  16. ^ “Computer History Museum | Fellow Awards – Steve Furber”. Archived from the original on 2013-04-02.
  17. ^ Gray, Frank (1953-03-17). “Pulse code communication” (PDF). U.S. patent no. 2,632,058
  18. ^ Morgan 1998, pp. 973–975.
  19. ^ Hamming 1950, pp. 147–160.
  20. ^ Ling & Xing 2004, pp. 82–88.
  21. ^ Pless 1982, pp. 21–24.
  22. a b Fathers of the Deep Learning Revolution Receive ACM A.M. Turing Award
  23. ^ “articles58”Shef.ac.uk. 29 June 2007. Archived from the original on 29 June 2007. Retrieved 25 October 2017.
  24. ^ “Ancient Discoveries, Episode 11: Ancient Robots”History Channel. Retrieved 2008-09-06.
  25. ^ Kirsch, Russell A., “Earliest Image Processing”NISTS Museum; SEAC and the Start of Image Processing at the National Bureau of StandardsNational Institute of Standards and Technology, archived from the original on 2014-07-19
  26. ^ Koetsier, Teun (2001). “On the prehistory of programmable machines: musical automata, looms, calculators”. Mechanism and Machine Theory36 (5): 589–603. doi:10.1016/S0094-114X(01)00005-2.
  27. a b G. W. A. Dummer (1997), Electronic Inventions and Discoveries, page 164Institute of Physics
  28. ^ Valerie-Anne Giscard d’Estaing (1990), The Book of Inventions and Discoveries, page 124, Queen Anne Press
  29. a b Lazarus, David (April 10, 1995). “‘Japan’s Edison’ Is Country’s Gadget King : Japanese Inventor Holds Record for Patent”The New York Times. Retrieved 2010-12-21.
  30. ^ YOSHIRO NAKAMATSU – THE THOMAS EDISON OF JAPAN, Stellarix Consultancy Services, 2015
  31. ^ Magnetic record sheet, Patent US3131937
  32. ^ Graphic Arts Japan, Volume 2 (1960), pages 20–22
  33. ^ Nakamoto, Satoshi (24 May 2009). “”Bitcoin: A Peer-to-Peer Electronic Cash System” (PDF)” (PDF). bitcoin.org.
  34. ^ Fred Joseph Gruenberger, The History of the JOHNNIAC, RAND Memorandum 5654
  35. ^ “Olivetti Programma 101 Electronic Calculator”The Old Calculator Web Museumtechnically, the machine was a programmable calculator, not a computer.
  36. ^ “2008/107/1 Computer, Programma 101, and documents (3), plastic / metal / paper / electronic components, hardware architect Pier Giorgio Perotto, designed by Mario Bellini, made by Olivetti, Italy, 1965–1971”www.powerhousemuseum.com. Retrieved 2016-03-20.
  37. ^ “Olivetti Programma 101 Electronic Calculator”The Old Calculator Web MuseumIt appears that the Mathatronics Mathatron calculator preceeded [sic] the Programma 101 to market.
  38. ^ Aspray, William (1994-05-25). “Oral-History: Tadashi Sasaki”Interview #211 for the Center for the History of Electrical Engineering. The Institute of Electrical and Electronics Engineers, Inc. Retrieved 2013-01-02.
  39. ^ Nigel Tout. “The Busicom 141-PF calculator and the Intel 4004 microprocessor”. Retrieved November 15, 2009.
  40. ^ Federico FagginThe Making of the First MicroprocessorIEEE Solid-State Circuits Magazine, Winter 2009, IEEE Xplore
  41. ^ Japan, Information Processing Society of. “Shima Masatoshi-Computer Museum”museum.ipsj.or.jp. Retrieved 25 October 2017.
  42. ^ Claude Shannon (1948). “Bell System Technical Journal”. Bell System Technical Journal.
  43. ^ Copeland, B. Jack (25 October 2017). Zalta, Edward N. (ed.). The Stanford Encyclopedia of Philosophy. Metaphysics Research Lab, Stanford University. Retrieved 25 October 2017 – via Stanford Encyclopedia of Philosophy.
  44. ^ Wilkinson, J. H. (1971). “Some Comments from a Numerical Analyst”. Journal of the ACM18 (2): 137–147. doi:10.1145/321637.321638S2CID 37748083.
  45. ^ Bachman, C. W. (1973). “The programmer as navigator”Communications of the ACM16 (11): 653–658. doi:10.1145/355611.362534.
  46. a b Rabin, M. O.; Scott, D. (1959). “Finite Automata and Their Decision Problems”IBM Journal of Research and Development3 (2): 114. doi:10.1147/rd.32.0114S2CID 3160330.
  47. a b Rabin, M. O. (1977). “Complexity of computations”Communications of the ACM20 (9): 625–633. doi:10.1145/359810.359816.
  48. a b Scott, D. S. (1977). “Logic and programming languages”Communications of the ACM20 (9): 634–641. doi:10.1145/359810.359826.
  49. ^ Floyd, R. W. (1979). “The paradigms of programming”Communications of the ACM22 (8): 455–460. doi:10.1145/359138.359140.
  50. ^ Milner, R. (1993). “Elements of interaction: Turing award lecture”Communications of the ACM36: 78–89. doi:10.1145/151233.151240.
  51. a b Stearns, R. E. (1994). “Turing Award lecture: It’s time to reconsider time”Communications of the ACM37 (11): 95–99. doi:10.1145/188280.188379.
  52. a b Reddy, R. (1996). “To dream the possible dream”Communications of the ACM39 (5): 105–112. doi:10.1145/229459.233436.
  53. ^ “A.M. Turing Award Laureate – Manuel Blum”amturing.acm.org. Retrieved 4 November 2018.
  54. ^ “A.M. Turing Award Laureate – Amir Pnueli”amturing.acm.org. Retrieved 4 November 2018.
  55. ^ 2007 Turing Award Winners Announced
  56. ^ “Judea Pearl”. ACM.
  57. a b Diffie, W.; Hellman, M. (1976). “New directions in cryptography” (PDF). IEEE Transactions on Information Theory22 (6): 644–654. CiteSeerX 10.1.1.37.9720doi:10.1109/TIT.1976.1055638.
  58. ^ “Cryptography Pioneers Receive 2015 ACM A.M. Turing Award”. ACM.
  59. ^ “Cryptography Pioneers Receive 2015 ACM A.M. Turing Award”. ACM.

Sources

External links

Categories

” (WP)

Sources:

Fair Use Sources:

Categories
Java Software Engineering

Joshua Bloch

Joshua Bloch is a professor at Carnegie Mellon University. He was formerly the chief Java architect at Google, a distinguished engineer at Sun Microsystems, and a senior systems designer at Transarc. He led the design and implementation of numerous Java platform features, including the JDK 5.0 language enhancements and the Java Collections Framework. He holds a Ph.D. in computer science from Carnegie Mellon University and a B.S. in computer science from Columbia University. He is the author of Effective Java.

Joshuabloch.jpg
Bloch in 2008

BornAugust 28, 1961 (age 59)
Southampton, New York
NationalityAmerican
Alma materColumbia University (B.S.)
Carnegie Mellon University (Ph.D.)
Scientific career
InstitutionsCarnegie Mellon University
Doctoral advisorAlfred Spector

Joshua J. Bloch (born August 28, 1961) is an American software engineer and a technology author, formerly employed at Sun Microsystems and Google. He led the design and implementation of numerous Java platform features, including the Java Collections Framework, the java.math package, and the assert mechanism.[1] He is the author of the programming guide Effective Java (2001), which won the 2001 Jolt Award,[2] and is a co-author of two other Java books, Java Puzzlers (2005) and Java Concurrency In Practice (2006).” (WP)

Bloch holds a B.S. in computer science from Columbia University and a Ph.D. in computer science from Carnegie Mellon University.[1] His 1990 thesis was titled A Practical Approach to Replication of Abstract Data Objects[3] and was nominated for the ACM Distinguished Doctoral Dissertation Award.[4]

Bloch has worked as a Senior Systems Designer at Transarc, and later as a Distinguished Engineer at Sun Microsystems. In June 2004, he left Sun and became Chief Java Architect at Google.[5] On August 3, 2012, Bloch announced that he would be leaving Google.[6]

In December 2004, Java Developer’s Journal included Bloch in its list of the “Top 40 Software People in the World”.[7]

Bloch has proposed the extension of the Java programming language with two features: Concise Instance Creation Expressions (CICE) (coproposed with Bob Lee and Doug Lea) and Automatic Resource Management (ARM) blocks. The combination of CICE and ARM formed one of the three early proposals for adding support for closures to Java.[8] ARM blocks were added to the language in JDK7.[9]

Bloch is currently an affiliated faculty member of the Institute for Software Research at Carnegie Mellon University, where he holds the title “Adjunct Professor of the Practice“.[10]

Bibliography

References

  1. a b “About the Author”Effective Java Programming Language Guide
  2. ^ 2002 Jolt & Productivity Award Winners Archived 2007-05-03 at the Wayback Machine. Dr. Dobb’s Portal.
  3. ^ A Practical Approach to Replication of Abstract Data Objects. Computer Science Department, School of Computer Science, Carnegie Mellon University. May 1990.
  4. ^ Books & Authors: Effective Java, accessed 16 April 2008
  5. ^ Heiss, Janet J. (2007). “Rock Star Josh Bloch”JavaOne. Archived from the original on 27 October 2007.
  6. ^ Joshua Bloch, After eight years at Google, the time has come for me to move on
  7. ^ Geelan, Jeremy (2004-12-21). “The i-Technology Right Stuff”Java Developer’s Journal.
  8. ^ Kreft, Klaus; Langer, Angelika (17 June 2008). “Understanding the closures debate”JavaWorld. Retrieved 2020-07-20.
  9. ^ Darcy, Joseph D. (28 August 2009). “Project Coin: The Final Five (Or So)”Joseph D. Darcy’s Oracle Weblog. Oracle. Retrieved 6 May 2014.
  10. ^ “Faculty”Institute for Software ResearchCarnegie Mellon University. Retrieved 31 August 2020.

External links

Categories

Sources:

Fair Use Sources:

Categories
Java Software Engineering

Simon Roberts

Simon started out working as a software engineer, specializing in industrial control systems, and had a sideline teaching for a local University in his then-home-town of Cambridge, England.

In 1995 he joined Sun Microsystems, Inc. as a senior instructor and course developer. Simon spearheaded the introduction of Java training by Sun Microsystems in the U.K. in 1995. He developed the first Java certification exams for Sun before he moved to the U.S. in 1998.

Since leaving Sun in 2004, Simon has developed and delivered training for clients around the world.

Simon believes that training should have an immediate purpose and application, and that the most effective training is usually “on the job” mentoring, helping to remove the immediate roadblocks to productivity that so often plague workers in fast moving environments.

Excellent classes:

Sources:

Fair Use Sources:

Categories
Java Software Engineering

Herbert Schildt

See also Java: The Complete Reference, Java Programming Language, Java Glossary, Java Bibliography, Java Reference materials

Herbert Schildt is an American computing author, programmer and musician. He has written books about various programming languages. He was also a founding member of the progressive rock band Starcastle.

Called “one of the world’s foremost authors of books about programming” by International Developer magazine, best-selling author Herbert Schildt has written about programming for over three decades. His books have sold millions of copies worldwide and have been widely translated. Featured as one of the rock star programmers in Ed Burns’ book “Secrets of the Rock Star Programmers”, Schildt is interested in all facets of computing, but his primary focus is computer languages. He is the author of numerous books on Java, C, C++, and C#. Schildt holds BA and MCS degrees from the University of Illinois, Urbana/Champaign.

Life

Schildt holds both graduate and undergraduate degrees from the University of Illinois at Urbana-Champaign (UIUC). He claims he was a member of the original ANSI committee that standardized the C language in 1989, and the ANSI/ISO committees that updated that standard in 1999, and standardized C++ in 1998.[1][unreliable source?] Other members of the ANSI C committee have drawn his presence in the committee and the quality of his committee efforts into question.[2][3]

Schildt has written books about DOS,[4] C, C++, C# and other computer languages. His earliest books were published around 1985 and 1986. (The book Advanced Modula-2 from 1987 says on the cover that it is his sixth book.) His books were initially published by Osborne, an early computer book publisher which concentrated on titles for the personal computer. After the acquisition of Osborne by McGraw-Hill, the imprint continued publishing Schildt’s work until the imprint was subsumed completely into the larger company.

Little C

One of Schildt’s most enduring projects is the Little C interpreter, which is a lengthy example of a hand-written recursive-descent parser which interprets a subset of the C language. The program was originally published in Dr. Dobb’s Journal in August, 1989 entitled “Building your own C interpreter”.[5] This example was included in the books Born to Code In C (Osborne, 1989), The Craft of C (Osborne, 1992),[6] and in a later edition of C: The Complete Reference.

Schildt’s book The Art of C++ similarly features an interpreter for a language called Mini-C++. (Mini-C++ does not support the “class” keyword, although minimal and artificial support for cin and cout has been added.) There is also a BASIC interpreter called Small BASIC in Turbo C: The Complete Reference, first edition, written in C, and another in The Art of Java (2003) written in Java.[7]

Code for all these is available for download from the McGraw Hill technical books website, under each book.[8]

Starcastle

In addition to his work as a computer scientist, Schildt is the original multi-keyboardist for the progressive rock band Starcastle, appearing on all of the group’s albums, most of which were produced from 1976-1978. His style is distinguished by extensive use of Oberheim analog sequencers to create ethereal washes of sound colors, a pioneering technique which was quite cutting-edge for the pre-digital synthesizer period. He is also featured on the band’s 2007 album “Song of Times.”[9]

Reception

Schildt is called “one of the world’s foremost authors of books about programming” by International Developer magazine.[10] He is featured as one of the rock star programmers in Ed Burns’ book Secrets of the Rock Star Programmers.[11] His books have sold in the millions, worldwide.[12]

Schildt’s books have a reputation for being riddled with errors.[13] Their technical accuracy has been challenged by many reviewers, including ISO C committee members Peter Seebach[2] and Clive Feather,[14] C FAQ author Steve Summit,[15] and numerous C Vu reviewers from the Association of C and C++ Users (ACCU).[16]

Other reviewers have been more positive, with one ACCU reviewer saying about Schildt’s C: The Complete Reference, Fourth Edition that Schildt “has learnt something, not enough to receive positive acclaim but enough to remove the ‘positively detrimental’ epithet”.[17]

Bibliography (of selected books)

References

  1. ^ “About Herb Schildt”official site. Retrieved 2010-04-25.
  2. a b Seebach, Peter. “C: The Complete Nonsense (4th Edition)”. Retrieved 2010-04-08.
  3. ^ Clive Feather (18 January 2008). “Re: To Richard Heathfield from spinoza1111”. Retrieved 28 September 2013.
  4. ^ Shannon, L.R. (August 6, 1991). “PERIPHERALS; MS-DOS: The Latest Literature Helps Out”The New York Times. New York, New York. Retrieved 2010-04-29.
  5. ^ Herb Schildt (August 1, 1989). “Building Your Own C Interpreter”Dr. Dobb’s Journal. Retrieved 2010-04-25.
  6. ^ Ian Ormesher (Sep 1993). “ACCU Reviews: The Craft of C”C VuACCU. Archived from the original on 2011-07-16. Retrieved 2010-04-25.
  7. ^ The Art of Java, page 88, online at Google Books.
  8. ^ “Free Downloads: Samples and Code” McGraw-Hill Professional website. Retrieved April 26, 2010.
  9. ^ “Starcastle History – Prog rock”Starcastle official site. Retrieved 2010-04-25.
  10. ^https://web.archive.org/web/20060820041249/http://internationaldeveloper.com/contact_us.htm
  11. ^ Burns, Ed (2008). Secrets of the Rock Star Programmers: Riding the IT CrestISBN 978-0071490832.
  12. ^ http://ridingthecrest.com/interviews.html
  13. ^ Seebach, Peter. “C: The Complete Nonsense (3rd Edition)”. Retrieved 2010-04-22.
  14. ^ Feather, Clive. “The Annotated Annotated C Standard”.
  15. ^ Summit, Steve (1996). C Programming FAQs. Addison-Wesley. pp. 169–170ISBN 0-201-84519-9Unfortunately, the book contains numerous errors and omissions, primarily in the annotations, and a few pages of the standard itself are missing. Many people on the Internet recommend ignoring the annotations entirely.http://c-faq.com/ansi/avail.html
  16. ^ “Schildt” Reviews in C Vu, from the ACCU, last updated 13 May 2001. Retrieved 2010-04-22.
  17. ^ Francis Glassborow. “Book Review: C: The Complete Reference 4ed”ACCU. Retrieved 28 September 2013.

External links

Categories

Sources:

Fair Use Sources:

Categories
Java Software Engineering

James Gosling

See also Java Programming Language, Java Glossary, Java Bibliography, Java Reference materials

James Arthur Gosling, often referred to as “Dr. Java”, OC (born May 19, 1955) is a Canadian computer scientist, best known as the founder and lead designer behind the Java programming language.[3]

James Gosling 2008.jpg
BornJames Gosling
May 19, 1955 (age 65)
CalgaryAlberta, Canada
NationalityCanadian
Alma materUniversity of Calgary
(BSc, 1977)
Carnegie Mellon University
(MAPhD, 1983)
Known forJava (programming language)
TitleDr. Java
Children2
AwardsOfficer of the Order of CanadaIEEE John von Neumann Medal The Economist Innovation AwardNAE Foreign Member
Scientific career
InstitutionsSun MicrosystemsOracle CorporationGoogleLiquid Robotics[1]Amazon Web Services
ThesisAlgebraic Constraints (1983)
Doctoral advisorBob Sproull and Raj Reddy[2

Early life

James Gosling received a Bachelor of Science from the University of Calgary [4] and his M.A. and Ph.D. from Carnegie Mellon University, all in computer science.[2][5][6] He wrote a version of Emacs called Gosling Emacs (Gosmacs) while working toward his doctorate. He built a multi-processor version of Unix for a 16-way computer system[7] while at Carnegie Mellon University, before joining Sun Microsystems. He also developed several compilers and mail systems there.

Career & contributions

Gosling was with Sun Microsystems between 1984 and 2010 (26 years). At Sun he invented an early Unix windowing system called NeWS, which became a lesser-used alternative to the still used X Window, because Sun did not give it an open source license.[citation needed]

He is known as the father of the Java programming language.[8][9] He got the idea for the Java VM while writing a program to port software from a PERQ by translating Perq Q-Code to VAX assembler and emulating the hardware. He is generally credited with having invented the Java programming language in 1994.[10][11][12] He created the original design of Java and implemented the language’s original compiler and virtual machine.[13] Gosling traces the origins of the approach to his early graduate student days, when he created a p-code virtual machine for the lab’s DEC VAX computer, so that his professor could run programs written in UCSD Pascal. In the work leading to Java at Sun, he saw that architecture-neutral execution for widely distributed programs could be achieved by implementing a similar philosophy: always program for the same virtual machine.[14] Another contribution of Gosling’s was co-writing the “bundle” program, known as “shar”, a utility thoroughly detailed in Brian Kernighan and Rob Pike‘s book The Unix Programming Environment.[15]

He left Sun Microsystems on April 2, 2010, after it was acquired by the Oracle Corporation,[8] citing reductions in pay, status, and decision-making ability, along with change of role and ethical challenges.[16] He has since taken a very critical stance towards Oracle in interviews, noting that “during the integration meetings between Sun and Oracle, where we were being grilled about the patent situation between Sun and Google, we could see the Oracle lawyer’s eyes sparkle.”[9] He clarified his position during the Oracle v. Google trial over Android: “While I have differences with Oracle, in this case they are in the right. Google totally slimed Sun. We were all really disturbed, even Jonathan [Schwartz]: he just decided to put on a happy face and tried to turn lemons into lemonade, which annoyed a lot of folks at Sun.”[17] However, he approved of the court’s ruling that APIs should not be copyrightable.[18]

In March 2011, Gosling joined Google.[19] Six months later, he followed his colleague Bill Vass and joined a startup called Liquid Robotics.[1] In late 2016, Liquid Robotics was acquired by Boeing.[20] Following the acquisition, Gosling left Liquid Robotics to work at Amazon Web Services as Distinguished Engineer in May 2017.[21]

He is an advisor at the Scala company Lightbend,[22] Independent Director at Jelastic,[23] and Strategic Advisor for Eucalyptus,[24] and is a board member of DIRTT Environmental Solutions.[25]

He is known for his love of proving “the unknown”[clarification needed] and has noted but later clarified to be untrue that his favorite irrational number is √2. He has a framed picture of the first 1,000 digits of √2 in his office.[26]

Awards

For his achievement, the National Academy of Engineering in the United States elected him as a Foreign Associate member.[27]

Books

  • Ken Arnold, James Gosling, David Holmes, The Java Programming Language, Fourth Edition, Addison-Wesley Professional, 2005, ISBN 0-321-34980-6
  • James Gosling, Bill JoyGuy L. Steele Jr.Gilad BrachaThe Java Language Specification, Third Edition, Addison-Wesley Professional, 2005, ISBN 0-321-24678-0
  • Ken Arnold, James Gosling, David Holmes, The Java Programming Language, Third Edition, Addison-Wesley Professional, 2000, ISBN 0-201-70433-1
  • James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, The Java Language Specification, Second Edition, Addison-Wesley, 2000, ISBN 0-201-31008-2
  • Gregory Bollella (Editor), Benjamin Brosgol, James Gosling, Peter Dibble, Steve Furr, David Hardin, Mark Turnbull, The Real-Time Specification for Java, Addison Wesley Longman, 2000, ISBN 0-201-70323-8
  • Ken Arnold, James Gosling, The Java programming language Second Edition, Addison-Wesley, 1997, ISBN 0-201-31006-6
  • Ken Arnold, James Gosling, The Java programming language, Addison-Wesley, 1996, ISBN 0-201-63455-4
  • James Gosling, Bill Joy, Guy L. Steele Jr., The Java Language Specification, Addison Wesley Publishing Company, 1996, ISBN 0-201-63451-1
  • James Gosling, Frank Yellin, The Java Team, The Java Application Programming Interface, Volume 2: Window Toolkit and Applets, Addison-Wesley, 1996, ISBN 0-201-63459-7
  • James Gosling, Frank Yellin, The Java Team, The Java Application Programming Interface, Volume 1: Core Packages, Addison-Wesley, 1996, ISBN 0-201-63453-8
  • James Gosling, Henry McGilton, The Java language Environment: A white paperSun Microsystems, 1996
  • James Gosling, David S. H. Rosenthal, Michelle J. Arden, The NeWS Book : An Introduction to the Network/Extensible Window System (Sun Technical Reference Library), Springer, 1989, ISBN 0-387-96915-2

See also

Wikimedia Commons has media related to James Gosling.

References

  1. a b I’ve moved again : On a New Road. Nighthacks.com. Retrieved on 2016-05-17.
  2. a b James Gosling at the Mathematics Genealogy Project
  3. ^ “James Gosling – Computing History”Computinghistory.org.uk. Retrieved 2017-10-09.
  4. ^ “Archived copy”. Archived from the original on 2015-06-01. Retrieved 2015-05-13.
  5. ^ Gosling, James (1983). Algebraic Constraints (PhD thesis). Carnegie Mellon University. ProQuest 303133100.
  6. ^ Phd Awards By Advisor. Cs.cmu.edu. Retrieved on 2013-07-17.
  7. ^ James Gosling mentioned a multiprocessor Unix in his statement during the US vs Microsoft Antitrust DOJ trial in 1998 “DOJ/Antitrust”Statement in MS Antitrust case. US DOJ. Retrieved 1 February 2007.
  8. a b Guevin, Jennifer. “Java co-creator James Gosling leaves Oracle”CNET. Retrieved 13 June 2020.
  9. a b Shankland, Stephen. (2011-03-28) Java founder James Gosling joins Google. CNET Retrieved on 2012-02-21.
  10. ^ Allman, E. (2004). “Interview: A Conversation with James Gosling”Queue2(5): 24. doi:10.1145/1016998.1017013.
  11. ^ Gosling, J. (1997). “The feel of Java”. Computer30 (6): 53–57. doi:10.1109/2.587548.
  12. ^ “Sun Labs-The First Five Years: The First Fifty Technical Reports. A Commemorative Issue”Ching-Chih Chang, Amy Hall, Jeanie Treichel. Sun Microsystems, Inc. 1998. Retrieved 2010-02-07.
  13. ^ Gosling, James (2004-08-31). “A Conversation with James Gosling”ACM Queue. ACM. Retrieved 2014-07-03. At Sun he is best known for creating the original design of Java and implementing its original compiler and virtual machine.
  14. ^ McMillan, W.W. (2011). “The soul of the virtual machine: Java’s abIlIty to run on many dIfferent kInds of computers grew out of software devised decades before”. IEEE Spectrum48 (7): 44–48. doi:10.1109/MSPEC.2011.5910448S2CID 40545952.
  15. ^ Kernighan, Brian W; Pike, Rob (1984). The Unix Programming Environment. Prentice Hall. pp. 97-100ISBN 0-13-937681-X.
  16. ^ Darryl K. Taft. (2010-09-22) Java Creator James Gosling: Why I Quit Oracle. eWEEK.com
  17. ^ My attitude on Oracle v Google. Nighthacks.com. Retrieved on 2016-05-17.
  18. ^ “Meltdown Averted”Nighthacks.com. Retrieved 2017-03-13.
  19. ^ Next Step on the Road. Nighthacks.com. Retrieved on 2016-05-17.
  20. ^ “Boeing to Acquire Liquid Robotics to Enhance Autonomous Seabed-to-Space Information Services”. December 6, 2016.
  21. ^ Darrow, Barb (May 23, 2017). “Legendary Techie James Gosling Joins Amazon Web Services”Fortune.com. Retrieved 23 March 2018.
  22. ^ Typesafe — Company: Team. Typesafe.com. Retrieved on 2012-02-21.
  23. ^ James Gosling and Bruno Souza Join Jelastic as Advisers. InfoQ.com. Retrieved on 2014-11-24.
  24. ^ Eucalyptus Archived 2013-04-25 at the Wayback Machine. Eucalyptus.com Retrieved on 2013-04-22
  25. ^ “James Gosling”DIRTT Environmental Solutions Ltd.
  26. ^ UserGroupsatGoogle (29 November 2010). “James Gosling on Apple, Apache, Google, Oracle and the Future of Java”YouTube. Retrieved 20 January 2018.
  27. ^ “NAE Members Directory – Dr. James Arthur Gosling”NAE. Retrieved March 29, 2011.
  28. ^ The 2002 Economist Innovation Award Winner Archived 2012-04-22 at the Wayback Machine.
  29. ^ “Flame Award”Usenix.org. 6 December 2011. Retrieved 20 January 2018.
  30. ^ “Governor”. Archived from the original on February 7, 2008. Retrieved August 28, 2016.. February 20, 2007
  31. ^ ACM Names Fellows for Computing Advances that Are Transforming Science and Society Archived 2014-07-22 at the Wayback MachineAssociation for Computing Machinery, accessed 2013-12-10.
  32. ^ “IEEE JOHN VON NEUMANN MEDAL : RECIPIENTS” (PDF). Ieee.org. Retrieved 20 January 2018.
  33. ^ Computer History Museum names James Gosling a 2019 Fellow

Categories

Sources:

Fair Use Sources:

Categories
History Software Engineering

! Template Authors-Teachers

See also: List of pioneers in computer science and Timeline of the History of Computers

” (WP)

” (WP)

Sources:

Fair Use Sources: