While doing some research on OOCSS vs OOSCSS I stumbled across one by Chris Hansen at Pivotal Labs titled Why we don’t use OOCSS (but we should). I have my own hesitations and thoughts regarding pure OOCSS, but was dumbstruck by one of his reasons for not using it:
The Part Your Customers See Isn't As Important?
Let's be honest, building out HTML/CSS templates can be pretty mundane at times, so to all the developers who grumble when they have to tediously build out a pixel perfect frontend - I understand. It's actually one of the many reasons I believe all designers should learn to code their designs themselves.
Unfortunately, it seems like this attitude extends beyond minor discontent and instead is an industry-wide attitude that the frontend is less important the innerworkings of your application, when I'd argue the exact opposite.
Yes, the backend is still extremely important, but most of your customers likely neither understand nor care how it actually works, so long as it does what it says it does. Unless your product is something targeted at the development community or some holy-grail with no competitor (Hint: It probably isn't), chances are your customers are both consciously and subconsciously forming opinions about your product based on how it looks. When one of your customers inevitably runs into a bug (I promise they will), if it looks polished there's a much better chance they'll be forgiving and report the issue to you instead of switching to a competitor's product. Better yet, if you respond promptly and work to help them through the issue and/or patch the bug there's a good chance you can turn a negative situation into a positive memory of great service for your customer.
On the other hand, when one of your customers runs into a bug and your application looks like a POS, they're going to assume that's because it is a POS.
Feel free to voice your thoughts over on HackerNews