Another negative development rant

You know, I think I posted this--or something like it--before. Must the product manager have to specify everything in the requirements or should the developers know how to be good?

I love my Garmin Nuvi--it's a small GPS that I can take anywhere. Periodically I like to update the software, not that I really need to since it's working just fine but I like to keep "current."

So I jump on the Garmin web site, download the web updater and the problems begin. First, the software is installed at C:\ instead of in the program directory where it belongs. That really bugs me! Must the product manager have to specify everything in the requirements or should the developers know how to be good? "The product shall install in the Program directory" seems an unnecessary stricture.

Then I run the updater which does some type of LiveUpdate and downloads the new software. After some confusion about how I should reboot the GPS, it asks, "Do you want to install version 3.30?" Cool. It reinstalls the software but deletes all the configuration information from version 3.20. Huh? I had set up preferences plus a few dozen Favorites that are now gone. In what world do the developers feel that a clean install should be the default? Must the product manager have to specify everything in the requirements or should the developers know how to be good? "The product shall retain preferences, configuration, and saved locations from previous versions." Yeesh!

But I'm patient--or perhaps I'm an idiot--so I decide to re-enter all my saved locations. But the GPS thinks I'm in Kansas (since that's where Garmin is based I'm guessing). Now I have to go outside so the GPS can find out where I am. I'm wandering up and down the driveway for ten minutes while it finds itself. How do I set my "Home" location again? Do I just save as string "Home" or is there a menu option somewhere? I forget. Now what's Bob's address again? Lemme look that up in my address book and then re-learn how to save an address that is not my current location. Durn it! Never mind; I'll just enter it next time I go to Bob's house. And since it doesn't save my preferences from one release to another, there's really no need to stay current on the software. And certainly no "lock-in" for me to continue using Garmin when I make my next purchase.

Must the product manager have to specify everything in the requirements or should the developers know how to be good?

What does "good" mean? Good programmers adhere to industry standards--at least when it makes sense. Put your programs in the programs directory; don't corrupt or destroy data; retain preferences and customization between releases--or at least offer to convert them; be clear on how to complete any operation that is critical but rarely performed--such as installation and version upgrades.

To say that these should be in the requirements is a cop-out; it's just lazy programming. It's programming that says "I don't really care." Product managers shouldn't have to specify everything; developers should know enough about their target environment and customer to know how to be "good."

Steve Johnson

Steve Johnson

Steve Johnson was a founding instructor at Pragmatic Institute, a role he held for more than 15 years before he left to start Under10 Playbook. In his return to Pragmatic Institute, Steve supports the complete learning path for product teams, ensuring they are fully armed for success. 

Over the course of his career, Steve has helped thousands of companies and tens of thousands of product professionals implement product management processes. He has worked in the high-tech arena since 1981, rising through the ranks from product manager to chief marketing officer. Steve has experience in technical, sales and marketing management positions at companies that specialize in both hardware and software. In addition, he is an author, speaker and advisor on product strategy and product management.


(0) Comments

Looking for the latest in product and data science? Get our articles, webinars and podcasts.