Develop your poppycock detector

If there’s one thing I have learned from 15 years of programming and over a year of playing Avalon, it’s to trust my poppycock detector. I recently came across this tweet that set of my alarms:

In an ideal system, we incorporate new features by extending the system, not by making modifications to existing code. –Uncle Bob

I looked up the quote on Google but I couldn’t find anything useful besides a link to that same tweet. So I don’t know if Uncle Bob actually said something like it or not, but it doesn’t really matter. Given the lack of fact checking people do, most people will probably believe Uncle Bob did say it. Since Uncle Bob is such an authority in the development community, a lot people will probably accept that statement without giving it further thought.

While I somewhat agree with the quote, I think it is only true within a certain context; a context completely missing from that tweet (hurray for 140 characters). Without the correct context that quote is just plain old poppycock.

So here’s what we have:

a statement —apparently— by Uncle Bob;

a statement that’s worthless without proper context.

If you’re relatively new to programming you probably:

have heard of Uncle Bob and know he’s a man held in high regard;

lack the experience to detect missing context.

That’s a dangerous combination!

I’ll explain my issues with the quote itself in another post. For now I would like to urge you all to develop your poppycock detector. Don’t accept anything from anyone without thinking about it. If you don’t agree with something being said, speak up. Talk to someone about it. Ask questions. The worst that can happen is that you learn something.