Wandering Thoughts archives

2014-05-25

Firefox, DRM, and reality

Today I ran across someone retweeting yet another petition asking Firefox to reject DRM or more specifically to reject EME. As this person doesn't usually seem to be given to supporting quixotic and crazy causes, the whole thing has pushed me over the edge about this issue. Apparently soft honesty is not working on people, so I'm going to try being blunt about the situation.

What I think most people who support this petition don't understand is that by asking Firefox to reject DRM and EME, they are asking Firefox to slit its own throat. At this point the all but certain result of Firefox rejecting EME is Firefox's browser share declining drastically, probably to the small single digits. One consequence of this would be Firefox losing its ability to influence the further evolution of the web (for exactly the same reason that almost no one cares what eg the Konqueror people think about such stuff).

Let's start with a basic fact: to most people, browsers are fungible commodities. Most people don't really care all that much about which specific browser they use provided that it can browse the web well. On the one hand this has been great for enabling alternate browsers like, well, Firefox; if you do the same job but better people can easily switch and will do so (Chrome is an excellent example of this). On the other hand this means that most people will promptly switch to another browser if their current browser stops meeting their needs, especially when good alternatives are widely available.

There are four important browsers today: Firefox, Chrome, Safari, and Internet Explorer. Three out of the four of these have embraced EME more or less wholeheartedly and so serious EME-enabled alternatives to Firefox are available on every single major platform it runs on, including Linux (in the form of Chrome). On all platforms except Linux, an EME-enabled alternative is the platform's default browser, making it especially accessible.

A non-EME-enabled browser does not meet many people's needs. Many people care about watching video and listening to music, sometimes rather a lot (enough, sometimes, to pay for it). If their browser stops doing this very few people will decide to stick to it for other reasons such as intellectual purity; most people will shrug and more or less immediately chuck it out in favor of some other browser that actually works.

The inevitable result of Firefox not supporting EME is that it will no longer be a browser that fully meets many people's needs. Almost all of these people will drop Firefox and switch to alternatives, which almost all of them already have conveniently at hand. Firefox's browser share will decrease down to people who don't care about EME'd content, people who don't have an alternative, and people who are willing to endure pain for the sake of either principles or Firefox's other attractions. I do not think that there are very many of these people.

(As a sign of how much people care about these sort of principles in the face of even weak attraction to an arguably better browser, look at how many people moved from Firefox (genuine open source et al) to Chrome (controlled and driven by a large advertising company that is not your friend).)

The EME DRM battle was lost no later than when the other three browsers embraced EME. To demand that Firefox continue fighting it is to demand that Firefox conduct a suicide mission.

You are of course free to ask that Firefox immolate itself in the name of intellectual purity, although I don't think that this is wise or that you're going to be successful (thankfully). But please understand and be honest about what you're actually asking for.

FirefoxDRMReality written at 22:23:15; Add Comment

2014-05-18

What it would take to replace Firefox as my web browser

In the wake of Firefox's decision to support EME (cf) a number of people have been angrily advocating for switching away from Firefox to another browser. I think that this is wrong-headed (see here (via) for one cogent explanation of why), but let's set that aside for now and merely ask what it would take for something to replace Firefox as my web browser.

At one level the answer can be garnered from the Firefox extensions that I use. I don't just want 'a web browser'; I want a web browser with gestures and some equivalent of NoScript (practically speaking I also want the ability to edit text areas in a real editor). I also need a browser that can be remote controlled to open new URLs in new windows, because this is a big part of how I use Firefox in practice, but I think basically all of them will do that these days.

But that isn't the full story. What I really require is a browser and a set of extensions that I can trust both now and in the future, and this is at least partly a cultural issue that goes deep. As I've found out the hard way, Chrome does not have the right culture; 'good' Chrome extensions that provided more or less the equivalent of my Firefox environment have gone bad. It's likely that any smaller open source browser would have a browser and extensions culture that was good, but it's not absolutely guaranteed, and I don't think that I can really trust a commercial browser these days (sorry, Opera, although I may be selling you short).

