No. Here's a case where Firefox will definitely not do a better job: an NFS-based computer lab environment where users have individual quotas - the statfs() syscall (i.e. what the `df` command uses) returns you the amount of disk space available to everyone, which is enormous. Firefox then attempts to use that space, and quickly exhausts the user's quota. This is a real-life scenario and the current solution among users is to set the cache size to 0 - the Internet connection is damn fast anyways and they'd rather use their space to store actual files.
For the love of god, what is wrong with having an Advanced options panel? The author's stated goal is "to design software that can be used by everyone " but when you remove options like this, you make your product not usable by some people unless they do additional research to find the hidden about:config option or install some add-on.
The bug for this is https://bugzilla.mozilla.org/show_bug.cgi?id=851698 - if you think this is a bad idea I encourage you to leave a comment there (but be nice). Mozilla may otherwise not realize that this is such a bad, unpopular idea.
Firefox really does have an easily-reached config panel with "Use SSL 3.0" and "Use TLS 1.0" on it. What is the situation in which any user at your lab would know which of those options is sensible? Neither of them are the current version of TLS. Both of them have cryptographic flaws. And both are extremely widespread.
Firefox really does have a top-level config panel with a checkbox that disables automatic image loading. It's not even an "advanced" option.
I don't think your comment really engages with the article. What should the top-level options for a browser be?
And in several places he explicitly says that these killed options (whether they're currently in the advanced panel or not) should be replaced by add-ons, not by an advanced option or even by about:config.
So I don't think I dragged the article to a conclusion it didn't try to make. The article is clearly about killing options which I contend people need, and I think should be placed in an advanced section rather than killed.
Can you defend the SSL 3.0 and TLS 1.0 checkboxes?
Certificate manager in an addon? What?!
And yes, they are so bad to the point they are harmful, but the only reason they are in there is because Firefox has it's own certificate store, more of a portability quirk than anything.
His point was, and I agree with it, that a mass browser does not need to expose cert management in a way that the 99.9% can access it because it's likely to cause more harm than good for anyone who is not capable of jumping through a few extra hoops to get to it.
"The people that need to do these things should use add-ons, or at the very least an about:config tweak."
UI designers are empowered, and "power" technical and business users suffer for it. My iPad is easy for my two-year old to use... But it is horrific for more many types of tasks that computer users do every day.
Firefox definitely carries a lot of config legacy... But going too far the other way is dangerous too.
That sounds to me like it should be moved into an add-on. The users affected still can get the capability while the rest of the world is spared another setting that clutters the UI.
If you remove options from your product that are vitally important to even a small number of users your product can no longer "be used by anyone."
Similarly, as the original post points out, the big issue with SSL is that you get a scary (and inaccurate and incomplete) message telling them to email the website owners because their site is broken, and not a simple message they'll need to "click here to turn SSL secure access back on" to view the web page.
If the developers/designers of Firefox don't have a reasonably answer as to why a large enough amount of users would disable these settings, then they should be removed (or to avoid upsetting existing power user moved to about:config).
If I recall, there are some Chrome options that you can't modify from Chrome itself, but which you can configure using Group Policy Objects. That (or whatever the equivalent is on *nix--files in /etc?) should be where the settings for "lab admins" go.
User interface development for mainstream software is invariably a balance between presenting something accessible to novice/occasional users and presenting something powerful to expert/frequent users. You can go a long way to helping both groups with a thoughtful design, but there's always going to be someone who wants something slightly (or completely) different.
For mainstream software, trying to please everyone all the time is a fool's game. That's what bespoke development is for.
Same argument can be said for removing a feature 2% of the population of users rely on. 2% of 450 million users is 9 million users. Not what I'd call a tiny number of users.
The geekier side of the affected users may find the add-on, sure. But they're not the only ones affected.
In UIs, it imposes cognitive load for little or no benefit.
I'm immensely grateful that I did some tech support in college. It taught me how much seemingly trivial, ignorable UI clutter caused real problems for people who aren't programmers. That is, the vast bulk of the population. Cognitive loads that are small for me can be giant for others. Letting me design a UI based on my own preferences is like letting NBA basketball players decide how to organize my kitchen cupboards.
A short description would be nice, though.
A short description would be nice, though.
And you're right that just because something is deep in advanced settings doesn't mean that the design has to be shit. But in this case, and in other browsers, 99.99% of users don't even know it exists, so Mozilla likely feels justified in leaving it as is.
It's not spam to discuss the merits of implementing a feature request.
> instead, go file a bug saying that Firefox should check the user's quota in addition to statfs. Easily added, and then Firefox becomes that much more automatic.
Not possible - the quota information is not made available in any standard way, but rather by a non-standard dot file in the user's home directory. I know the quota information should be exported by rquotad but things aren't always that neat in the real world.
Even if it were possible users may still prefer not to sacrifice any of their quota-limited home directory to Firefox cache. Who's Mozilla to presume they know what users want?
First of all, note that the tracking bug you linked to doesn't even track or discuss any bug about removing the cache options, making it pointless to bring up there.
It wouldn't be spam for you file a bug requesting a fix for quota handling. It also wouldn't be spam for you to post a note to the bug about removing the cache options to point at the quota bug, and to make sure it'll stick around as an about:config option. However, canvassing for other people to go post to a bugzilla tracking bug just leads to noise like the current pile of comments in bug 851698; the vast majority of the comments in that bug, especially the ones by users labeled "(New to Bugzilla)", do indeed constitute spam, and those same comments show up in just about every bug trying to clean up the UI.
See also https://www.xkcd.com/1172/ .
> Not possible - the quota information is not made available in any standard way, but rather by a non-standard dot file in the user's home directory. I know the quota information should be exported by rquotad but things aren't always that neat in the real world.
So, we've started from "bug only seen by people running Firefox over NFS", already a very small fraction of users, and then shrunk the audience further to people who don't even use the standard quota mechanisms. An option to serve that vanishingly small fraction of users seems like precisely the domain of about:config.
> Even if it were possible users may still prefer not to sacrifice any of their quota-limited home directory to Firefox cache.
And those users can go tweak the setting in about:config, or you could tweak it for them by changing the system-wide default. That doesn't make it appropriate to put in the main configuration UI; not enough people use it, and its very existence in the UI hurts more people than it helps.
> Who's Mozilla to presume they know what users want?
Makers of a browser used by hundreds of millions of users, with extensive data from actual user testing, tons of statistical data telling them which settings and UI options people actually touch, and most importantly an understanding that just because an option has users doesn't mean it should continue to exist, and that the noisiest people on Bugzilla frequently don't represent a significant fraction of users.
about:config exists to satisfy use cases like yours. Tone down the rhetoric and understand that when your software has hundreds of millions of users, every single change represents a tradeoff between who it might help and who it might hurt. This one seems far easier than most.
You're arguing for the same thing.
Edit: and the about:config page shows a giant warning that "This might void your warranty" before allowing you to proceed. It's pretty different from a generic "Advanced" tab in a preferences window.
The developer and designers of the product.
They might not always be right, but they need to be able to make decisions for users in order to move forward. Apps need a champion to lead them and guide them, and sometimes even to upset some users to improve the product for other users.
The OP seems to think about the average user and decides that a lot of stuff is not needed in Firefox options. But the average user does NOT click on Advances Options in any case. To be fare, the average user do not click on Preferences at all.
Is not bad idea to have some of this options as plugins, though. But we must remember that if the "average user" clicks on "Full screen" button (or even worse, F11), he/she'll probably have to reboot the computer in order to "fix" de computer.
You can not damage the "average user" at all, but manage to break the workflow of most of your real users but eliminating parts of the set of features they depend on.
i.e. remove 100 different features only used by 1% of your users, and it's actually quite likely you've removed features 100% of your users use.
This comic is not meant to be a justification for removing actual features.
There's a huge difference between being available and not ever changing. You're arguing against a point never made.
Perhaps true, but your estimates are off by many orders of magnitude. Wikipedia puts the Firefox userbase at 450 million. How many people do you think need to turn off SSL? Hundreds? Thousands? That's about 0.0002%. How many need to turn off or manually tweak the size of disk cache? Over 9000? That's still only 0.002%. And oddly enough, it'll overlap heavily with the last 0.002%, and the next 0.002%.
People really disliked being treated as numbers, they'd rather be treated as human beings.
It gives the impression that it's about finding a justification to an arbitrary already made decision.
IMHO a more sensible way to tackle the issue is to make usage cases and find a way to address what ever arise from this scenario wisely.
From the nfs case exposed earlier, a "I'm on nfs with quota" checkbox would make more sense than forcing cache manually to 0.
Instead of removing features and hiding options, wouldn't it be preferable to provide options that make sense and make them usable ?
Firefox was a spinoff of Mozilla and was a pretty good browser from v1, and within a year of release was considered the best browser available.
I think there is a way to stop showing the message, though.
Firefox is one the few who does not offer this feature.
That being said, making the algorithms smarter should probably help, e.g. only caching in memory if there is an SSD and just store frequently-used sites' resources on disk which might be a viable compromise.
In this instance I have to wonder if FireFox couldn't look for a quota - it can be detected.
But then please for the love of god make about:config something that can be used without trawling mozilla.org discussion threads or random about.com 'articles'. There are hundreds and hundreds of about:config options, most of them more useless than the next, except for maybe 25 or so of them. If mozilla is already tracking so much, why don't they track the most-often changed settings through about:config and put them in their own section at the top of the list? Or, here's a radical idea, why don't they put the options in a tree rather than a flat list? Maybe ordered in a way that makes a bit of sense, but I may be pushing it there, I know. Why are we punched in the face with an 'options' dialog that (it seems) should have, in the eyes of most 'designers', only a very few options to the point where it becomes useless for 'advanced users', or kicked in the behind with an about:config page that could, functionally, just have well displayed 50 kb of output from /dev/urandom?
This : http://www.npr.org/blogs/money/2012/07/13/156737801/the-cost... applies not to just Google Reader, guys... I've been using Firefox since the milestone builds of what back them was still just called 'Mozilla', if I'm remembering correctly, and I have yet to find something better (at least if you count in all the addins) but damn, if I were religious I'd do a prayer every time I see it 'installing updates', out of fear of what it's going to screw me over with in 'interface innovation' this time.
(done ranting now)
I think one of the reasons that about:config is not easy to use is because it shouldn't be easy to use.
If it was a nice window with checkboxes and dropdowns and tabs for groups of related options, then it would become a de facto settings dialog a thousand times more problematic than the legitimate settings dialog.
1) search Google about something, read blog, follow instructions is an amazing pattern people have learned and apply regardless of wisdom or skill
It might be good for you to remember that those "masses" are just people with other things to do with their lives - they're doctors, lawyers, concert violinists, nuclear physicists, biologists, teachers, ... and they just want their damned browser to work without having to mess around, and preferably not break with cryptic error messages they don't care about, because, frankly, they have better things to do.
It's only the advanced users who are willing go through this path because they want to tweak a settings. And the question would be, is it really worth making such an impractical tool out of about:config and thus wasting time of advanced users when it was designed for their own use, for the sake of keeping non-advanced users out this setting panel.
Perhaps the moral of the story is to build your software with layers of configurability. In layer one, there are hardly any choices, but there is an "advanced" button to allow further configuration. In layer 2, there are many more options, but still only "frequently-used" features... however, there is a plug-in or scripting system that allows adding additional features if a developer makes them. The ecosystem of plug-ins would be layer 3 (note that this only works if you provide a common place to DISTRIBUTE the plug-ins and you make an effort to filter out malware). Finally, layer 4 would be the ability to build one's own plug-ins, but this layer would only be available to developers.
I have some software (like browsers, IDEs, and even older things like Emacs) that works like this today... but maybe all software should be built with layers of configurability.
> Emacs defers to extensions for things that Vim does natively - and again, the result is those features are more usable and better integrated.
Vim has an extension mechanism too. It may not be quite as flexible as Emacs, but it is much more flexible than most programs.
Same thing with disabling images. I have built web applications for the browser constrained (think remote science stations in Antarctica), and we often wish to test rendering without images (or with massively deferred image loading) or with only partial page renders to ensure that the first content loaded is the first content displayed for those situations where they are needed.
Sure, I'm a fringe case, but for some people, "breaking the internet" is a job requirement.
So I think removing those from the config UI is an excellent choice.
That it happens to break a few popular websites doesn't mean that the entire internet is broken, or that that wasn't the desired effect.
To be fair, the post didn't advocate getting rid of "all the options". It advocated getting rid of options that almost never make sense to use. For many of the examples given, that would continue to apply even for power users.
I'm fairly sure there is an alternative solution to this problem that does not involve adding an extra option in the UI...
And images? Most people are too naive to understand that the <img> tag represents an HTTP GET for every occurrence. Being able to lock down GETS and limit them is a safety measure, not a bug. Just because users are naive, and that such naivety is encouraged by greedy parties, does not mean that the feature should not exist.
Certificate Authorities? SSL? Destroying the ability to control your cache?
Alex Limi should take note that the browser exists for the user, not the faceless "product" locked away in remote internet server land. Not all websites are "product" designed with the intent to extract cash from people's pockets. The browser is the last gateway of control a user has over what the internet is allowed to do to their machines. Taking these settings away represents a set of handcuffs.
Privacy Engineer Monica Chew should take note that people will fork or abandon their open-source browser if it doesn't represent their interests. People with the technical awareness to know better will advise people to avoid Firefox, if decisions like this are on the horizon.
Blame people like Alex Limi and Monica Chew if Firefox becomes the next Internet Explorer.
Design-by-committee indeed. Design by Steve Ballmer is one possible alternative, is it not? Does that sound better? I think we know what authoritarian decision making can look like.
Wow! No respect for this troll-bait article under any circumstances. I don't care what their pedigrees are.
Except maybe for the cache control, the settings the author talks about are basically useless. Third-party plugins like NoScript are a much better solution. Be honest, do you use the "Disable JS" checkbox, or do you use NoScript?
"Disable Images" can be handy in certain, very specific settings, but it doesn't really deserve a slot in the main preferences dialog.
I don't think the author is advocating the complete removal of these options. I think he's objecting to how prominent they are in Firefox's UI. about:config is the perfect repository for all of these tweaks, and I expect the dialog is already just a frontend to about:config.
His point is they can make better use of that prominence than they currently are.
When I have a highly limited connection is just the time I wouldn't want to download a plugin OR be searching for instructions about how to disable images. It is also fairly good plain language that even non-experts could understand. I think it probably does deserve a place somewhere in the settings.
I think you're forgetting that Firefox is not used exclusively by developers who may find those options useful. They're simply one /portion/ of Firefox users, and in my opinion, developers should be considered power users. In which case, moving some of the more "advanced" options off to about:config, where power users would be more than comfortable.
I don't think the article is advocating for disabling these options completely. Rather simply hiding them from the average Firefox user who doesn't need to mess with them.
1. feed/email app sites
2. trying out stacksort
3. loading flash embeds on youtube because youtube is set up annoyingly
Also I just turned off images and tried a few pages, nothing broke. Google's homepage had a perfectly visible text box, I'm not sure what the problem in the article was.
Nothing wrong there. We need these switches. Taking them away is a bad, BAD idea.
If the discussion were about how to provide access to these settings in a cleaner manner, so that people understand why they exist, and how to properly use them, I'm all for that. Increasing awareness and informing people about what the internet does, how it all works, and why they should care is a good idea.
This article doesn't take that tone. It just says "Ew, yucky! Hide all these settings because they're ugly, or better yet, don't make them settings. Don't even let people change them. It doesn't matter how practical they are. They keep us from making money. The ivory tower, where all the developers live, will be able to figure out a way around the road blocks we put up as they usually do."
Try alienating your power users and wonder your product suddenly start bleeding regular users along with power users.
Start alienating web developer and wonder why suddenly websites start breaking in your browser.
This article is advocating total removal or rendering as impractical as possible as a mean of protecting ignorant people from their ignorance all in the sake of brand image.
Then you can disable JS for most sites and enable it for some.
The same for proxy server, cookies, etc.
Personally, I feel pretty confident that the number of
people that know how any of this [certificates] works
can be narrowed down to the people that work in these
companies in the list. At least not too far off.
actual list is apparently
My 2 major problems with moving things to add-ons:
- they might not exist yet so I get buggered
- I need to trust 3rd party where previously I didn't have to
I often wish that developers would more often travel around the world so they would notice there are a bit more than 2% of people using crappy connections where disabling images is one of the first things to do.
Firefox has about:config as a saving grace, so if options were removed from its user interface, I would be able to make do. In fact, I'd pay money to see about:config or similar in every application. For example, I set slider.snapMultiplier to zero to remove that annoying snap-back on the scrollbar thumb when you drift too far in the perpendicular. Good luck describing that one in a dialog box.
But unfortunately, in other products, hiding options is often just straight-up removing options.
While I appreciate reducing confusion by hiding options that are difficult to describe, I would prefer an "advanced settings" section. Perhaps consider three tiers, as with Firefox (options, advanced, and about:config).
That is SO very well said... I wish I'd thought of that myself. In particular, I wish I'd thought to say - about 10 years ago - "Note to developers: beating Internet Explorer doesn't necessarily mean becoming more like it."
I still remember so may discussions about Firefox (and Mozilla the browser before that) where somebody proposed something and it was shot down because "That's not the way Internet Explorer does it" or "IE doesn't have that". sigh
One fundamental premise of free software is that users are responsible for the software running on their computer, and therefore have the right to make that software do what they want. They have the right to accept SSL certificates from who they want, to use the amount of disk space they want, and so on. And the fact that only a tiny minority of users understand the security implications of having China's root certificate installed in their browser is not an argument for taking away their option to uninstall it. It's an argument that SSL's trust model is severely broken.
Because as far as I can tell, that battle was lost about 10 years ago.
That latter thing isn't really a benefit. Or if it is, it's satisfying your personal aesthetic sense. I too happen to think that past version of the future was awesome. But I also liked the future where we all used jetpacks to fly up to our long-haul zeppelins. That's no reason to ban airplanes.
To use your metaphor, this is not the future where air travel is cheap and ubiquitous; this is the future where the Concorde no longer flies, you must submit to a strip search to board an airline, and Meigs Field has been bulldozed.
I'm fascinated that you could work in tech and still manage to seize one small moment in technological time and declare it the peak of goodness. You realize, don't you that people do that with every moment of technological time?
I'm not denying that by your criteria the web was better then. I'm just saying that seizing upon the particular set of aesthetic criteria from the age when one is most impressionable and decrying all that comes after as worse has never been an effective way of changing things back.
Jetpacks aren't widespread for important safety and technical reasons. The existence of search engines demonstrates that non-browser agents are technically possible.
People are often perfectly happy to present content as content. But when their economic interests lead them to another approach, aesthetic outrage from a tiny minority won't change that.
I need to be able to alter my root certs and other things. I can even teach other people how to do this.
If this is hard to do, it should be made easy.
Resist turning your software into a tablet.
(My point vaguely being that the rulemaking behavior you seek to lampoon actually has leaked that far into real life)
The most obvious being you can still run while in the middle of a murder trial up to the point where your convicted. But, good luck getting elected.
I'm totally on board with the idea that if less than 2% of users need functionality it shouldn't be placed front and center and maybe it doesn't need to be in the options panel at all but most of his examples aren't the sort of thing I would want removed or outsourced to an addon whether I was a technical user or not.
I think the real answer is to prioritize, organize, and simplify. Make the most important, general, and broad options the first ones a user sees. Organize them from most general to more specific (which probably includes an increasing level of complexity as well). Go ahead and hide some of the more fine-grained controls in a panel somewhere that all but those who really know what they're looking for will find it (but make sure to document it, too). Finally, remove anything that simply doesn't need to be there. Those things, I believe, will be very few and far between. The author makes it sound like there are tons of options they could get away with just cutting from the options without anyone noticing but I'm not convinced. Despite the fact that some options are very rarely used, when that rare case of them actually being needed comes up having them available, albeit in some hidden away panel, can make all the difference between a happy and a frustrated user - a user who won't have to go out and search for yet another addon to manage something they thought the browser itself should be able to control.
The solution isn't to reduce the number of options, at least not in the way the author promotes. Instead I think it's really just about better organizing and presenting what's already there. Mozilla is all about freedom and their customizability is something a large segment of their userbase loves them for. Why ruin that?
Every less-used option and feature that a browser can offload to an extension or plugin is less code everyone has to download, and less code the browser team has to maintain. Also, those extensions can live or die based on actual usage and demand - a more fair "market economy" than the central browser team making those kinds of decisions about what's important or not.
The alternative is tremendous browser bloat - supporting every feature wanted by 1% of users can lead to hundreds of extra features, and thousands more configurations that have to be regression tested.
According to the article, it's a move to protect their brand from looking bad when kids click around.
I agree with many of the others on this thread that FireFox's about:config is not the place for these things. It is nice that FF has such low level access to such settings, but it is not much more friendly than editing an Apache config file.
I am also a little concerned about moving these into Add-On which have their own set of issues for most people. How often have you sat at someone else's web browser to see it filled with all sorts of extra menu bars and enhancements that make the browsing experience even more confusing and slows every thing down (not to mention the potential privacy issues).
Get rid of the rest of it, but please, please make installing and using client certificates as easy as "installing and using" cookies. Make them sync with your profile, even! Client certs are the most wonderful security feature nobody has ever heard of, and it's 100% because the UX is horrible. Make them happen transparently and the web will take a permanent step up in security.
This logic is so wrong that I don't even know where to start. Every obscure feature might be used by only 2% of the users, but it's not the same 2%. If you removed 10 of those "useless features that nobody uses" you just made your product unusable for 20% of your users.
But it's not even that. If I'm in those 2%, I don't care what other 98% are doing, you are breaking something I depend on. I want to use products that won't break my workflow even if over time I cease to be in the majority. It's a matter of trust (you hear me, Google?). There's a reason why countries that protect their minorities win over time, and I believe the
same will be true for software products.
PS. By the way, what Monica Chew and Alex Limi think of accessibility features? Fuck those blind people, right?
I was so happy reading this because it seems that some big dogs are finally realizing the problem that I noticed some time ago , but I'm nowhere near as good at elaborating my points or causing change.
The innate problem with checkboxes is that while they communicate if something is on or off, they don't communicate what the optimized default value was (and unless you know what you're doing and a have a good reason to override it, it's probably better to leave it alone).
The reason extensions are mentioned has little to do with whether 3rd or 1st parties make them, but rather that their UI has a beautiful property: by default your extensions list is empty (ala clean slate), and everything just works.
Fixing unwanted issues is easy because it's just a matter of removing unwanted extensions from an explicit list of changes appled.
I think the main takeaway message here is that the UI for software settings can be made better without crippling the customizability or flexibility. Just present a view where it's easy to see what's been changed.
My $.02: Let Firefox continue to be feature-packed. Why? The other (popular) browsers are lacking by default (default being without plugins) in this regard. Keeping Firefox feature-loaded out of the box reduces the hassle for somebody that needs access to powerful web tools, when the alternative is downloading a bunch of plugins/ extensions/ bloatstuff.
IMHO, this depends on the features.
For example, I don't know what they were thinking when they decided to introduce an ad hoc, informally-specified, bug-ridden, slow implementation of half of Adobe Reader, but I wish they hadn't. I frequently use on-line services that provide PDFs for various reasons, and after the first 48 hours I had to Google the settings to make Firefox just shut up and let Adobe Reader do its job, because too much functionality was badly presented or simply didn't work at all. Now I've just got all that extra code I'm never going to use bloating my browser.
If you're viewing content that's based on HTML and comes embedded in a web page, like images or HTML5 videos, sure, make the browser handle it. But you can download many kinds of data over the Internet, and the idea that a browser should become some sort of all-inclusive operating system/distro bundle that can interpret them all itself feels very unhealthy to me. What happened to using one tool for one job, and making each tool a specialist that does its job well?
IIRC, Chrome for Android does not allow the user to disable image loading. Opera and Opera Mini do, and also allow the user to load images at lower quality. "Internet" (stock browser) does on my phone. Dolphin does.
(Although, this says more about the state of wireless internet fees, 15GB for £15, then £100 per GB after that, ridiculous!)
There are some fields where "But it's traditional," is a reasonable response to a proposed change. But software isn't really one of them.
It is brandished right and left as if obvious, but it is never explained.
Every feature has its place, and when you start pandering to the lowest common denominator of users is when you've decided that you know better than everybody else.
I felt he chose Firefox because a lot of that UI was designed after IE and never changed. At least most other browsers seem to have thought about what to show in easy to get to pages.
If users go messing around in the important internals of the necessarily complex machine that is the browser then they deserve what problems they have. In short: If you don't understand an advanced option, stay the fuck away from it.
Also, the article suggests making certificate management an add-on, among other things. That is the stupidest and most insecure thing I've heard the past 2 years.
Could you tell me more about how important the browser certificate UX we have now is worth defending, or even keeping? I think we should just jettison it completely and let extensions take over.
You've clearly never observed non-technical people using a new product. Telling users it's there fault doesn't generate revenue. Making your product idiot proof does.
To be fair, there's only one browser right now that has "generate revenue" as a goal, and that's Chrome.
And I, for one, am tired of being hamstrung by "idiot proofing". What ever happened to "if something is important to you, DON'T fuck around with it if you don't know what you're doing!"
This is good life advice. What happens when you go mucking about in the internals of any sufficiently complex system without knowing what you're doing?
Completely untrue. Let's put it another way - the only browser out there not to "generate revenue", is Firefox (and even then it does generate a tidy amount from search referrals).
Chrome - pushes Google services and ChromeOS.
Safari - Apple-only. Nuff said.
IE - the original bad-apple of browsers. Once it killed off it's competition (ie, web standards), team was disbanded.
back on topic, perhaps the best answer is to provide a reset button or when erroring, provide actual locations to fix your issue (ie, the SSL disabled issue).
> From the Content panel in our settings, try unchecking the box:
> Here’s how Google’s front page looks like if you uncheck that box:
> [shows image of Google home page w/o search textbox]
I'm not seeing that problem when I try it. Why would a textbox disappear if images aren't loaded?
Background images are used to give its visual appearance. Without them, it's a `border: none` text field - effectively invisible.
I am not seeing this issue now in Firefox or Safari. I seem to remember that this was an issue in the past (maybe 6 or more months ago when I was running with out image loading). Then as I recall, Google was using a background image for the box.
An equally valid counter argument to simplification can be made: Leave the software as is. It is a known quantity. Create an "easy mode" add on instead for people who really need it.
I hope we won't see firefox equivalent of iphone (just an example among many, don't jump on me) in the future.
Why should other people, who don't know much, have to go get an extension while you, who does know enough to go get an extension, get to use the product as-is?
Idiot proofing is often necessary when the end user have to be spoon fed software and it is done by someone else who is perfectly capable of finding the said software on the internet form its official source, installing the package, finding the "easy mode" form its official source and clicking install button when the software prompts you to do so.
Alternatively, a version of software can be shipped by "easy mode" installed and enabled by default, just like how you choose which OS/localisation combo to download. Difference being that, software ships with rich configuration options by default and you can access them when you need it just by disabling "easy mode", not downloading something. No need to overhaul existing UI which is familiar to millions already, and prioritise people who cannot be trusted not to fiddle with options they don't know, just because you can.
I really don't like this trend toward moving toward plug-ins for everything - although I am OK with moving things to about:config.
As it is, I really hate the fact that I have to install additional plugins in order to turn off all scripting - seems that this - if anything! - should be a built-in option.
This makes me trust Firefox less. I switched to Firefox back when it was around version 0.6 or 0.7 - its greatest selling point then was that it could not run ActiveX and that this was good from a security standpoint. As it is now I don't see any benefit to it compared to IE from a security standpoint and only stick with it due to the great number of options that are easily configurable in about:config.
That said, while it's true that many of the options you mention are likely used be a very small % of users, and some are even dangerous for regular users to touch, they are also options that people who do use them will find critical, and they are options that people who do use them will be suspicious of in 3rd party extensions -- I mean who wants to install some random extensions named 'powerCert' or 'sslMan' with the purpose and powers of playing with certs on your behalf?
To a certain extent I think some of the options discussed could indeed be rolled into configure via about:config, I find the idea that it makes sense for others to be rolled into '3rd party extensions' a little troubling.
And some I think should remain, but could use some better 'branding.'
However removing most options (and functionality) just for those users and situations where something might stop working, is wrong. Sure (some) settings could be tucked away better, but doing so to the extreme will influence how users view and use software.
This nurtures the sort of environment where users will kick and scream if a setting they altered does influence the usability of an application. The result: fewer and fewer options. Or options with large yellow safety warnings a la "stabbing yourself in the eye with a fork might result in loss of eyesight".
Firefox could have an about:config page that's a webpage with a list of every crazy little option that could be changed and the remove all the little used options from the Preferences UI.
I don't see a need to completely eliminate the option but put it somewhere only advanced users will go.
(P.S. I find the web interface with a search box significantly more friendly to use than a native listbox control as is currently used for the advanced options).
What's wrong with it is that it adds a hidden cost to the software that makes it harder to develop. Every option splits your application into at least two possible states. If you have 1000 options, that's 2^1000 different states that you have to support.
Every feature added has to make sure it doesn't break one of these states, making it harder and harder to develop for.
Making something an option should not be the default behavior.
Just tried it here, and the answer is... it doesn't. Though maybe it does sometimes for somepeople?
edit to add: I really liked the image options available in Opera Mobile for use in low-bandwidth situations, which include replacing the image with an appropriately sized rectangle of an average color, with the alt text in it, but I'm guessing they require a proxy, or else I'd suggest adding them to Android Firefox.
So we've decided we want to read random paragraphs or recipes from anonymous strangers. And we somehow decided that that means the strangers get to run code on our machines. I don't know why we thought this was smart, but fine, that's the ecosystem, how do we let it work?
Browsers should have managed, up-to-date blacklists built in. Maybe antivirus companies could help carry the load and manage the lists, but someone should be out there actively hunting down malicious sites so we can break them for all users.
Users shouldn't have an "add exception" option, either, we all just prop that door open.
It's kind of odd that the consumer versions of Chrome and (especially) Firefox are loaded with developer-oriented features. I use these every day, but there's not a great reason for these to be in the main release.
Perhaps there is an opportunity for a developer-focused web browser with all the complicated bells and whistles. Or, a consumer-focused browser without them.
For example, in the last Android version you have to tap 7 time on the "Android version" field in the "About" screen to enable the developer menu. A casual user will never go there.
Or maybe just hide developer options in a about:developer menu.
Or perhaps they start as "consumers" and then learn development?
What happens to that process if you hide the things they could use to undertake it?
Then I, for one, would have never learned how to code.
I don't want the options in my face though.
Firefox does a great job with default settings in my opinion, even to new features and redesigns of previous features.
I think the Preference dashboard is stocked in a good way. It could be better, but it could be a lot worse. (You could have any of the five billion options from about:config I guess).
Maybe a good rule of thumb is that any setting that goes beyond cosmetic should be hidden away by default. On Firefox, that means that the Advanced: Network and Encryption tabs should be at least one more step away than they currently are.
And I find requirement to have JS switched on pretty arrogant. Especially to blind people with braille-readers.
I'm really, really uncomfortable with the idea of an add on being the only way to configure certificates.
> Load images automatically
I tried this and I see the text box for Google Search perfectly fine (Google.co.jp where I am) so this did not break the internet in any way. The text box even highlights blue still so it is definitely visible. Also, he is not considering the entire 3rd world country market where Firefox tends to dominate precisely because it is so flexible in it's bandwidth friendly options. So perhaps 2% in the world as a sum but it is probably a MUCH larger percentage when looking at specific regions of the world.
> Turning off navigation
Agree with this one. Makes no sense. Especially when you can go into full screen mode if you want to maximize screen real estate.
> Turning off SSL & TLS
Agree here but it is listed under the advanced options, which to normal users means, "don't touch this stuff." If you actually change anything here, I would expect the person to know what they are doing. If you want to call for streamlining "Advanced Options", then that is a very different argument that has to be made.
> The entire certificate manager
Again, advanced options.
> Override automatic cache management
Extremely useful. His argument here completely ignores use cases such as:
* Running Firefox as a portable app (USB drives have a write limit so turning this off is crucial).
* Operating systems that run off flash media. Who here owns a Raspberry Pi or any of the numerous embedded PCs?
Firefox might be good at determining how much cache to use on low storage systems, but it is probably not a good judge of when to turn off cache completely to prolong the life of certain hardware.
Also, my experience is anecdotal but I do remember my Firefox cache eating up a huge amount of disk space before which prevented me from installing new programs on my OS (until I went and manually cleared the cache). Why? Because at the time that space was free. Firefox had no way of knowing when I would want to use that free space in the future.
Are you seriously going to fall on your sword and stick with Chrome over this?
2. When your product does such a bad job that it has to rely on a third party extension to provide functionality to users, maybe you should consider the possibility that you should include these features in your product.
I advocate a special page in the settings dialog that contain "dangerous settings not set to their default". If any of these are not set to their default value it should be very easy to spot them and set them back but there shouldn't be any restrictions on setting them in the first place. Almost like the bugging little thing windows shows when your antivirus or firewall isn't enabled, but maybe not pushing it that far.
Well, not really. In low-bandwidth situations you won't be able to find and download the add-on you need because it will take infinity to load Google. I've been down this road many times (think crappy mobile Internet with low transfer quotas). No, add-ons are not an option if you can't access them in the first place because someone took the setting you need away from you.
about:config is like opening the hood. Put those serious changes there. Put everything else, that does not muck with the expected, fundamental operation of the product in preferences.
Yes JS is "on", I disabled all addins, but no joy. Wed Dev Toolbar gives a number of js errors. I shall take a close look at my options....
i still cannot believe they removed "homepage in new tabs" setting...you now need an addon for this. wtf?
Google looks totally reasonable without images. The field is visible, even when out of focus.
What is the point of all software?
Well, in a computer science sense it is to "solve problems", but that doesn't help us, it's too abstract. So what is the point of all software used by humans? Ah, this is getting a bit closer to the matter. It is to bridge the gap between the user and "solving problems" in a computer science sense. Put a different way, the point of software is to render the machinery of computation human usable.
We can imagine doing this at a simplistic level by just exposing the guts and internals of whatever "problem solving" program we are concerned with and allowing the user to fiddle with them directly. This is the checkboxes problem. It's a control panel with a bunch of levers or toggle switches. This is certainly an interface but it is typically not a very good one. It's the Altair 8800 of interfaces, it's really only a few steps removed from toggling in boot code directly and mucking about with machine code, calling such a thing an interface at all is generous.
But consider not only the problems brought up in the article, that of levers accessible to the user which the vast majority of time you don't want to change. This reminds me of a utility program in one of the Windows NT tool kits, fragment.exe. Which does exactly what you think it does to a hard drive, obviously for testing purposes. It's not something any sane person would ever use normally, but imagine if there were a common command-line tool that had been designed to both fragment or defragment a drive, call it fragtool.exe perhaps, and it would take either --increase or --decrease options. That sort of interface skews your perception of things and it can quite easily lead people into believing that fragmenting a hard drive is not as exceptional an activity as others understand it to be.
As this example should illustrate, this is a problem that many command-line tools suffer from (I'm looking at you, git).
The goal of good software creators should be to translate their domain experience not just into a problem solving toolkit, it should also be to guide the user towards patterns of use that make sense, are more common, or are more beneficial.
Getting back to the example of poor lever-based interfaces. Imagine something not just with unnecessarily exposed likely to be detrimental "advanced options" but merely something with several options that interact with each other. This can easily create a fundamentally intractable problem for a user. Remember that toggles are like bits, so if you have, say, 4 toggles that means you have 16 different combinations, and if you have 10 toggles you have over a thousand combinations. Again, here is where the value of good software design comes in. As a coder you should be translating your knowledge of the problem space and the underlying capabilities of the software into configuration options that make more sense to the user. For example, if you have 10 toggles are there actually a thousand different equally useful configurations or are there options that tend to fall into certain patterns relative to each other or maybe there are only a small number of specific configurations which tend to be popular. So consider using an interface that abstracts the options behind a different set of higher level configurations that make sense to the user.
I forget who invented the term, but a great concept is the "pit of success". It's generally the idea that in a good design the easiest and most natural way to do something will tend to be the most beneficial. Software that guides you towards using it in the most effective way, rather than software which requires a steep learning curve just to avoid using it incorrectly, let alone to its maximum potential.
It comes down to this. Most users DON'T want to mess anything up so they don't go clicking a bunch of buttons. Others are tinkerers and experiment, but they keep track of what they did so they can undo it. Still others can read plain english and know what "Download Images Automatically" must mean.
Even the Safari in the iDiot proof Mac OS X has many of these options. All major browsers have them. Don't you think that if this were really a problem that at least somebody would have re/designed their browser without them? or at least put them further out of reach.
A website breaks with images turned off? It's a broken website. Websites are supposed to work with images turned off. That's one of the first things a web developer learns.
We sorted all this out when the hot technologies were ActiveX, VBScript, Java, and Flash. If a web site requires anything more than plain HTML+CGI for its core functionality, it is either broken or it is not a website.