Publications

Web Browsers

Introduction

A web browser is software application that allows someone to view remote documents. It incorporates the necessary components to connect to a remote server, download a copy of a web page and all the component parts, and present the result to the user. Most browsers also support within the same application support for other Internet technologies, creating a simple single interface to a range of technologies.

The origins of the web browser start with the European particle physics organisation CERN, where researchers in many different countries required the ability to read and write complex documents at a distance. It is here that Sir Tim Berners-Lee invented the "World Wide Web" and the first generation web server and browser.

Following the launch of the WWW at CERN, researchers at the US NSCA produced their own server and browser. The Mosaic browser was graphical and quickly became very popular. Some of the team left NSCA and created a start-up company called Netscape Communications which took the open source Mosaic commercial, creating the Netscape Browser.

Microsoft famously dismissed the Internet and the WWW as an irrelevance, allowing Netscape to gain over 90% of the market share for the browser and a significant share of the web server market. Realising their mistake, Microsoft licensed a version of the original Mosaic browser via a third party and re-branded it Internet Explorer. Microsoft then began an illegal bundling campaign and deliberately polluted technologies behind the web to force Netscape out of the picture, starting the famous "browser wars". Ultimately Microsoft's desktop monopoly and huge cash reserves were unbeatable and now most people use a browser based on Microsoft's technology. Eventually courts in both the US and EU ruled that Microsoft's actions were illegal and anti-competitive but by then their competition was all but eliminated.

Modern Browsers

For the best browsing experience a modern standard compliant browser is advisable. Browsers with good support all the modern standards have been available for a number of years, so there is plenty of choice, even after the "browser wars".

Browsers based on the open source Mozilla Corporation's GECKO core are particularly good, this family includes the "Firefox", "Ice Weasel", "Camino", "Ice Ape" and "Sea Monkey" browsers. The Mozilla Gecko family has proved popular and there are many smaller niche browsers and applications based on some or all of it's components.

Browsers in the open source khtml/web-kit family such as KDE's "Konqueror", Apple's "Safari" or Google's "Chrome" are also very adept. The Konqueror browser forms the core of the KDE desktop for the X system and is popular on some Linux systems. Apple's Safari is the default browser on the Mac and is also available for Windows. Google recently released the "Chrome" browser, currently in beta for Windows, with Mac and Linux versions to follow.

Small Norwegian software house Opera Software, produce their own closed source browser. It shares no code or heritage with Mosaic and has taken quite a different approach to the web browser. Even today still feels quite different from every other browser. It is small, very fast and is also a good performer. Opera has a good security track record and is popular on mobile phones and other small devices.

Last and very much least there is Microsoft's Internet Explorer. Version 6 for older Windows systems is particularly primitive and missing modern features. Versions 7 & 8, are only available for Windows XP and later are better, offering some features found on other modern browsers and fixing some defects in it's support of the standards. Version 7 can not be considered fully modern or standard compliant, version 8 is better but still not as standard compatible as other browsers.

Not all browsers are available for all platforms, Internet Explorer is only available on Windows and versions 7 & 8 are not available for older and still widely used versions of Windows. Mozilla Gecko based browsers run on all modern versions of Windows, Linux, Unix and Macintosh. The Opera browser family is also widely available, additionally running on many special devices such as mobile phones and kiosk systems.

Older browsers such as Netscape Navigator and Internet Explorer 7.x and below are quite unreliable and should not be used if predictable high quality results are to be expected. Additionally these browsers have numerous security defects in them and other sub-standard behaviours and should be avoided where possible.

Browser Security

Most modern browsers include a powerful scripting engine and can run other programs via some form of plug-in architecture. It is therefore quite common to visit a web site and for the browser to download and run code from the web site inside the browser. If the browser's internal security is breached a remote web site may be able to take control of the computer that the browser is running on without the knowledge of the user.

It is essential to always maintain your browser - irrelevant of which one you have - and ensure it is fully patched and configured in line with your vendor's current recommendation.

Recently there have been so many and so serious security defects with Microsoft's Internet Explorer, that the US-CERT now recommends that users use any browser other than Internet Explorer. See Internet Explorer is dangerous for a nice explanation of the security problems that plague Internet Explorer. Several European governments have formally advised citizens to not use Microsoft Internet Explorer because of recent very serious security flaw.

See also Safe Computing for an introduction into basic Internet security and Blocking Adverts and Malware for some tips on blocking adverts while browsing the WWW.

Technical Details

Only W3C standard xhtml and CSS is used on this site. Any dynamic behaviour will use the W3C DOM and ECMA-262 standard scripting. This site should continue to function correctly with both the CSS and the scripting disabled, i.e. it downgrades gracefully. If you use an old or defective browser some features may not render correctly.