Web Technology

Browser Trivia Tuesday

I haven’t forgotten about that Windows Phone post. It’s coming. This is a small interlude while I get it juuust right.

Every Tuesday for the past four weeks, I’ve written up some super-geeky browser trivia on Google+. If upcoming jQuery releases and Opera are your thing, you should follow along! The posts are public, you don’t need a G+ account or anything.

I think I’m going to keep this up for the foreseeable future. The research-and-report format is surprisingly fun, and it’s filling in all kinds of gaps in my browser history knowledge. I have no idea if anyone is reading the trivia, let alone enjoying it, but sometimes you just have to do something because you want to do it, you know?

Web Technology

Classics Week #3: Opera vs Reality

This post is part of the Classics Week(s) feature, which will run for three weeks while I’m off overseas. This week’s post was the first to be published after the switch to regular, weekly updates. Here it is again, better than ever!

2009 was an exciting year for the web browser crowd:

  • Google released Chrome.
  • Apple ported Safari to Windows.
  • Firefox picked up a lot of market share.
  • Microsoft actually produced a half-decent version of Internet Explorer.
  • The iPhone and Android finally made mobile browsing popular.
  • Support for HTML5 and CSS3 was way up across the board.

The term crowd is especially appropriate here because it really is starting to get very crowded. For a long time the browser war has been fought largely between two major players at a time (IE/Netscape, IE/Firefox) and all of a sudden we have four major companies with fantastic browsers available to the vast majority of users.

Oh, and then there’s Opera.

Here’s the thing about Opera…

Opera is in serious trouble because it doesn’t have a “thing”:

Internet Explorer’s thing is its existing market share. It has a lot more users than everyone else, so its going to be relevant for the foreseeable future.

Firefox’s thing is its community. Not just its core developers, but the people who create addons or personas or rally everyone they know to go download the latest version on launch day. It’s easily the most passionate user group of the bunch.

Chrome’s thing is its brand. When people think web, they think Google. Google has the best search, the best email, why not the best browser? Users rely on Google for a great online experience, and Google has a lot of high-traffic areas where it can push Chrome.

Apple’s thing is its loyalty. Apple fanboys are a loyal bunch — most of them will stick with Safari on their Mac and many will consider getting Safari for any Windows computers they’re forced to use. Apple also has the iPhone, which gives it a growing space where it has the only browser (not that any iPhone users mind — loyalty, remember?).

What does Opera have? The Wii? Please.

  • It used to be the most advanced browser for HTML5 support, then everyone else caught up.
  • It used to be a major player in the mobile space, then Apple and Google obliterated it.
  • It used to be a fun browser for geeks to talk about, but now the buzz is all Chrome.

Simply put, it’s not enough to be an alternative to IE anymore; users are demanding more from their browsing experience, and they’re flush with places to find it.

Any Opera fans out there?

What’s even worse is that there isn’t really anything you or I can do to help.

Opera’s engine isn’t open source, like Gecko (Firefox) or Webkit (Chrome/Safari), and it doesn’t benefit from a strong plugin community, like Firefox/Chrome. It isn’t an OS-default browser like IE (Windows), Safari (OSX) or Firefox (linux). Even if I wanted to rally some Opera enthusiasts, where would I start? How many people do you know that have even heard of Opera?

I don’t have anything against Opera (it’s a fine browser), it’s just it has fallen behind the times — there are too many better options around preventing Opera from picking up new users, and I can’t think of a single significant reason for its existing users to stick with it.

Do you use Opera? Care to share any thoughts on Opera’s future?

Web Technology

Is Firefox Past its Prime?

A few weeks ago, in a post about why Google+ is going to succeed, I noted that Google Chrome has been on an upward trend of about .5–1% per month since it launched nearly two years ago.

While I didn’t mention it at the time, Firefox has an interesting usage graph as well. If you follow that link, you’ll see that Firefox’s curve hovered a little over 30% for the tail end of 2009 and the better part of 2010, but has started to drop over the past twelve months.

If these trends continue, Chrome will be more popular than Firefox by the end of next year.

What does this mean for everyone’s favourite open-source browser?

From Phoenix to Providence.

Back around 2003, the ‘net was desperate for something new. Sure there were other browsers around, but nobody could hold a candle to the market-dominating behemoth that was Internet Explorer (source). Innovation was non-existent, and the web as we knew it was suffocating.

Enter Mozilla. The release of Firefox 1.0 in 2004 was a breath of fresh air for the online community. Suddenly there was an open-source, standards-compliant competitor gaining momentum. We were thrust from the shackles of monopoly into an arms race that culminated in the second browser war.

Mozilla was a critical piece of the puzzle. It was a veritable flagship of new, exciting features. Better CSS support. A clean, tabbed interface. The prevalence and importance of add-ons could be its own post; countless extensions have become standard features across the board of popular browsers.

By the time Firefox 3 was released, in June 2008, Mozilla could do no wrong. Everything was on the up-and-up.

