Michael Eriksson's Blog

A Swede in Germany

Posts Tagged ‘firefox

Browsers and lack of choice

with one comment

Related to the families of texts on choice (note [1] and follow-ups) resp. computer annoyances of various kinds, there is an interesting (and extremely depressing) drift towards forced use of inferior browsers.

This drift results from a two-pronged attack* of declining browser quality and a need to remain with up-to-date browsers and a limited range of preferred-by-websites browsers.

*Without implications of a deliberate action.

First, declining browsers: Firefox is a splendid example, which has over the last ten-or-so years grown incrementally worse, dropped features that once made it great, added lesser features, worsened the interface, whatnot. (Cf. [2] and what by now must be more than half a dozen other texts.) In particular, Firefox has gone ever more in the direction of eliminating user choice and forcing users to live with the preferences of the makers—while it once was quite good in this area.* Chromium** and, by implication, Chrome are horrors in usability and interface—so absurd that I feel like snapping after even a five-minute experiment. Other browsers that I have tried have either fallen into similar traps, are using too old standards, are not available on Linux,*** or are otherwise unsuitable for generic purposes.****

*But by no means perfect. Age-old problems include a poor handling of config files, the idiocy of about:config, and the lack of a good key-mapping mechanism—something many other tools had mastered in the 1980s.

**An (at least approximately) FOSS version of Chrome, which should be almost equivalent in functionality, but with less privacy intrusions and other problems.

***Use another OS? That would worsen the problem discussed in this text, as I am no longer just forced to use certain browsers but also certain OSes.

****This includes e.g. W3m, a text-based browser that runs well in a text terminal and can handle many websites excellently, but which falls flat on its face with sites heavy on graphics, JavaScript, DHTML, and whatnot. (Also cf. the second prong.)

Secondly, the need to remain up-to-date (etc.):

HTML and related languages and technologies are nominally well-defined, and any standards-conformant graphical browser should display any web page correctly, including that any and all “active contents” and control elements work as intended. Nevertheless, this is not the case, as various websites* use non-standard features or deliberately and artificially show error messages with “too old” browsers or browsers outside a very limited selection (e.g. Chrome**/Firefox/Edge)—even when they actually would have worked without this artificial error message. Notably, these non-standard features are almost invariably pointless, either because the same thing can be done with standard features, or because the purposes achieved bring no value to the user. For instance, my first steps with online banking might have taken place some twenty years ago—and it worked well with the technology of twenty years ago. Today’s online banking has no true value added, in some ways works worse, and still requires very new versions of these few browsers…

*Immediate personal problems for me stem from the websites for the “German IRS”-tool Elster, my online banking, and W-rdpr-ss, which have all forced me to perform unwanted updates. Elster is particularly perfidious as the German government dictates the use of this tool for tasks like filing taxes—a certain tool use is ensured by the force of law.

**Usually, without mention of Chromium, despite Chromium being the lesser evil for a sane user.

The result? Poorly programmed websites force users to constantly upgrade browsers (and limit them to that small selection), while the sinking quality of browsers makes every upgrade painful. Browser-wise, the world is worse off than ten years ago. Ditto, in terms of websites.

To some degree, this problem can be lessened by having several browser installations and using an older version or a browser outside the selected few for more sensible websites. However, there is a continual lessening of the websites that work well and chances are that the solution is temporary. A particular risk is that the “selected few” are eventually reduced to a single browser (likely, Chrome), bringing us back to the millennium hell of “Optimized for [browser A] in resolution [X times Y]—and don’t you dare visit with anything else!”.

Excursion on security:
But is it not better to use the newest versions for security reasons? Dubious, considering the track record of browser makers and how low security is prioritized. Chances are that the last version of an “extended support release” from five years ago will be more secure than the fresh-off-the-press version from yesterday.* More importantly, browser security issues stem largely from various active contents, notably JavaScript, and browsing with JavaScript off should be the default for any sensible user.** However, in as far as the answer is “yes”, this creates yet another problem—the user now has the choice between using a less secure browser and a worse browser.

*Indeed, it used to be a recommendation among experienced users to not install the latest version of anything until some sufficient bug-stability had been reached: leave the 4.0.0 to the beginners and wait for 4.0.5! However, with the mixture of automatic and forced updates, perverted version schemes, and (often) lack of true major and minor versions, this has grown near impossible—everyone is an alpha tester.

**Which, again, grows harder and harder as evermore incompetent websites use JavaScript to implement functionality that either brings no additional value or could be done as well without JavaScript. Indeed, I strongly suspect that many of them use such features as a mere excuse to force an enabling of JavaScript in order to abuse it to the disadvantage of the users, e.g. by unethical profiling.

Excursion on more general problems:
Unfortunately, issues like software growing worse over time are quite common, and unfortunately have long spread to the world of Unix-like systems too, including through software that is stuck on the desktop paradigm, software that no longer includes sensible command-line arguments, software that is written specifically for e.g. KDE or Gnome, software that relies (often for no practically worthwhile purpose) on D-Bus, and, above all, software written on the premise that the user is an idiot who should be prevented from doing what he wants with the software.

Forced use of certain softwares and OSes is by no means unheard of either. For instance, it is still common that a business has to own MS-Office licenses, because it receives, or is forced to send, MS-Office documents from/to other parties. For instance, there is a non-web version of the aforementioned Elster, but it runs* only on MS Windows, which would force any user to have a licence for that, have a computer running it, etc.

*Or, at least, ran, some years ago. I have not checked for changes, but I am understandably not optimistic.

Again, the world of software was, by and large, better ten years ago than it is today. And, again, there were things that the likes of Vim did right in the 1980s that virtually all newer software fails at in 2022—including something as basic as easily configurable key-mappings.

Advertisement

Written by michaeleriksson

November 28, 2022 at 2:48 pm

Some thoughts on software and animation

leave a comment »

During my recent Firefox adventures ([1]), I stumbled upon an old (2009) page ill-advisedly suggesting a project to add animations to Firefox.

Considering the horror that animation is, it is disturbing with what seemingly sane and insightful attitude the project set out:

Animation in the browser is a tool, but not a goal unto itself. Wherever animation is used, it should be with a purpose and benefit to the user.

Like many web technologies, animation is a useful but easily abused tool. The early web and the dawn of the .gif format saw animation heinously overused websites, with blinking, spinning, and scrolling animations thrown in because they “looked cool.” As the web stopped foaming at the mouth and begin the transition to what could be done to what should be done, animation became used more successfully as a tool. Some ways in which animation can be useful include:

o Making browsing feel faster
o Adding visual affordances to makes tasks more understandable
o Making the browser and tasks more visually appealing

To bring animation to Firefox, we decided to first focus on three key areas that we felt would give users the most benefit by adding animation. Out of many possibilities, we looked for places where animation would make interactions feel faster and help users perform tasks.

The first paragraph is dead on—but exactly this is where seemingly every modern software and every modern website that uses animations fails. This includes Firefox. If the developers had actually lived this paragraph, Firefox would have had no or only minimal animations today. (I cannot quite shake the suspicion that this was an alibi-paragraph, so that the developers could establish “common sense on animation” credibility before going on to actually display a lack of common sense.)

The second is half right, as it describes a horror of old, but it then mistakenly assumes that things would be significantly better in the page’s now (i.e. 2009). This was not the case: Animation then, just as before, and just as in my now (i.e. 2022) was/is excessive and usually done more for the purpose of having animations than anything else.

(The list is discussed below.)

The final paragraph points to three areas where animations in Firefox would be an alleged good. As can be deduced from the rest of the page, these are “Tab tearoff”, “Text search on page”, “Movement of toolbar items within rows (UI elements, bookmarks, tabs)”. None of these, however, have added value as implemented. On the contrary, they are among exactly the type of things not to animate, because the result is annoying and distracting, often delays the action, and adds no value.

Looking at the list:

o Making browsing feel faster

In the case of e.g. a progress indicator, an hour glass, or similar, this might work to the degree that the user sees that the browser (more generally, application) is still working. Other than that, I have never seen a positive effect. On the contrary, I have often seen cases where the application has been made objectively slower by the introduction of animations, because continued work is not possible until the animation is ended. One example is the CTRL-F issue discussed in [1]. The maybe paramount example, and one of my own first major contacts with animation, was the slow-as-molasses menus of Windows 2000 and/or Windows XP.* This was at a time when gaining a usable command line in Windows was virtually impossible and programs had to be started by clicking through multi-level menus. I often “knew the way” and could have reached my goal with a reasonably rapid click-click-click-click. Instead, I had to click on the main menu, wait for an animated menu to slowly unfold, click on the right sub-menu, wait for an animated menu to slowly unfold, click on the next sub-menu, wait for an animated menu to slowly unfold, and then click on the finally visible program.

*This was long ago and I am vague on the details. I do remember that I soon found some type of setting to disable this shit—but this anti-feature should have been off per default or entirely non-existent to begin with. (As I repeatedly noted in those old days of heavy Windows use: if Windows has a toggable feature, the default value will be poorly chosen in two-thirds of the cases. This while a coin-toss would have been at just half the cases.)

o Adding visual affordances to makes tasks more understandable

(An “affordance” is “Any interactive control or component serving as a cue to the user to take some action.” according to Wiktionary. I have no recollection of hearing the term before yesterday.)

There might be some limited room for this, but not much, certainly none that applies to what I have seen in Firefox or what was suggested in the final paragraph of the initial quote, and I can think of few situations where non-animated hints would not be better, if in doubt due to the annoyance factor. Take e.g. a field to input a mandatory text combined with a save button. In a non-animated case, the button might be greyed out as long as the field is empty, and the field carry a note like “mandatory field”. In an animated case, we might end up with an animated paper-clip bouncing around the screen, with a speech-bubble “You must enter text in this field!!!”. (Or, in a less extreme example, there might be a big flashing arrow pointing to the text field.)

