Tag Archive | "design principles"

“Clean Code” — Crafting On Principles

April 5, 2009 2 comments

I’ve been reading “Clean Code: A Handbook of Agile Software Craftsmanship” by Robert Martin. This is no ordinary book on writing better software. It’s not just a rehash of “Code Complete” or “The Pragmatic Programmer.” Those are both fine books, but “Clean Code” is different. So, please don’t think that if [...]

What is Extreme Programming (XP)?

August 13, 2007 No comments yet

The other day, I was asked for the “elevator pitch” on XP, so I dug out this description from an old posting on another of my sites.
It’s taking best practices to the extreme…

Long iterations become short iterations with early experience
Long, irregular meetings become frequent stand up meetings
Back-end testing becomes unit testing
Specification artifacts become stories and [...]

“Head First” Book Sometimes Makes My Head Hurt

February 16, 2007 No comments yet

[This review originally appeared in my personal blog on Sept 8, 2005. I'm reposting it by request.]

I’m helping out with a study group for “Head First Design Patterns,” which just finished chapter 6. On the whole, it’s a pretty good introduction to software design patterns – way more accessible than the seminal work by the Gang of Four; however, the examples sometimes make my head hurt. I can’t imagine what they’re doing to the heads of the beginners in the group. Coming up with decent examples is the hardest thing to do in expository writing, and

The Magic Number Seven WRT the Framework Simplicity Conundrum

February 10, 2007 No comments yet

Mid last year, Kurt Williams wrote “Beware of Simplicity” [jroller.com/page/cardsharp?entry=beware_simple_frameworks] in development frameworks. According to him, new and fresh frameworks can only claim to be simple because they are immature. All frameworks are doomed to growing more complex as they grow in features. I can’t argue with that. It seems to me, therefore, that the best frameworks are the ones that do the best job of hiding that complexity — either because of the innate architecture of the framework, or by virtue of the tools and practices that deal with the complexity for you. A framework can have all of the under-the-hood complexity it needs. It’s the day-to-day, in-your-face complexity that I care about.

In the field of cognitive psychology there’s this so-called “Magic Number 7.” Basically, the idea is that humans can only keep 7 disjointed “things”, plus or minus two, in short-term memory at once. To see what I mean, study the following list of words for a minute. Then, turn away and write down as many as you can from memory:

TDD Solves the Blank Page Syndrome

February 3, 2007 No comments yet

In my personal blog I wrote about how the blank page syndrome can lead to procrastination. I gave an example of how it’s often difficult to know where to start when faced with a vaguely written bug report or an enhancement request. I suggested that one way to gain clarity is


Twitter Updates

  • On a mac it's super easy to encrypt/decrypt a file using openssl 2009-12-02
  • If you don’t think carefully, you might think that programming is just typing statements in a programming language. — Ward Cunningham 2009-12-01
  • Thanks to everyone at my CodeCamp LA presentation, you had great questions and I hope the exercise gave you something to take to work Monday 2009-11-21
  • Turns out my CodeCamp LA presentation made it to the front page of SlideShare today. Must be a slow day. 2009-11-21
  • Scrum has two deliverables, A Product Deliverable and a Capability Deliverable we don't talk up the second enough as agilists 2009-11-21
  • More updates...


Bad Behavior has blocked 28 access attempts in the last 7 days.