Archive | February 2013

So who’s defect is it anyway?

Cartoon-Hole-in-the-boat1“It does not matters why the defect was raised by the customer, what matters is why the heck is it residing on my plate”, now this attitude is something really worrisome for the beholders of the product.

The demarcation of responsibility is important and is a valid gesture to be taken for an individual. However, there should be some ethical and moral grounds above, that should make your head turn towards that defect and take ownership of that flaw introduced by you or your fellow developers.

So many times I hear of the ball game and tussle between the developers and quality assurance folks. It has become a trend and is again something to think about. I know, it is very difficult for any of us to understand and accept it. But today, I would like to have you think like an entrepreneur running your own $ 1 million company and having this attitude prevailing inside your work force. Take a pause… think about it.

Its not the hole in the boat that sank it, it was an attitude.

Love it or hate it!

Over Engineering, and “Engineering is Over…”

I was already dealing with the Monday blues, to top it was going through a complex piece of code which I originally thought was one of the greatest scripts one has written. However, half an hour passed I realized it was doing way more than what was required and was the cause for a functionality failure at many places for the product. In the next 20 minutes, I was already feeling the need to have someone get me out of that seat and punch me in the face for originally liking that junkie!

I leaned back on my chair, hands behind my head and closed my eyes for a minute …

10 years back when I used to think of software, for me it was like something so cryptic and complex written that no one else could understand, other than me. In fact, sometime it was worse. Anyway, when I later started writing commercial code and fixing thing in others code, I realized code readability is so much important. My next myth busted when one of the customer said, “The functionality you have provided in the website is great add-on, but actually I wanted something else which woes my customers – definitely the stuff you have provided is great for the geeks, but actually my site is going to be viewed and used by no-brainers”. End of the story – my complete effort of 2 night outs have gone in vain, I will have to throw the code into “Recycle Bin” and my friends are going to “kick my”, for skipping the booze party.

I think this oxymoron of a concept has stemmed from various myths about how software needs to be authored.  I am no scientist to write a specification on that… but surely I feel User Experience is the ultimate thing. This UX and Usability are tied together, no matter how stable and sturdy your kernel (software that runs your laptop and computers) is, if you can’t reach to the consumer, you have just wasted enormous amount of time and efforts, which could have been used to add a usable functionality and have expanded your customer list.

location1

Most of the programmers write code without knowing about what is the actual business need. For them it’s more of completing an agile task in hand for the day and that’s it! This accumulates over time and the final product is completed with “hacks and wrecks”. When product is consumed by the customer, he knows his business better than anyone out there and then he starts finding flaws resulting in higher number of issue reporting and lower customer satisfaction.

So finally, what I have realized over the years is,

Business drives technology and it’s never upstream.  So understand the business.

Use technology like a hammer – it is not meant for learning and dumping a big fat code which would finally land in trash, you should just know how and where to use it effectively to nail customer needs.

Keep a holistic approach – Don’t write a single piece of code until you understand the business need. If possible start with business test cases.

DO NOT over engineer, it kills big time! Always code for User Experience, Performance and Scalability, and meet the need of the hour, max tomorrow, and not day after and henceforth!

 Okay enough of lecturing to my senses, time for a coffee break, after all  I still come back and need to cope up with the trauma of fiddling with that rocket science that has been put into, just to search a node in a directed graph. Damn it! I opened my eyes, leaned forward, picked up my dear mug and headed to the coffee corner.

coffeemachinemobile

By the way, I hate that coffee machine as well in office, though it does make all sorts of classy coffee but still can’t figure out which button to press to just get some milk, somebody just over engineered and forgot the UX! I overheard someone talking about plans to get a simple coffee machine installed :)

Do let me know what do you think of complex code and also share your similar experience.

PS: The comic images do not belong to me and may be copyrighted, in case they are, please feel free to drop me an email. 

Little Secret Agents

We spun new ideas!

Nothing By The Book

because, life.

Resonner's Blog

~●I walk on the sand washed by the waves,guided by no footsteps. Whether I leave any footprints or not, I am content that, I had the courage to tread the path I set my heart on.●~

A Wilderness of Words

a good place to get lost

Karen Alma

What I think about. Things that happen to me. Stuff I like. And other things.

Steve Blank

Entrepreneurship and Innovation

Matt on Not-WordPress

Stuff and things.

Coco J. Ginger Says

Poems and stories of love & heartbreak.

David Cummings on Startups

Over 2,500 posts on entrepreneurship and startups

%d bloggers like this: