Hide this

Results from Google Books

Click on a thumbnail to go to Google Books.

The Practice of Programming by Brian W.…

The Practice of Programming (1999)

by Brian W. Kernighan (Author), Rob Pike (Author)

MembersReviewsPopularityAverage ratingMentions
680414,050 (4.14)2



Sign up for LibraryThing to find out whether you'll like this book.

No current Talk conversations about this book.

» See also 2 mentions

Showing 4 of 4
The book describes itself as a practical guide to general programming in the real world, but for the most part, doesn't deliver on that promise for a number of reasons.

First, the book should have been called The Practice of Programming in C and C . The intro chapters say Java, Perl, and others would be discussed, but I'd estimate the C languages make up 90% of the examples and advice. The long discussions of memory management, pointers, and portability do not apply to any of the other languages, or most modern languages in general.

Second, the preface says the book will teach things not covered in school, but the second chapter is a quick, incomplete, and not very rigorous intro to data structures and algorithms straight out of cs 101.

Third, the discussion on coding style is handled much better in other books, such as Code Complete and Clean Code. In fact, I'm not a fan of some of the recommended coding conventions. For example, the book advocates the use of short, abbreviated, and/or single letter variable names in many cases, which made even their short example code hard to read. Also, many of the functions in the code examples were quite long and in need of refactoring.

Fourth, as is often the case with tech content, the book has not aged well. The interface, performance, and portability chapters feel out of date. The fact that functional programming principles (and languages) are missing means this is, at best, a practical guide to purely imperative programming.

Overall: only worth a read for C coders, though a more up to date book would be better. ( )
  brikis98 | Nov 11, 2015 |
È un capolavoro.

Si tratta di un distillato sublime, decine di anni di programmazione di alto livello (gli autori, Kernighan e Pike fanno parte della storia della computer science) condensate in poco più di duecento pagine.

In questo libro nulla è superfluo.

È un capolavoro. ( )
  Iskandar_LT | Jan 2, 2011 |
An excellent book on engineering better software. Some of the tips need taking with a pinch of salt, but as a professional, I don't have to tell you that, right? Remember, as Fred Brooks said, "There are no silver bullets".
Recommended reading for embedded programmers, as I have been in the game 20 years and I got plenty from this slim little book. ( )
  celephicus | Mar 25, 2010 |
Showing 4 of 4
no reviews | add a review

» Add other authors (3 possible)

Author nameRoleType of authorWork?Status
Kernighan, Brian W.Authorprimary authorall editionsconfirmed
Pike, RobAuthormain authorall editionsconfirmed
You must log in to edit Common Knowledge data.
For more help see the Common Knowledge help page.
Series (with order)
Canonical title
Original title
Alternative titles
Original publication date
Important places
Important events
Related movies
Awards and honors
First words
Last words
Disambiguation notice
Combiners: see http://cm.bell-labs.com/cm/cs/tpop/in... for a list of titles of translations. (Why don't anchor tags work here? - jimroberts)
Publisher's editors
Publisher series
Original language

References to this work on external resources.

Wikipedia in English (1)

Book description
Haiku summary

Amazon.com Amazon.com Review (ISBN 020161586X, Paperback)

Coauthored by Brian Kernighan, one of the pioneers of the C programming language, The Practice of Programming is a manual of good programming style that will help any C/C++ or Java developer create faster, more maintainable code.

Early sections look at some of the pitfalls of C/C++, with numerous real-world excerpts of confusing or incorrect code. The authors offer many tips and solutions, including a guide for variable names and commenting styles. Next, they cover algorithms, such as binary and quick sorting. Here, the authors show how to take advantage of the built-in functions in standard C/C++. When it comes to data structures, such as arrays, linked lists, and trees, the authors compare the options available to C, C++, Java, and even Perl developers with a random-text-generation program (using a sophisticated Markov chain algorithm) written for each language.

Subsequent sections cover debugging tips (including how to isolate errors with debugging statements) and testing strategies (both white-box and black-box testing) for verifying the correctness of code. Final sections offer tips on creating more portable C/C++ code, with the last chapter suggesting that programmers can take advantage of interpreters (and regular expressions) to gain better control over their code. A handy appendix summarizes the dozens of tips offered throughout the book.

With its commonsense expertise and range of examples drawn from C, C++, and Java, The Practice of Programming is an excellent resource for improving the style and performance of your code base. --Richard Dragan

(retrieved from Amazon Thu, 12 Mar 2015 18:20:01 -0400)

From the publisher. With the same insight and authority that made their book The Unix programming Environment a classic, Brian Kernighan and Rob Pike have written The Practice of Programming to help make individual programmers more effective and productive. The practice of programming is more than just writing code. Programmers must also assess tradeoffs, choose among design alternatives, debug and test, improve performance, and maintain software written by themselves and others. At the same time, they must be concerned with issues like compatibility, robustness, and reliability, while meeting specifications. The Practice of Programming covers all these topics, and more. This book is full of practical advice and real-world examples in C, C++, Java, and a variety of special-purpose languages. It includes chapters on: debugging: finding bugs quickly and methodically; testing: guaranteeing that software works correctly and reliably; performance: making programs faster and more compact; portability: ensuring that programs run everywhere without change; design: balancing goals and constraints to decide which algorithms and data structures are best interfaces: using abstraction and information hiding to control the interactions between components; style: writing code that works well and is a pleasure to read; notation: choosing languages and tools that let the machine do more of the work. Kernighan and Pike have distilled years of experience writing programs, teaching, and working with other programmers to create this book. Anyone who writes software will profit from the principles and guidance in The Practice of Programming.… (more)

Quick Links

Swap Ebooks Audio
10 wanted

Popular covers


Average: (4.14)
1 1
2 4
3 13
3.5 3
4 40
4.5 4
5 38

Is this you?

Become a LibraryThing Author.


Help/FAQs | About | Privacy/Terms | Blog | Store | Contact | LibraryThing.com | APIs | WikiThing | Common Knowledge | Legacy Libraries | Early Reviewers | 105,856,113 books! | Top bar: Always visible