In my years of development, I’ve moved from a more “code monkey” position to one with more responsibilities. When I first got in the game of professional development, I didn’t know coding styles or best practices etc. I was a low level guy on a big team. I was told to add functionality to our program and I did. Thankfully the team was good about mentoring such guys as myself, and so I got up to speed quickly with regards to all their best practices.
Then I changed jobs. I went from being a mid-level guy in a big group, to being the only Windows guy (and one of only 4 coders) in a much smaller group. The dynamic changed. Here, coding standards and best practices were left entirely up to the individual developer. With this new job, I was expected to be more business minded. In my previous stint, I had people above me who made EVERY business decision before it ever made it my way. Now, I wasn’t so lucky.
One thing I picked up quickly was the need to ask “Should we be doing this?” This is a great question, and one that should be asked often, but sadly isn’t. At a smaller company, like where I’m at now, it needs to be asked more and more. When I started there was no buffer between me and feature requests, bug reports, suggestions etc. If someone didn’t like your program, they’d stop by your desk and start talking. We’ve grown since then and have come up with a better approach, but there are still people who try to short-circuit the system and get their goal without ever asking “Should we be doing this”
The latest example deals with quotes. I write software that generates a lot of quotes for different parts. What gets displayed on the quote has been a topic of great discussion. Ultimately, we settled on: Part number, Description, Quantity, Unit of Measure, List Price, Extended Line Price. That’s a lot of information to cram into a single line, especially with a few lengthy part numbers or descriptions. We’ve been running this way for close to 18 months now.
Then, one day, we get a call from a customer. He tells us how stupid we are, because we’re selling a single widget for $20,000 when our competitors are selling an identical widget for about $100. Turns out, that this customer was ordering 400+ of these widgets and with his discount, they were being sold at about $50 a piece, for a total of right around $20,000.
This launched some panic feature requests about what we display on our quotes. If they’re so unclear, perhaps our customers will go to a competitor. Comparisons were made to competitors quotes, samples were drawn up, columns were rearranged, abbreviated, cut all together. Yet rarely was the question asked “Should we be doing this?”
Should we completely redesign our quote for 1 customer complaint? Should we pander to the lowest common denominator? Should we be worried that someone misread “Extended Net” and thought that said “List Each”? Perhaps. There very well could be some fundamental issues with the quote layout, or it could just be the case where we had a customer who was tired, stressed and misread the quote. But if we impulsively redesign it, what’s to stop us next time when someone asks for more data to be displayed on a cramped layout?