Hacker News new | ask | show | jobs
by madeofpalk 3045 days ago
Designing is just like coding. You've got to be pragmatic about knowing when and where to use the tools in your belt.

You might have your little favourite programming trick, but a good programmer will know when and where to use it - you don't want to use a map function everywhere.

Note that the article's point about buttons isn't prescriptive and doesn't say "always do buttons like this". Instead, it talks about a common specific use case and talks about how you can improve the situation. It's up to you to take that information inboard and judge where to use it. It sounds like the specific example you cited was a good time to not follow this approach.

1 comments

It's form over function and I'd be shocked if anyone ever shares statistics where making the button more difficult to see increased user interaction with it or made it easier for users to do other tasks by "getting the button out of the way".

The only time I'd use a 'button' without a background color is something I don't actually want the user to use. For example, a 'delete' option on their profile or the 'unsubscribe' link in a newsletter.

But I'm not user hostile so I'd still make those options easy to find for users who wish to use them instead of trying to pad my "user retention rate" or whatever numbers the marketers are trying to make look good.

> The only time I'd use a 'button' without a background color is something I don't actually want the user to use.

Yes! You've got it! That's exactly what the article says!

And that's what I'm saying - good design is learning these tricks and identifying when and where to use them. It's not form over function, but how the form influences the function.

As a programmer if I don't want the user to use it I don't expose it to the user at all. If I want the user to be able to use it I'm not going to intentionally make it difficult to do so. That's not good design - that's bad UI and bad UX and is a dark pattern used by manipulative marketers who don't care about providing a good experience to end users. But then we get to argue over what "good design" means. Since manipulative design that is good at being manipulative is obviously good design by definition.

I think good design should benefit the user. Making "opting out" easy is providing a good user experience. If the user is wanting to "opt out" the answer isn't to make it difficult to opt out - it's to fix the reason that is causing your user to want to opt out to begin with.