[[Image:The_Elements_of_Programming_Style.jpg|200px|thumb|Cover of the second edition]]
'''''The Elements of Programming Style''''', by [[Brian W. Kernighan]] and [[P. J. Plauger]], is a seminal book in the study of [[programming style]], advocating the notion that computer programs should be written not only to satisfy the compiler, but also with human readers in(especially [[software maintenance]] mindengineers).
The book pays explicit homage, in title and tone, to ''[[The Elements of Style]]'', by [[William Strunk Jr.|Strunk]] & [[E. B. White|White]].
A particular strength of theThe book is that it is built on short examples taken from actual, published programs. The book'sIts advice is therefore delivered not in an academic or pedagogical vacuum, but rather in the context of examples which are believablybelievable and realistic, sometimes uncomfortably so. The authorsstyle areis diplomatic and generally sympathetic in theirits criticismscriticism, and unabashedly honest as well, in that— some of the examples with which theyit findfinds fault withare and seek to improve infrom the second edition were taken from theirauthors' own first editionwork.
Its lessons are summarized at the end of each section in pithy maxims, such as "Let the machine do the dirty work."
OneModern shortcomingreaders ofmay thefind bookit fora modern readers isshortcoming that its examples use older [[procedural programming languages—languages]] ([[Fortran]] and [[PL/I]]—which) which are quite different from those popular today. (Few of today's popular languages had been invented when this book was written.) ABut perceptive readerreaders can nevertheless appreciate and learn from most of the book's points, which generally concern stylistic and structural issues whichthat transcend the idiosyncrasies of particular languages.