Then, the landscape changed.

Is Firefox still necessary?

With Microsoft innovating again (see IE9), Apple’s devices gaining popularity (and Safari with them), and Google bursting into the browser space with Chrome, competition was hot in 2009/2010.

Firefox still played a key role at this time: it was the yardstick against which all other browsers were held. Sure Safari and Chrome have built-in development tools, but are they as good as Firebug? How does WebKit’s HTML5 support compare to Gecko’s? And isn’t IE still laughably behind?

But this role has run its course. The major players are now well-established. Most users are aware of alternatives to their operating systems’ default browsers.

This can’t be a long-term position for Firefox. It won’t last.

The competition is no longer resting on its laurels. Chrome is closing in. Internet Explorer is finally in a position to reverse its eight-year downward trend, and WebKit is absolutely dominating this year’s explosive rise in mobile browsing.

Extensions are everywhere. Support for standards has never been better. Firefox is quietly becoming less and less relevant with each passing update.

So I ask again:

Does the golden age for Firefox lie in its past?

Web Technology

Browser Innovation Occurs in Cycles

Who are the most innovative browser-makers right now?

  • If you’re hip and trendy, you’ll probably say Google (and you’re right).
  • If you’re a bit of a techie, I bet you’ll say Mozilla (also a good choice).
  • And if you’re an honest web developer, you’ll say Microsoft (equally correct).

I’m sure there’s enough flamebait in that list to start a dynamic discussion, but I’ve got another question first:

Who were the most innovative browser-makers ten years ago?

The list looks something like this:

  • Apple (back when they were unpopular).
  • Mozilla (pre-Firefox).
  • Opera (obviously).
  • A whole raft of independent developers.

Notice anything?

The current wave of browser innovation is driven by the big players.

You can complain all you want about the travesties Microsoft has wrought upon the development community, but they pioneered in-browser GPU-acceleration with IE9.

Chrome and Firefox hardly need justification. The number of features they’ve introduced that are now must-haves is staggering. (Pinned tabs, tabs-on-top, private browsing, and built-in debugging tools, just to name a few.)

But it wasn’t always this way.

The previous wave of browser innovation was all about the little guys.

Before the days of iPods and Macbooks, Apple was struggling to keep OSX afloat. Many called their decision to make a browser a mistake, but Safari 1.0 was a boon for the web’s widening world. That’s where webkit got its roots, and we’ve been blessed with the fruits of its labour ever since.

Mozilla was making a browser by its own name, with platform-specific spin-offs like Camino and K-Meleon. The trials and tribulations of the heavyset gecko platform encouraged a culture of ruthless javascript performance improvement — a culture which still thrives to this day.

Opera was the de facto non-Microsoft choice at the time, and did wonders for open standards. As much as we like to take this for granted, there was a very real time in the early 2000s where every website had to be written twice; once specifically for IE, and once for all other browsers.

Then there were the independents. The Shiiras and the Avants. The stepping stones that lead to the giants we surf the web with today. Each contributed to a better web. A stronger web! And we wouldn’t be where we are today without them.

But how did we get there in the first place?

The rise of small-time browsers was driven by a number of forces:

  • The late 90s were ruled by then-juggernauts Netscape and Microsoft.
  • Internet Explorer began devouring market share, and users wanted alternatives.
  • When Netscape folded, it (thankfully) left behind a rich, open-source codebase.

Then, as the browser evolved from geeky toy to application that everyone needs, the costs associated with developing and maintaining a modern, working codebase soared. Suddenly the hodgepodge teams working out of basement apartments couldn’t compete, and the rest is history.

So the cycle so far has looked something like this:

Big Juggernauts → Low-budget Developers → Major Companies

What can we expect to see going forward?

I don’t see an indy-browser renaissance on the horizon. Lately it’s been the opposite: we’ve lost Flock, Opera is flailing, and the myriad of mobile browsers haven’t mustered but a whimper against their built-in counterparts — a far cry from the independent revolution discussed above.

The competition between the current super-powers is more than enough to keep us in an innovative state, and I don’t see that changing anytime soon.


What will the next wave of browsers look like? How will they gain traction? Where will the innovation come from?

Web Misc

No Love for <noscript>

I’m currently implementing a web front-end that has to work in a very secure environment. One of the things we can’t count on is that users will have JavaScript enabled, simply because it’s often a vector of attack on the web. While this has been a great learning experience overall, last Tuesday I learned a bit more than I’d planned on:

Apparently before I’d left the office Monday evening, I was doing some testing with JavaScript disabled. I’d also forgotten to turn JavaScript back on. And how long did it take me to realize this error the following morning?

Two hours.

Because apparently somewhere between CSS 1 and web 2.0, everybody forgot about <noscript>.

And I don’t just mean people like you and me — we’re talking big names here. Do you know what Google Reader looks like with JavaScript turned off? Try it. It’s just a logo that says Google Reader and a blank white page. It looks like a server issue.

