Firefox

Google Chrome First Impressions

Send to Kindle

Before I begin, for the record, I love Firefox, and continue to use it as my primary browser. I also have IE7 and Safari installed (I’m running Windows XP Pro).

Of course, I had to try Google Chrome, even though it wasn’t touted as being ready for Prime Time just yet. After some initial struggles (to be described below), I switched to the Developer version (you need to download and run chromechannel-1.0.exe to select the Developer build rather than the normal Beta build).

Even after doing that, I continued to have some problems. This morning, the Google Updater brought me a new version of Chrome (0.2.153.1). While it hasn’t solved all of my problems, it’s a significant improvement over the last version, so it’s getting there.

First, a few of the problems. One of the sites that I use more than I should admit is MSN’s TV Guide. For years I used the tvguide.com site, then they changed it for the worse. Then I switched to Yahoo’s TV Guide for a number of years, then they broke it (it’s back to normal now, I think, but I’m sticking with MSN). MSN’s site is very heavy JavaScript (JS). Given that Chrome is supposed to include the fastest JS engine of the current browsers, that seemed like a good page to check out.

Unfortunately, the normal Beta build, and the first Developer build, would consistently hang when trying to switch providers (something I do frequently, since we’re rarely in one place for more than a few days). Eventually, the page would crash (but the browser wouldn’t!). That happened to me on a few other pages as well. This is fixed in today’s updated Developer build!

Another problem that I had (now fixed) was that Chrome wouldn’t offer me to import my Firefox settings (any kind: bookmarks, passwords, etc.). Lots of forum posts with lots of suggestions, but the other day, I finally found one that worked. I had ancient entries in my Windows Registry for versions of Firefox from bygone days (versions 0.9, 0.91, etc.!), that somehow confused Chrome. Ridiculous, since my default browser is Firefox, so the correct key can be found by all other apps other than Chrome.

Still, the fix was easy. I deleted those registry keys, and Chrome did indeed correctly import everything from Firefox.

Finally, when I had the last Developer build installed, clicking on the About Google Chrome menu item would bring up the panel, showing the version number, but the automatic check for whether this was the current version or not would hang forever, 100% of the time. I was always able to click OK to dismiss the panel, but was never able to be sure whether there was a newer version or not. That too has been corrected in this morning’s update. Now I am informed that I have the current version.

Final issue (for me) is SSL personal certificate support. I was very pleasantly surprised when Chrome auto imported my certificates from Firefox. For IE, I export the certs from Firefox, then import them, and they all work correctly. But, when I went to author this post in Chrome, I was unable to log in to my admin interface using OpenID (using SSL certs for verification). It just hung and eventually told me that the site was temporarily unavailable. This is not a big deal, but still means that there are things I can’t use Chrome for (like authoring this site!).

On to the good. I like the clean, minimalist look. The browser is definitely the fastest (by a good measure) than the others on my system. Not just JS, but HTML as well. The home page for this blog is very large. It renders nearly instantaneously in Chrome.

Like I said above, I love Firefox, and I ascribe a good amount of the difference in speed to the fact that I have numerous plugins in Firefox, all of which likely hook the content for various things, before I finally get to see it. That slows things down, but gives me functionality that I chose to install and turn on. If similar functionality was available in Chrome (which it likely will be at some point), I would likely choose to slow Chrome down as well, to gain that functionality.

Still, for now, the speed improvement it welcome.

Another major speed improvement, also likely tied exclusively to plugins, is pure launch speed. Chrome comes up really fast. Firefox doesn’t. Of course, by default, when I launch Firefox, it’s checking whether there are any updates for any plugins, so it’s not just a size and initialization problem, but a networking one as well. So, no blame for Firefox here, just a temporary enjoyment of a simpler and faster experience.

To summarize, Firefox is still my default browser, and I have no material complaints about it. I also very much look forward to version 3.1 coming near the end of the year, also supposedly with a much faster JS engine included.

But, now that Chrome has solved some niggling problems that I was experiencing, I am likely to use it more than I have been, and who knows what will eventually happen. It wouldn’t shock me if it becomes my default at some point in the future.

Firefox 3.0 is Awesome

Send to Kindle

Yesterday, I took a (cheap) shot at the Firefox launch fiasco. I didn’t need to do it, but I don’t really regret it either. You can’t have it both ways. You can’t want to hype the hell out of the launch, and then be unprepared for it.

Anyway, even though the official launch was delayed by 76 minutes, the US suffered an outage that lasted at least 30 minutes longer.

It doesn’t matter. They are blowing the numbers off the screen and there are still more than four hours left to download Firefox.

As I predicted yesterday, I accounted for four legitimate downloads, two yesterday (for Lois and me) and two today for the ancient guest machines.

It took me a while to be sure that Firefox 3 was faster than Firefox 2, but I’m convinced it is now. There is one site that I visit typically once a day, that takes a very long time to paint/load. It loads substantially faster in Firefox 3.

That’s not why I titled this Firefox 3.0 is Awesome. If you know Lois, then you know that she’s effectively legally blind. We run her laptop at a bizarre resolution, and then still have to pump the DPI (dots per inch) up, so that everything is hideously large on her screen. I can’t even begin to tell you what that does to any reasonably complex web page.

Aside from the fact that very little of the page typically fits on Lois’ 17″ monitor, most complex web layouts overlap the text, including hyperlinks (for her), making it near impossible to click on some links (you simply can’t get the mouse over the link!), and many of the pages are nearly unreadable as well. This has been true (for years!) on both Firefox (all versions) and IE (all versions).

