Ben Northrop

Decisions and software development


2016   #11 - Reflections of an 'Old Programmer': Framing our programming careers in terms of knowledge accumulation and decay can yield some interesting insights. (106 comments)

2014   #10 - The Siren Song of Automated UI Testing: Automated UI testing is not necessarily ineffective or a waste of time, but the promise land of easy, cheap, human quality testing via automation is a chimera. (14 comments)

2013   #9 - The 3 Motivational Forces of Developers: After 15 years in industry, I've come to realize that the most defining quality of a developer is his source of motivation. (26 comments)

   #8 - Pair Programming - My Personal Nightmare: Pair Programming may work for some, but not for everyone (including me). Quality work can and is often done by people working quietly on their own. (79 comments)

2012   #7 - The User Interface and the Halo Effect: Understanding why minor user interface glitches carry such a high weight in terms of our customer's perception of quality. (23 comments)

2011   #6 - A Room Full of Techies: Understanding the phenomenon of group polarization in software development. (17 comments)

2009   #5 - Anchors Away!: How can a developer communicate an honest, but high, estimate to management? Try the concept of an anchor, from behavioral economics. (21 comments)

   #4 - What is 'Good' Software Architecture?: Can "good" architecture be defined in purely pragmatic terms? If the system fulfills the needs of the person or organization who funds its existence, it's successful ipso facto! (7 comments)

2008   #3 - The Architect's Dilemma: There's a natural tension between the philosophies of up-front design (BDUF) and in-time design (YAGNI). Can decision trees help? (5 comments)

2007   #2 - Why are our Programming Gods so Unkempt?: Does a theory of finite will-power say anything about our software Gods, or the environment we work within? (2 comments)

   #1 - Is it Irrational to Comment your Code?: We know we should comment code, but will we? Game Theory's Prisoner's Dilemma says, "probably not". (8 comments)

I believe that software development is fundamentally about making decisions, and so this is what I write about (mostly). I'm a Distinguished Technical Consultant for Summa and have two degrees from Carnegie Mellon University, most recently one in philosophy (thesis here). I live in Pittsburgh, PA with my wife, 3 energetic boys, and dog. Subscribe here or write me at ben at summa-tech dot com.