All of which brings me around to my strong impression that there are no real browser alternatives left. In some ways Unix users have it better than Windows and Mac users, in other ways worse; we lack highly capable native system browsers but we have a number of reasonably capable free alternatives not beholden to various commercial interests, alternatives that optimistically might develop into something reasonably capable.

What this really points out is that developing an attractive, sophisticated modern browser is a lot of work, work that goes beyond the HTML rendering and associated issues (DOM, JavaScript, CSS, and so on). The days that browsers were just a thin wrapper around a HTML display widget are long gone, which means that you now need serious person-power to have a serious, competitive browser. And, well, there are not many places with that and it's probably not very attractive to duplicate the work of, say, Firefox. So I'm not surprised that there aren't all that many options for me to pick from.

(If I were serious about evaluating Firefox alternatives I think I'd have to look at Konqueror (although it seems to lack a NoScript equivalent) and Opera. Gnome has a browser but I doubt it's going to appeal to a power user like me. There are other Unix browsers but my impression is that none of them are up to a competitive level.)

FirefoxReplacementThoughts written at 00:41:20; Add Comment

2014-05-04

How I set up my Firefox 29's UI

Firefox 29 came out recently and brought with it a new user interface, which a number of people had negative reactions to. I'm not one of them. Bucking my usual trend with Firefox UI redesigns, I've come around to liking this one more than Firefox's previous UIs. Before I describe how I have my UI set up, I have to make a confession; I didn't arrive at my current setup or feelings instantly and the new UI had to grow on me. I actually run what is basically Firefox Nightly (hand built periodically from the latest trunk code), so for me the new UI dropped several months ago and I've had time to acclimatize and fiddle around.

My two priorities in my Firefox UI is that I want as much space as possible for content, especially vertical space, and I mostly care about quick access to things I use frequently; infrequently used things can be somewhat awkward. I also don't use bookmarks as I have a different solution to the problem.

Because a picture is worth a thousand words, I've put a picture of how my Firefox window looks here. My UI customizations that create this are:

  • Turn off displaying the menu bar. This is a less radical change than it sounds because you can get the menu bar back temporarily by tapping Alt.

    (That tapping Alt makes the Firefox menubar reappear is one of those irritating undiscoverable UI features. I wouldn't have found it if I didn't accidentally hit Alt from time to time and then realized what the flickering in my Firefox window was.)

  • Strip out almost everything from the 'URL bar' area, because I want as much space as possible for the URL box itself. The S in a red circle icon (and the menu dropdown next to it) is from NoScript, one of my essential Firefox addons.

  • Use the *-bar customization feature to add my most commonly used menus back to the tab bar area over on the right. What I have there at the moment is History, Preferences, Character Encoding, and Web Developer Tools.

    (*-bar customization is part of the menu you get when you hit the right mouse button over empty space in eg the tab bar. You can also use this menu to turn back on the menu bar.)

I've moved away from having a status bar or addons bar at the bottom of my Firefox windows. It takes up extra space and it's simply not that useful any more. I kind of miss having a loading progress indicator but on the modern web those have been misleading for years and in practice the thing I really care about is whether the page is fully loaded or not and the per-tab throbber does that okay for me.

(Firefox 29 can also put many menus and indicators from addons in the tab bar area if you want, which helps reduce the need for a separate status bar.)

