Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers by Leslie Lamportby Leslie Lamport
Shares rank 19 of 21 software engineering books by recommenders
Recommended as a good starting point for learning to specify systems using mathematical proofs and state machine modeling.
Recommended as a good starting point for learning to specify systems using mathematical proofs and state machine modeling.
2 people gave an opinion
- recommend it
- 2
- criticize it
- 0
- approval share
- 100%
Recommended in 2 of 13 months
- November 2025: not recommended
- December 2025: recommended
- January 2026: not recommended
- February 2026: not recommended
- March 2026: not recommended
- April 2026: not recommended
- May 2026: not recommended
- June 2026: not recommended
- July 2026: not recommended
- August 2026: not recommended
- September 2026: not recommended
- October 2026: recommended
- November 2026: not recommended (month in progress)
Why it doesn’t carry the badge
- 2 people recommend itNeeds 10 or more, not met.
- Nobody criticizes itNeeds 2 to 1 or better, met.
- Recommended in 2 of 13 monthsNeeds 4 or more, not met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Good starting point for learning specification
“It is a good starting point for learning how to specify systems on the basis of mathematical proofs.”
Comment from 13 Dec 2025 in “50 years of proof assistants” Teaches state machine modeling in TLA+
“Uses "TLA+" language to teach Behavioural (i.e. State Machine) modeling.”
Comment from 31 Oct 2026 in “AI, Lean, and the Future of Formal Verification, with Lean Creator Leo de Moura”
Other software engineering books people recommend
The four most recommended other software engineering books, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| The Mythical Man-Monthby Fred Brooks | 56 | 3 | 95% | 12 | — | Approved |
| Designing Data-Intensive Applicationsby Martin Kleppmann | 37 | 1 | 97% | 12 | — | Approved |
| A Philosophy of Software Designby John Ousterhout | 28 | 1 | 97% | 11 | — | Approved |
| Code Completeby Steve McConnell | 14 | 0 | 100% | 7 | — | Approved |
| Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineersby Leslie LamportThis page | 2 | 0 | 100% | 2 | — | — |
What people said
All 2 comments that mention it, newest first. Each links to the original comment.
“Uses "TLA+" language to teach Behavioural (i.e. State Machine) modeling.”
“It is a good starting point for learning how to specify systems on the basis of mathematical proofs.”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.