Graceful Degradation and Progressive Enhancement
2The world of Internet is evolving and constantly changing. This means the current technologies will become obsolete in a few years from now due to newer versions and faster technologies. As we move from one technology to another, it also creates a need to support the older technologies for the benefit of people who are not tech-savvy.
A good percentage of people today use the web browsers and the Internet with little knowledge about the underlying working and for such people, they cannot see difference between IE6 and IE9. The nature of the browsers, their functionality and what they can offer makes only a small difference for people who are not technically sound and so, as a designer it’s important that the needs of such people are met too.
However, from the designers and developers point of view, this becomes so much of a hassle. As browser technology is becoming advanced, they create web pages to suit the latest versions of the browser. In order to cater to the older versions, they have to make significant changes to the design and coding and this can consume a good part of their time and effort with little results. However, this is not a reason not to cater to the people using older browsers because Internet and web is all about attracting as many people as possible. So, they have to come up with a solution that works well for all people and two common solutions to this problem are graceful degradation and progressive enhancement.
What is Graceful Degradation?
Graceful Degradation, as the name implies, is the process by which the look and feel will reduce gradually for the older websites. They may not be able to view every part of the page and not in the same vibrant colors as the newer versions, but they would still be able to access the basic functionality of the site.
A good example is the IE6 browser. Many websites that are available today do not provide support for IE6. Any user with this browser may be able to view the pages, its content and access some of its basic functionality. Other than that, the websites may not look so good and they may not even be able to do certain functions. It is difficult for designers and developers to create websites that will work on the basic as well as the advanced versions of different browsers because of the inherent differences in technology and its support and compatibility. So, most websites suggest the best browser that provides maximum rendering and functionality and browsers where the viewing experience will be degraded. This makes it easy for viewers to know what to expect and it can even help them to install the later versions.
What is Progressive Enhancement?
Progressive Enhancement uses the same principles as graceful degradation, but works in reverse. Instead of creating websites that work well only in newer websites without a lot of support for older websites, progressive enhancement aims to create a base level user experience for all viewers. So, every website will provide a similar look and feel and the users of older browsers can access limited functionality. As the later versions of the browser are used, more functionality is added to the website and this makes it possible for users with advanced browsers to access every function in the site.
This method is a stark contrast to the method of graceful degradation in many ways. This method believes in giving a choice to the users about the technology they want to use. If they prefer to use the older browsers, then they get to see only a limited aspect and this is a lot better than the users reading just text from the web pages. It is also a more sophisticated and logical way of achieving the purpose because it adds layers of functionality that can be peeled off easily for older browsers.
When to use Graceful Degradation or Progressive Enhancement?
The question of when to use Graceful Degradation or Progressive Enhancement depends to a large extent on the functionality offered by the website. In general, Progressive Enhancement provides a basic user experience to all browsers and as the version advances, so does the experience. On the other hand, Graceful Degradation is the process of building web sites for later technologies while allowing older browsers to show some basic functionality. In this regard, if your website has static content with no graphics or videos, then Graceful Degradation will work because there is not a lot of difference between the technologies. The reverse is true for application-intensive web sites. If your web pages have a lot of functionality with streaming videos, images, live chat and so on, then it’s important that you use progressive enhancement because all users will have a basic viewing experience irrespective of their browsers. Though they may not be able to access chat and other advanced features, they can still work around it and in such cases this is your best bet.
The best option for a designer is to choose the progressive enhancement approach because it is logical. When you start with a basic viewing experience and build your website progressively to add more features, you are not only providing a strong base, but you are also making it possible to seamless move to newer technologies as they emerge. This also means lesser maintenance and you can save on these costs. It will strike a positive note with the viewers and you can be in a better position to attract more traffic to your pages. The downside to this approach is the higher cost and time for development, but in the long run, these costs will be offset by the stability that it provides to the website.
How to Design Websites for Older Browsers?
Whether you choose Graceful Degradation or Progressive Enhancement, there are some aspects that should be kept in mind while designing websites for older browsers. Firstly, you should understand the legal issues that come with designing for older browsers. For example, the Section 508 Amendment to the Rehabilitation Act of 1973 mandates that all electronic information should be made available to people with all kinds of disabilities including technical know-how. This simply means that your website should cater to the needs of the people who are not well-versed in technology. The UK and other countries also have similar restrictions and so it’s important that your website complies with them.
Another suggestion is to avoid developing websites that work only in one or two browsers. For example, some websites require a Mozilla plug-in for the best viewing experience and non-Mozilla users have no choice. This will only reduce the number of visitors to the page and will not do any good for the business. So, browser specific features should be avoided at any cost. Finally, using the progressive enhancement approach will make it easier to build, maintain and integrate newer technologies to your website.
Conclusion
Making it possible for users to view web pages in older browsers is imperative if a business is trying to build its customer base and this can be achieved by two broad approaches namely, graceful degradation and progressive enhancement. There are pros and cons to both and the exact method depends on the nature of the website. However, in general, progressive enhancement works better for all kinds of websites despite having some disadvantages like high costs and longer development time.
‘Making it possible for users to view web pages in older browsers is imperative’. Not imperative. You do not have to provide the exact same experience to them.
A modern mobile browser (such as on iOS or Android, NOT IE7 on WP7) is more than capable of browsing the big pages. But we still give them something more accessible.
The same should be done for older browsers. Compare Wikipedia on Chrome and how it acts on IE 5.5, or even 3.0. They have great compatibility but the users of those browsers have to get a worse experience. Regardless, I have to agree with Wikipedia in not using a bunch of hacks to get the site looking the same in all versions of IE and old browsers.
The very idea of making a modern ‘web 2.0’ site look and act exactly the same IE6 is utterly ridiculous. Should I start making games that work in older hardware because of bugs and obscurities I find in the video hardware/drivers?
Progressive Enhancement in webdesign is a conservative stance that behold the web as it is, slowing the adoptions of more efficient technologies and wasting resourses (time, money, bandwidth, …).
It suggest you: design for the worst browser. IE6 release is dated 2001: according to P.E. the site must be, basically, designed in a 2001-manner. Than you can add some irrilevant decor, but not core functions and features, for the rest of your visitors.
According P.E. you should also design for a js-disabled target, which is even more masochistic and castrating and sometimes quite impossible.
Browsers are free and require a few minutes to install. But what reason have you to upgrade if you don’t see anything wrong in the sites you’re visiting and nobody tell you your browser is obsolete and harmful?
For deeper insight: http://www.smashingmagazine.com/2012/07/09/old-browsers-are-holding-back-the-web/