With hardly anyone realizing it, software development has fundamentally changed, in ways that parallel the broader cultural shift from "modernism" to "postmodernism." "Modern" applications include compilers; aircraft avionics; and nuclear power plant control software. Postmodern programs include computer games; viruses; aircraft personal entertainment systems; groupware for organizing protests for (and against) nuclear power plans; integrated supply chain management systems; and systems for finding the cheapest downloadable Paris Hilton video. Postmodern software doesn't just do different things: it is created and evolved in fundamentally different ways, with different tools. Exemplary "modern" software development technologies included Pascal, 7-bit ASCII, and Entity-Relationship Diagrams. Exemplary "postmodern" technologies include Perl, HTML, Google, and Wikipedia. Postmodern programming rejects overarching grand narratives: it is built up, following practice, rather than created top-down from theory. If you program, you need to understand this revolutionary shift. Postmodern Programming illuminates it, and reveals its implications for everyone who writes code -- or relies on it.