What?

If you're not sure what this project is about, this page provides some background information about web design and what this research addresses. For more information, please continue to the Why? and How? pages.
   

Project Summary

Creating websites that maintain visual and functional consistency when accessed by different systems can be difficult. Different browsers, operating systems, plug-ins, and user settings can negatively affect both a website's layout and performance. Usually, web designers attempt to mitigate this effect by using widely adopted web standards and providing "hacks" or "workarounds" for specific configurations; however, this can be a resource-exhausting activity. [more info]

This research project will monitor Internet traffic on various websites, collecting basic and readily available information such as a visitor's operating system, browser, plug-ins, and user settings [more info]. No personal information will be collected, and there will no way to associate any collected information with the user who generated it. This project is interested in aggregate data, not individual information. [more info]

Through analysis of the collected data, this project aims to answer the following questions:

 
 
  1. Which end-user configurations are the most popular overall?
     
  2. Do the most popular configurations vary enough between websites to warrant
    individual site testing and accommodation of different configurations for each site?
 
 

Results from this research have the potential to 1) decrease web development time and 2) increase page download speeds by helping web developers decide 1) whether or not to accommodate certain end-user configurations and 2) whether or not they should analyze their own site's traffic for additional configuration needs. [more info]

Background

Designing websites is a difficult task in and of itself. Programmers must compile information, organize it, format it, and create an interface for users to interact with it. If these tasks weren't difficult enough, web developers also have to the deal with the fact that different end-user configurations will affect the way their site looks and performs.

End-user configurations can vary by operating system, browser, and available plug-ins. Additionally, each of these software packages can vary by release version, and users can change software options, which can further complicate the matter.

Consistent performance is an obvious necessity for any website - users must be able to find and interact with content easily and effectively. Unfortunately, there are several ways in which end-user configurations can keep this from happening. Here are just a few examples:

 
 
  • The configuration could be missing a necessary plug-in. For example, a web designer might create an amazing animated website in Macromedia Flash, but if the end-user doesn't have the Flash plug-in installed, he or she will not be able to view or interact with any of the content.
     
  • The configuration could include outdated software. Older plug-ins or browsers might not support new commands, might interpret or process commands differently, or might still have bugs that have been fixed in the most current updates.
     
  • The configuration might include a non-standard browser. Some browsers interpret commands differently, some require special formatting that is not required by other browsers, and some simply can't support some plug-ins.
     
  • The end-user can change settings that limit the browser's ability to process commands. End-users can disable plug-ins, selectively allow cookies, disable JavaScript, and manipulate a variety of other settings that can affect a browser's ability to properly execute a website's code. If the website depends on one of these settings being available, the website could be rendered useless.
 
 

The need for consistent website performance is obvious; however, websites should also be visually appealing. A recent survey found that visitors use design look more than any other factor to determine a website's credibility (Fogg, 2002). If a website isn't visually appealing, it will probably not seem credible, and visitors may choose to use another resource. Unfortunately, end-user configurations can wreck havoc on even the best-designed site:

 
 
  • CSS (Cascading Style Sheets) are a popular and easy way to format information on multiple web pages. Individual pages can associate themselves with a single style sheet, meaning the formatting information can be downloaded once and applied to each page that uses it. This not only saves valuable bandwidth, but allows web programmers to change the design of multiple pages by changing only one file. But, if an end-user configuration doesn't recognize CSS or uses an older version, the visual appearance of the website can be changed drastically.
     
     
  • If programmers wish to provide a unique font on their website, they can either render it into an image (which takes up valuable bandwidth) or embed the actual font in a page. Regrettably, there are two separate formats used to embed fonts (Embedded OpenType and TrueDoc), and each one has limitations. TrueDoc cannot be used on Internet Explorer on Macs, and Embedded OpenType cannot be used on Navigator on any system (Mulder, "Embedding..."). If a website uses font embedding and is accessed by an end-user configuration that does not support it, the visual design of the site can be distorted.
 
 

Organizations like the World Wide Web Consortium (W3C) and the European Computer Manufacturer's Association (ECMA) attempt to make compatibility easier by creating internet standards; however, browsers (e.g. Microsoft Internet Explorer and Netscape Navigator) rarely adopt the bulk of these standards, and programmers are often left with the task of providing workarounds (Yager, 2001).

Workarounds help to maintain website consistency by delivering customized content depending on an end-user's configuration. A script in the web page recognizes the configuration being used and retrieves the appropriate code modules, e.g. a corresponding CSS file. Workarounds can be very time consuming to create and should be tested on each configuration; furthermore, the additional code requires additional bandwidth. Ultimately, workarounds are almost unavoidable; however, they should be limited in order to save time, effort, and network resources.

As with any form of communication, a website should consider its audience when creating and delivering its message. Specifically, it would benefit web designers to know what types of configurations their audience is using. This would allow them to develop workarounds for the most popular configurations and take advantage of the most popular plug-ins. For example, if 95% of a website's users have installed a recent version of Macromedia Flash, the web designer might decide that a 5% loss in unique visitors is well worth the increased usage by the majority of visitors who prefer to interact in a multimedia-rich environment.

Web servers keep logs of their visitors, but this information is usually very limited. For design purposes, logs can usually only indicate what browsers are the most popular among a website's visitors (Thomason, 2001).

To really understand their audience, web designers should know what plug-ins they have available, what options they have set, and what operating system they're using. None of this information is personal, but all of it can help a web designer deliver faster, richer content.

  Design by MiLO Publishing - 2006