awesome-programmers
Software legends
A curated list of notable software engineers who have made significant contributions to the field of computer science and technology
A list of history's greatest software engineers and tech pioneers
2k stars
69 watching
136 forks
Language: CSS
last commit: over 3 years ago
Linked from 1 awesome list
awesomebest-software-engineerssoftware-engineers
Databases | |||
Edgar F. Codd | : The inventor of the for database management, the theoretical basis for RDMS and co-creator of System R, the first implementation of the database query language | ||
Charles W. Bachman | : The designer of the linked-list data storage database , known to be one of the first database management systems and he is the organizer of the group | ||
Donald D. Chamberlin | : The co-creator of the most popular database query language, | ||
Raymond F. Boyce | : The co-creator of the most popular database query language, | ||
Jeff Dean | : The co-author of the seminal paper of "big data" storage , the co-developer of the system, the co-author of the important paper for the "big data" operational model and the co-author of the paper for a highly distributed database | ||
Sanjay Ghemawat | : The co-author of the seminal paper of "big data" storage , the co-developer of the system, the co-author of the important paper for the "big data" operational model , the co-author of the large cluster data system and the co-author of the paper for a highly distributed database | ||
Michael Stonebraker | : The creator of one of the first implementations of the relational database model and the creator of the very popular relational database database | ||
Doug Cutting | : The co-creator of the BigTable inspired, de-facto "big data" distributed file system and processing framework | ||
Mike Cafarella | : The co-creator of the BigTable inspired, de-facto "big data" distributed file system and processing framework | ||
Avinash Lakshman | : The co-creator of the storage system which has played an in the modern design of highly scalable databases. He is also the creator of the distributed database system | ||
Werner Vogels | : The co-creator of the storage system which has played an in the modern design of highly scalable databases | ||
Jim Gray | : The original designer of , the single logical unit of work performed by a database | ||
Andreas Reuter | : Helped coin the definitions for properties of database transactions | ||
Theo Härder | : Helped coin the definitions for properties of database transactions | ||
Phil Bernstein | : The creator of concepts for concurrency control over distributed networks | ||
Salvatore Sanfilippo (antirez) | : The creator of the key-value database | ||
Prashant Malik | : The co-creator of the distributed database system | ||
Avinash Lakshman | : The co-creator of the distributed database system | ||
Peter Chen | : The creator of the which was a more familiar database design than earlier versions of relational models | ||
T. William Olle | : He was an active developer in the consortium that promoted effective data systems analysis, design and implementation | ||
C.Wayne Ratliff | : The creator of , originally named Vulcan, one of the first databases with a development environment on personal computers in the 1980s | ||
Malcolm Atkinson | : One of the early pioneers of the defining the core concepts in his paper Object-Oriented Database Manifesto | ||
Vern Watts | : The creator of the IBM hierarchical database system | ||
Dwight Merriman | : The creator of the popular document-oriented database system | ||
Shay Banon | : The creator of the Lucene based full-text search engine database | ||
Yonik Seeley | : The creator of the Lucene based full-text search engine database | ||
Joydeep Sen Sarma | : The co-creator of the Hadoop based data warehouse framework | ||
Ashish Thusoo | : The co-creator of the Hadoop based data warehouse framework | ||
Brad Fitzpatrick | : The creator of the distributed memory caching system | ||
Andy Gross | : The co-creator of the highly scalable key-value database | ||
Damien Katz | : The creator of the document-oriented database | ||
Luca Garulli | : The co-creator of the multi-model NoSQL database | ||
Andrey Lomakin | : The co-creator of the multi-model NoSQL database | ||
Emil Eifrem | : The co-creator of the graph database | ||
Johan Svensson | : The co-creator of the graph database | ||
Matthias Broecheler | : The creator of the graph database | ||
Algorithms / Datatypes | |||
Donald E. Knuth | : Help contribute to the development of algorithm analysis and help formalize algorithm techniques like asymptotic notation and knuth-bendix completion algorithm | ||
Edsger W. Dijkstra | : Helped develop many profoundly impactful algorithms such as , and | ||
John Von Neumann | : The inventor of the algorithm, an efficient and one of the most widely used sorting algorithms | ||
Ray Solomonoff | : The creator of which introduced a method to assign prior probability to a given observation, the founder of the theory of unviersal , and founder of | ||
Leslie Lamport | : The creator of the impactful which orders processes based on their arrival like a bakery providing "loop freedom" and improving safety for shared resources on multiple threads, the creator of the algorithm / protocol now considered to be the de-facto framework for designing consensus and agreement in a distributed computing system, and the creator of introduced through his well-cited paper "Time, Clocks, and the Ordering of Events in a Distributed System", | ||
Robert W. Floyd | : The creator of important algorithms like for finding the shortest path in a graph, the , and the algorithm commonly used for image manipulation | ||
Tony Hoare | : The creator the sorting algorithm , one of the most commonly used algorithms | ||
Michael Burrows | : The co-creator of the efficient string compression algorithm | ||
David Wheeler | : The co-creator of the efficient string compression algorithm | ||
Cliff Shaw | : The creator of one of the most common data structures, the | ||
Stephen Cook | : The author of seminal papers that describe the notions of , and , all making significant contributions to algorithmic complexity | ||
Richard M. Karp | : The co-creator of the for efficiently computing a networks , the author of proof for , the co-publisher of the for finding maximum cardinality , the co-creator of the for string searching, and co-publisher of the | ||
John Hopcroft | : The co-publisher of the for finding maximum cardinality and the co-publisher of the | ||
Robert Tarjan | : The publisher of the , the publisher of , the co-author of the , the creator of the data structure and co-created the data structure | ||
John Cocke | : The co-creator of the for parsing context-free grammars in compilers | ||
Juris Hartmanis | : The co-author of an influential paper that establishes the foundations for the field of and introduced quantifying the efficiency of an algorithm | ||
Arthur Samuel | : The first known user of the data structure in a program | ||
Richard E. Stearns | : The co-author of an influential paper that establishes the foundations for the field of and introduced quantifying the efficiency of an algorithm | ||
Geoffrey Hinton | : One of the first to demonstrate the use of algorithm to train multi-layer neural networks influencing the deep learning community | ||
Chi-Chih Andrew Yao | : The author of complexity theory proof which "has become a fundamental technique for reasoning about randomized algorithms and complexity", the co-author of , the author of important rules for , the author of the paper "On the security of public key protocols", the author of and the author of the XOR-lemma technique | ||
Leslie G. Valiant | : The author of an important paper introducing model for machine learning, and the discoverer of definition in complexity theory | ||
Michael O. Rabin | : The creator of the first with the , the co-creator of the , and the co-creator of the for string searching | ||
Charles E. Leiserson | : The creator of the interconnection network for provably efficient communication, and the creator of the | ||
Jon Bentley | : The creator of the space-partitioning data structure widely used for searching with multidimensional keys, and the creator of the | ||
Algorithms / Datatypes / Cryptography | |||
Manuel Blum | : The developer of an important complexity theory that spawned results like the , the and . The creator of the algorithm which finds the median in linear time. The co-creator of cryptography applications like the and the . The co-creator of the CAPTCHA originally served as a benchmark turing task | ||
Ron Rivest | : The co-creator of one of the first and most widely used practical public-key cryptosystems , the creator of the symmetric key encryption algorithms (RC2, RC4, RC5), and the creator of hash functions MD2, MD4, and MD6 | ||
Adi Shamir | : The co-creator of one of the first and most widely used practical public-key cryptosystems , the co-creator of a type of , the creator of algorithm, the co-creator of most well-known visual cryptography technique , and co-discovered | ||
Leonard Adleman | : The co-creator of one of the first and most widely used practical public-key cryptosystems , and the author of the influential paper "Molecular Computation of Solutions To Combinatorial Problems" which introduced the concept of using DNA as a computational system | ||
Whitfield Diffie | : The co-author of important cryptography paper "New Directions in Cryptography" introducing the , one-way encoding functions using a public-key, which later inspired the practical implementation of | ||
Claude Shannon | : One of the main codebreaking teams during World War II, and author of a seminal paper explaining unbreakable ciphers | ||
Martin Hellman | : The co-author of important cryptography paper "New Directions in Cryptography" introducing the , one-way encoding functions using a public-key, which later inspired the practical implementation of | ||
Shafi Goldwasser | : The co-creator of encryption algorithm which unlike RSA has been mathematically proven to be as hard to break as factoring, the co-creator of encryption algorithm considered to be the first probabilistic public-key encryption scheme, the co-author of in the paper "The Knowledge Complexity of Interactive Proof-Systems", and the co-definer of for proper constructions of | ||
Silvio Micali | : The co-creator of encryption algorithm considered to be the first probabilistic public-key encryption scheme, the co-author of in the paper "The Knowledge Complexity of Interactive Proof-Systems", and the co-definer of for proper constructions of | ||
Michael O. Rabin | : The creator of the protocol for transferring information from a sender to a receiver without knowing the pieces transferred | ||
Artificial Intelligence | |||
Alan Turing | : The father of artificial intelligence, the creator of the standard for which a machine's ability to exhibit intelligent behavior is measured, and pioneered concepts of machines computing according to a set of rules | ||
Marvin Minsky | : Helped establish the principle concepts of artificial intelligence and co-founder of the Massachusetts Institute of Technology's AI laboratory | ||
John McCarthy | : One of the founders for the discipline of artificial intelligence and coined the term "artificial intelligence" | ||
Allen Newell | : The co-creator of two of the earliest Artificial Intelligence programs, the developed to imitate the problem solving skills of humans and the | ||
Herbert A. Simon | : The co-creator of two of the earliest Artificial Intelligence programs, the developed to imitate the problem solving skills of humans and the | ||
Cliff Shaw | : The co-creator of two of the earliest Artificial Intelligence programs, the developed to imitate the problem solving skills of humans and the | ||
Christopher Strachey | : The creator of the first functional artificial intelligence program for playing checkers | ||
Nathaniel Rochester | : He is sometimes considered to be the founder in the academic field of artificial intelligence by organizing a group in IBM focused on the subject. This group later evolved into the , the seminal event in the artificial intelligence | ||
Herbert Gelernter | : The co-author of the paper "Intelligent Behavior in Problem-Solving Machines" to describe a theorem prover in geometry to exhibit intelligent behavior in machines | ||
Oliver Selfridge | : The "Father of Machine Perception" and author of important paper "Pandemonium" introducing the first pattern recognition model and the paradigm | ||
Arthur Samuel | : The creator of the first self-learning program in artificial intelligence | ||
Margaret Masterman | : The co-creator of semantic nets for machine translation pioneering the field of computational linguistics | ||
Ray Solomonoff | : The creator of universal for inductive prediction, laying the foundation for mathematical theory of aritifical intelligence | ||
Edward Feigenbaum | : The chief developer of the first primarily used to explore induction in problems for the scientific commmunity, and author of the first articles of artificial intelligence "Computers and Thought" | ||
Leonard Uhr | : The co-author of significantly valuable paper "A Pattern Recognition Program That Generates, Evaluates, and Adjusts Its Own Operators" describing one of the first machine learning programs | ||
Raj Reddy | : The co-creator of early robotic systems like the Hearsay 1 that demonstrated advanced language speaking, and co-creator of many innovative artificial intelligence systems like the "blackboard model" | ||
Seymour Papert | : The researcher and author with Marvin Minsky of used in artificial neural networks, and the co-director of the | ||
Wally Feurzeig | : The creator of the first intelligent computer-assisted instruction system "MENTOR" using a set of rules for problem-solving | ||
Richard Greenblatt | : The creator of the computer chess-playing program which became the first to win against a human opponent in tournament play | ||
Frank Rosenblatt | : The creator of the neural network device generally recognized as a forerunner to artificial intelligence | ||
Joel Moses | : The co-creator of the computer algebra system that demonstrated the use of symbolic reasoning for integration problems and became the first successful knowledge-based mathematical program | ||
Roger Schank | : The founder of , a model used in artificial intelligence systems, and founder of computer reasoning process | ||
Yorick Wilks | : The early pioneer of the algorithmic method "Preference Semantics" used to computationaly interpret sentences in machine translation systems and in the field of word sense disambiguation | ||
Jaime Carbonell | : The creator of the "Scholar" semantic net based program for computer assisted instruction, the creator of "MMR (maximal marginal relevance)" technology for summarizing text in search engines, and founder of the Carnegie Mellon University division focused on natural language processing | ||
Feng-hsiung Hsu | : The creator of the chess machine showing ability to defeat Grandmaster chess players in tournament play | ||
Andrew Ng | : The co-founder of research project where one of the first applications of the deep learning model was applied and the co-developer of | ||
Jeff Dean | : The co-founder of research project which is used for Android's speech recognition system, photo search and video recommendations | ||
Judea Pearl | : The creator of the highly important probabilistic graphical model and the principal inference algorithms within the model. He is also the developer of a theory for | ||
Jacek Karpiński | : The co-creator of one of the first machine learning algorithms for character and image recognition | ||
Gerald Jay Sussman | : The creator of artificial intelligence based CAD technology, the contributor to AI research like and dependency-based backtracking | ||
Tools | |||
Tim Berners-Lee | : The creator of the first web browser, and the first web server | ||
Richard Matthew Stallman | : The creator of the open source operating system, co-creator of the original text-editor also known as "GNUMACS", and the creator of the popular debugging tool | ||
Marc Andreessen | : The co-creator of the first widely used modern web browser popularizing the world wide web | ||
Robert McCool | : The creator of | ||
Butler Lampson | : The co-creator of the operating system, laser printer software, the first Ethernet and the text editor for the first personal computer | ||
Charles Thacker | : The original designer, co-creator of the laser printer software and the first Ethernet for the first personal computer | ||
Doug Cutting | : The creator of the data search library and co-creator of the highly scalable web crawler | ||
Mike Cafarella | : The co-creator of the highly scalable web crawler | ||
Jeff Dean | : The co-creator of the machine learning library | ||
Bill Joy | : The creator of the Unix text editor , the creator of the command-line interpreter, one of the earliest developers of and co-creator of Version 2 | ||
Lars Bak | : The creator of JavaScript engine | ||
Matei Zaharia | : The creator of the cluster computing framework and the cluster management system | ||
Jason van Zyl | : The creator of build automation tool for JVM environments | ||
James Duncan Davidson | : The creator of the Java HTTP web server | ||
Alexander Stepanov | : The primary designer and implementer of the C++ and helped formalize concepts of | ||
Stephen R. Bourne | : The creator of the influential command-line interpreter | ||
Nathan Marz | : The creator of the distributed stream processing framework | ||
Ryan Dahl | : The creator of the JavaScript runtime interpreter | ||
Solomon Hykes | : The creator of , the system virtualization tool | ||
Erich Gamma | : The co-creator of popular code testing framework for Java | ||
Kent Beck | : The co-creator of unit testing framework for Smalltalk, and co-creator of popular code testing framework for Java | ||
Ward Cunningham | : The creator of the , the first web content-collaboration tool | ||
Igor Sysoev | : The creator of popular web server | ||
Jamie Zawinski | : One of the original developers of the browser and open-source community, and one of the early developers of the | ||
Daniel J. Bernstein | : The creator of a mail transfer agent with an emphasis on security, and the creator of the highly secure DNS server | ||
Michael Burrows | : The co-creator of the lock service for distributed systems | ||
Robby Russell | : The creator of popular shell framework | ||
Cheng Zhao | : The creator of the popular desktop application development environment | ||
Michael DeHaan | : The creator of the computer automation, configuration management tool | ||
David Cournapeau | : The creator of the machine learning library for python | ||
Max Howell | : The creator of the package management system for macOS | ||
Mitchell Hashimoto | : The creator of the virtual environment build tool | ||
Jose Valim | : The co-creator of the authentication plugin for Rails | ||
Yangqing Jia | : The creator of the deep learning framework | ||
Jon Skeet | : The co-creator of the popular data serializing tool | ||
Brendan Burns | : The co-creator of container cluster management system , inspired by the Google Borg project | ||
Joe Beda | : The co-creator of container cluster management system , inspired by the Google Borg project | ||
Jonas Bonér | : The creator of concurrent and distributed application toolkit on the JVM | ||
Jay Kreps | : The creator of the high-throughput message broker | ||
Jun Rao | : The creator of the high-throughput message broker | ||
Neha Narkhede | : The creator of the high-throughput message broker | ||
Ben Reed | : The distributed key-value store primarily used as Hadoop's configuration and synchronization service | ||
Lars Rasmussen | : The co-creator of the original system for | ||
Jack Dongarra | : The co-creator of linear algebra tool , the co-creator of the parallel computing message system , the creator of ranking system for powerful computers and co-creator of linear algebra library | ||
Travis Oliphant | : The creator of , a package for numerical computing in Python | ||
Wes McKinney | : The creator of the data manipulation library | ||
Bram Moolenaar | : The creator of the text editor | ||
Tools / Operating Systems | |||
Dennis Ritchie | : The co-creator of the operating system family that inspired the architecture of many modern operating systems like Linux | ||
Ken Thompson | : The co-creator of the operating system family and one of the original developers for the operating system | ||
Rob Pike | : The co-creator of operating system and the operating system | ||
Linus Torvalds | : The creator of the and the distributed version control system | ||
Brian Kernighan | : One of the original developers of the operating system family, often credited to coin the name | ||
Dave Cutler | : The co-creator of operating system family which it's kernel is still the foundation of the modern Microsoft operating system | ||
Ian Murdock | : The creator of one of the most popular Linux operating system distribution | ||
Douglas McIlroy | : The creator of Unix / Linux feature that chains a sequence of process together with a pipe character, the creator of Unix based data comparison tool , and the creator of the Unix based listing command | ||
Russ Cox | : The core developer of the operating system, and the core developer of the programming language | ||
Theo de Raadt | : The creator of , focused on portability, standardization, correctness, proactive security and integrated cryptography | ||
Robert Creasy | : The project developer for the first full virtualization hypervisor, the IBM CP-40 | ||
Tools / Development Frameworks | |||
Rod Johnson | : The creator of the popular web application development framework for Java | ||
David Heinemeier Hansson | : The creator of , the web application framework | ||
Jordan Walke | : The original author of JavaScript framework | ||
Adrian Holovaty | : The co-creator of the web framework | ||
Simon Willison | : The co-creator of the web framework | ||
Mark Otto | : The co-creator of the front-end web framework | ||
Jacob Thornton | : The co-creator of the front-end web framework | ||
Mike Bostock | : The creator of the JavaScript library | ||
John Resig | : The creator of the JavaScript Library | ||
Miško Hevery | : The creator of the JavaScript web application framework | ||
Erik Meijer | : The creator of the asynchronous programming framework | ||
Ben Christensen | : The creator of the asynchronous programming framework | ||
Armin Ronacher | : The creator of the micro web application framework for python | ||
Geoff Schmidt | : The co-creator of popular JavaScript application development environment | ||
Guillermo Rauch | : The creator of the real-time JavaScript application framework | ||
Guillaume Bort | : The creator of the web application framework for Scala and Java | ||
Taylor Otwell | : The creator of the PHP web application framework | ||
Yehuda Katz | : The co-creator of the JavaScript application development framework , the creator of JavaScript templating tool , the co-creator of package management system for ruby , and once a member of core development teams for "jQuery" and "Ruby on Rails" | ||
Fabien Potencier | : The creator of the PHP web application framework | ||
Programming Languages | |||
Dennis Ritchie | : The creator of the programming language, one of the most influential languages of all time | ||
Ken Thompson | : The co-creator of the programming language and sole creator of the programming language, the direct predecessor of the C programming language | ||
Alan J. Perlis | : The co-creator programming language andhelped standardize education of computer science and programming language design | ||
John McCarthy | : The original developer of the programming language family, and significantly influenced the design of the programming language | ||
Donald E. Knuth | : The creator of the TeX computer typesetting system, the related METAFONT font definition language and rendering system, LR(k) grammars, and attribute grammars | ||
Brian Kernighan | : The creator of the Unix text processing language and the math computing language | ||
Chris Lattner | : The creator of the compiler infrastructure, the front-end compiler and the programming language | ||
Kristen Nygaard | : The co-inventor of which introduced the formal concept of paradigm | ||
Ole-Johan Dahl | : The co-inventor of which introduced the formal concept of paradigm | ||
Alain Colmerauer | : The creator of and one of the main founders of | ||
James Gosling | : The creator of the programming language which later became | ||
Niklaus Wirth | : The creator of several important programming languages including , , and the procedural programming language | ||
Konrad Zuse | : The creator of the first high-level programming language originally created for his original and world's first programmable computer, the | ||
Bjarne Stroustrup | : The creator of , one of the most popular programming languages of all time | ||
Larry Wall | : The creator of the dynamic programming language popularized by its unsurpassed regular expression and string parsing abilities | ||
Don Syme | : The creator of the programming language, and the creator of generics in framework | ||
Anders Hejlsberg | : One of the original authors of , Pascal dialet programming toolkit and the JavaScript superset language | ||
Joe Armstrong | : The creator of the functional programming language known for being well suited for systems that are distributed, fault tolerant, and concurrent | ||
Rob Pike | : The co-creator of the programming language | ||
Alan Cooper | : The creator of , a user-friendly programming language for Microsoft applications | ||
John G. Kemeny | : The co-creator of the Programming Language | ||
Thomas E. Kurtz | : The co-creator of the Programming Language | ||
Brad Cox | : The co-creator of Programming Language | ||
Tom Love | : The co-creator of Programming Language | ||
Brendan Eich | : The creator of Programming Language | ||
Guido van Rossum | : The creator of the programming language | ||
Erik Meijer | : The co-creator of the specifications for programming language | ||
Grady Booch | : The co-creator of the popularly used to provide a standard visual notation for system designs | ||
Ivar Jacobson | : The co-creator of the popularly used to provide a standard visual notation for system designs, and the co-creator of | ||
James Rumbaugh | : The co-creator of the popularly used to provide a standard visual notation for system designs | ||
Kevin Hammond | : The co-creator of the specifications for programming language, and the co-creator of | ||
Simon Peyton Jones | : The co-creator of the specifications for programming language, and the co-creator of | ||
Rich Hickey | : The creator of the functional programming language, a modern that compiles for the | ||
Seymour Papert | : The co-creator of the educational programming language often used to draw line graphics with a robot | ||
Cynthia Solomon | : The co-creator of the educational programming language often used to draw line graphics with a robot | ||
Wally Feurzeig | : The co-creator of the educational programming language often used to draw line graphics with a robot | ||
Jean Ichbiah | : The creator of , an object oriented programming language | ||
Kenneth E. Iverson | : The creator of that lead innovations in and contributing to the development of the functional programming paradigm | ||
Yukihiro Matsumoto | : The creator of the object-oriented programming language | ||
Bertrand Meyer | : The creator of the programming language, one of the first object oriented languages and creator of | ||
Rasmus Lerdorf | : The creator of the server-side scripting language primarily used for web development | ||
Martin Odersky | : The creator of the functional / object-oriented programming language for the | ||
Xavier Leroy | : The co-creator of the programming language that has functional and object oriented properties to its design | ||
Graydon Hoare | : The original creator of the low-level systems programming language | ||
Jeremy Ashkenas | : The creator of the JavaScript transcompiled programming language | ||
Jose Valim | : The creator of the functional concurrent programming language built on top of BEAM Erlang virtual machine | ||
Lars Bak | : The creator of the programming language that transcompiles into JavaScript | ||
Jeff Bezanson | : The co-creator of the dynamic programming language designed for high performance scientific computing | ||
Stefan Karpinski | : The co-creator of the dynamic programming language designed for high performance scientific computing | ||
Viral B. Shah | : The co-creator of the dynamic programming language designed for high performance scientific computing | ||
Alan Edelman | : The co-creator of the dynamic programming language designed for high performance scientific computing | ||
Ary Borenszweig | : The co-creator of the statically type, object oriented programming language inspired by Ruby's syntax and C's compilation | ||
Juan Wajnerman | : The co-creator of the statically type, object oriented programming language inspired by Ruby's syntax and C's compilation | ||
Andrey Breslav | : The co-creator of the JVM run, statically typed programming language | ||
Slava Pestov | : The creator of programming language and a member of the core team for | ||
Arthur Whitney | : The creator of the programming language and the creator of the programming language | ||
John Ousterhout | : The creator of the programming language | ||
Programming Languages / Theory | |||
Edsger W. Dijkstra | : Led the movement helping set standards for quality software development and eliminating harmful practices like the statement. He also introduced the concepts of "recursion" and "stack" with the creation of ALGOL 60 compiler | ||
Alan Kay | : He helped pioneer the idea of object-oriented programming and helped create the Smalltalk language originally used for graphical interfaces | ||
Maurice Wilkes | : The designer of EDSAC, the first computer with an internally stored program. Also helped define concepts like microprogramming, symbolic labels and macros | ||
Tony Hoare | : The author of influential paper "An axiomatic basis for computer programming", and the creator of the influential language for describing patterns of interaction in concurrent systems | ||
Allen Newell | : Along with Herbert Simon, he helped create Information Processing Language (IPL) which introduced the concept of list processing and often cited as the first functional programming language | ||
Herbert A. Simon | : Along with Allen Newell, he helped create Information Processing Language and the Heuristic Compiler, the first system with capabilities for automatic programming | ||
Ivan Sutherland | : The first to define the notion of "objects" and "instances" during the development of | ||
Peter Naur | : The co-creator of the influential programming language introducing nested function with lexical scope, and the co-creator of the one of the main notation techniques for used to describe syntax of programming languages | ||
Jean-Yves Girard | : One of the discoverers of , the polymorphic lambda calculus that forms the theoretical basis for Haskell and ML | ||
John C. Reynolds | : One of the discoverers of , the polymorphic lambda calculus that forms the theoretical basis for Haskell and ML | ||
Barbara Liskov | : The co-creator of the important object-oriented subtyping definition and the co-creator of programming language that introduced key features like abstract data types, iterators and use of classes with constructors | ||
Robin Milner | : The creator of functional programming language, the first language to use a polymorphic type inference alongside type-safe exception handling, and the creator of concurrency theory | ||
Christopher Strachey | : The co-creator of formalizing the definitions of programming languages by creating mathematical denotations describing expressions from the language | ||
Dana Scott | : The co-creator of formalizing the definitions of programming languages by creating mathematical denotations describing expressions from the language | ||
Noam Chomsky | : The creator of the , a containment heirarchy for classes of formal grammars | ||
Seymour Ginsburg | : The creator of the , and proved languages like ALGOL are context-free | ||
Programming Languages / Compilers | |||
Grace Hopper | : The inventor of the , often considered as the first but functioned as a for resulting to the development of higher level programming languages like | ||
John Backus | : The co-creator of the first high-level compiled programming language and its compiler, often credited as being the first and fully complete compiler | ||
Frances E. Allen | : The author of the paper "Program Optimization" that laid the basis for systematic analysis of computer programs, the author of "Control Flow Analysis" that uses intervals to analyze data flow, and the co-author of the paper "A Catalog of Optimizing Transformations" which is one of the main analysis strategies used in optimizing compilers | ||
Richard Matthew Stallman | : The creator of the system which has been adopted as the standard compiler system by many operating systems | ||
Nathaniel Rochester | : The creator of the first , translating assembly code into byte code for the first mass-produced computer that he also created, the | ||
Lois Haibt | : The co-creator of the first high-level compiled programming language and its compiler | ||
Alon Zakai | : The creator of , the LLVM to JavaScript compiler | ||
Computer Graphics | |||
Alvy Ray Smith | : He is the creator of , the HSV color space, which is the most common model to represent RGB colors | ||
Ivan Sutherland | : He is the creator of the revolutionary computer program , often known to be the first real-time graphical user interface and foundation for modern and the creator of whats considered to be the first virtual reality head-mounted system | ||
Jim Blinn | : The inventor of several now-ubiquitous rendering algorithms, including the , , and | ||
Douglas Engelbart | : The creator of the revolutionary that employed the first practical use of and a precursor of the graphical user interface | ||
Alan Kay | : The creator of concept which became a profound influence to graphical user interfaces | ||
Larry Tesler | : The co-creator of the with point and click ability, and the co-creator of "copy and paste" mechanism | ||
Daniel Henry Holmes Ingalls Jr. | : The co-creator of data operations for computer graphics, and the graphical mechanism | ||
David Canfield Smith | : The creator of the "Pygmalion" system that directly led to the concept of computer icons | ||
Bill Atkinson | : The co-creator of the GUI for the Apple Lisa, the creator of the original drawing software , and the creator of the graphics library | ||
Rob Pike | : The co-creator of programmable bitmap graphics terminal | ||
John Carmack | : The video game creator of Doom and its 3D rendering engine who innovated in 3D graphics with the Carmack's reverse algorithm for shadow volumes | ||
William Fetter | : The creator of the first human figure as a 3D model while exploring perspective fundamentals for computer graphics while the coining the term "computer graphics" | ||
Pierre Bézier | : The creator of , the creator of and 3D computer graphics concepts | ||
Michael Abrash | : The co-creator of the video game and 3D rendering engine | ||
Computer Architecture / Theory | |||
Alan Turing | : The creator of the also known as the "automatic machine" because of its ability to automate sets of mathematical operations at a time when computing process was all handled by humans. This important discovery led to the fundamental principles of modern computing directly inspiring most digital systems including the Von Neumann architecture | ||
Kurt Gödel | : The creator of often considered to be the foundation of theoretical computer science and inspiration to Turing and Church, the creator of universal formal languages and the limits of proof and computation, and the creator of the proof for axiomatized arithmetic to not be both logically and complete in first-order predicate calculus | ||
Charles Babbage | : The creator of the concept for a programmable general-purpose computer with the design of the and the creator for a prototype for a less powerful | ||
Edsger W. Dijkstra | : The first to publish papers in the field of and while discovering concepts like and the | ||
John von Neumann | : He created the universally important that describes the design for a digital computer that continues to be the basis of modern computers with breakthrough concepts like shared address space for memory. He also started the field of and is considered to be the creator of the first while studying self-replicating programs | ||
Leslie Lamport | : The creator of the industry standard memory model, the creator of "Atomic and regular registers" that helps solve semantic problems when multiple resources interact to shared data, the creator of of distributed computing paradigm for building fault-tolerance by coordinating commands across replicated servers, and the co-discoverer of the failure definitions | ||
Alonzo Church | : The creator of mathematical logic system and computation model to simulate single-taped Turing machines called , and the co-creator of the formalizing the definitions of computable functions | ||
Claude Shannon | : Known as "the father of information theory", he wrote the seminal paper "A Mathematical Theory of Communication" explaining that information can be reduced and encoded as bits to essentially discover the field of information theory and entropy. He is also the author of an important paper that became the foundation of digital circuit design, and the creator of the | ||
Ada Lovelace | : The creator of mathematical operations for Charles Babbage's mechanical machines now recognized as being one of the first algorithms for a machine so is now considered to be one of the first computer programmers | ||
J. C. R. Licklider | : The creator of concepts for modern-style interactive computing, and an early researcher at Arpanet for concepts of a connected network like the internet | ||
Stephen Cole Kleene | : The creator of pattern matching mechanism, and the creator of mathematical logic branch | ||
John McCarthy | : Developed the concept of for computers with multiprogramming | ||
John Cocke | : The creator of the architecture that optimized the basic set of computer instructions appropriately for the compiler to produce a high performance pipelined processor | ||
Fernando J. Corbató | : The co-author of a paper that describes one of the earliest computer systems and the original creator of the influential time-sharing operating system which pioneered many concepts widely adopted by almost all operating systems like Unix | ||
Per Brinch Hansen | : The creator of the introducing the concept of operating system kernels and microkernel architectures with the separation of policy and mechanism, the co-createor of the synchronization construct for threads with mutex and blocking ability known as the , the first to implement a remote procedure call, and the creator of the "Distributed Processes" language for distributed systems using RPC for external requests | ||
Gerard Salton | : The creator of for information retrievel | ||
Sophie Wilson | : The co-creator of the , the most widely used model for modern smartphones, and the creator of the language for the acorn systems | ||
Tommy Flowers | : The creator of the , the first programmable digital computing systems | ||
Fred Brooks | : The co-creator of the computer that introduced 8-bit byte addressing and first to emphasize the distinction of "system architecture" and implementation | ||
George Boole | : The creator of mathematical logic which has inspired the basis of and computer science | ||
Michael O. Rabin | : The co-creator of the a kind of state machine that has several possible transitions out of each state | ||
Dana Scott | : The co-creator of the a kind of state machine that has several possible transitions out of each state | ||
Margaret Hamilton | : The creator of important concepts in asynchronous systems, priority scheduling, and end-to-end testing | ||
Herman Hollerith | : The creator of the sparking the era of automatic data processing systems | ||
Joseph Marie Jacquard | : The creator of one of the first punch card controlled programmable mechanized loom | ||
Nikolay Brusentsov | : The creator of a computer using called the | ||
Vannevar Bush | : The creator of what influenced hypertext, , originally conceived to store compressed information | ||
Paul Baran | : The co-creator of the packet switched computer network for an early prototype of internet technology at ARPANET | ||
Jean Bartik | : The co-developer of early "stored program" computers and considered to be one of the first computer programmers, using the ENIAC, a vacuum tube computer during a time when "programming" meant using cables, dials, and switches to physically rewire the machine | ||
Richard Hamming | : Defined numerical methods, automatic coding systems, and error-detecting and error-correcting codes | ||
Nathan Marz | : The author of the data-processing designed to use stream-processing or batch processing to handle data at a large scale | ||
Eric Brewer | : The original writer of the stating that a distributed computer system cannot simultaneously provide the guarantees Consistency, Availability and Partition Tolerance | ||
John Atanasoff | : He is known as the father of the computer. With the help of one of his students , in Iowa State College, during the 1940s, he created the that was the first electronic digital computer | ||
Protocols / Standards | |||
Tim Berners-Lee | : The creator of the World Wide Web, the creator of the data communication protocol, and the founder of the for internet standards | ||
Vint Cerf | : The co-creator of the fundamental design principles for computer networking in a profound paper "A Protocol for Packet Network Intercommunication" essentially outlining the architecture of the internet | ||
Robert E. Kahn | : The co-creator of the fundamental design principles for computer networking in a profound paper "A Protocol for Packet Network Intercommunication" essentially outlining the architecture of the internet | ||
Leslie Lamport | : The creator of the consensus protocol now considered to be the de-facto framework for designing consensus and agreement in a distributed computing system, and the co-author of protocol that handle and avoid failures in distributed algorithms | ||
Jeremie Miller | : The original creator of the (XMPP) | ||
William Kahan | : The primary architect behind the floating point computation standard which was the de-facto standard for implementation rules of floating points in software | ||
Butler Lampson | : The creator of the which coordinates the processes in a distributed atomic transaction on whether to commit or rollback the transaction | ||
Rob Pike | : The co-designer of the character encoding standard , capable of encoding all possible characters and is the most widely used encoding for HTML files | ||
Ken Thompson | : The co-designer of the character encoding standard , capable of encoding all possible characters and is the most widely used encoding for HTML files | ||
Tim Bray | The co-author of the original specification | ||
Bram Cohen | : The author of the peer-to-peer BitTorrent protocol, and the first BitTorrent program | ||
Development Processes | |||
Kent Beck | : The co-creator of software development methodology to improve overall software quality, the co-founder of the "Agile Manifesto" and the agile software development paradigm, and credited to be the founder of | ||
Ward Cunningham | : The co-creator of software development methodology to improve overall software quality | ||
Dave Thomas | : The co-founder of the "Agile Manifesto" and coined the phrases "DRY" which emphasizes to reduce the repetition of code or data in software | ||
Ivar Jacobson | : The creator of the "Objectory" software process directly leading to the invention of for iterative software development | ||
Analysis / Verification | |||
James H. Wilkinson | : Helped facilitate the use of the high-speed digital computer with numerical analysis and the developer of the "backward" for algorithms | ||
Amir Pnueli | : Introduced into as a way to prove correctness in algorithms and a way to reason about time in computer programs | ||
Tony Hoare | : The creator of the correctness system for languages | ||
Robert W. Floyd | : The author of the important paper introducing concepts of program correctness directly inspiring | ||
Edmund Melson Clarke | : The co-creator of the field for that introduced a machine executed system of to verify the computer program's correctness, and the co-creator of a system that represents state spaces during model checking runtime called | ||
E. Allen Emerson | : The co-creator of the field for that introduced a machine executed system of to verify the computer program's correctness | ||
Joseph Sifakis | : The co-creator of the field for that introduced a machine executed system of to verify the computer program's correctness | ||
Books / Papers | |||
Donald E. Knuth | : He is the author of the multi-volume work , often considered the bible of all fundamental algorithms | ||
Brian Kernighan | : The author of several of the most important programming books including , and | ||
Dennis Ritchie | : The author of , the authoritative reference of the language | ||
Alexander Stepanov | : He is the author of | ||
Jeffrey Ullman | : He helped write several popular textbooks ranging from compilers, computational theory, data structures and databases including and | ||
Alfred Aho | : He helped write several textbooks covering compilers and algorithms including industry classics like , and the Principles of Compiler Design | ||
John Hopcroft | : The co-author of the influential books also known as , "Data Structures and Algorithms" and "The Design and Analysis of Computer Algorithms" | ||
Steve McConnell | : The author of popular software development book | ||
Fred Brooks | : The author of the classic text where was first coined | ||
Erich Gamma | : The "gang of four" co-author of influential book | ||
Ralph Johnson | : The "gang of four" co-author of influential book | ||
Richard Helm | : The "gang of four" co-author of influential book | ||
John Vlissides | : The "gang of four" co-author of influential book | ||
Hal Abelson | : The co-author of also known as the "wizard book" that helped teach the principles of programming | ||
Gerald Jay Sussman | : The co-author of also known as the "wizard book" that helped teach the principles of programming | ||
Thomas H. Cormen | : The co-author of influential book also known as "CLRS" now considered to be the standard reference for algorithms | ||
Charles E. Leiserson | : The co-author of influential book also known as "CLRS" now considered to be the standard reference for algorithms | ||
Clifford Stein | : The co-author of influential book also known as "CLRS" now considered to be the standard reference for algorithms | ||
Andy Hunt | : The co-author of software development book , the co-author of many books in the "Pragmatic Bookshelf" series, and the co-author of "Programming Ruby" | ||
Dave Thomas | : The co-author of software development book , the co-author of many books in the "Pragmatic Bookshelf" series, and the co-author of "Programming Ruby" | ||
Robert Cecil Martin | : The author software development technique book "Clean Code: A Handbook of Agile Software Craftsmanship" | ||
Scott Meyers | : The author of book series "Effective C++" | ||
Martin Fowler | : The co-author along with Kent Beck of the book that popularized agile software development "Refactoring: Improving the Design of Existing Code" and co-author of the "Manifesto for Agile Software Development" | ||
Kent Beck | : The co-author of the "Manifesto for Agile Software Development" and "Extreme Programming Explained" | ||
Glenford J. Myers | : The author of several computer science textbooks including "The Art of Software Testing", "Software reliability" and "Composite/structured design" | ||
Miscellaneous | |||
Richard Matthew Stallman | : The creator of the for the collection and development of free software through the use of its friendly | ||
Brian Kernighan | : He wrote the original program to read "Hello World!" | ||
Jon Skeet | : The user with the most "reputation" points on Stack Overflow | ||
Robert Floyd | : The most cited author in Donald Knuth's "The Art of Computer Programming" series | ||
Robert Tappan Morris | : The creator of the internet's first computer worm | ||
Petr Mitrichev | : The winner of multiple competitions, took 100 wins in a single round of TopCoder, winner of Russian Code Cup, winner of Facebook Hacker Cup, winner of Yandex algorithm competition, and winner of | ||
Gennady Korotkevich | : The six time gold medalist for the programming competition, on the winning team for several years in , multiple medal winner in the contests, and winner of Google Code Jam for several consecutive years | ||
Hardware | |||
Glenford J. Myers | : The author of the original patent for register scoreboarding on a microprocessor chip |