3 ms·
I've always wondered about how companies handle increasing complexity of their user base. One route is to do what CloudFlare has done: create the "pro" UI wher
by exelius 12y ago
I've always wondered about how companies handle increasing complexity of their user base.
One route is to do what CloudFlare has done: create the "pro" UI where you have every setting imaginable across multiple namespaces.
Another is to simply make an API for everything and let your customers implement their own UI (usually integrating your product with the 15 other vendors they probably use).
I'm increasingly in favor of the second approach. A pro-user UI is great, but most of your customers who are complex enough to need a truly pro interface would be better served by an API. That was honestly the revolution that Amazon brought to the infrastructure space: they had an API you could use to provision... Well, anything.
So IMO the API is the new expert mode. There are just too many platforms out there (AWS, CloudFlare, Akamai, etc) that are often used in tandem that a vendor-provided interface will never be enough for the most advanced users.
- thedg 12y agoOr you could do both. Here are our api docs. The new dashboard is built on this version of the api. https://api.cloudflare.com/ https://api.cloudflare.com/
- kijin 12y agoI disagree. Going API-only for the advanced features might be okay for something like AWS, but it will alienate a lot of users for the vast majority of online services out there. CloudFlare is not just for highly experienced programmers who can whip up a Ruby script to do whatever they want. A large percentage of their customers are probably just average "webmasters" who are using CloudFlare to improve security and page load times for their WordPress sites and whatnot. They're comfortable with clicking around the website to get the result they want, but if you just gave them an API and some npm packages to access it, it would take them several hours to get the same thing done. They might do better the next time, but if that initial friction hurts CloudFlare's conversion rate, why bother? We've been seeing the same problem for several years already with *nix desktop environments and applications. Some rockstar programmers and designers collectively decided that they'll optimize the graphical UI for newbies and hide all advanced features in a bunch of manually editable config files, command-line flags, or (heaven forbid) the source code itself. Result: newbies are happy because the UI is simple and streamlined. Advanced users are happy because they can still do what they want to do. But a lot of semi-advanced, I'm-still-learning users in the middle of the bell curve are pissed off because they see no reason why they shouldn't be able to use a mouse to get work done. And since we're talking about a bell curve, that's a lot of pissed-off users. Many people here on HN have warm fuzzy feelings toward the concept of mashing keyboards all day long. The rest of the business world, on the other hand, is still very attached to the mouse. They're like, "Duh, why would you write <foo bar="yes" /> when you can just click on 'Yes'?"
- manigandham 12y agoI'm a pro user. I'd still rather click few buttons than write a custom script just to change settings. It's not that hard to make a decent UI that can handle a large amount of complexity.