However, I suspect that a faulty application of this idea explains the CTRL-F issue: Some nitwit assumed that, without the animation, too many users would be permanently confused as to what to do after pressing CTRL-F, while the animation would provide them the insight that “Hey! There is a search field!”. In reality, this would apply only to a small minority of highly unskilled computer users,* who additionally are too unobservant to spot the fact that a search field has just appeared (as opposed to being slowly blended in through an animation), and would, even for them, likely only be relevant the first few times. Correspondingly, the benefit is minimal. The delay and the annoyance, on the other hand, hits everyone for the duration. Even if an animation were beneficial, this is a poor way to do it. A better way would be to just show the field and have the already present field flash briefly. The annoyance from the animation, per se, remains, but work can begin at once and the annoyance from the delay through the animation is gone.

*Effectively, someone who has minimal experiences with virtually any computer application, including other browsers, and simultaneously has minimal experiences with Windows/Mac without being a sufficiently proficient user to have moved to a more adult OS, like a typical Linux distribution. Of course, someone like that might be unlikely to try CTRL-F to begin with…

For a highly proficient user, however, any animation in this case is likely to be harmful as he is likely to (otherwise) just tip in the search phrase immediately after CTRL-F (resp. / or ? in Vim, resp. whatever keys the application at hand requires), without looking for a search field. Even without a delay, the animation can be problematic, as it screams “Look at me!” and might cause an artificial interruption as the user does exactly that. With a delay, depending on exactly how the delay is implemented, it might well be that the user is now tipping in vain, as the keystrokes are not registered by the search…

o Making the browser and tasks more visually appealing

I have no recollection of seeing this done successfully, anywhere, at any time, in any product with “everyday animations”.* On the contrary, this comes very close to using animations as “a goal unto itself”. When it has worked, it has been with more spectacular “major effect animations”,** as with the classic bouncing-card animation after solving a solitaire in Windows. However, even these grow old fast, and they are certainly not to recommended for frequent use in an everyday tool like a browser.

*Here I find myself lacking in terminology, but consider e.g. the CTRL-F animation or a tab-movement animation.

**Again, I am lacking in terminology, but the example given is likely to be explanation enough.

For my part, I used to work with the following informal rules (in the days that I had to implement occasional GUI-functionality):

  1. Only add animations when they bring a tangible benefit.
  2. If you believe that an animation will bring a tangible benefit, you are wrong in nine cases out of ten.

    (Where “benefit” is to be seen over the entire user base—not just the first one or two uses of a newbie. Note in particular the potential damage through delays and annoyances, as mentioned above.)

  3. If in doubt, do not animate.

These rules served me so well that I cannot recall ever adding an animation (although I probably have—if in doubt because some product manager or whatnot was more naive and insisted).

If giving rules for someone else (which I implicitly am), I might add e.g.:

  1. The main effect of animation, whether intended or unintended, is to call attention to something, with possible side-effects including interrupted work-flows, interrupted thoughts, attention diverted from where it really belongs, etc. Therefore, be very certain that you actually do want to call attention to whatever is animated.

    Corollary 1: Never have more than one animation in the same page at the same time.

    Corollary 2: Keep animations short. Once the purpose of getting attention can reasonably be assumed to have been reached, the animation must be stopped so that work can continue without distraction.

  2. Beware the annoyance factor, especially during prolonged use. Remember that there might be some who use your product for hours every day.

    (See the earlier discussion for more detail.)

  3. Keep the different proficiencies of different users in mind, and that the more proficient are more likely to be intense users and/or that intense users are more likely to become proficient. Do not tailor your application to your grand-mother. (Unless, of course, the intended target demographics is old ladies.)

    More generally, a good application might well make allowances for weak[er] users, but not in a manner that hinders strong[er] users. For instance, looking back at [1], making it trivial to connect the TorBrowser to Tor is good, but making it hard to by-pass Tor is bad. For instance, reasoning that “we do not need any keyboard short-cuts, because everything can be done by mouse” is hopelessly narrow-minded. For instance, to return to Firefox/TorBrowser, providing many ready-made keyboard short-cuts is good; making them near impossible to change is bad. An attitude of “A user should not need expert knowledge to use our application.” is laudable; an attitude of “If a user does have expert knowledge, we must prevent him from using it.” is despicable.

  4. Any and all animations, without exception, must have an easy-to-find* switch to turn them off. In most cases, the default value should be “off”.**

    *The obscure, well-hidden, poorly documented, and often functionless settings in Firefox’s about:config are a negative example.

    **A problem with this rule is that many naive decision makers will reason that “The users would LOVE the animations, if they knew about them! If the animations are off, they will never find out; ergo, animations must be on!”. The premise of “LOVE”, however, is very dubious. As a compromise, an application might provide a “first use” dialogue where a few meta-decisions can be made, e.g. whether to have all animations “on” or “off” until a more fine-grained decision is made. (Similar meta-decisions might include whether to allow “phone home” functionality, whether (on Linux) to prefer Vi- or Emacs-style key-bindings, and similar.)

  5. Clippy is the devil.

Clarification of terminology:
Note that I do not consider any and all change of a display to be an animation. For instance, if a menu immediately goes from a folded to an unfolded stage and then remains static until the next user action, this is a change in the display, but it is not an animation. Ditto a search window that immediately appears and then remains static. Ditto a link which immediately changes looks when focused or unfocused and then remains static. Ditto e.g. a mouse cursor that moves from point A to point B as the result of a continuous user action. In contrast, the Windows folders discussed above suffered from an animation. Ditto CTRL-F in [1]. An hour glass that turns for two minutes while the program is working is also an example of animation, but one much more legitimate.

Written by michaeleriksson

October 26, 2022 at 1:07 pm

Posted in Uncategorized

Tagged with , , , ,

Depressing software issues and the yearly tax filings

with 3 comments

Time for the yearly tax filings—and I am already depressed, without having filled in a single field.

Unusually, this is not due to the inexcusable interface of Elster* but the continual worsening of other software. Indeed, most software (and most websites) seem to grow worse over time. Both Firefox and TorBrowser** are negative examples. Indeed, for my main browsing, I still use a version older*** than Firefox 57 (?), with which Firefox nearly committed suicide by removing XUL/XPCOM support and killing half of its add-ons, including the vital Classic Theme Restorer, which was only needed because Firefox had, years earlier, attempted another suicide by replacing a good user interface with a poor one.

*Although this is likely to come; see the many earlier entries on Elster and the German IRS.

**A Tor-using derivative of Firefox.

***No worries: I have JavaScript and such shit disabled in this version, implying that there is less risk for me than for someone who has the very newest version installed but JavaScript on.

Unfortunately, this old version does not work with some few websites that I use, uninterested in usability and standards as they are, including WordPress and Elster. Correspondingly, I have used newer versions of TorBrowser and/or Firefox to handle them. However, this has grown harder and harder. For instance, with my switch to Gentoo last December (January?) Firefox was out, as building* it required 6 (?) Gigabyte of disk space, which I could not spare at the time—and, going by that space, the build might have taken days. Talk of ridiculous and pointless bloat.

*Gentoo works by downloading source code and compiling locally, unlike most other Linux distributions, including Debian, which I used in the past—until Debian had deteriorated too much. Note that TorBrowser, by its nature, is typically downloaded from the makers of the browser, not the Linux distribution. Correspondingly, it requires no build.

TorBrowser brought other problems, beginning with a failure to start. As it turns out (cf. [1]), a pointless Wayland-dependency has been added, which either requires polluting Gentoo with the type of nonsense that one chooses Gentoo to avoid, or a workaround like the shim.c/shim.so provided in [1]. Moreover, with roughly the same installation, the by-pass-Tor* behavior of TorBrowser changed for the worse, requiring setting of various new and unexpected variables and other trickery—and this trickery later failed after an update.

*Normally, the point of TorBrowser is to use Tor, and my main installation, for my regular surfing, always does. However, there is no reason why TorBrowser should not be used without Tor, especially absent another Firefox installation and especially since TorBrowser comes with some hardening compared to and more sensible defaults than Firefox to begin with. Notably, Tor should never be used in combination with important user accounts, e.g. Elster, as they are (typically) not anonymous to begin with and as the act of logging in over Tor is less secure than without Tor—either TorBrowser has to bypass Tor or some other browser must be used.

Speaking of updates: Firefox (and TorBrowser) has done inexcusable things with updates to prevent a sensible and controlled update behavior, including increasingly preventing users from saying no to updates. The remaining functionality allows the user to delay the installation, but not to prevent the check for and download of updates. To avoid misfortune in this area,* I have had to resort to trickery like blocking the update-server per DNS and artificially changing “last updated” entries in about:config.

*(a) A discussion of the problems and how they apply to me would be enough for a separate text. For now, just note that I am a highly experienced and qualified software developer with Internet experience since 1994—I know what I am doing, no matter what you might think based on too little context. (b) Note the golden rule of software development, that the user should be in charge, not some faraway product or release manager.

Then came the time (February?) when the admin area of WordPress no longer worked with TorBrowser, be it before or after update… (WordPress does nothing that cannot be done with standard browsers ten years old, assuming a sensible implementation. Its failure to work with browsers merely a few months* old is inexcusable.) As I could still post per email, I postponed my trouble-shooting.

*Note that TorBrowser uses fix long-term releases of Firefox and will usually trail the current Firefox version by some time, even when freshly updated.

