Archive for the ‘Browser’ Category

Graceful Degradation is Important

January 25, 2008

Graceful degradation is the ability to continue working, albeit with reduced functionality, when some expected capability is absent.

Example: Suppose you use JavaScript in your web page to enhance its interactivity. Your web page degrades gracefully if it continues to function even in a browser that has JavaScript turned off.

This is an example of an HTML link that degrades gracefully:

<a href=”http://solarsystem.jpl.nasa.gov/planets/profile.cfm?Object=Mercury” onclick=”…”>Mercury</a>

If JavaScript is turned on in a user’s browser then the onclick=”…” will be executed. If JavaScript is turned off then the browser’s default behavior ensues: the browser fetches the web page identified by the href value, and replaces the current page with it.

Design your web pages, your software, your machines, your whatever to degrade gracefully. Anticipate things that might be absent or turned off and make your system able to still function.

An easy-to-use technology is a double-edged sword

January 24, 2008

A technology with low barrier to entry can be a double-edged sword.

A technology that people can speedily and easily use will probably be adopted very quickly.  However, there is likely to be a correspondingly low level of quality control.

HTML’s Explosive Growth

HTML’s ease of use is one of the reasons behind the explosive growth of the Web.

Anyone can learn the basics of HTML in a short space of time and create a web page very quickly.

It’s even possible to use WYSIWYG editors to make web pages without ever seeing a line of markup.

The downside to this is that most pages on the Web are badly formed and don’t validate.

Browser vendors have to accept this state of affairs by making their software very forgiving and unfussy.

Much of the code in browser software is dedicated to handling ambiguous use of HTML and trying to second-guess how authors want their web pages to be rendered.

HTML’s low barrier to entry has been a mixed blessing for the Web.

DOM Scripting by Jeremy Keith