Mozilla

Posts Tagged with “browser”

Browser Soup and Chrome Frame

September 28th, 2009

Last week Google released a new product in the browser space called “Chrome Frame.” Chrome Frame aggressively address a serious pain point for Web developers. However, the overall effects of Chrome Frame are undesirable. I predict positive results will not be enduring and — to the extent it is adopted — Chrome Frame will end in growing fragmentation and loss of control for most of us, including Web developers. Here’s why.

The Chrome Frame plugin is essentially a browser-within-a-browser. Chrome Frame inserts an alternative “rendering engine” into your browser, and allows websites to determine which rendering engine you end up using. (The “Why Chrome Frame” section below has a slightly longer description of the problems developers face and of Chrome Frame, for those not so familiar with browser technology.)

Chrome Frame and Loss of Control

Once your browser has fragmented into multiple rendering engines, it’s very hard to manage information across websites. Some information will be managable from the browser you use and some information from Chrome Frame. If the Smart Location Bar in the “browser” doesn’t show the sites you’re trying to return to, then you need to find a way to open Chrome Frame and search there. Your “browser” can no longer aggregate information for you across websites. This defeats one of the most important ways in which a browser can help people manage their experience.

For many people Chrome Frame will make the Web even more unknowable and confusing. Image you download Chrome Frame. You go to a website. What rendering engine do you end up using? That depends on the website now, not on you. And if you end up at a website that makes use of the Chrome Frame, the treatment of your passwords, security settings, personalization all the other things one sets in a browser is suddenly unknown. Will sites you tag or bookmark while browsing with one rendering engine show up in the other? Because the various parts of the browser are no longer connected, actions that have one result in the browser you think you’re using won’t have the same result in the Chrome browser-within-a-browser.

Getting different results will be awkward even for those of us who understand clearly what is going on. Then imagine someone who isn’t immersed in browser technology. Imagine trying to explain to a neighbor that one day he went to a website, clicked on a button to “add Web capabilities to your browser,” ended up with a duplicate “rendering” technology that surfaces and disappears based on website controls, and this now means that the search bar, location bar and other basic UI elements will work in different ways at different times. This affects individuals directly, and Web developers indirectly. It doesn’t help Web developers if basic ways of interacting with the site be
come awkward, for example if I don’t know where my password was stored and how to access it.

Chrome Frame and Fragmentation

Google is not the only website developer that would find this idea useful. Google is providing the set of features it believes are helpful for making powerful websites. Other websites will have browser features they would find useful for their applications. Imagine having the Google browser-within-a-browser for some sites, the Facebook browser-within-a-browser for Facebook Connect sites, the Apple variant for iTunes, the mobile-carrier variant for your mobile sites — all injected into a single piece of software the user thinks of as his or her “browser.” Each browser-within-a-browser variant will have its own feature set, its own quirks, and its own security problems.

The result is a sort of browser-soup, where a given user action serves up some sort of response, but it’s not clear what the result will be: are my passwords and history stored in chrome frame? Some other variant? In what I think of as “my” browser? This makes the Web less knowable, less understandable, and certainly less manageable.

Why Chrome Frame?

Web developers and website applications face a painful and seemingly never-ending problem: wanting to implement capabilities that some browsers don’t support. The degree of pain this causes is high. Imagine trying to cook a really fine meal with an oven that can’t get above 250 degrees F. In some cases it’s just impossible, in other cases it requires rearranging ingredients, cooking time and the order of preparation. Web developers go through this regularly.

One way of fixing this is to get people to use a new browser. This is effective, but hard. Mozilla Firefox has reached some 300 million people, but hundreds of millions more continue to use the browser that came on the machine they bought, sometimes years ago. Google began offering its own browser — “Chrome” — a year or so ago, but this has yet to gain significant traction. This week Google offered a different solution — a version of Chrome repackaged as a plugin for IE.

For those not familiar with the ins-and-outs of browser architecture, you can think of a browser as having two essential parts. One part we humans don’t see — it’s the part that “speaks” computer languages and talks with Web servers. This is often called the “platform” or the “rendering engine.” The other part is the set of things that human beings see and interact with, which is often called the “front-end” or the “application layer.” The application layer includes the basic browser user interface — the window around content, the buttons, menu items, search box, etc. It also includes parts of the browser that appear based on what you are doing — the dialog boxes, the download manager, the password manager, the security warnings and the other messages.

Chrome Frame breaks this connection by inserting a separate rendering engine into your browser, and allowing websites to determine which rendering engine you end up using. If you download Chrome Frame you see the basic front end of your previous browser, but websites cause your browser to toggle back and forth between the rendering engine of Chrome and the rendering engine of the browser you selected. The application layer of your browser and the platform part of your browser are no longer connected.

At first glance this looks like it might be a useful option, offering immediate convenience to website developers in alleviating a very real pain. But a deeper look reveals significant negative repercussions.

Keeping “you” and “me” at the center of things

September 21st, 2009

A while back I wrote a post about Firefox that concluded with the idea that each one of us should be the center of our online lives — not a company, not an application, not a business plan. One common response has been: That sounds awesome, but how do we get there? Where do we start?

Well, no surprise — I start with the browser. The browser is the piece of the web that human beings interact with directly; it’s the tool through which people “touch” the web. I have an immense degree of control over my browser. With a website I have the degree of control the website chooses to offer. I am one of many users at a website, but the browser is mine.

These traits make the browser the logical tool for a user-centric (“you-centric” ??) world.

An early step was customizing the browser by hand, adding extensions, bookmarks, settings, themes and personas. More recently browsers have begun offering automated customization as well. For example, the Smart Location Bar (aka the “awesome bar”) automatically offers easy access to websites we’ve visited before, automatically tuning to each person’s browsing habits.

