Mistakes happen. It's how you respond to them that matters. Teams might react to a bug with panic and blame, leading to a quickly hacked fix and possibly more issues. Taking time to investigate and learn leverages problems into process and practice improvement and a higher quality product.
Revisiting your old code can be an enlightening experience. Pete Goodliffe encourages us to look back at our old code to see how our technique has improved, how our programming skills have progressed, and what we can learn from it.
As programmers, we are not merely engineering drones; we are also artisans. The act of programming involves as much artistry as it does technicality. When we craft great software, we naturally use language idioms help to show the elegance, beauty, and artistry of a piece of code. But sometimes the desire for beautiful idiomatic code can trip us up.
Pair programming is one of the most controversial agile practices. Managers are concerned about the costs and developers are concerned about personal agony. But there also are many benefits. If you are thinking about trying pair programming, here are several reasons why you should.
Source code search engines can help you find chunks of reusable code. These search engines differ from generic text search engines by organizing the results to reflect the way code is organized—into functions, classes, packages, etc. These reviews of some popular engines can help you rev up reuse in your work.
In this continuation of his June 2007 article on floating-point numbers, Chuck Allison explains why certain compilers miscalculate sin(x) for large arguments and why some get it right. He also divulges that floating-point spacing is the key to getting the most from numeric computations.
Code review is one quality initiative you can't afford to skip. Don't have time for a full-blown, line-by-line review? No problem. Discover how even something as simple as a peer review can benefit your project and ultimately improve your code.
The software we produce is like the neighborhoods in which we live--the blueprints aren't as important as the enjoyment of simply using it. The best design brings joy to both those who create it and those who use it. Jeff Grover and Zhon Johansen detail five practices to help you spread the joy.
Poor software design will slow down even the most well-meaning code. Code smells are one element of poor design to watch out for in your projects. C. Keith Ray explains how you can start washing away your code smells with a dose of code refactoring.