However, time went by, pingbacks and whatnot in WordPress accumulated, and the deadline for the tax filings (end of October) came closer and closer. Last week, I downloaded a brand new version of TorBrowser and proceeded to debug this shit, beginning with the renewed problem of TorBrowser failing due to the pointless Wayland-dependency and the need for “shimming”. This first step was easy, but then the problems began. Notably, what I done in the past to bypass Tor no longer worked, as, apparently, the TorBrowser team has become dead set on preventing any and all non-Tor use of the TorBrowser,* come hell or high water, and with no regard for use cases outside their narrow scope of thinking. After long and failed Internet searches and various trial-and-error, I arrived at a situation where I could at least configure another socks proxy than Tor (but as opposed to going directly onto the Internet). By then putting up a Privoxy–Squid** combination as this proxy, I had non-Tor access to the Internet. Some fifteen minutes of going through accumulated comments (mostly “pingbacks” between my own posts) in WordPress followed. (And, yes, the redesigned-for-the-umpteenth-time administration area was another example of reduced usability, e.g. regarding “bulk edits” of comments.)

*And, if to a lesser degree, to prevent non-TorBrowser use of Tor.

**The Squid-part is likely redundant. I began with only Squid, not realizing that it was not Socks-capable, and then prepended a Privoxy when I found out. Right now, things work. I will investigate using only Privoxy at some later time.

But for fuck’s sake! To have to install even one proxy in order to do something that Firefox can do out of the box, something entirely trivial, because TorBrowser has been deliberately crippled, that is truly ridiculous and utterly absurd.

So far so, …, not actually good. No, “good” is not the word to use—but at least I had a functioning system.

Then, today, I wanted to address the tax filings, hoping for comparatively easy work, as I had very little activity in 2021. I copied TorBrowser and shim.so from my computer-account-for-Wordpress to my computer-account-for-Elster,* changed ownerships, and started TorBrowser. However, when I went to visit the Elster website I just got an error message. I checked this and I checked that, including that I had all the right settings and that my proxies were running—no issue to be found. I dug into about:config and found that TorBrowser had unilaterally changed back (!!!) several of the settings for proxies that I had provided.** This with no notification (!) to and no query (!) of the user—absolutely and utterly inexcusable. Checking and comparing, I switched back setting after setting manually in about:config*** and reloaded, until finally I got through.

*I believe strongly in compartmentalization of concerns, largely, but not exclusively, for security reasons.

**Likely, this will happen at every single start of TorBrowser, unless I find a way to circumvent it. (For obvious reasons, I have yet to make the experiment. I will do my tax filings without restart and only then will I experiment.)

***The need for this is equally inexcusable. There are config files. These config files should be respected!

Well, onto the tax filings. First, as background information, some months back, the batteries in my mouse ran out, and I began to experiment with keyboard navigation/control even in TorBrowser, otherwise the only tool that I regularly use that is not designed for the keyboard. While this does not work as well as it should and could,* it is not that bad. Indeed, with most websites, I get along better than with a mouse by now. (See excursion for some details.)

*Largely because there is no logical and consistent model of a position-in-the-page, much unlike in e.g. Vim.

Elster, unfortunately, is not one of them. Just logging in and creating the (still empty) documents that I need, I find that the poor document structure and the many links/buttons that do not contain searchable text hinder me so much that I, without a mouse, would not be done in a reasonable time and with a reasonable damage to my blood pressure. Implication: Batteries are needed. (To be bought tomorrow.) To make matters worse, this version of TorBrowser has an extremely annoying and intrusive behavior on e.g. CTRL-F, which causes a search field to slowly glide into view, cover a disproportionate portion of the screen, and then slowly glide away again, when I press ESC. In contrast, the field instantly appears respectively disappears in older versions—and is much more reasonably sized.*

*There might or might not be some obscure about:config setting to remedy this, but the default behavior is inexcusable and settings that solve a Firefox or TorBrowser problem tend to be removed over time…

Excursion on building TorBrowser:
Of course, with all these problems, I have considered simply downloading the source code for TorBrowser and building my own version. (Indeed, as time has gone by, I have become more and more convinced that own manipulation of source code is the only long-term option in today’s world of poor software, low configurability, and users treated like children. However, even that can only solve small problems like a broken proxy configuration, not major issues like a poor UI, without the manual effort exploding out of control and proportion.) However, the only code that I have found available is that for Tor (alone), which is of no help, and chances are that the build requirements would be similar to those of vanilla Firefox (cf. above).

Excursion on analogy with the world of politics:
During the early phase of making WordPress and TorBrowser work again, I began a text on how large the similarities between e.g. politics and software have become. That text will be postponed due to the current text. For now, I just note that there are disturbing similarities between being a powerless user and being a powerless citizen.

Excursion on keyboard navigation:
While the keyboard navigation in Firefox/TorBrowser is not as good as that available in Vim (text editor) or W3m (text-only browser), it is easier than I thought to handle and I regret not making the leap earlier.* The key is to learn, by some trial and error, how to move from X to Y and how to take action once there. Here it is useful to learn many keyboard short-cuts. A particularly useful one is apostrophe/single-quote,** which searches for text in links only. (Of course, tabbing to reach the right link or other control element is a horror. Just like in Vim and W3m, the key is to search to the right place of the file/page. Having some feel for what makes a good search is very helpful, and here I have a head start through prior experiences.)

*For a while, I was a user of Vimperator, which gives Firefox a Vim-like interface; however, I switched from vanilla Firefox to TorBrowser comparatively soon after that, and TorBrowser comes with advice against third-party plug-ins. Newer versions of Firefox/TorBrowser cannot use Vimperator at all, as it relied on the axed-by-Firefox XUL/XPCOM. It might or might not work with my aforementioned age-old TorBrowser installation, but I have not gotten around to make the experiment and, if it works, it would make the navigation inconsistent between TorBrowser versions.

**As WordPress tends to mangle quotation marks, I am loathe to give the pure character; however, it is the key that follows the semi-colon (;) on a QUERTY-keyboard.

While web pages work reasonably well, the same cannot, unfortunately, be said for many internal Firefox pages, which do not use a tab navigation consistent with the web pages and where other short-cuts often either fail or do something other than intended. For instance, in about:preferences, CTRL-F does not search through the page, but moves the cursor to a filter-options field, which works far less well than CTRL-F already for finding things, and sabotages the use of CTRL-F to navigate. The change of internal pages to a non-web behavior is one of the many areas where Firefox has grown worse. For instance, in the days of yore, the “Downloads” page was rendered like a web page, implying that I could zoom in and out, which was very useful when I wanted to have a reasonable overview without emptying my download history. With the removal, no-one bothered to add a zoom ability and the list of downloads is now static in zoom level. And, no, CTRL-F does not work there either, much unlike in the past.

Written by michaeleriksson

October 25, 2022 at 4:51 pm

Posted in Uncategorized

Tagged with , , , ,

Follow-up: Further Firefox screw-ups

leave a comment »

Since my original text, I have read some of the comments on the main Mozilla* page dealing with this issue.

*Mozilla develops Firefox. For convenience, my earlier text just spoke in terms of Firefox.

These comments show how dire the situation is—to the point that Firefox might disqualify it self as a serious browser candidate:

  1. There are many users who have been very hard hit. One commenter mentions how his password manager* with (IIRC) roughly 150 passwords has been disabled, which might be even worse than the NoScript issue. It is easy to imagine a user being cut off from email, blogging, social media, …, through such an issue. Worse: If this happens in a commercial setting, an entire business could be temporarily crippled.

    *However, I would advise against using an in-browser password manager (at least, where important passwords are concerned). This for reasons like the above, the greater risk of hacking, problems that can ensue when switching computers or trying to run several browsers in parallel, whatnot.

  2. The attempts by Mozilla to fix the issue appear to be slow and have not been met with enthusiasm.
  3. Mozilla’s preferred work-around, awaiting a proper fix, is to enable “studies”.

    This work-around has the side-effect of allowing Mozilla to run various spy-on-the-user functionality that many users have disabled for very good reasons—and that more-or-less everyone else should have disabled. This, obviously, amounts to Mozilla screwing up and then gaining an unfair advantage over its users through the screw-up…

    Further, this work-around can take up to six (!) hours to take effect, without an additional workaround (specifically, manual manipulation of the “app.normandy.run_interval_seconds” key). Mozilla’s stance: Wait, without attempting further work-arounds. Depending on timing, however, six hours can amount to an entire day lost, including for some who need the Internet extensively for professional reasons.

    Further, it is not even available on all Firefox instances, including those that use or are based upon the ESR*.

    *An older version with long-term support that is suitable for those in need of greater stability and/or who develop off-shot browsers, e.g. the Tor Browser.

    Further, some users who believe that it should work in their browsers report that it does not. (I have not kept tabs on the details and could be wrong, but I am under the impression that some of them were on the latest version—and, thus, correct in this estimate. There are some murmurings about some other key that might need to be manipulated, but, again, I have not kept tabs on the details.)

From a Tor-Browser perspective, there is an additional* complication through NoScript being used by the Tor Browser internally to implement some security features. The disabling of NoScript implies e.g. that the “security slider” will be highly misleading or malfunctioning. As some mention, such errors could cost someone his freedom or even life…** This, obviously, points to issues with the Tor Browser, including that it has chosen a dangerous path to implement security (dependent on the efforts of third parties) and that it has failed*** to protect it self against the risk of this type of deactivation.

*Which I had not realized when writing the first text, but which is clear from the page I linked to.

**Tor Browser is used by many dissidents in hostile regimes—not just regular surfers who value anonymity.

***In my understanding, such a protection and a protection mechanism is already present for some other plug-ins that come installed with the default Tor Browser, including “HTTPS Everywhere”. Correspondingly, an awareness of the possibility must have been present.