The awesome bar presents automated customization to the user. It aggregates information about my usage across many websites and presents the information back to me. It’s immensely helpful. One area to explore in building a user-centric web experience is other examples where this sort of automated customization would help the user. For example, perhaps knowing my own search history across many website would be helpful to me.

Another form of automated activity to explore is the presentation of customized or individual responses outward, to websites. For example, the browser could automate the current dysfunctional process of logging into and out of websites. There are unquestionably other things we do regularly that the browser can automate and run in the background. Sharing of information is becoming increasingly common. Perhaps the browser could automate response to certain types of requests. There are obviously privacy and control issues with sharing information. That’s why the browser — where I have the most control — is a logical choice.

Proposed Microsoft – EC Settlement

August 17th, 2009

A few weeks ago Microsoft and the EC announced they are discussing a settlement proposal. Asa Dotzler did an evaluation of the proposal in view of the principles we have previously, noting both items that appear promising and those that appear weak. In all things the implementation details — all the way to the most mind-numbing level of specificity — will have an immense impact on the proposal’s effectiveness, so we’ll have to wait and see what those details turn out to be. Here I’ll outline a couple of aspects where the proposal itself could use improvement.

The overall point that may get lost is that — even if everything in the currently proposed settlement is implemented in the most positive way — IE will still have a unique and uniquely privileged position on Windows installations.

  • It is always there, often with prominent placement in the user interface. Choosing another browser as a default doesn’t change this.  Contrast this with all other browsers who aren’t available without separate installation.
  • Choosing another browser as a “default” does NOT mean that the other browser takes the place of IE. For example, the IE logo (“shortcut”) still remains unchanged on the desktop. The shortcut / logo of the browser the user has selected does not replace this, it is added elsewhere. As a result, the familiar location remains IE, not the user’s choice.
  • IE appears to retain other privileged positions in the user interface, depending on the exact windows operating system configuration one uses. The most important of these is probably in the Taskbar of Windows 7, which contains IE prominently. Microsoft has described the Taskbar as the “beachfront property of the Windows OS” — it’s next to the Start menu and you see it even when your desktop is covered with all your program windows.

Nothing we’ve seen suggests these items will change when a person chooses to make a different browser his or her default. These shortcuts back to IE remain unless the user makes another browser his or her default and then figures out how to “turn off” IE.

A second way in which IE remains uniquely privileged is the difference between having a piece of software on one’s machine and needing to download, install and make something your default. This may seem irrelevant to those of us who live and breath Internet software, but it’s a significant barrier for a lot of people. IE doesn’t face this issue since it’s on Windows machines when people receive them. The ballot could do a better job of reducing this difference. Right now the ballot is about downloading software. It could be designed to help people get further in the process of downloading, installing, opening and making the new software the default. As proposed, we expect to see many people who want other browsers get lost in the process before they actually succeed in making an alternative browser their main browsing tool.

A third way in which IE retains a uniquely privileged position is the Windows update system. It makes sense to include IE updates in this system, even if a different browser is the default — it’s important not to have “dead” pieces of old software on one’s machine for security reasons. So we do not take the position that the Windows Update system should exclude IE. However, a few safeguards for protecting the prior choice of another browser should be in place. Most important, if IE presents itself to the user as part of an automatically triggered update process, it should close immediately after the update process completes. It should not use this Windows update process as an opportunity to ask to become the default browser.

Another way IE remains privileged is that it looks like potentially all Microsoft products other than Office 2007 may still include hard-coded links to IE. This appears to be true even for the upcoming release of Office. This is the kind of “remedy” that so often seem ludicrous in hindsight. It is also at odds with a person who has already chosen to use another browser.

Comments more specifically tied to the exact language of the documents can be found at Harvey Anderson’s blog.

The importance of the myriad of details makes it very difficult to predict how effective the proposed remedies will be, or the extent of any  side-effects. In any case, addressing the issues raised above would improve the proposed remedy significantly.

Closed, Browser Specific Features

June 18th, 2009

In the so-called “browser wars” of the mid-1990s both Netscape and Microsoft waged campaigns to get websites to use features proprietary to their browser, hoping to boost market share for that browser by making it difficult for people using other browsers.

Today at Mozilla we work very hard not to do this.

  • We spend huge amounts of time figuring out how we can move the web forward by adding new features and NOT break the web for people using browsers that support fewer capabilities. This is often called “degrading gracefully” and it’s an important design criteria;
  • We work with other browser vendors in the standards groups to define capabilities shared among browsers;
  • We make all our work open source, available for anyone to use.

Microsoft’s marketing campaign brought this to mind — it’s a campaign to get people to use IE because the clues to a $10,000 prize aren’t visible unless you use IE 8. This is a small thing, undoubtedly not intended to represent any grand idea of vision of the Internet.

Even so, the campaign struck me. It reflects a mindset that is still at odds with the idea of making one Internet, accessible to all, open to all, cross-platform, cross-product and unified in its nature.

Windows 7 Without IE

June 12th, 2009

Yesterday Microsoft announced that it is planning to ship Windows 7 without IE in Europe, and to offer IE separately.

It’s impossible to evaluate what this means until Microsoft describes — completely and with specificity — all the incentives and disincentives applicable to Windows OEMs. Without this it’s impossible to tell if Microsoft is giving something with one hand and taking it away with the other. For example, if Windows marketing dollars are tied to IE or browser-based programs, then the ties to Windows are still distorting the browser market. One could think of many other examples.

As a result it’s also impossible to tell whether this does anything more than change the technical installation process of the OEMs. It will certainly make life more difficult for people upgrading to Windows 7.

mitchell

Skip past the sidebar