If you’ve called us asking for a new feature, you may have heard this.
“Can you please add just one more button? It would make my life better.”
“It’s on our feature wish-list, and I’ll keep you posted as we do updates.”
That’s the conversation when we’re asked for a new feature. I’m sure it’s frustrating to hear, without any details or promises. But, it’s the truth. The reality is that we don’t know which features will be done when (or if they’ll get done at all) until we do them.
Wait a minute – this might be shocking from a software company that makes scheduling software. You’d think we’re on the cutting edge of planning… But, even though our answer might be vague, we take every feature request very seriously.
Every good idea comes from our customers.
It’s not that we’re slackers. Our awesome developers are constantly working on building and maintaining our software, and Ted and I spend a bunch of time thinking about what’s next. So, how do we decide what to work on? We want it to be the most valuable thing. But how to decide? There are 3 main criteria.
Will it make our user’s lives better?
Most software is hard to use. One of the compliments we’ve gotten over time is that our software is understandable.
“Stop adding features and concentrate on making what’s there better”
–No customer, ever
But if you’re not constantly vigilant about it, it’s super easy to make software that checks all of the feature boxes, but is so complicated or ugly nobody wants to use it. So, we’re always balancing between “Does this feature help our users” versus “Does this extra feature make things more complicated“. Sometimes the answer is clearly yes in one of the categories, but more often than not, it’s pretty muddy.
Will it make our lives better?
You’re not the only person affected by how our software works. All of us, as Moraware employees, also feel the pain when a feature is more confusing than it is valuable. So, it’s important for us to make sure that we’re implementing features that are supportable and documentable (is that even a word?).
But, there’s another way that our lives get better. More money.
So, we’ve got a similar debate going on – balancing “will more prospects and customers pay more for a feature” versus “Will support become more painful and expensive“. Since we want to be the company that provides software to every countertop fabricator, adding features that appeal to more companies is important. But at what cost?
Do we know what to do?
Knowing what to do is probably the hardest part of doing development. And usually, we get pretty vague guidance from our customers. When you’re building software, you’ve got to nail down all of the details, including the exceptions and errors.
Even after we build a feature, once we play with it and test it, it may never see the light of day… especially if we decide that it’s too confusing, or doesn’t quite fix the problem we’re trying to solve.
I guess what this all boils down to is that building software is a craft, not a science. Although we’re constantly trying to get better at choosing the next thing, we only know after our users have had a chance to try it out and give us feedback… which starts the whole process over again.
Want to know more? At Moraware, we make software for countertop fabricators. CounterGo is countertop drawing, layout, and estimating software. JobTracker is scheduling software that helps you eliminate the time you waste looking for job folders. RemnantSwap is a free place to buy and sell granite remnants with fabricators near you.