Intelligent Quotes

Tony Hoare

Professor Emeritus, University of Oxford

Sir Charles Antony Richard Hoare, commonly known as Tony Hoare, is a distinguished British computer scientist whose elegant thinking have fundamentally shaped modern computing. As a professor at University of Oxford from 1977 to 1999, Hoare established himself as one of the most influential computer scientists of his generation, later continuing his research as a Principal Researcher at Microsoft Research in Cambridge until his retirement.

Hoare is perhaps best known for inventing the Quicksort algorithm in 1959—an elegant and efficient sorting method that remains widely used today. His pursuit of simplicity and mathematical beauty is evident in this algorithm’s design, which employs a divide-and-conquer approach with remarkable efficiency.

He made groundbreaking contributions to formal program verification through Hoare Logic, a formal system that uses logical assertions, along with pre- and post-conditions, to mathematically prove a program’s correctness. This work fundamentally changed how we reason about software reliability.

Another of his seminal contributions is Communicating Sequential Processes (CSP), a formal language for describing concurrent systems that has profoundly influenced programming language design and concurrency theory.

For his exceptional contributions to computing, Hoare received the ACM Turing Award in 1980—computer science’s highest honor. Throughout his career, Hoare has consistently championed simplicity and elegance in software design, famously stating that, “there are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies.”

Quotes

“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies.”

Tony Hoare (verified)

More quotes by Tony Hoare →

Selected works

Quicksort (July 1, 1961)
In this paper, Tony Hoare, introduced Quicksort, a revolutionary sorting algorithm based on a divide-and-conquer strategy.

Read more →

An Axiomatic Basis for Computer Programming (October 1, 1969)
Tony Hoare’s seminal paper lays the groundwork for formal program verification by introducing Hoare logic, a method that uses preconditions, postconditions, and assertions to reason about program correctness.

Read more →

Efficient Production of Large Programs (August 10, 1970)
Transcripts of round-tables at a conference; it’s mostly known as the source of Tony Hoare’s Law, “inside every large program there is a small program trying to get out.”

Read more →

Computer Science (February 10, 1971)
Tony Hoare’s 1971 inaugural lecture at Queen’s University Belfast where he aims to explain the nature and significance of computer science to a general audience by focusing on the central activity of the discipline: computer programming.

Read more →

Structured Programming (June, 1972)
This book is a landmark collection of essays authored by Ole-Johan Dahl, Edsger W. Dijkstra, and Tony Hoare. It brings together foundational ideas that reshaped the way software systems were understood, designed, and implemented.

Read more →

Hints on programming-language design (October, 1973)
In this paper, Tony Hoare outlines foundational principles for designing programming languages, emphasizing that readability and simplicity are more valuable than clever features or machine optimization.

Read more →

The Emperor’s Old Clothes (February 1, 1981)
Tony Hoare’s brilliant Turing Award lecture where he reflects on software design and the importance of simplicity and elegance in programming.

Read more →

Programming is an Engineering Profession (May, 1982)
This paper argues that programming should evolve from a craft into a true engineering profession. Tony Hoare draws analogies between programmers and traditional craftsmen who are skilled but lack a strong theoretical foundation.

Read more →

The Mathematics of Programming (October 17, 1985)
In his 1985 inaugural lecture at Oxford University, Tony Hoare advocates for a mathematical foundation for programming. He highlights how mathematical methods can improve software reliability, maintenance, and safety.

Read more →

How Did Software Get So Reliable Without Proof? (March, 1996)
Despite early fears that software systems would be too error-prone to scale, modern software has become remarkably reliable. This reliability emerged not from widespread formal proofs, but from sound engineering practices like rigorous project management, comprehensive testing, and defensive design.

Read more →

Communicating Sequential Processes (CSP) (June 21, 2004)
In this beautifully written book, Tony Hoare introduces Communicating Sequential Processes (CSP), a formal language based on a mathematical model for describing concurrent systems where components interact through message passing over channels. It emphasizes synchronization without shared memory, enabling precise modeling of distributed behavior.

Read more →

External links

People also read

Louis Pasteur Albert Einstein Richard Feynman Leonardo da Vinci Benjamin Franklin