Written by michaeleriksson

May 6, 2019 at 3:04 pm

Further Firefox screw-ups

with one comment

And Firefox does it again:

A few days ago, my Firefox* suddenly claimed that the NoScript-plugin had been deactivated—and left me no means to reactivate it. There was precious little to be found on the topic on the Internet (at the time, cf. below), but I did find the tip that setting the “xpinstall.signatures.required” key to “false” might solve the problem. It did—but at an increased security risk** and after I had wasted a fair amount of time.

*The modified Tor Browser to be specific; however, the problems all originate in or surrounding the vanilla Firefox. Indeed, in the vanilla Firefox I might have been worse off, because the discussed key might not function…

**This key relates to signing and verification of plugins. Setting it to false could allow the installation of malware-plugins.

Today, it happened again in another browser installation*. Going back on the Internet to re-find the key to change, I found many more relevant seeming hits, e.g. [1] and links on that page. Apparently, the Firefox developers have screwed up severely, causing perfectly legitimate, signed, and previously verified plugins to be marked as non-verifiable during the last few days… (I have not looked into the exact details.)

*I have several different installations for different purposes.

However, this screw-up is not the main problem here (bad, yes; but not the end of the world—shit happens). Far more problematic—and further proof of a user-despising attitude:

  1. The plugin was deactivated without querying the user. Correct behavior would be to inform the user and request his decision as to what should be done with the plugin.
  2. There was no non-trivial and well-documented way to re-activate the plugin. However, such a way should have been present, e.g. through a “re-activate” button in the plugin view—if need be, with a big warning sign and a “Are you really sure?” query.
  3. An already installed plugin, which was previously deemed safe, was de-activated without the plugin it self having changed. Normally, such judgment should only be passed during the original installation.* On the outside, it might be sensible to allow a manual override by the developers due to new information, e.g. in that something that was previously considered secure and friendly has since proved dangerous or hostile. This could take the shape of e.g. (depending on the feature/software/whatnot under discussion) a manual key revocation or a manual blacklisting.

    *For this type of check. Other checks, e.g. virus scans, might legitimately allow for later re-evaluation. There might also be other types of files, installations, programs, whatnot that might legitimately be treated differently (but no obvious example occur to me, off the top of my head).

  4. The deactivations took place during on-going browser sessions and (at least, the first time) the notification of deactivation was belated: The first sign that something was wrong was that pages behaved differently than they should; the notification came a little later. This opens security and other risks; e.g. with NoScript,* that the user visits an untrusted or unknown site believing that JavaScript is off, while it actually is on—which is a much, much greater security risk than that posed by an already installed plugin. To boot, NoScript comes with quite a few security protections other than JavaScript on/off, e.g. relating to “click jacking”—these, too, are disabled with the plugin.

    *It is hard to give general examples, because the exact consequences vary from plugin to plugin.

  5. This could only happen because Firefox makes connections behind the user’s back, giving him no say and no transparency. (In particular, I have my browsers set to manual updates only. If this had been a side-effect of a user-allowed security update, it would have been a little less problematic.) No application, browser or other, should make such connections without having informed the user and having received his permission. This for a number of reasons, including the principle of having the user in control, the risks to the users privacy, the added amount of data (which can still be an issue on e.g. a smart-phone), the possibility that the application misbehaves or malfunctions when no Internet connection is present, ditto when a company goes bankrupt/turns off a server/is blocked by an ISP, …

    (Unfortunately, very many other software-makers also do make such connections.)

Written by michaeleriksson

May 6, 2019 at 4:25 am

Pale Moon as a replacement for Tor Browser (or Firefox)

with one comment

With the continued deterioration of Firefox and the major recent or (for Tor Browser* users) up-coming changes, I have strongly considered moving away from the Tor Browser*. Specifically, I have had my eyes on Pale Moon, a complete fork of an older Firefox version, for a long time, but have held back because it was not available from the Debian repositories**.

*The Tor Browser is a derivative of Firefox, based on the “extended support releases” rather than the latest release. This implies that changes of various kinds are released later or considerably later than for Firefox it self.

**Implying that there would be more hassle to get it running, no way to get automatic security updates through the standard Debian mechanisms, etc.

I read up more in detail some weeks ago*, with the urgency rising, considering going for a switch anyway:

*The below contents are from my open browser tabs. There might have been edits, new posts, whatnot since then.

At first, it seemed to be a sufficiently strong candidate that I could see myself dropping the hardening provided by the Tor Browser in return for having a “better Firefox”. In particular, it promised not to duplicate Firefox’ absurd attitude towards the users (cf. e.g. [1], [2]). For instance, the FAQ claims:

Firefox is created with one-size-fits-all in mind; Pale Moon is created with efficiency and user choice in mind. These two approaches are mutually exclusive, […] Pale Moon also has a different set of goals as to what should be included in the browser and intended audience.

Pale Moon has a number of differences in the user interface and feature set to provide an as intuitive, predictable, logical and usable user interface as possible for the best user experience. […]

Note that Pale Moon will never adopt the Australis (Firefox 29 and later) interface and aims to remain a fully XUL-driven browser with full user interface customizability.

Also please note that Pale Moon has not run rampant with its releases […]

