Second Firefox 3.1 beta under starters order
As Firefox 2.x disrobes anti-phishing and heads for retirement
A second beta release of Firefox 3.1 is on the starting blocks, with the publication of an almost ready version of the latest edition of the open source browser due in days. A third beta is expected before Mozilla ships a final version of the software next year.
As Firefox 3.1 approaches the horizon, version 2 of the browser heads for the knackers' yard.
Laggards still running Firefox 2.x will be prompted to upgrade to version 3. One further upgrade from the current version, Firefox 188.8.131.52, to 184.108.40.206 is due before the funeral march sounds. The final update to Firefox 2.x will remove built-in anti-phishing features, which rely on now obsolete code. Anti-phishing features in both Firefox 2.x and 3,x come from Google, the firm that's also Mozilla's main source of income. ®
I'm well aware of the pitfalls that one expects from Alpha/Beta software, but that isn't my objection.
I got a copy when it was bleeding edge alpha, and it ran like a bloody dream. Sure, it crashed quite regularly, but that didn't matter to me, I could use my extensions (with little modification), the Firefox UI and above all, browse with, at least the responsiveness I was enjoying 3 years ago from Firefox 1/IE6
And then they started to Upgrade it and it went from buggy, but brilliant, to stable and absolutely-fucking-useless.
If you'd told me in 2003 that in 2008 the standard browser would use in excess of 500mb of RAM, I'd have laughed at you.
The Geko engine is brilliant, but Firefox is a horrible inner platform that needs snuffing out as soon as possible.
Hardware's got cheap, and we've got lazy. Back when they were coding Doom for i386, every single CPU cycle counted. Every. Single. One.
Now don't get me wrong, I like higher level languages and the speed and ease of use they afford us, but we're in real danger of forgetting the basics and jumping right into the Microsoft & Intel lead circlejerk that requires us to buy new hardware every 6 months, only to run software that is FUNCTIONALLY THE SAME it's predecessors. To me, this seems stupid.
> ... although I maintain that the AwesomeBar should, like any UI enhancement, be disableable from the standard "Preferences" menu...
entirely agree, and that should probably have been picked up in user testing. And I can't blame you for getting pissed off.
Actually I think the name AwesomeBar should be disableable from the preferences menu.
> However, I need to point out one small problem: [grepping three meg of ASCII + opera is faster]
> See, that would be fine, in theory, but I tested this in Opera by importing my entire bookmarks collection into it. And I got absolutely no lag whatsoever there. None.
Well, according to this <http://dev.opera.com/articles/view/indexing-and-searching-in-opera-with-ope/> opera uses a (fully?) inverted index; meaning that effectively it indexes all words. I don't think it's a difficult, but it has a potential disadvantage, that it will find words very quickly, but not parts of words (unless it's a bit clever, but I don't know). For example, and you can test this yourself in Opera and let me know, if in Firefox I start typing into the address bar "ws fro" I am quickly presented with the BBC site, as this matches the full description of that site, which is "News front Page". Does something similar work in Opera? I suspect not, if the above description of operas indexing is correct.
I don't think it's a big gain, to be able to provide this kind of matching at the expense of a lot of speed, because you have to grep through the entire text potentially looking for part-words, which is slow...
I did actually wonder about that. It's obviously possible to index words, but it's also feasible in theory to pick out and index every possible sub-string in the bookmarks file. I thought I'd take a look.
I took my own bookmark index, about 1.5 meg, chopped out the most obvious irrelevant markup, and collected every possible substring between two and 12 characters long (I picked those lengths arbitrarily, you don't want to index down to single characters, and 12 characters is pretty good).
That gave me a file of about 15 meg containing about 1.5 million unique substrings. That's manageable by any database, but still excessive.
I then repeated that but substrings would break at spaces and other obvious end-of-word characters, so I would get words and every possible sub-word (up to length 12 anyway).
This gave me a file of about 1 meg containing about 115,000 unique words or parts thereof.
Now, that is quite reasonable to index, and would give you something resembling the Opera behaviour, and as quickly, but as it also contains substrings it would be feasible to pick out every document containing parts of words, so in the above example if I typed in "ws fro" I could pick out every document which contains *both* of those pieces and present those to the user. It would still be extremely quick.
If you actually want to look into this kind of stuff, well, I've had a quick gander at sqlite and although it's a toy database compared to the industrial grunting monsters I'm used to, it's a rather impressive toy and I wouldn't mind having a try at using it. If you want to experiment with this kind of thing, let me know. It would be a good excuse to play with sqlite.
Thanks for your suggestions about duplicating bookmarks, I can live with it at the moment and a few extensions I've got in my browser, the better for stability.
(By the way I think there may be some data structures which allow you to index all possible substrings efficiently, suffix trees? That thing in column 13, programming pearls, (John Bentley)?)
You make some fair points, although I maintain that the AwesomeBar should, like any UI enhancement, be disableable from the standard "Preferences" menu, out of politeness to the user if nothing else. And I think I went off on you perhaps a little unfairly.
However, I need to point out one small problem:
>Either way, 3 MB of ASCII have to be grepped. That is going to take time. Nothing you can do about that except... indexes? As you can now bookmark with tags/keywords, these can be indexed trivially (because indexes come with databases), so you have a potential win.
See, that would be fine, in theory, but I tested this in Opera by importing my entire bookmarks collection into it. And I got absolutely no lag whatsoever there. None. And Opera doesn't use a database. So I admit that this isn't a very scientific test, but it strongly suggests to me that whatever the Mozilla crew are doing wrong is NOT in the file-format they're using. And I did try very hard to find some programs that would let me deal with the new bookmarks DB directly, but I just couldn't make it work - I gave it a week, and concluded that I wasn't prepared to invest the effort necessary to become a database geek. At that point I gave up and went back to FF2, which works. (There were a bunch of other UI irritations, but I can't remember them anymore...)
On the other hand, yeah, tagging your bookmarks instead of arranging them hierarchically probably does take a database.
There is, by the way, a pretty good Firefox extension called "Bookmark Duplicate Detector" that does a great job of telling me when I'm adding a bookmark that's already stored. I haven't found a good program for going through and sifting duplicate bookmarks on linux, but on Windows, I highly recommend AM-Deadlink. Both of which, I suppose, won't work at all with FF3...