Enter Firefox 3.0! Lois’ default home page is Google News. The minute we launched Firefox 3.0, we saw the page laid out perfectly. Unfortunately, it was gigantic, so the scroll bars were there for horizontal and vertical scrolling. It was too large, so we went in to the preferences, and saw that her Font was set to 28! (I told you, we have had to tinker lots just to make her be able to see!)

We dropped the Font size to 18 and reloaded. It got a drop better, but not much. Another look at the preference panel and we realized that we needed to go into the Advanced settings. In there, we saw that Lois had a minimum set of 24. We changed that down to 18 as well, and the page now showed off perfectly for her.

Then we went to our bank site, where Lois always has trouble hitting certain links. It painted perfectly (albeit with scroll bars). We played with Ctrl-Minus (Ctrl -) and the page shrunk perfectly. Previously, that key combination might have shrunk the text, but the rest of the layout often got worse. Now, Ctrl-Minus and Ctrl-Plus (Ctrl +) work flawlessly. Yippee!

Finally, I didn’t care about most of the addons that weren’t Firefox 3.0 ready. One I really cared about, TinyURL Creator and one I like (but could live without) Linkification. Rather than disabling version checking (dangerous at best), I decided to hand-tweak these two since neither is sophisticated, and therefore unlikely to fail or cause harm.

In both cases, I found which directory they were installed in under the extensions directory in my Firefox Profile (this is on Windows). I then edited the install.rdf file, and found the max version number that they would run in, changing it from 2 to 3, and voila (after restarting Firefox), both work beautifully again.

Welcome Firefox 3.0, we’re both very glad to have you on board! 🙂

Firefox 3.0 Download Day

Send to Kindle

Well, it’s finally here. I was all set to do my part with helping them attain the nonsensical world record download numbers.

Both Lois and I use Firefox as our primary browsers, and I have an ancient laptop that I occasionally use in a hotel room that I was going to upgrade, and one other one that I sometimes use as a guest machine. So, I was about to legitimately download it four times (I hate all manners of ballot stuffing, so I wouldn’t download multiple times just to up the count!).

Lo and behold, 10am PDT came, and the Mozilla site is 100% unresponsive. Way to plan for a world record!

Fully 15 minutes later, when you would think they would have been aware of the problem and would have switched to Plan B (they did have a Plan B, no?!?), the site is still pathetically slow (at least it finally loads!), but amazingly, it still only offers the link to Firefox 2.0.0.14!

How embarrassing…

I’ll still download it when I can, because I love the product, and everything I’ve read about version 3.0 makes me want it, so I have no desire to punish them, or cut my nose off to spite my face, but this one definitely goes in the pile of monumental screw-ups…

Firefox DOM Inspector

Send to Kindle

Yesterday, I raved about XAMPP in this post. In there, I made the following statement:

The other major thing that I don’t like (but which I suspect is easily fixable with a CSS tweak) is that the Sociable plugin formats the icons in a list (one per line) rather than as an inline string of icons, which other themes are doing correctly…

So, today I spent quite a bit of time playing. I enjoyed it, and it was instructive as well. I was able to easily change a bunch of things that I didn’t like about my previous theme. That said, I really like a lot of the Aspire (current) theme, other than the dark image background (which I can live with) and the note above about the sociable list not being inlined.

I decided to experiment in my new sandbox with the Aspire theme. I couldn’t find an easy way to see what css was controlling what element. A quick search said that the built-in DOM Inspector in Firefox could help resolve this. It wasn’t in my Tools menu. It turns out it isn’t installed by default on Windows. I reinstalled Firefox, selected custom, and voila, I had the DOM Inspector.

Once I inspected a page, it became obvious what the problem was. The Aspire theme defines an ID main. Then, in addition to default definitions of ul and il (unordered list, and list element), it also defines #main ul and #main il (specifically, an unordered list which appears in the main block, and the same for a list element in the main block).

The DOM Inspector showed me that the sociable.css was correctly being loaded, but that the way more specific #main selector was being applied after the sociable.css was parsed. As annoying as it is/was, there’s some logic to it. If a node can be defined ultra-specifically, and there is a css definition associated with that, then perhaps, you really want that to apply.

Unfortunately, the specific definition had display: block instead of the desired display: inline.

I’ll spare you the stupid gymnastics I performed, trying to over-ride that behavior. Suffice it to say that along the way, I tried doing something like this:

#main.sociable ul

ul#main.sociable

among other utterly useless attempts to get even more specific.

I broke down and sent a message to the current maintainer of the sociable plugin. Then, two minutes after sending him the message, while browsing formal docs for css, I stumbled on something.

In some of the attributes in the sociable.css file, he added !important to the end of the definition, in others, he didn’t. In the docs, I saw that normally, !important is used to signal to the browser that this particular attribute is important, and should be respected over a defaulted value. It’s primary use is to allow users to have stylesheets which over-ride authors stylesheets.

So, I thought, let’s experiment and add !important to the few attributes that weren’t already tagged as such (specifically, the display: inline one!). Voila! Now, even though the browser sees that #main ul comes after .sociable ul, it also knows that .sociable ul said that display: inline was !important, so it retains it!

There may be a better way to solve this problem (after all, this required me to edit the author’s version of sociable.css, which would get wiped out the next time I upgrade the plugin), but, without my sandbox (courtesy of XAMPP), I wouldn’t have found this one. In addition to XAMPP, I now also need to thank the Firefox DOM Inspector. 🙂