However, the official forums showed that Pale Moon might talk the talk—but it does not walk the walk. (I have particular concerns about the lead developer, “Moonchild”, but make reservations for the risk of misattributation.) Consider the following forum discussions (by no means a complete list):

  1. https://forum.palemoon.org/viewtopic.php?f=46&t=17619:

    The developers more-or-less force the users to give up the very, very valuable NoScript plug-in*, using the motivation that too many web-sites would break when it is turned on and that Pale Moon would be blamed by uninformed users—a truly Firefoxian move!

    *The use of “plug-in” and “add-on” in this text might be inconsistent. (Starting with my never quite having found out whether there is a difference in Firefox terminology and, if so, exactly what that difference is.)

    Since this is implemented through blacklisting of the plug-in, it appears that the only way to get the plug-in to work again is to turn off the blacklist entirely, which means a considerable unnecessary security risk… The flaws of this implementation, be it of the block, per se, or the blacklist, seem to be beyond the developers’ comprehension.

    The repeatedly displayed lack of insight to the criticism raised in the thread led to comments like

    This makes the whole idea of switching from Firefox a farce– it is replacing the arrogance of one party with the arrogance of another.

    You are the one who needs perspective, and people are going to be giving it to you. You will certainly not gain it though.

    (More complaints about this decision can be found in e.g. https://forum.palemoon.org/viewtopic.php?f=46&t=19119. This might at some point include the above, seeing that the moderators want to merge threads.)

  2. https://forum.palemoon.org/viewtopic.php?f=13&t=5647:

    Here a number of rules are given for those who want to suggest new features. While some of them are somewhat sensible, not all are, and the overall impression is not positive:

    Is the suggested feature specific to your workflow? If so, you have to think about how it would affect people who do things differently, and how many people are likely to use the same workflow you do. Evaluate your own browsing behavior before suggesting this kind of feature.

    This is not only very hard to check, but the attitude displayed here goes a long way in the direction of “if the majority does not use it, it should not be a feature”, which is a major problem with modern software—including the Firefox of the last years. (There is much positive to say about avoiding feature bloat, including easier maintenance; however, older Unix software has shown that it is possible to achieve tremendous functionality and flexibility without writing undue features, simply through the correct thinking. In contrast, most modern software falls on its face as soon as the user tries to do something other than the designers explicitly intended—which is often pitifully little and highly limiting.)

    Is the suggested feature culturally neutral? Keep in mind that Pale Moon users come from all walks of life everywhere in the world. Core features should apply to everyone and not be regionally or culturally bound where possible.

    This sounds like the worst type of Politically Correct crap: Either a feature makes sense or it does not. “Cultural neutrality” is not a valid criterion. (Note that e.g. a Bible-study helper or a find-the-way-to-Mecca helper would be, even without this guideline, too specific to make a useful feature, a prime example of something to put in a plug-in, and/or something that could be generalized to something more useful and culture neutral.)

    How “advanced use” is the suggested feature? While I wholly welcome power users and gurus to use Pale Moon, any added feature should still be easy to understand for most anyone.

    Again a fundamentally flawed approach from a software-development perspective: This ties the hands of the development and could cause a number of beneficial features not to be implemented. It would, for instance, have prevented the development of the features needed for plug-ins… To boot, the limit for “too advanced” is usually set far too low, as e.g. with Firefox and images on/off or, indeed, with Pale Moon and NoScript above…

    Are there multiple existing solutions to what the suggestion addresses? You can call this “technical neutrality”. If there are clear choices a user can make from e.g. existing add-ons to get the feature implemented in different ways, with different levels of granularity or catering to different situations, then the feature is likely less suitable for inclusion in the browser core. User choice is an important driver for Pale Moon.

    While I agree with the question, I find the explanation incomprehensible. For one thing, I am not certain that I understand what is meant; for another, the argumentation is contrary to expectations: If there are multiple existing add-ons to solve a problem, then that could very well be a sign that the functionality should be given a blessing as a core feature (or that some core feature should be made available to cover commonalities of the add-ons). The more solutions there are, the more popular the feature is likely to be, and the more duplication is caused by not having it as a core feature… Indeed, the question would be better as “Is there at least one existing solution to what the suggestion addresses?”, seeing that this is where the question gains its legitimacy.

    Does the suggestion improve overall quality of the browser? A suggestion for a core feature should improve overall quality or convenience for the user in the broadest sense of the word and applicable to a majority of the Pale Moon users.

    Again, a question that makes sense followed by an explanation that does not: This again commits the sin of ruling out features based on some version of “majority use” and rules many things out that would fulfill the question.

    Does the suggestion hinder the download and display of any content? Pale Moon should enable and promote the download of web content, not prevent it. This applies to any content, including commercial content that might be considered “superfluous” or “undesired”. As such, the Pale Moon browser core will not be a good place to put any “blocking” features (ad blockers, script blockers, etc.)

    Spurious reasoning: A good browser should serve to display content the way the user likes it. This includes having some ability to block content as a matter of course, including a minimum of e.g. images on/off*, JavaScript on/off, Cookies on/off, animated content on/off, movies on/off, sound on/off, and preferably e.g. a possibility to black-list based on a pattern. Indeed, many of these can be hard or impossible to implement without supporting core features… However, more advanced solutions, e.g. that provided by the NoScript plug-in are preferably to put in an add-on to avoid bloat. (But then the NoScript plugin is not available anymore…)

    *In some examples, there can be a question of whether the actual download or only the display should be prevented. However, one of the main reasons to block some types of contents is to reduce the number and size of downloads—especially for those who use Tor and see correspondingly slower downloads.

  3. https://forum.palemoon.org/viewtopic.php?f=13&t=19187:

    A post titled “The developers’ attitude” starts this thread thus:

    OK, you have to be the biggest asshole developers I’ve seen in a while. With this attitude you don’t deserve any attention or recognition whatsoever.

    The stupidity that stems from this is so immense that after I read it, its force was so strong a wind gushed from my monitor and pushed me back.

    I don’t care if you delete this thread or ban me, the important thing is that a moderator and maybe some users will read it before its deletion and you will get called out for the arrogant asshats you are.

    You need to stop with this attitude or even the few people that use your outdated, laughable FireFox forks will stop using it knowing you’re a bunch of douchebags.

    Unfortunately, there is no reason given for this opinion, but it is certainly not a good sign, especially when combined with the other threads mentioned.

    (The rest of the thread is, predictably, a flame war.)

  4. https://forum.palemoon.org/viewtopic.php?f=3&t=19696:

    Here a user has problems with a missing option to continue with a page display after a warning concerning certificates—a standard feature in modern browsers. The responses are not cooperative and the OP says:

    But in this case it was safe, as seen by the fact the page loaded if I followed a link to get to it. So, why does Pale Moon get to make the decision instead of me? Shouldn’t a manual override always be an option? Shouldn’t I have control over how I use the program?

    (An opinion that I support whole-heartedly: He should be in control, Pale Moon claims to want to put users in control, and not actually doing so is both user-hostile and hypocritical. Software should enable—not disable.)

    Most of the thread consists of a back and forth between users, who believe that they should be in charge, and developers, who believe that they know better…

  5. https://forum.palemoon.org/viewtopic.php?f=17&t=11659:

    Here the developers explain “why we prefer to not allow TOR relayed users to use our services”—using entirely specious reasoning: Because Pale Moon would not in any way be “personally or ideologically sensitive”, anonymity is not needed and the only conceivable use of Tor would be for illicit purposes like “abuse, spam and trolling”.

    This shows a fundamental lack of understanding for how anonymity on the Internet works and the problems relating to e.g. profile building and government surveillance—not to mention the potential extra effort to e.g. run multiple browsers. To boot, if all sites reasoned in this manner, only a fraction of sites would be usable with Tor, and Tor correspondingly be reduced to a tool for criminals/terrorists and vulnerable politicals, instead of the general anonymity tool it is supposed to be.

    Some other thread that I did not keep open also showed a complete misunderstanding of the advantages and disadvantages of Tor.

    For someone considering a switch from Tor Browser (or even Tor it self), this is not a good sign, especially since this type of naivete is likely to also manifest it self in the internal workings of Pale Moon, e.g. concerning what data is volunteered to various sites.

At least at this point of time, I would not touch Pale Moon with a ten-foot pole. For others, it might or might not be better than the original Firefox, but that is not a ringing endorsement… Tor Browser users should certainly stay with Tor Browser, even at the price of losing a few plug-ins. Sadly, the reason for my rejection is that Pale Moon manifestly does have the same user-despising philosophy as Firefox—quite contrary to the official claims.

Written by michaeleriksson

August 14, 2018 at 8:29 am

Follow-up: On Firefox and its decline

with one comment

Since my post on the decline of Firefox, the developers have released another “great” feature, supposed to solve the speed problem compared to Chrome and other competitors: Electrolysis* (aka. e10s).

*I have no idea how they came up with this misleading name. Possibly, they picked a word at random in a dictionary?

This feature adds considerable multi-threading capability and detaches the GUI from the back-end of the browser, thereby on paper making the browser faster and/or hiding the lags that do occur from the user.

In reality? In one browser installation* (shortly after the feature being activated) I had to disable this feature, because it caused random and unpredictable tab failures several times a day, forcing me to “restart” (I believe the chosen word was) the tab in order to view it again. Even the tabs that did not need to be restarted only displayed again with a lag every time another tab had failed. The net effect was not only to make the browser more error prone, but also to make it slower (on average).

*I have several Firefox (more specifically Tor Browser) installations for different user accounts and with different user settings, including e.g. separate installations for business purposes, private surfing, and my WordPress account. This to reduce both the risk of a security breach and the effects of a breach, should one still occur. As for why the other installations were not affected, this is likely due to the roll-out manner used by Firefox of just activating a feature in existing installations, based on an installation dependent schedule, instead of waiting for the next upgrade. Presumably, all the other installations had received upgrades before being hit by the roll-out. (This approach is both ethically dubious and a poor software practice, because it removes control from the users, even to the point of risking his ability to continue working. What if something goes so wrong that a down-grade or re-install is needed—with no working browser installed? This is very bad for the private user; in a business setting, it could spell disaster.)

Today, I had to deactivate it in another installation: After opening and closing a greater number of tabs, Firefox grew more and more sluggish, often only displaying a page several seconds after I had entered the tab, or showing half a page and then waiting for possibly 5–10 seconds before displaying the rest. This for the third time in possibly a week after my latest upgrade. (I would speculate on some type of memory leak or other problem with poor resource clean up.)

I note that I have never really had a performance problem with Firefox (be it with pure Firefox or the Tor Browser*) before this supposed performance enhancer, possibly because I use few plug-ins and have various forms of active content (including Flash and JavaScript) deactivated per default—as anyone with common sense should. This makes the feature the more dubious, because it has (for natural reasons) taken a very large bite out of the available developer resources—resources that could have been used for something more valuable, e.g. making it possible for plugins like “Classic Theme Restorer” to survive the upcoming XUL removal.

*Not counting the delays that are incurred through the use of Tor. I note that Tor is a component external to the Tor Browser, and that these delays are unrelated to the browser used.

Unfortunately, the supposedly helpful page “about:performance”, which was claimed to show information on tabs and what might be slowing the tabs down, proved entirely useless: The only two tabs for which information was ever displayed were “about:config” and “about:performance” it self…

Oh, and apparently Electrolysis is another plugin killer: The plugin makers have to put in an otherwise unnecessary effort in order to make their plugins compatible, or the plugins will grow useless. Not everyone is keen on doing this, and I wish to recall (from my research around the time of the first round of problems) that some plugins face sufficiently large obstacles that they will be discontinued… (Even the whole XUL thing aside.)

Now, it might well be that Electrolysis will prove to have a net benefit in the long term; however, we are obviously not there yet and it is obvious that the release(s) to a non-alpha/-beta tester setting has been premature.

Written by michaeleriksson

November 6, 2017 at 11:02 pm

On Firefox and its decline

with 6 comments

I recently encountered a blog post by a former Firefox insider discussing its declining market share.

When it comes to the important question “why?”, he offers that “Google is aggressively using its monopoly position in Internet services such as Google Mail, Google Calendar and YouTube to advertise Chrome.”—which cannot be more than a part of the truth.

If it were the entire truth, this would mostly show in new or inexperienced users going to Chrome instead of Firefox, those that have not yet grown accustomed to a particular browser.

Then why is there a drop among the long-term users? Those who have used Firefox for years? Those who (like me) first used the Firefox grandfather Mosaic well over twenty years ago and then graduated to its father, Netscape?

Things like that happen either because the competition grows better (or better faster) or because the own product grows worse. Indeed, this is what I have repeatedly experienced as a user: After Netscape, I switched to Opera for a number of years, because Opera actually was a better browser, especially with its tabs. Year for year, Opera failed to add new useful features and tried to force-feed the users poorly thought-through ideas that some manager or developer out of touch with his users saw as revolutionary. Eventually, I gave up and moved over to Firefox, which at the time did a reasonable job and had over-taken Opera—not because of its own qualities, but because Opera declined.

Unfortunately, Firefox has gone down the same destructive path as Opera followed, has grown worse and worse, and the only reason that I am still with Firefox is that I use the “Tor Browser Bundle”, which is based on Firefox and recommended as the safest way to use Tor by the Tor developers.

To list all that is wrong with Firefox and its course would take far too long—and would require digging through many years* of memories of “for fuck’s sake”–memories.

*I am uncertain how long I have been using Firefox by now. In a rough guesstimate, the Opera-to-Firefox switch might have occurred some ten years ago.

However, to list some of the most important (often over-lapping) issues:

  1. The removal of preferences that should be standard, e.g. the ability to turn images and JavaScript on and off. If these remain at all, they are pushed into the infamous, poorly documented, and unreliable “about:config”—the use of which is strongly discouraged by Firefox.

    When such preferences are removed (respectively moved to “about:config”) the handling can be utterly absurd. Notably, when the setting for showing/not showing images in web pages was removed, the Firefox developers chose to defy the stated will of the user by resetting the internal setting in about:config to the default value…

    To boot, config switches that are in “about:config” often stop working after some time, merely being kept to prevent scripts from breaking, but no longer having any practical function. Among the side-effects is that someone finds a solution for a problem on the Internet, alters the configuration accordingly—and has to spend half-an-hour researching why things still do not work as intended. (The reason being that the solution was presented for an earlier version of Firefox and Firefox failed to make clear that this solution was no longer supported.)

  2. Forcing users to download add-ons to handle tasks that a good browser should have in its core functionality, while adding nice-to-haves appropriate for an add-on to the official interface… (The “sync” bullshit is a good example.) Worse: Not all add-ons are compatible with each other (or with every Firefox) version, making this road unnecessary problematic, with results including even browser crashes. To boot, any additional add-on increases the risk of a hackable vulnerability, data being leaked to a hostile third-party, or similar.
  3. Failing to add functionality that would be helpful, e.g. a possibility to disable the design atrocity that is “position:fixed” or a user-friendly mechanism for mapping keys.
  4. One truly great (and expectedly oldish) feature of Firefox is the ability to save tabs and windows when exiting or the browser crashes and have them restored on the next start. This especially since Firefox crashes more than most other applications.

    Unfortunately, the configuration of this feature is a bitch (and probably disabled by default). There are at least two (likely more; it has been a while since I dealt with this the last time) flags that have to have the right value for this to work—one of which should rightly be entirely independent*. The names of these settings in about:config and the description in the GUI are non-obvious, more-or-less forcing a user to search the web for information—if he is aware that the feature exists in the first place. And: In several releases this feature has been so bug ridden that no combination of settings has worked…

    *The one appears to control the feature; the other controls whether a warning is issued when a user tries to close more than one tab at a time. When the latter is disabled, which is very reasonable even for someone who uses the former, the former is ignored…

    Worse, without this functionality a simple “CTRL-q” just quits the browser—no confirmation, no tabs saved. For a power surfer who regularly has dozens of tabs open at the same time, this is a major issue. This is the worse since someone heavy on tabs is almost certainly a frequent user of “CTRL-w”* and there is no good native way to change key bindings—amateurish!

    *I.e. “close the current tab”. Note that “w” is next to “q” on a standard QWERTY-keyboard, making the likelihood of occasional accidents quite high.

  5. The config management is lousy.

    For instance, Firefox started with the Windows style concept of “one user; one configuration” and never added provisions to e.g. specify config files on the command line. Among the negative side-effects is the later need to invent the redundant and poorly implemented concept of a “profile”—confusing, user-unfriendly, and bloating the code.

    For instance, “about:config” provides many, many options of the type normally found in a config file, that could have been edited with a text-editor much more comfortably than over the about:config interface. However, this opportunity was not taken and the users are stuck with about:config. Actually, there are some type of files, but these are absurd in comparison with those used by most Linux applications—and it is very, very clear that users are supposed not to edit them. (Statements like “Do not edit this file.” feature prominently.) For example, Firefox uses user_pref(“ui.caretBlinkTime”, 0); where any reasonable tool would use ui.caretBlinkTime=0.

    For instance, there is so much secrecy about and inconsistency in the configuration that the standard way to change an apparently simple setting is to install an add-on… (Also cf. above.) Where a user of a more sensible application might be told “add x=y to your config file”, the Firefox user is told to “install add-on abc”…

    For instance, copying the configuration from one user to another fails miserably (barring subsequent improvements), because it contains hard-coded paths referring to the original user.

    For instance, it used to be the case that a Firefox crash deleted the configuration, forcing the user to start over… (This was actually something that kept me with Opera for a year or so after I was already thoroughly feed up with it.)

  6. The support for multi-user installations, the standard for Linux and many corporate Windows installations, is weak and/or poorly documented. The results include e.g. that all users who wants to use popular add-ons have to install them individually—and keep them up-to-date individually.

    (Disclaimer: I looked into this on several occasions years ago. The situation might have been improved.)

  7. There are a number of phone-home and phone-third-party mechanisms that bring very little value, but often pose a danger, e.g. through reducing anonymity. This includes sending data to Google, which I would consider outright negligent in light of Google’s position and how it has developed over the years.
  8. The recent, utterly idiotic decision to drop Alsa support in favour of Pulse on Linux. This decision is so idiotic that I actually started to write a post on that topic alone when I heard of it. Most of what I did write is included as an excursion below. (Beware that result is not a full analysis.)
  9. The address bar started of very promisingly, e.g. with the addition of search keywords*. Unfortunately, it has so many problems by now that it does a worse job than most other browsers—and it grows worse over time. The preferred Firefox terminology “awesomebar” borders on an insult.

    *For instance, I have defined a keyword so that when I enter “w [something]”, a Wikipedia search for “[something]” is started. “ws [something]” does the same for the Swedish version of Wikipedia; “wd [something]” for the German. (I have a number of other keywords.)

    Among the problems: If a page is loading slowly and I re-focus the address bar and hit return again, the obvious action to take is to make a new attempt to load this page—it does not: It reloads the previous page! The history suggestions arbitrarily excludes all “about:” entries and all keyword searches—if I search with “w [something]” and want to switch to “g [something]”*, I have to retype everything. Per default, for some time, the history functionality is weakened through not listing the potential matches directly, but preceding them with annoying and useless suggestions to “visit” or “search” that only delay the navigation and confuse the users. Moreover, while there used to be working config flags to disable this idiocy, there are now just config flags (that do not work)…

    *Used to mean “search with Google” a long, long time ago; hence the “g”. Currently, I use duckduckgo.

  10. The layout/design and GUI (including menu handling) have been drastically worsened on several occasions.
  11. Many of the problems with Firefox can be remedied with “Classic Theme Restorer” (an absolute life-saver) or similar “user empowering” add-ons. Unfortunately, these all use the “XUL-framework”*, which Firefox has decided to discontinue. There is a new framework for add-ons, but it does not support this type of functionality (whether “yet” or “ever” is not yet clear). Many of the most popular add-ons, including “Classic Theme Restorer”, will therefore not be able to provide the full scope of functionality and at least some of them, again including “Classic Theme Restorer”, will be discontinued by their developers when XUL is turned off.

    *In a twist, XUL was once considered a major selling point for Firefox.

    My poor experiences with Firefox and the absurd attitudes of the Firefox developers might have made me paranoid—but I cannot suppress the suspicion that this is deliberate, that the add-ons that allow users to alter the default behaviors are viewed as problems, as heretics to burn at the stake.

To this should be added that since the switch from a “normal” versioning scheme to the idiocy of making allegedly major releases every few months*, the feature cramming has increased, with a (very predictable) increase in the number of run time problems. The Firefox makers were convinced that this would turn Firefox from a browser into a super-browser. In reality, this only resulted in hastening its demise—in much the same way that a TV series fighting for its survival ruins the good points it had left and drives away the remaining faithful**. If in doubt, most people who try to jump the shark are eaten…

*I.e. making version jumps of 44 to 45 to 46, instead of 4.4 to 4.5 to 4.6 or even 4.4.0 to 4.4.1 to 4.4.2.

**A topic I have been considering recently and intend to write a blog post on in the close future.

Sadly, the delusional author of the discussed article actually makes claims like “Firefox is losing despite being a great browser, and getting better all the time.”—turning the world on its head.

Excursion on the competition:

Unfortunately, Firefox could still be the lesser evil compared to the competitors. Chrome/Chromium, e.g., has many strengths, but configurability and adaptabtility to the user’s needs are not among them; on the contrary, it follows the deplorable school of achieving ease of use through reducing the controllable feature set—the equivalent of Apple’s infamous one-buttoned mouse. Chrome is entirely out of the question for anyone concerned with privacy; while its open-source sibling chromium (in my possibly incorrect opinion) trails Chrome in other regards. I have not tried Opera for years; but combining the old downwards trend (cf. above) with the highly criticized platform shift that almost killed it, I am not optimistic. Internet Explorer and Edge are not worthy of discussion—and are Windows only to begin with. Safari, I admit, I have never used and have no opinion on; however, it is Mac only and my expectations would be low, seeing that Apple has pioneered many of the negative trends in usability that plague today’s software. Looking at smaller players, I have tried possibly a dozen over the years. Those that have been both mature and user-friendly have been text-based and simply not worked very well with many modern web sites/designs, heavy in images and JavaScript; most others have either been too minimalistic or too immature. A very interesting concept is provided by uzbl, which could, on paper, give even the most hard-core user the control he needs—but this would require a very considerable own effort, which could turn out be useless if the limited resources of uzbl dry up.

Excursion on the decline of open source:

It used to be that open-source software was written by the users, for the users; that the developers were steeped in the Unix tradition of software development; that they were (on average) unusually bright and knowledgeable; … Today, many open-source projects (e.g. Firefox, Libre-/OpenOffice, many Linux Desktop environments) approach software development just like the commercial firms do, with an attitude that the user should be disenfranchised and grateful for whatever features the projects decided that he should like; quality is continually sacrificed in favour of feature bloat (while central features are often still missing…); many of the developers have grown up on Windows or Mac and never seen anything better; … Going by the reasoning used by many Firefox developers in their bug tracking tool, Firefox appears to have found more than its share of people who should not be involved in software development at all, having poor judgment and worse attitudes towards users.

Excursion on Pulse:

(Disclaimer: 1. The below is an incomplete version of an intended longer analysis. 2. At the time the below was written, I had a few browser tabs open with references or the opinions of others that I had intended to include. Unfortunately, these went missing in a Firefox crash…)

The reasoning is highly suspect: Yes, supporting two different sound systems can be an additional strain on resources, but this decision is just screwed up. Firstly, they picked the wrong candidate: Pulse is extremely problematic and malfunctioning so often that I would make the blanket recommendation to de-install it and use Alsa on almost any Linux system. Moreover, Pulse is not a from-scratch-system: It is an add-on on Alsa and any system using Pulse must also have Alsa installed—but any system can use Alsa without having Pulse. Not only will more users have access (or potential access) to Alsa, but good software design tries to stick with the smallest common denominator to the degree possible. Secondly, at least one abstraction already exist that is able to abstract multiple sound systems on Linux (SDL; in addition, I am semi-certain that both Alsa and Pulse provides backwards compatibility for the older OSS, which could have been used as a workaround). Thirdly, if none had existed, the proper Open Source way would have been to create one. Fourthly, a browser maker who tries to dictate what sound system a user should use have his priorities wrong in an almost comically absurd manner. (What is next? KDE only? Kaspersky only? Asus only?) Notably, there are very many Linux users who have made a very deliberate decision not to burden their systems with Pulse—and have done so for very good reasons*.

*Including how error prone it is, a too-high latency for many advanced sound users, the wish for a less bloated system, or Pulse’s straying too far from the classical principles behind Unix and Open Source software. Do an Internet search for more details on its controversy.

A particular annoyance is that the decision is partly justified by the claim that statistics gathered by Firefox’s phone-home functionality would indicate that hardly anyone used Alsa—which is extremely flawed, because many Linux distributions and individual educated users disable this phone-home functionality as a matter of course. Since the users who have a system with phone-home enabled are disproportionally likely to be unlucky/careless/stupid enough to also use Pulse, the evidence value is extremely limited.

Written by michaeleriksson

July 26, 2017 at 9:51 pm

On my inactivity and human stupidity

with 5 comments

Even after returning to the Internet almost a year-and-a-half-ago I have published (or written, for that matter) very little. There are several reasons for this, including that I have decided to and benefited from cutting down on my “extra curriculars” in favour of more post-work relaxation and that I grown more and more critical as to what I consider a text worthy of publishing and a thought worthy of writing up in the first place—to the point that I must force myself to artificially lower my criteria, lest I remain silent.

The greatest reason, however, is something very different: Sheer frustration with the stupidity of most humans, with the way those more in need of feedback are correspondingly less responsive to it, and with how many of the greatest ignorants are sure of their own (imagined) knowledge and understanding. (Including the important special cases of incorrectly believing that knowledge or experience automatically implies understanding, failure to realize that understanding is almost always the more important of the three, and entirely overlooking that none of them is worth much without actual thought.) My activities in the Blogosphere have been particularly unrewarding and frustrating, and it has been a long time since I had a non-trivial activity there.

It is no coincidence that there are many sayings or quotes expressing the principle that the fool is cock-sure and the wise man doubts—nor that the Dunning–Kruger principle has gained fame among those who do think. (Executive summary of Dunning–Kruger: Ability at A goes hand in hand with the meta-ability to judge ability at A.) Indeed, one of the few things that give me some amount of personal pride is simply that I belong to the small minority of people actually willing to actively challenge their own opinions and modify them as time goes by.

The examples of this are very common and the effects extremely demotivating to me. It is proverbially better to light a candle than to curse the darkness (and I have long tried to live by this claim), but there simply comes a point where it is hard to keep it up—especially, since there are many ignorants not only impervious to candle light—but who actively put out candles lit by others. Those who are familiar with my writings will know that I have written a lot about censorship—and the sad truth is that there are many blogs (notably feminist ones) who simply censor comments that have a dissenting view. This includes even polite comments using factual arguments, links to statistics, pointers to logical errors, … Indeed, often the comments that are the more likely to convince a third-party are the ones preferentially censored… Specifically in the realm of political correctness (in general and to some degree) and feminism (in particular and to high degree), there appears to be no willingness to actually look for the truth. Instead, pre-formed claims are pushed with great insistence, even when no more justified than e.g. the claims of a creationist: Both kinds live in their own special world where some things just have to be true because else they would find themselves in another world or have to face possibilities that they cannot cope with. Scientific proof, logical arguments, whatnot, are all secondary: The truth that these point to is abhorred and therefore they must, ipso facto, be faulty. It is inconceivable that God did not create the world; it is inconceivable that differences in outcome could have any other explanation than differences in opportunity. Anyone claiming otherwise is uninformed and should let himself be enlightened—or an evil liar deliberately trying to ruin the game, a heretic, a sexist, … Meanwhile, those wishing to “enlighten” the dissenters typically give ample proof of their own ignorance, undeveloped ability to understand arguments, and lacking prowess with critical thinking. A particular annoyance is the constantly recurring claim that those who criticize feminism (more specifically gender-feminism and feminist populism) are ignorants who must be exposed to the truth—when most critics (at least in Sweden) actually grew up under feminist indoctrination, long took feminist claims to be true, and only over time developed a more nuanced world view, by means of critical thinking, exposure to more scientific information, personal experience contrary to the feminist world-view, and so on: If the feminist claims about e.g. rape statistics, domestic violence, earning capacity, discrimination against women, …, were true, then almost everyone would be feminists—but I have over time learned that these claims for the most part are invalid. (For varying reasons for different cases, but often including hiding vital details that radically change the interpretation of data, misreporting of data, use of unsound methodology and non-standard definitions, statistics extrapolated to different areas or times without verification of relevance, and even statistics simply made up.)

These problems, however, are by no means limited to the Blogosphere, nor to the politically correct or any other ideology or religion. No, stupidity, irrationality, incompetence, and so on, permeate the world and all its aspects, the main question often being whether a certain phenomenon is explained directly or just indirectly by such factors: Is the advertising industry filled with idiots or does it merely try to convince idiots? (I suspect that it is a bit of both: People of highly disputable competence and judgment trying to preferentially convince the most stupid, irrational, and uninformed consumers.)

Even in software development, stereotypically associated with the gifted and the border-line autistic, there are few who have the competence level they should have and many who have a good standing through social relationships and despite their lack of skill. About five in ten of the colleagues that I have worked with have been so poor that I would simply not have considered them an option, had I been setting up a new team. No more than one in ten is someone I would give a blanket “yes”. Another one in ten may be a border-line case, picked or rejected depending on the available alternatives. The remaining three might do if nothing else is available and a sufficient mentoring and reviewing could be guaranteed. Even those worthy of a “yes” are typically lacking of the competence they should have, for the simple reason that they have the competence level of a worthy developer—but typically work as lead developers. Notably, most of them have a very limited own understanding, instead basing their decisions on rules, recommendations, or things that they have read somewhere without giving sufficient thought to e.g. why the recommendation is made and when it does not apply because the underlying cause for the recommendation is irrelevant. For instance, The lead-developer of a team that I was assisting a while ago was highly surprised by the suggestion of replacing an ugly set of conditionals with a look-up in map—apparently, he was unaware of this obvious and well-established technique that even a junior should (but rarely does) know. Going outside the “yes” developers and the border-line cases, things deteriorate very rapidly. The average developer has no feeling whatsoever for what makes good and poor code, does not use the benefits of polymorphy over if-statements, uses copy-and-paste when he should write a new method or class to abstract the same functionality, writes test cases that are next to useless through checking the implementation instead of the interface, …

It is the same with other professions—software developers still do better than most other groups. Looking at most business graduates I have dealt with, I marvel that they actually did graduate… Most are lacking in knowledge, almost all are devoid of understanding, and areas such as critical thinking are uncharted territories. Large egos and great efforts to create an appearance of competence are more common.

A particularly frustrating problem: The few of us who actually do strive for understanding often see problems, opportunities, solutions, …, that others do not. However, because the ignorants are in the majority, the minority is considered lacking… (E.g. through being seen as obsessing with unimportant details when these particular details actually are important, or as being wrong in a dispute for lacking some insight of the majority—but where the reason for disagreement is that the minority has this insight and several more that the majority is lacking…) A project I worked on last year had me crawling up the walls for frustration for this reason (in several areas, but mainly with regard to Scrum):

I had spent some considerable time deepening my knowledge and understanding of Scrum and was actually enthusiastic (rarely happens with me…) about testing this and that, in particular seeing what gains might be possible through systematic inspect and adapt. My efforts where almost entirely blocked by a team that had no understanding of Scrum but merely followed a certain formulaic approach, leaving inspect and adapt (the very core of Scrum) entirely by the wayside. This regrettably extended to both the Scrum Masters that the project saw: The first had masterly conned large parts of the company into believing she was a true expert, making anything she said an ipse dixit during any discussion. In reality, she was a disaster in her role, not merely through failing to understand inspect and adapt, but also through failing Scrum in several critical regards, notably including trying to prescribe what the developers should do and how they should do it (and not limited to Scrum at that). The second had no previous Scrum background, but went through a crash course consisting of tail-coating number one for two weeks combined with some informal tutoring of the blind-leading-the-blind kind. Discussions with her were even less productive, with an even more limited intellect and the one implicit argument of “number one said and number one is the expert”. No: Sorry, the only one in the project who had any claim whatsoever of being a Scrum expert was yours truly—I was the only one who had bothered to go beyond superficial knowledge and actually gain an understanding of the principles and ideas, as well as the only one who seemed to actually evaluate how well or poorly something worked.

Many examples of how stupidity rules the world can be found in the UIs of modern software programs, with explanations coming to a high degree from the made-for-idiots camp, but also, if to a lesser degree from the made-by-idiots camp (e.g. through not understanding the benefits of separation of concerns, not having knowledge of alternate paradigms, or undue prejudice against e.g. command lines). Take web browsers: For a considerable part of the post-2000 period, I was a dedicated Opera user—Opera delivering superior functionality and speed. However, for each subsequent version, Opera grew less and less user-friendly, to the point that I threw up my hands in anger and reluctantly switched to what seemed the least of the many evils: Firefox. Unfortunately, Firefox has continued with the same user-despising trend as Opera. Negative developments include, but are by no means limited to, removing the options to turn images and JavaScript on/off from the GUI, necessitating a visit to about:config, or reducing the usability of the image filtering severely by removing the generic black-/white-list system in favour of a rights system where rights can only be set for the domain of the current page (but not for e.g. a domain that provides images displayed on that page). Worse, as I recently discovered during the update of an older system, when these were left in the “off” position in a version that had the toggle in the GUI, an upgrade to a version with the toggle in about:config would automatically, without asking the user, and in direct violation of reasonable expectation, turn them on again—absolutely inexcusable! Generally, Firefox has a severe usability problem through forcing central functionality into unofficial plug-ins that have to be installed separately. Yes, plug-ins are great. No, it is not acceptable to move functionality central to the product to plug-ins or to force the user to install a plug-in for something that should be done through a setting. (However, installing a plug-in to provide a more advanced version of the central functionality is acceptable. A JavaScript on/off switch is a must in a browser, and a per site toggle very highly recommended, but the full functionality of the NoScript plug-in is legitimately put in a plug-in.)

While Firefox removes central functionality, it also includes more and more non-central functionality that rightfully should be (but is not) in a plug-in, e.g. the “sync” functionality. Or what about the many, many URLs that can be found under about:config for a variety of unspecified tasks, some of which is highly likely to include unethical “phone-homes” or definitely expose data to Google (a by now entirely untrustworthy third party)?

One of my main beefs with Firefox since day one has not improved one iota over possibly some five years: I like to run different instances of browsers for different tasks (at home using different user accounts, at work at least using different profiles). Under Firefox this means a lot of unnecessary work. For instance, installing a certain plug-in for all users is not possible (resp. there is an alleged way, but it is poorly documented, it is non-obvious, it requires far more work than a single-user installation, and it, judging by my one attempt a few years back, simply does not work). Profiles, in turn, are very poorly thought-through, having no official means to copy them, requiring command-line intervention to run more than one profile at any given time, and, when push comes to shove, merely solving a problem that would not have existed in the first place—had Firefox made proper use of config files. If it had, one could just tell it to use the settings from file A for this instance and File B for that instance, with no additional programming or a cumbersome profile concept. Whether using profiles or additional user accounts, a major issue is to have to go through a good many settings for each instance: Settings is the most natural thing to export and import between parallel instances—but this is not allowed. What Firefox provides is a means to export bookmarks and similar—but that is near useless for any practical use. (Yes, this could be handy when e.g. moving from computer A to computer B. However, then I would most certainly want the settings too. For parallel use, in contrast, the settings are far more important: I may need to alter one or two individual settings between instances, but the website visited will be almost entirely disjunct.)

One of the most atrocious examples of stupidity is the German “Energiewende”: A massive and costly intervention has been made to move energy consumption and production to “renewable energies”, and many criticize it already for the costs or the many implementation errors that have unnecessarily increased the cost or distributed it unfairly. Personally, I could live with the costs—and have to admit that the increase in renewable production capacity has been far more successful than I thought it would be. Unfortunately, there is one major, disastrous, and incredibly counter-productive catch: The production form which has been replaced is almost exclusively nuclear power—while the use of “fossil fuels” (especially coal) has actually increased (!). In other words, the net-effect of this massive and costly intervention is increased pollution… (Notably, very few people are aware that fossil fuels do far more damage to the environment and cause far more human deaths on a yearly basis than nuclear power has in its entire history, including the accumulated effects of Chernobyl and Fukushima.)

I could go on and on from a virtually endless list of examples, causing the writing of this article continue for far too long and ensuring that almost all potential readers will have the feared “to long; did not read” reaction. (Not that I have any illusion about the proportion still reading, even as is.) Instead, I prefer to make a cut here, but I will make some honourable mentions that I had originally intended to include with one or several paragraphs each:

  1. Deutsche Bahn (“German Railways”) demonstrates so much incompetence on a daily basis that I could write several articles on that topic alone.

  2. Museums used to be a way for those with an interest to actually learn something. Today they are rapidly degenerating into cheap entertainment–and they pride themselves with their “family friendliness”, which means that those who try to learn have to cope with children running around and screaming without anyone intervening. In many ways, what the typical museum of today does, is antithetical to the purpose of a museum…

  3. The abysmal state of groups like journalists and teachers, who should be among the intellectual elite and are so often so embarrasingly poorly informed and poor at thinking.

  4. Belief in various superstitions and pseudo-sciences, e.g. astrology, homeopathy.

  5. The lacking queue management in stores where a further checkout-counter is only opened when the queue is already several times as long as it should be—not when it becomes clear that the queue is starting to get out of hand.

Written by michaeleriksson

October 13, 2014 at 8:48 pm

Abandoning Opera

with 6 comments

For at least eight years, I have been an Opera user—and for much of that time, I have considered it the best browser around and strongly recommended it to others.

Today, I throw Opera at the metaphorical garbage heap, to focus instead on Firefox. This following a transitional period of roughly six months, where I have been using Opera and Firefox in parallel.

Why so?

Well:

  1. Firefox has improved over the years. Most importantly: It no longer deletes (!) the config files when it crashes—an inexcusable programming error, which was present for at least several years (and which has been a strong influence in my repeatedly interrupting experimental Firefox use in the past).

  2. Firefox has a great number of plugins. While most of these are of no value, some are extremely useful, notably Vimperatorw and NoScriptw. Opera has very little “external” functionality, which makes it crippled in comparison (a plug-in framework of some sort was recently announced, but the success is too uncertain and the time frame too long to sway me).

  3. On that line: Firefox has Vimperator…

  4. Opera has a number of annoying behaviours, e.g. concerning the address bar (which tends to grab focus when it should not and keep focus after it has been told to let go).

    Specifically, the last straw that now makes me abandon Opera: Today, I loaded about a dozen tabs from an unusually slow website. I moved onto the first tab, with a half-loaded page, pressed the space bar to jump over a contentless introduction—but instead of jumping downwards, the address was overwritten with a space. (Incorrect initial focus.) I then clicked on the page, switching the focus to where it belonged, and pressed space again—only to see yet another space added to the address bar. (Counter-intuitively, two clicks are required to “unfocus” the “activated” address bar.) Within a few minutes, this repeated on most of the remaining tabs—and since this was the umpteenth time this happened, the last straw was in place.

    (Should I not have known better and adapted? Possibly, but using a computer is a largely automatic procedure with me: If I wish to scroll down, my fingers do the right thing without thought, just like my legs do the job of turning a corner without thought. If someone or something screws with standardized behaviour, I am thrown off. Consider trying to turn a corner when the legs go in the opposite direction of what they do on a normal day…)

  5. Opera has a user-despising attitude to features of “we know best”, “the more, the merrier”, and “let us shove the features down the users throat”. (A common problem in world of software, see also my writings on software development.) Notably, these problems have become worse from release to release, and (in some ways) Opera is actually deteriorating.

    The worst example is possibly “fast forward”—a function that when activated tries to jump to the next page (according to some heuristic). This is not a bad thing in itself (at least, were it more accurate…); however, this function has been mapped to a number of keys in a non-standard way—including the space bar. Now, the space bar, in a text-reading context, means “scroll one page down in the current document”, in a tradition going back to at least the 80s and used in all browsers I have ever made more than casual use of. In Opera, the meaning has been altered using fast forward to “scroll down or skip to what I incorrectly believe to be the next document”. Not only does this break standard in-document navigation, but it is also extremely confusing, because the user is never told about this non-standard behaviour.

    (Generally, Opera has many odd and unexpected key mappings.)

    A more subtle, and largely unknown, example is “fraud protection”: Unless explicitly de-activated, this feature “dials home” concerning every site visited (!) to check the credibility of the site. This is done with good intentions, but causes unnecessary time delays, opens a very wide gate for abuse, and brings little benefit in practice: Before I found out and turned it off, I cannot recall it giving me as much as one single warning…

  6. Two strong arguments for Opera in the early days, speed and tabbed browsing, are moot today: Tabbed browsing is standard, and any speed advantage Opera has is rarely detectable in practice—and Chrome is alleged to be even faster. (Do no use Chrome, however: There are too many potential security problems.)

  7. Opera is a commercial tool, while Firefox is Open Source. Now, I am not ideologically bound to the use of Open Source software, let alone Free software; however, my experiences have shown great advantages with Open Source, including faster bug fixes, higher quality, and a greater consideration for power users. Further, while I have seen no signs of malicious abuse using Opera (e.g. spying on users), it can never be ruled out—and is a very real possibility for the future. Firefox, in contrast, would be exceedingly unlikely to even try something like that—and would be unable to do so for long without being exposed.

  8. If I have not made the point: Firefox has Vimperator.

The two things still speaking for Opera: Firstly, it has a few very handy functions (e.g. “fit to width”), which Firefox still lacks or only gives an inferior emulation of, with our without plugins. However, these are things that can be sufficiently worked-around to avoid a knock-out victory’s over-coming the heavy point deficit in the twelfth round. The one severe weakness that Firefox has is the lack of a decent tool to match keys to functions—but Vimperator solves parts of that problem. Secondly, Opera does run better out of the box (after some time has been spent on de-activating various features) and has an easier configuration. However, this short-term advantage does not carry-over to the long-term.

Written by michaeleriksson

November 2, 2010 at 3:03 am