My task management software didn’t fare much better. It simply sat there on its loading icon, perpetually promising me my todo-list, yet never delivering. How many times did I hit F5 thinking it was “just a slow server”? Tons.

Then there’s Yammer, probable the worst offender of the bunch. It managed to load everything except my timeline, the only bit that matters. What good is navigation if I can’t navigate to anything?

Finally, Grooveshark got it right. The recently HTML-ified music-streaming app displayed a prominent message alerting me of my ineptitude, triggering a sudden light bulb and all that jazz. But this raised an interesting question:

Who’s responsibility is it to tell users when they have JavaScript disabled?

Obviously the easy one is to blame is the user. If I turned off JavaScript support, I probably did it on purpose and it’s my responsibility to remember to turn it back on. But let’s say I forgot, or I did it by accident with some bizarre hotkey incantation. What then? There are two entities that can help me:

As in my recent case, web applications can use <noscript> to give me a heads up that I can’t enjoy their content given my current browser settings. Big names like Google should especially do this. They could even go the extra mile and detect my browser version, and as long as I’m not running something horribly old (Netscape 1?), or something excessively insecure (cheap shot at IE6! Yes!), provide me with a kind reminder that I probably did this myself, oh and here’s how to fix it in whatever browser my user-agent suggests I’m using.

And that brings me to my second point, and the bigger one in my eyes. Where was Firefox on this one? Let’s look at the various data points Firefox had but didn’t manage to connect:

  1. That webapp sure does have a lot of JavaScript in its headers/mime-types/mark-up.
  2. Hey, this is one of Dan’s bookmarks; it’s all over his browsing history.
  3. Dan always has JavaScipt enabled, except the other day when he was mostly hitting localhost.

There was plenty of information there that Firefox could have used to deduce that I probably wanted to run JavaScript. A friendly reminder would have done just fine: “Hey, this site that you visit all the time uses a lot of JavaScript; if you want to run it, click here.” Is that expecting too much?

I think I’ll write more about this soon.

I really am learning quite a bit about taking JavaScript-less users into account in complex web applications. And next time I’ll be sure to share something more productive, instead of just bashing a few of my favourite things.

Stay tuned!

Web Technology

Re-Thinking Browser Buttons

A prediction: In the near future, browsers will no longer have stop and refresh buttons.

Think about it. When the internet first started out, pages actually took a human-measurable amount of time to load. And with finicky dial-up connections, it wasn’t uncommon for a connection to completely drop in the middle of a page load. It made a lot of sense to have a refresh button, in case you just lost your connection and have now reset it. Stop made sense too; if you saw a page loading tons of images, maybe it wasn’t worth loading at all.

Now fast-forward to today. Pages load instantly, and connections are almost always persistent. No more need for refresh, no more need for stop. The buttons are obsolete.

Testing the Theory

Looking at what buttons in my toolbar I actually use (I’m running Firefox), There are really only four:

  • Address Bar
  • Search Bar
  • Back
  • Forward

The buttons I don’t use are:

  • Stop
  • Refresh
  • Home

So to see if I really don’t use them, I removed them from my toolbar about a week ago. And you know what? I haven’t missed them one bit. They don’t fit into any of my use-cases anymore. We simply don’t need stop/refresh as much as we used to, and even home is less necessary than it was in the days of online portals.

In fact, I’m really starting to appreciate my minimalist toolbar. Back/forward on the left, then address bar filling up most of the screen, and a search bar off to the right. Nothing I don’t use every single day. It’s bliss.

A Note for Web Developers

Web development is one case where refresh — as an action — is still necessary. I still maintain that a refresh button is not needed in this case. Web developers are always power-users, and we simply don’t use buttons for actions like refresh; we use hotkeys.

If you’re a web developer, you probably at least use ctrl+R or F5 to refresh a test page. Better yet, you probably use ctrl+shift+R or ctrl+shift+del and some menu work to clear the cache before a refresh (and if you don’t, you should). Standard refresh buttons aren’t ideal for us anyway.

Browser “Support”

Obviously not everyone will be willing to part with legacy buttons right away. One interesting solution to this problem is customizable toolbars, such as the one used by Firefox. Here, the user has full control over what buttons appear in the interface. This is in fact the only browser I tested that allows the stop/refresh buttons to be removed.

There are also a couple of major browsers that have started to deemphasize the stop/refresh buttons. Chrome, for example, combines them into a single button, and Safari goes one further by merging this single control into the address bar.

Predictably, Internet Explorer is still a step behind. Microsoft’s browser’s UI is generally recognized as the weakest of the four, though it looks like they are catching up with IE9.

I didn’t spend much time digging into more niche browsers. If anyone uses one, I’d be interested to know how the UI stacks up against “the big four”.

What do you think? Am I out in left field here, or are we about to see a neat evolution in the web browser interface?