The Daily Build

Icon

Software Development, version 3.0

One Simple Step for Avoiding Shallow Reviews

It’s your job as a reviewer to find as many defects as possible. If you’re not finding defects, you’re wasting time.

Read the rest of this entry »

Who Else Wants Better Short Term Memory?

In “Talent is Overrated”, Geoff Colvin at one point discusses how superstars in many fields use the memory technique of “chunking” to boost their short term memory.
His simple example is the 13-letter word “lexicographer”. To you and I (assuming you speak English and have a decent vocabulary), it is easy to remember. We don’t have [...]

Read the rest of this entry »

3 Easy Ways to Stick to a Coding Standard

When you’re writing python, you don’t need a lot of debate over the minutiae of most coding standards. PEP 8 does that for you. Even better, there are some tools that make it really easy to stick to the standard.
Why do this? Well, for one thing it makes code reviews easier when everyone follows the [...]

Read the rest of this entry »

Five Things That Do Not Belong In A Review Checklist

This is the second half of an article I posted about using a checklist to prevent security errors. There, I said that you have 15 checklist items max, and you shouldn’t waste any of those questions on silly things like “Does the code follow the coding standard?”.
Jason Cohen pointed to an article of his in [...]

Read the rest of this entry »

How To Use A Checklist to Prevent Security Errors

The 2009 CWE/SANS Top 25 Most Dangerous Programming Errors has been out for a while now. Maybe you’ve already eliminated all of these errors from your code. In case you haven’t, this post will help you develop a checklist that you can use to eliminate these errors starting at the architecture level and moving through [...]

Read the rest of this entry »

Version Control Habits of Effective Developers

(Apologies to Stephen R Covey for the title…)
Through some odd coincidence these posts crossed my path recently:

Check In Early, Check In Often [comments here are especially good]
Best Practices for Version Control
5 SVN Best Practices
Continuous Integration is an Attitude, Not a Tool

What I got to thinking about is that version control is one of the foundation [...]

Read the rest of this entry »

Removing Defects From Django Apps

I’m working on a set of Django apps right now. Here are some of the things I’m doing to filter out defects as I work:
Design Review
I do a handwritten (paper) design. I like to design offline — I find that this forces me to do two things. First, to slow down and get it right. [...]

Read the rest of this entry »

Code Review Tools

Yesterday I posted twenty reasons to do code reviews, and I promised a list of code review tools. Here they are, in no particular order. I have not used all of them, so I can’t comment on their relative merits. If there are some I missed, please leave a comment and I’ll update this list.

Codestriker [...]

Read the rest of this entry »

Twenty Reasons To Do Code Reviews

Update [2008-12-31]: I posted the list of code review tools as promised below.
I tweeted this article on Five Reasons to Do Code Reviews from CIO.com last week,and realized that there are much more than the five reasons they give. So I came up with 20 more over the rest of the day. This is a [...]

Read the rest of this entry »