Everybody Hates Firefox Updates
evilbrainjono.net
evilbrainjono.net
"After years of aspiring to improve software usability, I've come to the extremely humbling realization that the single best thing most companies could do to improve usability is to stop changing the UI so often!"
I wish I could ink this command onto the right hand of programmers (and program managers) everywhere.
In my experience, the designers of unchanged interfaces put a lot of thought into almost every interaction a user could have with their application/operating system. Armed with the use-cases, the designers invested time and effort in creating the core UI "right", and determined a seamless way to make incremental updates. Chrome and iOS are, again, perfect examples of this concept in action. Firefox, Windows (minus Metro), and earlier releases of Android - not so much.
Firefox's UI changed radically in version 4. A good number of users revolted and there was uproar about the theme refresh, but most of the users that stuck around got used to the changes. That they are changing the UI again, only 24 months after the fact, does not reflect very well on the design philosophy behind the 4.0 refresh. Lots of questions come to mind - Did the designers not do adequate research during 4.0? Was the development time-frame too short? Was 4.0 just an interim solution to what they perceived a bigger problem? Are curved tabs really better than rectangular ones? Do I get back a lot of screen real estate? Is this a case of Not-Designed-By-Me syndrome?...
I continue to use Firefox today, partially because I know my way around the application so well but mostly because I trust that Mozilla values my privacy. I do think that they go half the distance sometimes with their privacy measures - "Do Not Track" is unchecked by default, and Firefox accepts and keeps "Third Party Cookies" until they expire. In these specific cases, I understand that these are measures taken to ensure they can keep the lights on at their headquarters. With the impending changes to the UI, I will be using the app only on the basis of my trust in Mozilla. And we all know that trust is a tenuous thing to hang by...
There's a good reason "Do Not Track" is unchecked by default. If it was checked by default, then advertisers would have the perfect excuse to ignore it: "oh, that's not really the user's preference, they're just sending that header because their browser sends it by default; let's go ahead and track them."
By making it opt-in, we ensure that a site receiving a do-not-track header knows for sure that it represents an active choice on the part of the user.
You may remember that IE was going to turn it on by default. But then Mozilla and the rest of the do-not-track collaborators explained this principle to them and they went back to off-by-default.
The third-party cookie thing, though, I don't have a good explanation for. When I worked at Mozilla I spent a lot of time trying to convince people that we should block third-party cookies by default. (Especially after I started working on Collusion and saw how prevalent they are.) I kept getting the same response: "We can't block 3rd party cookies, it would break the web."
I don't agree with this, obviously. Before pop-up-blocking became the norm in all browsers, you could have made the argument that pop-up-blocking would "break the web" too. I believe 3rd party cookies are a giant security hole, and breaking sites that use them would be a small price to pay for closing it.
But, I couldn't convince Mozilla of that. It's one of the reasons I decided to leave.
> Are curved tabs really better than rectangular ones?
IIRC from the UI design talk where the new "Australis" redesign was introduced internally, the motivation behind the curved tab redesign was to look "friendlier" and more "organic".
One thing the Australis redesign does which I do think is important is that it finally provides a consistent location for add-ons to add buttons. (The status bar used to be this, but it was hidden in Firefox 4 to recover screen space for content.)
> I do think that they go half the distance sometimes with their privacy measures - "Do Not Track" is unchecked by default, and Firefox accepts and keeps "Third Party Cookies" until they expire.
There's a good reason "Do Not Track" is unchecked by default. If it was checked by default, then advertisers would have the perfect excuse to ignore it: "oh, that's not really the user's preference, they're just sending that header because their browser sends it by default; let's go ahead and track them."
By making it opt-in, we ensure that a site receiving a do-not-track header knows for sure that it represents an active choice on the part of the user.
You may remember that IE was going to turn it on by default. But then Mozilla and the rest of the do-not-track collaborators explained this principle to them and they went back to off-by-default.
The third-party cookie thing, though, I don't have a good explanation for. When I worked at Mozilla I spent a lot of time trying to convince people that we should block third-party cookies by default. (Especially after I started working on Collusion and saw how prevalent they are.) I kept getting the same response: "We can't block 3rd party cookies, it would break the web."
I don't agree with this, obviously. Before pop-up-blocking became the norm in all browsers, you could have made the argument that pop-up-blocking would "break the web" too. I believe 3rd party cookies are a giant security hole, and breaking sites that use them would be a small price to pay for closing it.
But, I couldn't convince Mozilla of that. It's one of the reasons I decided to leave.
> Are curved tabs really better than rectangular ones? IIRC from the UI design talk where the new "Australis" redesign was introduced internally, the motivation behind the curved tab redesign was to look "friendlier" and more "organic".
One thing the Australis redesign does which I do think is important is that it finally provides a consistent location for add-ons to add buttons. (The status bar used to be this, but it was hidden in Firefox 4 to recover screen space for content.)
I know that this reply was in the context of Web/Browser/Desktop, however, I deal on a daily basis with some fairly clunky business applications that have pretty gungy UIs (think Visual Basic circa 2000 with lots and lots of tree controls and combo boxes).
Another more specialised business application has had a recent 'face lift' and my colleagues are using it much less because they find it hard to find things that used to be easy.
I know my way round the screens, and I know the shortcuts. I'm dreading a 're-design' of the one I use.
As regards the Windows UI, Windows 7 and Vista were different from XP which was different from Win2k which was ... The introduction of Glass, in particular, caused a lot of frustration for users that were upgrading from XP. Drivers were broken, their applications were borked, etc. Windows 7 fixed all of those problems, but a number of companies have not upgraded from XP because they don't want to deal with re-training their users.
In many ways, like Vista is to the Windows brand what the Rapid Release Process is to the Firefox brand. Both ideas caused mass defections to the competition. The jury is still out on how users will react to Metro. The dual-desktop story has two problems: the switch between the Classic and Metro desktops is not very intuitive; people are going to miss the Start Button. I think click-based heat maps should be "a" factor in making UI decisions; not "the" factor in such decisions!
Here are my closing thoughts on why a UI change should be as non-intrusive as possible. In my experience, people hate software because it has a way of making them feel stupid. The reason to be careful with changing the UI and/or removing features is that there is a good chance that the changes will people will feel stupid all over again. This is an invitation for defection to the competition.
These things have not been around long enough for "the test of time" to apply.
I think Windows interface has withstood the test of time pretty well. The basic UX paradigm is essentially unchanged from Windows 95 with whatever that followed basically being tweaks rather than big changes.
The rule for what ends up in the task bar also is incomprehensible for mortals. For awhile, every new release of Office managed to introduce a new variation (yes, Word is MDI, but all its windows show up separately being one variation)
I guess that, if you ask users about these features, they will just say "yes, sometimes it does that".
I find it takes a bit of time to find where functions have moved on Office 2010, and I seem to be taking a long time to internalise the 'logic' for finding less used functions. Probably all those years on Office old style.
(For now, you can read them if you set "showdead" in your HN profile.)
Did get banned because I broke a rule I wasn't aware of? Or is it that a newly registered account needs to be approved by a moderator before the comments show up?
The moderation of this social network is completely opaque and often, it seems, whatever algorithms or feelings the mods use to guide them are wrong. That's probably survivor/selection bias but who's to know ...
I don't understand why you are banned. Normally it seems like it happens to users who post junk, or who get downvoted a whole lot when they're new. Neither of these apply to you, however, so I'm really not sure.
If you really want to respond, maybe you could do so on your blog, and someone in the thread will link to it.
For most of my broken plugins, the immediate solution was, "edit the XML file inside the .xpi, and update the maxVersion to include the latest version of Firefox."
Firefox 10 changed this behavior, making plugins assume to be compatible by default, unless set to a strict mode by the plugin author. But Firefox 10 released in January of this year, by which point I had long since moved to Chromium.
I wrote about this at length last year: https://plus.google.com/u/0/105636695715347097518/posts/G9hb...
A prerequisite to a non-annoying rapid release cycle IMO is silent update. It's why we spent the time to get that part of the technology stack working first. I predict user frustration with Firefox will decrease now they've implemented this.
This just isn't true. In a web browser, sure, the UI barely matters. Going through the menus in Firefox or Chrome is rare, enough so that Chrome tends to look different every time I do it.
But for real programs, the UI defines the workflow, and that should be optimized, even at the expense of familiarity. Just be sure that it actually IS better.
So yes, the quoted advice should probably be considered and possibly adopted by FireFox and maybe Chrome. But desktop software shouldn't accept it without a huge dose of salt.
Yeah, I guess I was overstating the case for rhetorical purposes. I don't think there's never a UI change that improves on what you already know. Once in a while a new interface comes along that's so much more efficient that it's worth retraining yourself. What I'm trying to say is that these changes are rare. I think designers tend to overestimate the benefit of a change and underestimate the power of habituation.
(P.S. thanks for catching my typo ("haver"). Fixed it.)
"In a web browser, sure, the UI barely matters."??? In a web browser, the UI is the ONLY thing that matters. Every browser out there can render a web page. It's how it responds to the user and what it enables you to do that makes all the difference.
The biggest reason I stick with FF is the pentadactyl extension - A browser without decent vi-like controls is intolerable to me, and chrome's equivalent isn't up to par. So I stick with FF, for the UI.
I hope this doesn't become the epithet of Windows 8!
When Chrome came out, it was a new product; users had no expectations of "what Chrome is." So Google could do with it essentially whatever they wanted.
Firefox was in a completely different position. When Mozilla moved Firefox to rapid release, the product branded "Firefox" had been in users' hands for seven years -- nine if you count pre-1.0 versions. Over that time, users' expectations of what a product branded "Firefox" was settled into a particular place.
Rapid release was painful because it broke those expectations. Suddenly Firefox didn't behave like people expected a product labeled "Firefox" to behave anymore. It's like opening a bottle labeled "Coke" and having orange juice pour out. "But orange juice is better for you!" Yeah, but that's still not what I expect to get when I open a Coke bottle.
There's a simple way Mozilla could have avoided this: just call the rapid-release product something else. Create a new brand, and put it on a version of the browser that receives updates every six weeks. Call it Fastfox or Frequentfox or really anything other than Firefox. Then encourage users to start moving from Firefox to the new hotness. Make the new product compatible with Firefox extensions, but don't do the version-number compatibility check that Firefox does, so users aren't constantly being prompted to update working addons.
(Yes, both products are the same code under the hood. That doesn't matter. The important thing is that you communicate to users that this is a thing that is something other than Firefox, which resets their expectations.)
Eventually you'd have most users on the new product, since that's where the cool new features that get users excited would be showing up. Curmudgeons and enterprises would stay with boring old Firefox, but that's OK, because you make "Firefox" just a periodic snapshot of Frequentfox development. "Firefox" becomes a legacy brand, maintained for those who care about it. But the new brand is clearly established as the new hotness.
This lets you move your users without violating their expectations. They expect the new product to behave differently, because it's a new product. It's got a different name and everything!
Violent changes in direction for an established product, on the other hand, always tick off users, because they do violence to those users' expectations of what that product is.
It's better to send your well-loved legacy brand gracefully off into the sunset, in other words, than to try and shock new life into it with electric paddles.
I disagree about expectations too. Users have a great deal of built in expectations for chrome after having dealt with other browsers for years.
If firefox and chrome switched their update systems, the story we would be hearing would be "I tried chrome and i hated it.", and they probably wouldn't even bother to tell us why (the nagging update system.)
Okay then.
Previously, when I went to a new browser experience, I generally went to a new browser.
There was Mosaic. Then Netscape. Then Galeon. Then Konqueror. Then Mozilla. Then Firefox.
Galeon was probably the most jarring of the bunch. It started as a highly power-user friendly advanced (for the time) browser. Then the GNOME project "adopted" it as its default browser ... and instilled it with "simple user" disease. Many features were ripped out, and much of the userbase left in disgust (there are a few postings by Jon Corbet and other at LWN.net I recall). Eventually it was replaced by Epiphany, a pale shadow of the original.
Life would have been better if the rebranding had happened first.
And we'll note that Mozilla has already gone this route several times: Netscape -> Mozilla -> Phoenix -> Firefox. They should have taken this as a new fork as well.
That said, with the except of one FF push on OSX that broke Netflix for a few days I've been pleased with the changes. Safari's constant memory leaks drove me nuts, FF leaking memory wasn't as bad but certainly annoyed. They've solved that problem for my usage and having suffered with Chrome "dev tools" I continue to use FF and Firebug for front-end work when need be.
Have you tried Vimperator for Firefox?
Modal, action happens on a status line at the bottom of the screen (allowing you to minimize navigation elements -- no navigation, menu, or toolbars). To open a new tab, type "t <pattern><tab>", where "pattern" is either part of a URL or the title of a page or bookmark. To open Hacker News, for example, I generally type "t hack<tab>". If there are multiple matches, they appear as a list of items you can tab through (or which shrinks as you type additional characters for greater specificity). I like it.
Chrome's navigation is similar, but not quite as slick.
So, if that's true and people stuck with Firefox, you'd have to maintain Firefox between the snapshot releases of Frequentfox. You'd have to push an update at least every time you fix a security issue, which can be pretty often. So you'd still need to figure out a good user experience for dealing with frequent updates. Fortunately, that's a solved problem, and the user doesn't even need to notice you've updated their software.
Of course as you add features and modify/improve the user interface in Frequentfox, your Firefox snapshots will be different enough that you'd still end up alienating users, so you can't go crazy developing Frequentfox, either.
I'm voting for frequent push updates, transparent if they don't change anything significant, and with a gentle introduction to the changes if they do. Big changes should be rare, maybe explain the motivation behind them to the user, and ideally make them option. Despite all the rage, I think the user interface changes from Firefox 3 to trunk weren't all that jarring; significant tweaks more than fundamental reworkings of the UI, the awesome bar is a great example.
[1] Edit: I think this is what you call a "second-order decision", a term I just learned, e.g. http://thinking-marketing.blogspot.de/2009/11/second-order-d...
How to reach out to new users while keeping your existing users happy is one of the oldest and biggest problems in software development. There's no perfect solution, but I like the suggestion of creating a new product name for the new thing. That can sometimes get you into trouble too, as you end up competing with yourself, Microsoft-style, or get users who are confused about which version they should use. But it might be the least bad option.
That's a fair point, but also true is "don't let your product stagnate by keeping it familiar and unchanging". People get bored with similarity and want new shiny things.
There is something to be said for too much change, and something to be said for too much sameness.
I disagree. Users want something new if their current software isn't meeting their needs for whatever reason. But if it is meeting their needs and they know how to use it, then keeping that software the same isn't "stagnation", it's stability.
Whenever I hear users ask for change it's because there's a feature they wish they had or a bug that's annoying them. I've never heard anybody ask for change just for the sake of change, or complain that software was boring because it didn't change.
For games I guess it might make sense to keep changing things up just to keep them fresh, but for productivity software I think "boring, predictable, and functional" is the ideal state. Productivity software isn't supposed to be entertaining, it's supposed to be useful.
What if their need is for something new and shiny?
Have you never heard people say they tried Chrome because it was new and shiny (even the word implies shininess)? Or how about how people want to buy the latest iPad or iPhone, it isn't because the old one isn't "meeting their needs" in some boring sense. They want something new and different.
> Whenever I hear users ask for change it's because there's a feature they wish they had or a bug that's annoying them
That is a very simplistic view of users. Users are human beings - they want conflicting things, both for things to work and be predictable, and for things to be new and interesting.
The right tradeoff is the hard part, not absolute black-and-white principles of "users never want change" or "users always want something new and shiny".
There are some large businesses out there who run the same software foundation for a decade or more, not least because just evaluating a new version of something critical like an operating system or web browser can be a huge exercise if you're running hundreds of in-house tools on top of them.
While I think it's unrealistic to expect an OSS browser to provide ongoing support for that long, if Mozilla want their product to be taken seriously by enterprise customers then I suspect they're going to need a lot more than a year of security fixes and a lot more than 6-12 weeks of overlap when they want to force an upgrade. It would be interesting to know whether in reality they have gained much from offering the first ESR (which is already coming to end-of-life) in terms of acceptance of the rapid release schedule in larger organisations. Maybe there is a certain size of organisation that is flexible enough to take advantage of a yearly update but can't take the overheads of stuff breaking every six weeks.
For software like that, a web browser is not the right platform. Web browsers view a shared space which constantly changes and gets updated with new APIs and deprecated APIs and so forth.
If you want decade-long stability, use a platform that is tightly controlled and gives guarantees of backwards compatibility, for example Java or .NET.
You seem to be confusing the Internet with corporate intranets. Browsers installed in these kinds of organisations, and the tools they want to use long-term, tend to be based around the latter. Having stability is far more important than being able to use HTML5 local storage and add drop shadows to your titles in CSS. There is a reason that, despite the endless moaning of web developers, many places are still running IE6.
If you want decade-long stability, use a platform that is tightly controlled and gives guarantees of backwards compatibility
They are. Unchanged is about as controlled and backward compatible as you can get!
Anyone who wants to get a replacement browser into these environments for the long term needs to understand that. Anyone who wants to make cloud-based solutions that seek to displace well-established in-house tools needs to understand that, too. It sucks if you want to use the shiny new possibilities of bleeding edge web technology, but the grown-ups aren't interested in an anatomical measuring contest between browser makers about who can be first to ship the next non-standardised, subject-to-change-at-any-time, bug-ridden-anyway feature.
I think Microsoft does understand this, and that's why they are still dominant in large organisations despite appearing to be behind the curve. I think Google have figured it out as well, but when they stopped supporting IE6 in their web apps, it wasn't because they had successfully forced everyone to upgrade, it's because they realised that they never would.
Since there are open source browsers, you can just save a very old version of them for intranet apps, if you must. But you can't expect a modern browser to still run your old intranet apps, you will need both a legacy browser and a modern one.
The ESR fits somewhere in the middle. It won't run 10 year-old apps, but it will update very slowly so your IT department does not need to constantly verify it (only once a year). Again, for 10-year-old apps, that won't work - you just need to install a 10-year old browser. If you just run it on intranet apps, security isn't a concern so that's fine.
>While I think it's unrealistic to expect an OSS browser to provide ongoing support for that long
According the the author, Chrome isn't the solution.
Firefox on the other hand... sigh. I really liked that browser, but the updates, and the broken plugins, and the shit memory management, and the developers' heads up their shitty asses denying their shit memory management, and did I mention the enormous memory usage on OSX? Chrome essentially has the same uptime as my laptop, ie months. Firefox required daily restarts with the same browsing patterns. Plus they regularly corrupt the backing file that holds the sites you had open in your browser, so before restarting the browser to get ram back, it's a best practice to copy the location of each and every open tab to a text file.
We got my gf's laptop 8 gigs of ram to accomodate ff and I'm working on talking her into chrome. A browser written by people who know how to use free(3). Plus the updates don't hork random stuff. Plus on the rare occasions I've restarted the browser it has never broken the backing store holding the open tabs.
We've had a project called MemShrink running for about a year and it has been making steady progress. and that progress has been shipping to users.
The current Aurora channel release even has a fix for most add-on bad behavior.
Firefox actually stacks up really well in memory usage (even in third party tests).
(I work for Mozilla but was not involved in MemShrink. Also, I wrote this on my phone, so I hope there are no embarrassing misspellings. )
It was so bad that I had to close firefox when I wanted to do anything else. If I played a full screen game it would work great for about half an hour the suddenly it'd chug along at 10fps. Without fail the issue was Firefox deciding to consume 90% CPU. And again this is without installing a single add-on ever.
It may be better today. I don't know. I don't care. I switched to Chrome and haven't looked back since.
And then years later they have the "MemShrink project". Which basically was admitting that they were spouting bullshit about it being addons for years.
State recovery is quite good for the most part, even if memory use is somewhat pants.
This isn't to say Chrome doesn't have its own memory or performance problems. GMail for example will eat up to 1GB of memory eventually before I notice I'm low. I have to actually close the tab (reloading doesn't fix it) and re-open it. It's "only" using 500MB right now...
Any organization that can live in denial for years and years about the core issue with their product is going to die. Mozilla is tightly connected to the web developer community, but has a complete disconnect from the problems facing its actual users. When Firefox shipped, it was a great, light-weight alternative to Mozilla. From my point of view as a user, I haven't seen any substantial improvements since 1.0 shipped in 2004 -- spell check is nice, and given how often it crashes, restoring tabs when the browser is opened is nice -- but that's all. Otherwise, if not for security issues and web site compatibility issues, I'd be on Firefox 1.0 (which worked fine on sub-GHz machines).
Aside from that, virtually all development effort has been aimed at making a better IDE for web developers. I guess that benefits me since, ultimately, I can visit nicer web sites in Chrome.
Which is expected, because why would you stay if you were really bothered?
Comments from an active user, though... I've stuck with Firefox out of habit probably more than anything else, but now most of the things people (including me) were complaining about are already gone -- as of the last update, Firefox with -- sheesh, I guess I have about 100 tabs in 2 windows -- takes up under 500MB after using it all day, and in the morning it starts in a few seconds (they don't force-reload all your open tabs on startup anymore, just the active ones and I think text from the others is cached locally).
Chrome becomes unusable if I try to use it like a to-do list like this, for UI as well as memory reasons; not that I could say easily how much memory Chrome is using at the moment, with 20 tabs; the separate processes defeats seeing that easily, alas (there must a simple way to check, but I haven't tried).
It's quite stable, and even when it was still crashier (last year?) it's been years since I've actually lost my tabs after a crash; they've always been auto-recovered (and it has that nice prompt to let me close the ones I think may be causing trouble before relaunching).
Given different usage patterns, etc., I have no idea if people trying the actual, current FF will want to go back -- but for anyone who left more than a few months ago (especially if you left due to memory footprint) I'd suggest trying it again sometime.
[And I like the more frequent releases, personally -- I always hated the slow release cycle, and feel like they're starting to get into the swing of it now -- but I obviously don't speak for the crowd on this one...]
The equivalents on Chrome are simply not good enough. I don't know if this is an issue with all Chrome extensions, but Wet Banana / Scrollbar Anywhere on it seem to be running in a low priority and thus have sub-par performance. Scrolling is choppy and doesn't always even initiate, depending on where on the page I right-clicked.
And things have improved quite a bit more since FF7.
It leaks a lot when it's using a tiny amount of memory, and it leaks hardly at all when it's using a large amount of memory?
Sorry, but that's totally nuts.
Mozilla have been claiming "we've solved the memory leak problem" about as long as Microsoft have been claiming "we've solved the virus/security problem", or so it seems. With about the same level of credibility.
I just finished entering a comment above suggesting people should give it another try; I have 100 or so tabs open and 500MB footprint after using it all day, with version 13 (I just stick with the release update channel) in win7.
In my experience they've very clearly fixed whatever the main memory issue was that affected my experience -- but not yours. Though -- the windows versions may get a bit more testing....
I'm running Firefox 15 / Iceweasel 10 on Ubuntu and Debian respectively, watching VIRT (total virtual memory size). Currently sitting at 2.3 GB, FML.
There's a utility called 'pmap' that you can use to display the memory mapped files and subtract it from the total etc.
Finding out how much memory a program is using is surprisingly tricky to compute. Good luck.
(Futhermore, in my personal experience, Firefox has been using less and less memory.)
If you meant your sequence to represent performance, maybe that's what's happening, but then I think they should stop saying "now 1/1024 faster than before" as if it's a reason to upgrade.
Also, I don't see Mozilla claiming memory usage follows a curve like 1/x. In fact, I don't seem them claiming anything about long term memory usage other than "it's decreasing", which is true, and can be true without implying that the memory usage will eventually be 0.
(Btw, I don't think Mozilla have ever said something as frivolous as "1/1024 faster".)
I'm pretty sure you're talking about an earlier version of Firefox -- I agree, there were problems there, but things have gotten much better with the latest versions. I run Firefox Aurora (which is kinda equivalent to Chrome's dev channel) and I haven't seen anything breaking yet.
I've also used Chrome [dev] for a while and while it was pretty good, it also decided to declare that "my user profile was corrupt" after every few days. Not fun. Plus, it could hardly handle 50+ tabs, but I guess that is due to the way the Chromium sandbox and tab threading model works (and the Atom processor in my netbook.)
tl;dr: I run Firefox Aurora (with 200+ tabs) on a netbook with 1 gig of RAM. Where's that memory problem you were talking about?
if you don't use addons, the memory management in Firefox is pretty good - actually measure it competitively against Chrome sometime
If I have more than a handful of tabs open in Chrome then Chrome starts using significantly more than a GB of RAM (in total, across all the separate Chrome processes), while I've currently got a Firefox session that has been open for more than a week, with 30+ tabs, and is using just under 1 GB.
Even so, with many tabs open, my computer hits swap far more under Chrome than Firefox.
Edit: Ah, yep, answered my own question: about:memory works in Chrome too. Using that, I've got Chrome at 360 MB with 5 tabs and 2 extensions, while Firefox is at 900 with 30+ loaded tabs and ~20 extensions.
With Firefox, you have to restart Firefox. All tabs run in the same process, and memory is generally not released back to the OS when someone just calls free() or delete.
Not to mention more headaches for web developers as yet another browser shows up with its own bugs, differing support for standards like HTML5 and CSS3 etc.
1) Interruption of user work process
Firefox freezes for a few seconds at startup to see if there are any updates to the core or plugins. If this were handled in the background in a separate thread that did not freeze the browser, no one would care about it except for privacy advocates who don't want their version number being leaked.
Then there are the popups and request to reboot that also interrupt the user's work process, given that the user has probably been trying to get work done while the download was going on.
2) Stupid versioning
For as long as software version numbers have existed, most vendors have used the major.minor.patch pattern. A change in the major version number usually means a break in the public API, so software vendors provide a different API library for every major version that they release, and they allow plugins to decide what API version to use.
Mozilla decided to increase their _major_ version number for every _patch_. Firefox's latest version 420 or however high they are now should probably be something like 4.2.20. The stupid numbering will only annoy users who expect Mozilla to follow best software development practices, but it shouldn't affect plugins. If Firefox is doing their updates correctly, they will be exposing a separate API library for every major version update that they've done in their rapid major version update schedule.
Of course, they're doing it wrong. Plugins built for version 4 or version 5 no longer work because FF is only providing the latest API version 420, and only until next week when 421 comes out. Mozilla's solution is for all plugin vendors to update their plugins after every FF update, and for users to wait until the plugin vendors have done this.
There would be no plugin breakage if Mozilla had updated the patch and minor version numbers for non-breaking updates. I've said this on /. but the Moz devs argued that their choice was between rapid major version updates or no updates at all. I find that hard to believe. Something is wrong with their toolkit if they cannot support minor version number updates.
Requesting permission to update throws a significant amount of users. They're typically not capable of determining if the request is legitimate or not, they're fearful of updating things they rely on, and god help them if it's not a one-click update.
yes, but no. saying that silent self-update is table stakes is missing the point: table stakes from your users' perspective is "shipping software that doesn't need to be consciously maintained."
whether you ship rarely and get the bugs out before you do, or ship frequently but have automatic upgrades that don't break things, doesn't matter.
Except it has better memory management than any other browser now.
Except its the fastest browser on Android now.
Except the upgrading no longer break addons as they're compat by default now
Except upgrading is now silent (no dialog box, no UAC prompt, no "welcome to the new firefox tab" - yes; on windows)
Except if you need a Firefox that doesn't change version at all, you can use Firefox ESR.
Cause it's not having things fixed now that matters. Nope. Never!
It also came with enough significant UI changes that even as a programmer who's used FF dails since pre-1.0 days, I actually had to stop and RTFM to work out how to use it. That was a catastrophic thumbs-down. Most users wouldn't stand for that level of disruption to their software.
Mozilla has done an amazing job of "one step forwards, two steps back" over the years. Firefox has gone from being the amazing browser I recommended to everyone to try to a browser I'm almost embarassed to admit I use.
I really hope the fixes they say they have in the pipeline live up to their promises and fix the issues they still have. But even if they do, if Mozilla don't stop their trend of fixing bugs but breaking the UI, it just won't matter in the end.
edit: Chrome is still faster on Android for me, addons and extensions break all the time for me in Firefox, and I don't find the memory management to be any better. It's still horrendously slow in Linux and on my work machine with 12GB of ram it just freezes no matter what.
Please give some example where.
addons and extensions break all the time for me in Firefox
Which ones? I haven't had a broken extension in months (since Firefox 10), and I use quite a few.
on my work machine with 12GB of ram it just freezes no matter what
Are you implying Firefox is using 12G on your machine?
To be honest, I think what's happening is that one of those "extensions that keeps breaking" is crap and what is using all that memory. Real Firefox has none of the problems you describe (very vaguely and without specifics), so it's hard to take you seriously - let alone see how it could be fixed.
Memory management is definitely better and we have no idea what extensions you are using.
This is the hardest lesson, and what I need to remember most. As a developer I really do like to tinker with new software (most of the time), but as a rule users do not and we had best not forget it!
I knew the firefox updates annoyed me but I had no idea they bothered the general population just as much. I actually switched to chrome because of the memory leak in firebug so I didn't have quite the same experience.
The only good decision I made was to stop messing with it... which is hard. Each time I see people interact with it I feel there is a glaringly obvious change that needs to be made to ultimately benifit the user. But alas, I leave it be.
1. Migrate all extensions to restartless/JetPack. Extensions for Firefox are very powerful but may sometimes break when new versions are released, which then the compatibility check feature is introduced to "solve" this. Before the rapid release cycle, I've already seen some users reluctant to update and would wait for extensions to be updated first before updating to new version of Firefox. So now with this cycle, it just annoys them further. If all extensions were done in a more standard (and simpler) extension API first, this would have reduce the impact on the upgrading process. Users don't have to worry so much if the extensions that they depend on, would break.
2. Remove 3rd-party themes and embrace the 'Personas' (simpler themes/skins). Or at least improve theme development into something more standardized like JetPack. Since the Mozilla days, theme development hasn't change much. Extensions have JetPack, but themes have nothing (Personas is entirely a different thing). The case with themes is exactly the same as extensions. I know some users wouldn't upgrade to Firefox because the theme is not updated yet. I'm not sure if anyone still install custom Firefox themes, but themes played a decent role in attracting users (from IE?) in the early days.
3. Implement Electrolysis (https://wiki.mozilla.org/Electrolysis). From my observation, the real problem with Firefox is not the memory usage but its slowness. When users notice that the browser is getting slower (slow startup, slow tab-switching, slow UI response), they probably look at the number of tabs, try to find out the problem and saw that huge GBs of memory used. Firefox is now better at memory management, but the problem is still there. I'm not 100% sure about the implementation details; I'm thinking that if Firefox has Chrome-like multi-process architecture, the interface would be more responsive and memory management would be even better.
So, after this, implement rapid release cycle, enabled by default for new users/installs and prompt existing users to optionally opt in. Make the update process unobtrusive and it would be a win-win situation for everyone.
(I created one of the first 3rd-party themes for Firefox, since the Phoenix days.)
Electrolysis does nothing to solve this, which is why it was abandoned.
I'm thinking that if Firefox has Chrome-like multi-process architecture, the interface would be more responsive and memory management would be even better.
Memory usage is far worse with multi-process, it's one reason Firefox uses less memory than Chrome.
There's no technical reasons for that to be true.
So, note to developers: Frequent updates drive your infrequent users crazy.
The Xbox 360 also does constant updates that need a reboot. Since most people leave it connected to the power socket, I wonder why they don't wake it sometime and do all the updates and go back to being powered off.
however, unlike the PS3, 360 updates tend to take 30 seconds to a minute, except for big things like the NXE and the whatever-the-newest-Dashboard-thing-is-called; PS3 updates can take anywhere from 30 seconds to an hour and a half (literally, that's how long it took my PS3 to patch out-of-box the first time I started it.)
again, even if you're doing the same thing as your competitors, there is a lot of space to do it poorly. :)
This is a valid complaint. Firefox did rapid release before it perfected the update process to be fully automatic and silent, that definitely caused some users issues. Mozilla has recognized that publicly and taken responsibility for that decision - and meanwhile fixed the update process as well as launched an extended support release version of Firefox that updates far less frequently.
2. The update may break stuff that you counted on, either by removing features you were using, or by breaking compatibility with other software you use. Maybe the developers never tested your use case, or worse - they tested for it but decdided it didn't matter because only 2% of users used it. Tough luck to you if you're one of those 2%.
This point is ironic - because the claim is that users are switching to Chrome, which is the inventor of the 6-week update process. Chrome's 6-week updates can break websites or features that you rely on (I heard devs complain about breakage in the plugin interfaces for examples), just like Firefox's 6-week updates can.
When you update software every 6 weeks, and you make those updates real updates (not small security updates), then you risk breaking stuff for users. If you don't like that, you can't use either Chrome or Firefox. You might prefer IE, Safari and Opera which are slower-updating (there is also the Firefox extended support release as mentioned before).
So yes, the Firefox implementation of rapid release did not begin 100% smoothly, issues were admitted and worked on. But if you argue against the principle of rapid release, then you can't say in the same breath that users are leaving one rapid release browser (Firefox) for another (Chrome).
Side note, there is definite anecdotal evidence for users leaving Firefox for Chrome over rapid release. But there is also anecdotal evidence of users moving in other directions. Looking at the browser market share statistics, Firefox has declined a little and stabilized, with most of the previous decline coming from users of Firefox 3.6, not the modern rapid release versions. Of course the anecdotal stuff could still be right - perhaps 3.6 users move to the modern version, and some modern version people leave for another browser. But it's hard to differentiate that from people just leaving 3.6 directly (and people on modern versions being happy and staying), the data is hard to interpret.
I think this is the single most important thing in this article and cannot be stressed enough.
Anybody that has ever had to interact with users knows this, but for developers this is very hard to believe, they choose not to see it.
Most people see software (i.e. "computers") as a tool to get some work done, or to get some entertainment. The work and the entertainment are the goal, and if it were possible to achieve it without using any software, they would do it.
Even technical-types think about software this way, not even knowing that they're doing it. Think about this: we mostly put up with complicated software and in-your-face software that's not contributing to our work or entertainment because we are learning something. Learning is just another goal that's not really the software itself. Once we notice that we aren't learning much anymore, the aforementioned software becomes a pain to use.
Or maybe it's just me...
I've been using Chrome for years (after using FF for years). With Chrome, I never realize there are updates. The idea of updating Chrome just doesn't enter into my consciousness. So the fact that they update all-the-friggin'-time doesn't matter to me - it never registers in my mind.
With FF, every update I would realize it. So even if the updates were just a popup "hey, we've updated", doing it once every two months will cause me to acknowledge their updating once every 2 months. Which I don't want to do, because I don't care, at all about Firefox updating. I just want to browse the web.
It's not even necessarily Mozilla's fault, but my other browers don't have this issue. I'm trying out Opera for the umpteenth time ... it always eventually disappoints, but I'm going to give it another go.
But even then I stuck with it until they managed to break it completely. Loading a page with a lot of external links would take, literally, five minutes. I tried disabling all my plugins, disabling javascript, etc, etc. No joy. Finally I gave up and downloaded Chrome.
I still use Firefox at work, but only because I'm using an OS for which there's no Chrome.
To me, this is the most important. Usually, people prefer the original to the copy...
IMO, trying to catch up with (or just copy) Chrome all the times gives the messages to the users that they should use the original...
Firefox has come a long way and I as a developer I don't like how Chrome hides everything.
It's also super easy in Firefox to turn off automatic updates and only update manually when you are ready (help -> about firefox)
It's been my experience that extensions don't 'break' (i.e. stop working as expected) as much as they self validate against the currently running version of FF and refuse to load unless the developer has flagged it as workable.
Every time a major release comes out, half of my plugins are disabled. Then, I go and download the compatability reporter plugin (which gives you the option to override the version check), and 9 times out of 10, every single plugin works fine.
Also, what did you mean "how Chrome hides everything"? I'll admit the plugin system isnt near as robust, but for web development, I'm in passionate love with the Chrome/ium developer tools.
"Extensions" are things like AdBlock Plus and NoScript. "Plug-ins" are things like Flash. "add-ons" is a term that covers both extensions and plug-ins. That's why the add-ons manager has tabs for both "extensions" and "plug-ins".
To confuse the issue, people very frequently use "add-on" when they really mean "extension".
If you go to the Firefox add-ons in about:addons and do a search for an addon called "flash" then a link to the [Adobe] flash plugin isn't presented (as either best match nor name match). It's got to be amongst the top 10 addons used surely?? Certainly one of the top 10 for the keyword "flash". So?
Equally the https://addons.mozilla.org/en-US/firefox/ page doesn't mention plugins at all, not even under the "more" top menu. If you search at the addons page you only get extensions and no plugins offered to you (eg https://addons.mozilla.org/en-US/firefox/search/?q=flash).
Extensions are found at addresses like https://addons.mozilla.org/en-US/firefox/addon/$extensionNam...; shouldn't that be /en-US/firefox/extension/... ?
In short Mozilla don't make it clear to users so how should a user be expected to see the difference? Is there a real difference or is it just an arbitrary Firefox UI distinction?
1. Memory bloat on Firefox. It's ridiculous that I have to restart the browser every day or more often just to get back more memory. 2. Plugin breakage. I'm sure it's better now but too little too late? 3. Separate processes for each tab and speed. Chrome FEELS faster even if it might not be, but it's amazing that if one tab crashes the whole browser doesn't.
#2 appears to be much better, but if Mozilla implements #3, then #1 won't see so bad and I would definitely consider using it again more often.
Btw,yes I understand we have legacy browsers and they won't get the full experience, but when they finally do, they'll get that better browser.
Firefox used to be completely about open source in the sense of the meaning; change what users want changed, add in features the users want added in, but then Firefox got popular and didn't have to try as hard to impress people any more and the downward spiral continued.
I'm one of those people that switched to Chrome. I only switched about 6 months ago because I had hope that Firefox would come to their senses and fix their damn browser, but it never happened. Chrome has it down-pat in terms of backwards compatibility for plugins and themes and no memory issues.
The number one complaint I had with Firefox is the plugins I needed to do my job and keep myself entertained were being blamed for the memory issues of Firefox when it has been a known problem in Firefox for sometime. Every few releases the Mozilla team touts new memory optimisation fixes that will make the browser more stable, but the browser still feels clunky and buggy.
Fair enough the developers of Firefox addons should be doing their part in terms of proper memory management (releasing memory when not needed, etc) but seriously addons are Javascript, HTML and CSS mostly and Mozilla should have worked out a way to effectively auto manage memory even for really bad plugins. I know the Aurora channel supposedly has a fix for the bad plugin behaviour issues, but the whole poor addon memory management issue has been an issue with Firefox since the really early days (around version 1.5 I believe). For years Mozilla denied any memory issues with the browser, it wasn't until a little while ago when the market share started dropping of Firefox that they started feigning interest in the memory management issues.
> I have another theory, too: When software companies get to a certain size, they start taking their users for granted. They start treating their users as pawns in a battle against some other company. Faceless millions. Gotta copy everything the other company does, or risk falling behind. So they end up doing everything the other company does whether the users want it or not, and probably doing a crappy job to boot.
> In our case, we started thinking of everything in terms of the battle against Google Chrome. Oh no, Chrome is doing such-and-such; we'd better do something equivalent or we'll fall behind! We thought we needed a rapid update process like Chrome. We were jealous of their rapid update capability, which let them deploy improvements to users continuously. We had to "catch up" with Chrome's updating capability.
> Credit where it's due: the way Google handled Chrome updates was very, very smart. They recognized that updates are one of the hardest things to get right, so they solved that problem first, before releasing version 1. The first release of Chrome was little more than an empty box of a browser, but it was wrapped around an excellent updating system. This let them gradually transform that empty box into a full-featured browser, without the users ever realizing they were getting updates.
> Firefox did not do such a good job with rapid releases. I've written before about the specific mistakes we made, so I won't go into detail again. To summarize: we did the updates in a very intrusive way, requiring lots of user attention, which made people annoyed because it happened so often. When people restarted after an update to find no visible difference, they wondered what was so important about that update. (Remember the rule that the benefit of the update needs to outweigh the pain? We broke that rule.) Worse yet, we didn't do enough to preserve add-on compatibility, making the updates extremely disruptive to people who depended on certain add-ons; and we kept going with our old version-numbering scheme even though the meaning of the numbers had changed completely, leading to mass confusion.
This reminds me of certain OS races: Microsoft trying to upgrade its 16-bit, cooperative multitasking Windows 3.1, and then ditching it for a new model based on NT, while Apple flounders with the Mac OS's 6 to 9, until it finally got a reasonable architecture with OSX - leading to Microsoft floundering with Vista. But the problem here is the opposite - the difficulty in competing is the same, but the two companies were reluctant to recognise the edge the competitor's system had on theirs until it was costly to fix.
Yes, frequent updates, especially those that break plugins, suck massively. Each update is a huge leap of dread into the "well, what's going to break this time" sea.
The biggest single fault I've got with Firerfox (running FF13) isn't updates, it's memory usage. It still leaks massively, and pretty much requires a daily restart. State preservation is good enough that this doesn't matter a whole lot, but the change I'd like to see is one in which a small handful of tabs (I may easily run over 100) are considered "current and active" (foreground, pinned apps), and the rest function more as a stateful bookmark. Which, given that on crash recovery I tend to leave tabs unrefreshed until I actually open them, they largely are.
State-tracking in browsers really sucks. I've begun using the vimperator plugin, and it does a hugely awesome job of helping with this, mostly in the close/undo mode that handles history, and in being able to do partial matches and tab-completion (based on history and bookmarks) when opening new tabs / navigating to a page.
Chrome isn't all that hot. It's fast, it offers a different broken memory model (groups of tabs run in isolated processes, but consume much more memory on a per-tab basis), and it plays well with Google's own Web properties.
But it lacks the extension flexibility Firefox has (especially UI tweaks such as Vimperator, Tree-style Tabs / Tabkit (sadly incompatible with recent releases), and Remove it Permanently) which I find highly useful,
As for updates: call it old age, call it maturity, but I prefer things not change, especially UIs. Much of the greatest frustration and outcry on Linux has been over desktop UI metaphors (GNOME and KDE especially), and Microsoft is rapidly heading into the same fray. As much as I dislike actually using the Mac interface, I have to admit that Apple have kept it highly consistent for the 11 years of OS X. Yes, we can eventually get over it, but big changes should happen very infrequently, and then be left alone for a goodly while. If you need a sandpit to play in, fork a conceptual project, and realize that your userbase for this will be very different from the mainstream, though it may provide some valuable insights.
Frequently interrupting my workflow really, really, really sucks, more than you can possibly imagine. It's one of the joys of running on Debian GNU/Linux -- so long as you're on stable, big changes are infrequent and small changes are all but invisible. Best of both worlds.
IF you are going to rely on a plugin architecture, THEN get the damned baseline worked out and keep it stable. Screwing with APIs pains everyone. It screws your users and your developer community.
I'm becoming of the opinion that we want a bifurcation of the browser. There's an app platform, for Web 2.0 stuff, where it's really necessary. And there's something closer to ePub / Readability / Readability Redux / Instapaper, which presents deep textual content in a format that's both device-appropriate and highly nondistracting. When I find myself using Chrome with the Developer Tools window open, editing page and style elements as I go, something is very, very wrong with the Web.
That's exactly how I use tabs: I've got 77 tabs open right now, grouped into 9 different topic groups in Firefox's "Panorama" mode. Most of them are collections of information about some particular topic or other that I don't need most of the time, but when I next switch back to working on that topic I'd hate to have to find them all again. Almost none of those tabs are currently loaded into memory. In Firefox's preferences, I have "Tabs" → "Don't load tabs until selected" ticked, which means that, well, open background tabs don't load the page in question until I switch to them the first time. I think in an upcoming version of Firefox, that option is ticked by default.
Laptop runs Iceweasel 10, which doesn't have that. About to check about:config
And if you use Firebug, you are screwed as well, only quicker.
I never really liked Chrome, but it's so fast and snappy, and Firefox has still not catch up in that area.
As for restartless extensions, I think mozilla should really push people to switch their extensions to use the api. The other advantage is version independence, which helps with some of users pains of firefox.
[0] https://addons.mozilla.org/en-US/firefox/ [1] https://addons.mozilla.org/en-US/firefox/tag/restartless [the only way, as far as I can tell, to get this list is to manually search for this tag]
After restarting it (and loading all the tabs): 250mo.
It may well be problem with some extensions but I only use 9.
edit: if someone is lloking for the restart extension : https://addons.mozilla.org/en-US/firefox/addon/restartless-r...
Then I created a new profile and it was amazing. FF has been running without crashes since (not one) and memory usage seems well balanced.
Just FWIW.
I can't be the only person who 1) totally doesn't understand why these exist (I strongly suspect they're a hangover from DOS-based MS Windows without proper user accounts), and 2) how to manage them (there are no profile management tools within Firefox that I'm aware).
Totally random and broken vestigial misfeature.
I've heard of others using this as a way to keep a slim browser but still have a swiss-army webdev browser for working with.
It's not the profile system that was broken it was some user settings that were dragged in through the upgrades from version 3 (when I last replaced the profile).
Other than admin accounts at work, it's been a few decades since I've shared an account with someone.
Even less to just click an alternate icon in the app menu.
You wouldn't need to do user switching per se anyway. You could just "su" with the other users ID. It's the things like fixing a printer adjustment twice. Getting a password so I can fix something or share a file. Fine in a supported env. but for home I'm happy sharing the same user (but not with the kids!).
It's just a command line argument.
Mostly, Firefox profiles mean I can't reliably generically script actions on my Firefox configuration (given there's some arbitrary random string involved).
I see others have also mentioned memory-usage and that is also a fair point. At some point, Firefox would have memory leaks so huge that it spent most of its CPU time constantly trying to GC, slowing to a complete halt.
And then, just like with the updates, you had to restart. Restarting Firefox was a pain. But somehow restarting Chrome when updates come along is not. Why is that?
My desktop is a quad-core system with hyper-threading. That's 8 logical cores for the machine if utilized correctly. By Chrome having a process-per-tab model and Firefox not, everything else being the same Chrome can reduce its startup times to 12.5% of that of Firefox. It's an order of magnitude improvement.
You don't care about restarting Chrome because it just takes one second and you are back where you started. Firefox takes almost 10. That's way beyond annoying your users.
When you are the browser spending ages doing a restart, you're not in a position to force updates on your users.
Another thing which I haven't seen mentioned anywhere, which has been broken in Firefox since the very first releases is the add-on and add-on compatibility checking. It's retarded and I cannot believe it hasn't been fixed yet.
The typical Firefox update process goes like this: 1. Firefox informs you there is an update and you need to restart. 2. You accept a restart 3. Firefox shuts down, updates, and restarts. 4. upon restart after the update has been installed, it checks if your addons are compatible. WTF?!?
Usually that works out fine, but every now and then it doesn't. And then it's too late. That's retarded.
Why on earth would you check compatibility when it is already too late to do something about it? The process should be re-ordered. Compatibility checking should be done first. Then Firefox could say "There is an update and all your add-ons are compatible. Would you like to update now?".
A simple re-ordering of things it already does would have solved one of the two biggest issues people have with the update-mechanism. Why hasn't this been done already?
I'm a Chrome convert now, but I keep coming back to Firefox to see if things have improved, because I really believe in what Firefox stands for and what it represents. Unfortunately, I keep coming back to Chrome because for me, it just feels like a better browser.
I've never fully understood why it was shelved.
Changing extention APIs or UI: Bad.
https://bugzilla.mozilla.org/show_bug.cgi?id=691336
No one ever cared.
I cannot stress smacktoward's astute post enough.