As a coding standard evangelist, I've published standards for C# 1.0 and C# 2.0 while working for my former employers. Moreover, I'm also somebody who tries to apply and share good design guidelines and principles. As part of that interest, obviously, I've read many books and articles on that subject. A former collegue of mine, ran into two great articles written by Jeremy D. Miller which I could not resist sharing with you. The first one, On Maintainable Code, shows some real-world examples on the subtle issues around this. The other one, Orthogonal Code, focusses on some very essential design principles that everybody should use at all times.