Nick Harris

KIS My YAGNI

leave a comment »

Rudy Lacovara’s Smart Guy Disease post is a fantastic read. I’ve encountered many of those situations myself, but when you think about it in the context of Scott Hanselman’s Analysis Paralysis: Over-thinking and Knowing Too Much to Just CODE, I think it brings the overall problem more into focus.

I don’t believe that smart, seasoned, experienced programmers create overly complex solutions because they want to appear smart (though admittedly some I’ve met have). I believe Scott’s answer that we over-analyze problems, then over-architect the solution is the real culprit.

When I’m starting on a new piece of code, I often find myself thinking through and solving issues that will most likely never occur. Its a hangover effect from some bad situation I ran into previously that I simply want to avoid again.

For myself, a combination of the solutions from both posts is the best.

YAGNI – Ya Ain’t Gonna Need It

You’re a seasoned, experienced programmer who has seen many pitfalls and issues. That’s awesome. Use that experience to evaluate the actual problem you’re solving now and potential pitfalls that are eminent. Forget the rest. If / when they become problems you can solve them then. You already know how to solve them, but why complicate the problem at hand.

KIS – Keep It Simple

Simple code is easy code. Easy to learn. Easy to maintain. Easy to transfer. If you can’t explain your solution to a programming problem by pointing to well known and accepted coding standards, you most likely over thought the problem and out thought yourself. I love the standard Rudy has:

…your boast should be that your architecture is so well designed that any junior developer can come in off the street, understand the basics in a day or two, and be productive within the week.

That standard is my idea of true programming expertise. Been there. Done that. Made it simple.

Advertisements

Written by Nick Harris

April 3, 2014 at 4:43 am

Posted in Uncategorized

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: