Kill the settings, build opinionated software
41–50 of 52 posts
Re: Kill the settings, build opinionated software
#42Earlier quoted context omitted.
So for your mail client you bake all those little mailbox settings into the UI somehow, even though it's mostly a "set and forget" kind of thing?
Yeah, you do. I want to enable secure outgoing email. Which is better: "Click the Accounts menu, then Mailboxes, click the mail account you want, click the Outgoing tab, scroll to SMTP Advanced Settings, and Enable TLS/SSL" or "Click the i icon next to the mailbox name, or right-click and select Settings. Scroll down to Outgoing Mail, and check the SSL/TLS option." The first option is vestigial, from an age where pul…
Re: Kill the settings, build opinionated software
#43Here's a little anecdote: Years and years ago, in a moment of free time, I added a bunch of silly settings to my software (EasyBCD, now with 7-10MM+ users). It had almost no users then, and I just added these options to "fill up" the empty preferences dialog. A year or two later, I removed a couple, and the complaints could be heard around the world. The features, you ask? They really are ridiculous: Save the window…
Personally, I find it surprising that customers would complain about you removing "trivial" options. Do you think you would lose customers (did they threaten to not use your product)? Would paying for your product change their opinion?
Re: Kill the settings, build opinionated software
#44Here's a little anecdote: Years and years ago, in a moment of free time, I added a bunch of silly settings to my software (EasyBCD, now with 7-10MM+ users). It had almost no users then, and I just added these options to "fill up" the empty preferences dialog. A year or two later, I removed a couple, and the complaints could be heard around the world. The features, you ask? They really are ridiculous: Save the window…
Egads, you're right. That is the sort of software you wouldn't use every day. Personally, I find it surprising that customers would complain about you removing "trivial" options. Do you think you would lose customers (did they threaten to not use your product)? Would paying for your product change their opinion?
But the thing about these features is.. they generate consumer goodwill. I don't know how else to explain it, but implementing stuff like this somehow makes geeks and grandmas alike more willing to endorse it. From the feedback that I've gotten, they feel it "speaks to them" and doesn't get in the way.
But what I've learned, regardless of the reason, keep your users happy and they'll recommend your product. They'll stick with you, and they'll remember you.
Case in point: just yesterday, I added the final feature for the 2.0 milestone which is a blue border around the button used to select the current page when it has focus. Trivial feature. Except instantly a user realizes that if they set an option to start EasyBCD up with a particular page, the blue border will remain along the default button. And they bug it, and when I say "it's really not worth fussing over" they insist: http://neosmart.net/forums/showthread.php?t=6506
That doesn't of course mean that I let the plethora of strongly-opinionated users take over the development of the software. I generally refuse most features. But the subtle enhancements they recommend, that's what I follow. Because it's just a bit more work for me, but it's makes the software go viral without even my trying.
One last thing: I'm absolutely against locking down features. I give users enough rope to hang themselves, but enough guiderails and warning messages that they don't do so blithely. And that opens the door to experimentation, to videos on YouTube where people use the software to do things I didn't think were possible and certainly never intended. And it keeps your users content with you, your software, and any future products you'll ever ship in the future.
tl;dr Features make EasyBCD's users happy. It's minor stuff, they would never abandon ship if it weren't there, but it makes them happy and it makes EasyBCD come to mind whenever someone needs a product that fits the bill.
Re: Kill the settings, build opinionated software
#45Earlier quoted context omitted.
Users work in an infinite number of different ways, and they way they worked before they use your app is probably forced by whatever crap they are currently using. No matter what you do, you end up forcing a lot of people to learn to work the way the app wants them to. The best you can hope for is to build an app where, once it's explained, most users first go "Oh, ok, that makes sense." and then actually remember it…
Ok, sure, you have to draw a line somewhere . Point conceded. But the position taken by the parent article seems to be pretty close to "don't make a damn thing configurable" and that is a position I think is flat wrong - for many classes of software. Then again, my interest is more in complex, multi-user, enterprise systems, where you are likely to have more varying forces at work (integration with other systems, nee…
Re: Kill the settings, build opinionated software
#46Some people argue software should be agnostic. They say it's arrogant for developers to limit features or ignore feature requests. They say software should always be as flexible as possible. We think that's bullshit. The best software has a vision. The best software takes sides. When someone uses software, they're not just looking for features, they're looking for an approach. They're looking for a vision. Decide wha…
You touch on one of the unstated assumptions here: some applications have more homogeneous user pools than others. The more diverse a user pool an application needs to support, the more flexible it needs to be to satisfy those users. Some users need feature X; others never use feature X and find it distracting, and would like to use the screen space for something else. Are they wrong? Maybe, probably not, but it depends on the specifics of the case and not on platitudes about having vision.
Re: Kill the settings, build opinionated software
#47Earlier quoted context omitted.
Ok, sure, you have to draw a line somewhere . Point conceded. But the position taken by the parent article seems to be pretty close to "don't make a damn thing configurable" and that is a position I think is flat wrong - for many classes of software. Then again, my interest is more in complex, multi-user, enterprise systems, where you are likely to have more varying forces at work (integration with other systems, nee…
I have yet to see a highly complex piece of enterprise software that people actually liked to use. Honestly, I think the current state of enterprise throw everything and the kitchen sink at the problem software just demonstrates the downsides of a complex and highly configurable system. If you don’t know what people will be using it for then you can’t build a streamlined system.
I have yet to see a highly complex piece of enterprise
software that people actually liked to use. Honestly, I
think the current state of enterprise throw everything
and the kitchen sink at the problem software just
demonstrates the downsides of a complex and highly
configurable system. If you don’t know what people will
be using it for then you can’t build a streamlined system.
True, true. And that's why I find articles like the parent useful, because they do serve to remind use that we should strive for simplicity... That is, while I may largely disagree with what seems to be the "logical conclusion" of the article, I don't disagree that things should be, as they say, "as simple as possible, but no simpler." And since I am working on some "complex, enterprise software" - and being aware of how notorious this kind of stuff is for NOT being friendly and easy to use - I feel drawn to try and break that trend by making things that are both powerful and flexible, but without being confusing and difficult. It's a difficult balance to strike, and I don't claim to have all the answers, but at least acknowledging the problem and having that as a goal is a start, I think.Re: Kill the settings, build opinionated software
#48This article is little more than a generic rehash of popular memes. Let's break it down: - 37Signals is great, they do simple! - anecdote - Apple is great, they do simple! I hope whatever software this guy does has less opinion and more substance.
Indeed, check out his dig at multitasking on Android and praise of iOS multitasking, even though Apple's implementation seems to be essentially identical.
Re: Kill the settings, build opinionated software
#49I always cringe when I hear "don't listen to your customers." That is absolutely the wrong behavior. If you don't listen to the people who are going to buy your product, you won't build a product that solves a real problem. I listen to my stakeholders (potential users, potential buyers, current users, etc), but I don't necessarily do what they say. Most people try to give you a solution to their problem, you need to…
"don't listen to your customers" means doing exactly the way you describe it in the second paragraph. It does not mean "don't pay attention to what your customers are doing".
It is very similar to the "Fail Fast" mantra. Yes, if you apply it correctly, you will build a better startup. If you apply it naively, you will do just that: fail quickly.
"Don't listen to your customers" seems to resonate with engineers in a weird way. I think it is a combination of ego and anti-social behavior.
Re: Kill the settings, build opinionated software
#50Earlier quoted context omitted.
A Google search for "n e z coordinates" revealed that N stands for north or northings, E stands for east or eastings. Basically, it looks like they just swap X and Y.
I'm South African and I've never seen that used. Perhaps it is by people in a particular industry?