Getting your questions ready
Getting your questions ready
Beat the crowd
10 questions No timer
This programming trivia quiz has 49 free questions with answers and covers the languages and the culture around them: who created C, C++, Java, JavaScript, Ruby, Go, Rust, Swift, Kotlin, PHP, Perl, Fortran, COBOL, Lisp, BASIC, Pascal and TypeScript, where their odd names came from, and the mascots, mottos and in-jokes that grew up around them. It also digs into coding culture and its famous disasters: the moth in the Harvard Mark II, Dijkstra's letter about goto, the Mars Climate Orbiter unit mix-up, the Ariane 5 overflow, the eleven-line npm package that broke the internet, why Git is called Git, and how Stack Overflow got its name. It suits developers, students and anyone who has ever fixed a bug by explaining it to a rubber duck. Every answer was checked against the relevant Wikipedia article and cites the sentence that establishes it, and the difficulty runs from first-week-of-bootcamp to questions that will stump senior engineers.
30 of 49 questions with answers and explanations. Play the quiz
Q 01Which programmer created the C language at Bell Labs in 1972?
Dennis Ritchie
Dennis Ritchie wrote C at Bell Labs in 1972; by 1973 the Unix kernel had been rewritten in it, and he co-authored the 1978 book The C Programming Language with Brian Kernighan.
Q 02Brendan Eich created JavaScript in 1995 while working at which company?
Netscape
Netscape hired Eich in April 1995; he wrote the first JavaScript prototype in about ten days, and it shipped in Netscape Navigator 2.0.
Q 03When JavaScript first shipped in a browser beta in September 1995, what was it called?
LiveScript
LiveScript was the name in the Navigator 2.0 betas of September 1995; the company renamed it JavaScript that December to ride the hype around Sun's Java, which Eich has called a marketing ploy.
Q 04Who designed the Java language at Sun Microsystems?
James Gosling
James Gosling led the Java project at Sun from 1991, first aimed at set-top boxes; the language launched in May 1995 with the write once, run anywhere promise.
Q 05Java was initially named after which tree standing outside its creator's office?
Oak
Oak was the working name from 1991, but it was already trademarked, so the team settled on Java before the May 1995 release; Oracle acquired Sun in 2010.
Q 06What did Bjarne Stroustrup call the C++ predecessor he began in 1979?
C with Classes
C with Classes added Simula-style classes to C at Bell Labs from 1979; Stroustrup renamed the evolving language C++ in 1983, and his book The C++ Programming Language appeared in 1985.
Q 07The name C++, suggested by Rick Mascitti, refers to which feature of C?
the increment operator
C++ puns on the increment operator, which adds one to a variable, so the name reads as 'C plus one'; Rick Mascitti suggested it in the summer of 1983.
Q 08In 2018 Guido van Rossum took a 'permanent vacation' from which Python community title?
Benevolent Dictator For Life
Benevolent Dictator For Life was van Rossum's title until July 2018, when a dispute over PEP 572's assignment expressions led him to step down; a five-person steering council later took over.
Q 09Yukihiro Matsumoto said one factor in naming Ruby was that it was a colleague's what?
birthstone
A birthstone: Matz has said one reason the name won out over the other candidate, coral, was that ruby is a colleague's birthstone; Ruby 0.95 was announced in December 1995.
Q 10Go was designed in 2007 by Robert Griesemer, Rob Pike and Ken Thompson at which company?
Google engineers started Go in September 2007 and announced it in November 2009; it is often called Golang after its old golang.org domain, though the name is Go.
Q 11Graydon Hoare created Rust in 2006 while at which organisation, its sponsor from 2009?
Mozilla
Mozilla began sponsoring Hoare's side project in 2009 and announced it publicly in 2010; Rust 1.0, the first stable release, arrived in May 2015.
Q 12Rust enforces memory safety without a garbage collector using which compile-time mechanism?
the borrow checker
Rust's compiler runs the borrow checker, which tracks the lifetime of every reference, so dangling pointers and data races are rejected before the program ever runs.
Q 13Swift, introduced at Apple's 2014 WWDC, was created to replace which older Apple language?
Objective-C
Q 21John McCarthy's Lisp, begun in 1958, takes its name from which phrase?
List Processor
List Processor, shortened to Lisp, describes its list-based data; McCarthy specified it at MIT in 1958 and published it in 1960, and all its code is written as parenthesised s-expressions.
Q 22John Kemeny and Thomas Kurtz created BASIC in 1964 at which school?
Dartmouth
Dartmouth College in Hanover, New Hampshire, ran the first BASIC program on 1 May 1964; Kemeny and Kurtz wanted students outside the sciences to use its time-sharing system.
Q 23Micro-Soft's first product, a BASIC interpreter, was written for which computer?
Altair 8800
Objective-C had been Apple's main app language since the NeXT era; Chris Lattner started Swift in July 2010, and Apple open-sourced it under the Apache 2.0 licence in December 2015.
Q 14The Kotlin language is named after what kind of place?
an island in the Gulf of Finland
Kotlin Island, an island in the Gulf of Finland near St Petersburg, gave the language its name; JetBrains open-sourced Kotlin in 2012, and it became the preferred Android language in 2019.
Q 15Before it became a recursive backronym, what did the letters PHP originally stand for?
Personal Home Page
Personal Home Page tools were the CGI programs Rasmus Lerdorf wrote in C for his own site around 1994; from PHP 3 in 1998 the letters became the recursive PHP: Hypertext Preprocessor.
Q 16The elePHPant, PHP's official mascot, is what colour?
blue
The elePHPant is blue; Vincent Pontier drew it in 1998 after noticing the letters PHP look like an elephant turned sideways, and soft-toy elePHPants later became conference fixtures.
Q 17Who developed Perl in 1987 as a Unix scripting language to make report processing easier?
Larry Wall
Larry Wall released Perl 1.0 in December 1987 for Unix text and report processing; its motto, 'There's more than one way to do it', is pronounced Tim Toady.
Q 18In October 2019, Perl 6 was officially renamed to what?
Raku
Raku became the official name in October 2019, letting Perl 5 carry on simply as Perl; the name comes from a Japanese word meaning comfort or ease.
Q 19Which IBM engineer proposed and led the team that delivered the first Fortran compiler in 1957?
John Backus
John Backus proposed the project to IBM in 1953 and led the team whose compiler shipped for the IBM 704 in April 1957, producing code good enough to win over assembly programmers.
Q 20What does the name COBOL stand for?
Common Business-Oriented Language
Common Business-Oriented Language was designed in 1959 by the CODASYL committee for a Department of Defense effort, drawing partly on Grace Hopper's FLOW-MATIC; its programs read like English sentences.
Altair 8800 owners got Altair BASIC from MITS on paper tape in 1975; Gates, Allen and Monte Davidoff wrote it on a Harvard PDP-10 emulating the Intel 8080 chip.
Q 24Which Swiss computer scientist designed Pascal, released in 1970?
Niklaus Wirth
Niklaus Wirth of ETH Zurich published Pascal in 1970 as a teaching language; it became the main development language for the Apple Lisa and early Macintosh, and Turbo Pascal made it a hit on PCs.
Q 25Which lead architect of C# and creator of Turbo Pascal also worked on TypeScript at Microsoft?
Anders Hejlsberg
Anders Hejlsberg, who wrote Turbo Pascal at Borland and led C# at Microsoft, was TypeScript's lead architect when it went public in October 2012 as version 0.8.
Q 26The earliest known 'hello, world' program appears in Brian Kernighan's 1972 tutorial for which language?
B
B, Ken Thompson's 1969 predecessor of C, is the language of Kernighan's tutorial; the example illustrated external variables, and the 1978 book The C Programming Language later made the phrase a universal first test.
Q 27Rubber duck debugging takes its name from an anecdote in which book?
The Pragmatic Programmer
The Pragmatic Programmer, by Andy Hunt and Dave Thomas in 1999, tells of a programmer explaining code line by line to a rubber duck until the mistake leapt out.
Q 28What did Harvard Mark II operators find and log as the 'first actual bug' in 1947?
a moth
Operators found a moth in a relay and taped it into the Mark II logbook on 9 September 1947, noting 'first actual case of bug being found'; Thomas Edison had used 'bug' for small faults in 1878.
Q 29Edsger Dijkstra's famous 1968 letter argued which statement should be considered harmful?
goto
The goto statement was the target of Dijkstra's March 1968 letter to Communications of the ACM, headed 'Go To Statement Considered Harmful'; unrestricted jumps, he said, made it terribly hard to describe a program's progress.
Q 30Mars Climate Orbiter's 1999 loss came from pound-force seconds being read as which SI unit?
newton-seconds
Lockheed Martin's ground software output impulse in pound-force seconds, but JPL's navigation code took the figures as newton-seconds, roughly four and a half times too small, and the $327.6 million orbiter was lost on arrival in September 1999.