unmaintainable-code
A more maintainable, easier to share version of the infamous http://mindprod.com/jgloss/unmain.html
A satirical essay by Roedy Green presenting hundreds of deliberately bad programming habits as tongue-in-cheek career advice, widely shared among developers as a checklist of what not to do.
This repository contains a long satirical essay originally written by Roedy Green, a Canadian software developer. The title is "How To Write Unmaintainable Code," and the joke is that it presents genuinely bad programming habits as if they were career advice. The idea: if you write code only you can understand, your employer will never be able to fire you. The text then walks through hundreds of ways to make code needlessly confusing, all written in a dry, deadpan tone.
This is not software you install or run. It is a document, reproduced here in Markdown format so it is easier to read and share than the original webpage. There is no license to speak of, and the author gave permission for this reproduction.
The content covers naming strategies (single-letter variable names, deliberate misspellings, using baby name books as a source), formatting tricks (random capitalization, mixing human languages inside variable names, using accented characters that look like regular letters), and structural choices (hiding logic in places nobody would think to look, reusing names in confusing ways, burying important code in comments or in dead-looking branches). The essay spans Java, C, and general programming concepts, though most of the jokes translate across languages.
The actual audience is working programmers who will recognize the bad habits described and find them funny. Some readers treat it as a checklist of things not to do. Others share it with new developers as a lighthearted introduction to why code readability matters. It has been circulating in programming communities for decades and has accumulated substantial star count purely from word-of-mouth.
If you are a non-technical person, the main takeaway is that this is a joke document about how programmers can accidentally or deliberately make their work impossible for anyone else to understand. The full README is longer than what was shown.
Where it fits
- Read the essay as a checklist of bad coding habits to actively avoid in your own work.
- Share it with new developers as a humorous introduction to why code readability and naming conventions matter.
- Use specific examples from the essay to spot anti-patterns during code review sessions.