• Aaron R. Bradley


Two aspects of programming frustrate novice programmers: getting the syntax right; and dealing with the many, often simple, bugs that cause program behavior to differ from what was expected. Experience resolves the first issue: braces, semicolons, and funny phrases like int * become natural in time, until you find yourself speaking programming in everyday conversation. (For example: “Dude, didn’t parse that; can you repeat?” “Yeah, we’re neighbors, so my address is just hers plus plus.” “And then I’m all, like, you know, int star star, obviously.” Don’t blame me when it happens; I’m just the messenger.)

Experience partially helps with the second issue. Over time, you will introduce fewer novice bugs into your code, although the potential subtlety of the bugs that you do introduce will rise in proportion with the complexity of the code. Hence, even the most experienced programmers encounter bugs regularly. This chapter discusses techniques and tools to minimize the number of bugs and to squash the ones that inevitably get around your defenses.


Readable Code Segmentation Fault Everyday Conversation Dynamic Memory Allocation Step Past 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  1. 1.Dept. of Electrical, Computer, and Energy EngineeringUniversity of ColoradoBoulderUSA

Personalised recommendations