Consistency: Your best friend or your worst nightmare

Consistency: We developers love it don’t we?

We come up with beautiful architectures making sure everything is consistent. If we use a service in one place, we’ll use it everywhere. If we have a ViewModel for showing data, we’ll use a ViewModel everywhere, even if it’s not needed. Because we need to be consistent.

Partly I guess this is motivated because we think that being consistent helps ourselves and teammates understand what’s going on, even if that drives us to YAGNI and a series of WTF’s of why we did something that’s not required. We do it to be consistent!

It might seem inoffensive, but consistency can be damaging. It leads us into trying to homogenize everything despite it not being the appropriate approach in many cases.

So next time someone asks:

image

…one of the reasons, most likely, is because we like to be consistent!

Breaking consistency when required not only lowers levels of WTF’s, it can even help scalability


Posted 08-31-2010 11:36 AM by Hadi Hariri

[Advertisement]

Comments

Samuel Jack wrote re: Consistency: Your best friend or your worst nightmare
on 08-31-2010 9:04 AM

As Ralph Waldo Emmerson said, "A foolish consistency is the hobgoblin of little minds" (www.emersoncentral.com/selfreliance.htm)

corey coogan wrote re: Consistency: Your best friend or your worst nightmare
on 08-31-2010 11:35 AM

Great tidbit.  I've seen some of the goofiest code and whenever the author is asked why they chose to do something a certain way, they would say "to be consistent".  I think it's one of the industries greatest cop-outs.

There is a great section in "Getting Real" by 37Signals that talks about this very topic.

gettingreal.37signals.com/ch09_Context_Over_Consistency.php

link building team wrote re: Consistency: Your best friend or your worst nightmare
on 09-30-2013 8:53 PM

DFQ7ez Thank you for your blog article.Much thanks again. Keep writing.

nice seo guys wrote re: Consistency: Your best friend or your worst nightmare
on 11-20-2013 6:02 PM

gpiNkB Appreciate you sharing, great blog article.Really looking forward to read more. Fantastic.

Add a Comment

(required)  
(optional)
(required)  
Remember Me?

About The CodeBetter.Com Blog Network
CodeBetter.Com FAQ

Our Mission

Advertisers should contact Brendan

Subscribe
Google Reader or Homepage

del.icio.us CodeBetter.com Latest Items
Add to My Yahoo!
Subscribe with Bloglines
Subscribe in NewsGator Online
Subscribe with myFeedster
Add to My AOL
Furl CodeBetter.com Latest Items
Subscribe in Rojo

Member Projects
DimeCasts.Net - Derik Whittaker

Friends of Devlicio.us
Red-Gate Tools For SQL and .NET

NDepend

SlickEdit
 
SmartInspect .NET Logging
NGEDIT: ViEmu and Codekana
LiteAccounting.Com
DevExpress
Fixx
NHibernate Profiler
Unfuddle
Balsamiq Mockups
Scrumy
JetBrains - ReSharper
Umbraco
NServiceBus
RavenDb
Web Sequence Diagrams
Ducksboard<-- NEW Friend!

 



Site Copyright © 2007 CodeBetter.Com
Content Copyright Individual Bloggers

 

Community Server (Commercial Edition)