Sometimes, that new feature that took so much time and effort, that was so complicated to implement, is not important to the client. This can be heartbreaking for developers.
I've seen it often: my press release is sent for approval, and the project manager comes to me, asking why the new feature is not mentioned in the release. I see disapointment in his eyes. After all, they worked really hard to make it work. All that effort should translate into a killer feature that customers will flock to, right?
Not always. Sometimes the effort translates into something that is taken for granted by the client. Sometimes, the little-worked-on feature turns out to be the big selling point for a product.
The case of the one-client feature
There was this product launch where the development team had implemented a very complex algorithm in the product, at the express request of a client. The client himself was very pleased with the algorithm. However, he was the only one in the market to use it: this client was such a pionneer in his field, no one else was ready to implement that kind of reporting. And so our development team felt like they worked hard for nothing.
About this they were wrong. Their work was worth it. The client who adopted this feature was one of the biggest accounts in the company. Unfortunately, it did not have the right appeal for the market at the time. So it was left out of the press release.
The case of the feature taken for granted
It may be really complicated to develop something, but it has nothing to do with its perceived value by the client. Sometimes the work that goes behind a simple button goes unrecognized. Or sometimes, the market simply expects this feature to be in the basic system, and is not willing to buy a product solely based on that feature.
Case in point: Task dependencies. Task dependencies were a tough cookie to implement in AceProject. Our development team worked really hard, for a long time, to make it work. However, for our clients, it's only normal that we support task dependencies. How hard we worked on it had not effect on the value of that feature to our users.
The case of the widely popular feature
Sometimes, the opposite happens: this one feature, that was very easy to implement, turns out to be a key selling point for the software.
A few years back, a developer on the team had time left from his debugging schedule, so he decided to clean up the code for a file import feature. It made such a difference for the users! We were able to sell more copies because importing files from our competitor's system worked smoothly. This was amazing to the developer: to him, it was just a few hours of improving some code. For the users, it was a time-saver.
The lesson to be learned
As the title says, effort and value are not equal, simply because the effort involved in accomplishing something is not always perceivable to the client. However, internally, we should recognize the effort, even if it's not the star feature. After all, if the "taken for granted" features were not there, we would have no software to sell.