There are things I don't fully like about this UI, for example I'd still prefer the stop/reload button to be a full button outside of the URL box, but for my tastes my current setup works decently. At first I disliked being forced to always have a tab bar even in single-tab windows but losing the menu bar makes up for it and the result is actually more functional (eg it's now easier to move pages between being standalone windows and being in a tab in an existing window).

Firefox29Setup written at 01:10:12; Add Comment

2014-05-03

My Firefox 29 extensions and addons

It's been a few years since I last did a comprehensive inventory of my Firefox addons (here, then updated here and here due to memory issues), so it's about time for another go around. Besides, Firefox 29 has come out and upended the Firefox UI again. As before this is for my main browser instead of my testing browser, although the testing version has almost all of them too.

Safe browsing:

  • NoScript to disable JavaScript for almost everything. I browse with JS blocked and only enable it selectively on sites when I have to (and almost always temporarily). I consider this more an issue of safety than of performance; I simply don't trust most JavaScript from most sites to not do things that will make me unhappy. These days my strategy for dealing with most JavaScript based websites that I actually want to use is my Chrome incognito hack.

    (NoScript also takes care of blocking Flash, Java, and so on. I also have Firefox's own preferences set to 'ask before running' for them, which NoScript seems to usually override when I tell it to go ahead with Flash stuff. This doesn't worry me because the Firefox setting is a fallback precaution in case something sneaks past NoScript.)

  • CookieSafe 3.0.5, with the actual addon here. I browse through a filtering proxy and it blocks ordinary cookies, but it can't do anything about cookies I get over HTTPS or via JavaScript. I use CookieSafe to block those (there's some more explanation here). For me, CookieSafe 3.1a10 has an explosive interaction with NoScript that hangs Firefox in some sort of infinite JavaScript loop, so I am still on 3.0.5 aka the 2011-12-10 version of CookieSafe.

CookieSafe hasn't been updated recently and apparently still has issues. If I didn't browse behind a filtering proxy I'd probably switch to Self-Destructing Cookies, which I'm actually experimenting with in my testing browser. Honestly, one of the reasons I don't switch anyways is just the hassle of figuring out which of my current cookies I want to whitelist permanently.

I've experimented with Ghostery. It works and I like the idea, but I don't have much use for it in my main browser (which is already protected against basically everything Ghostery would block) and I don't completely trust the business model involved in its development and thus it (I worry about the Chrome extensions problem). The EFF's Privacy Badger sounds nice but it's only just been announced and it's in alpha (and again I don't have much use for it in my main browser).

User interface:

  • FireGestures. I believe the only customizations I've made have been to change what gestures map to what (for reasons described here). It's worked great and has been free of both trouble and memory bloat. I really like how it can export and import your configured gestures, making it very easy to have the same set of gestures on all of the copies of Firefox that I wind up using (home, office desktop, office laptop, sometimes Firefox on servers).

Improving my life:

  • It's All Text! handily deals with how browsers make bad editors. The more I have it available the more I use it (and the longer comments and so on I wind up leaving, because I can actually edit them sensibly; this may not be a plus, all things considered).

  • Open in Browser. You know all of those annoying websites that insist that patches are not plain text that the browser can show or are sure that you want to download that PDF instead of viewing it in the browser? This fixes them. It's so discreet an addition that you may even forget that you have it installed (this happened to me once and was vaguely embarrassing).

I view PDFs in the browser with Mozilla's PDF Viewer, which I believe is now normally packaged with Firefox.

Miscellaneous:

  • CipherFox gives me access to more information about TLS connections. It's not perfect (partly because Firefox plain doesn't make certain information available to extensions) but I'll take what I can get here. The one thing I really miss is simple information about whether the connection has perfect forward secrecy.

I've experimented with a number of the SSL/TLS certificate monitoring extensions like Certificate Patrol and Perspectives. None of them worked well in my environment with the amount of work I was willing to put into tending them.

This set of extensions is stable and doesn't lead to memory bloat. I can and do leave my main Firefox running for weeks without any problems (on my home machine I started the current instance on April 17th, when I last rebooted). In fact I should probably restart more frequently than I do; I have a couple of pending extension updates at the moment that have been patiently waiting for me to get around to quitting and restarting.

Although I would still like to be able to use GreaseMonkey and Stylish, they still seem to cause memory bloat problems for me as before. I haven't tested things on Firefox 29, but I did retest with a previous version of Firefox a couple of months ago and still saw my old problems. Maybe someday.

Firefox29Extensions written at 00:47:36; Add Comment

By day for May 2014: 3 4 18 25; before May; after May.

Page tools: See As Normal.
Search:
Login: Password:
Atom Syndication: Recent Pages, Recent Comments.

This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.