"Every program has two purposes: The one for which it was written and another for which it wasn't"
About this Quote
The first purpose is the brochure version: requirements, specs, the tidy story we tell managers and ourselves about what the program is for. The second purpose is the one that actually drives much of computing history: repurposing, misuse, and emergent behavior. Spreadsheets become databases. Game engines become architectural visualization. A simple script becomes the backbone of a business because it "works" and no one wants to touch it. The joke has teeth because the "another" isn’t a rare edge case; it’s the default lifecycle of successful software.
Subtextually, Perlis is also taking aim at programmer ego. We like to imagine authorship: that our design intent governs. But users, adversaries, and even future maintainers will read your code like a found object. That second purpose can be benign (creative adaptation) or catastrophic (security exploits, privacy leakage, brittle dependencies), and Perlis’s deadpan symmetry treats both as structurally inevitable.
Context matters: Perlis came out of an era when software engineering was trying to professionalize, to make programming behave like traditional engineering. This aphorism is a sly reminder that computation isn’t just constructed; it’s interpreted, and interpretation always escapes the builder.
Quote Details
| Topic | Coding & Programming |
|---|---|
| Source | Help us find the source |
| Cite |
Citation Formats
APA Style (7th ed.)
Perlis, Alan. (2026, January 16). Every program has two purposes: The one for which it was written and another for which it wasn't. FixQuotes. https://fixquotes.com/quotes/every-program-has-two-purposes-the-one-for-which-122420/
Chicago Style
Perlis, Alan. "Every program has two purposes: The one for which it was written and another for which it wasn't." FixQuotes. January 16, 2026. https://fixquotes.com/quotes/every-program-has-two-purposes-the-one-for-which-122420/.
MLA Style (9th ed.)
"Every program has two purposes: The one for which it was written and another for which it wasn't." FixQuotes, 16 Jan. 2026, https://fixquotes.com/quotes/every-program-has-two-purposes-the-one-for-which-122420/. Accessed 13 Feb. 2026.







