Progressive Enhancement vs Graceful Degradation

Progressive Enhancement vs Graceful Degradation

The ideas of progressive Enhancement and Graceful degradation have been within the air for a while. but these terms are fully opposite, they’re typically employed in conjunction. It’s not stunning as each pursues an equivalent goal – to create web content accessible to a spread of browsers and their versions.

Before excavation deeper into the subject, I would like to denote that progressive Enhancement and Graceful degradation don’t seem to be frameworks, a compilation of rules, or technology stack, and don’t force you to avoid JavaScript. they’re simply development methodologies, an approach if you wish.

Graceful degradation

Graceful degradation suggests that building an application with a baseline of full practicality out there in fashionable browsers so taking the layers off to confirm it works with older browsers. You downgrade/degrade the improved version (that why it’s known this way).

Progressive Enhancement

Progressive Enhancement is that the opposite of Graceful degradation. rather than developing all options from the beginning, an online page is constructed from a baseline of the options supported by all browsers (and browser versions). Then, a lot of advanced options are supplemental like layers, that the website takes advantage of the practicality newer browsers got to supply.

It doesn’t mean that you simply ought to avoid victimization JavaScript or build the core practicality with hypertext mark-up language solely. Before beginning the event, you must decide what’s the core practicality and the way you’ll be able to understand it. If there is no way to avoid JavaScript – let it be.

Which one to choose?

Both strategies assist in creating a website accessible aboard providing improved options for people who will make the most of it. therefore that one is better?

Progressive Enhancement is sometimes thought-about a far better observe because it starts with the easy basics and adds enhancements on prime of that. As progressive Enhancement starts from hypertext mark-up language, not solely it guarantees that the applying can add any browser, however additionally ensures that search engines and screen readers can are aware of it. once planning one thing from scratch, you must be thinking in terms of progressive Enhancement.

If you’re trying to create an existing website a lot accessible and befits new standards, true is completely different. Unless you would like to start everything over, Graceful degradation is that the path to follow during this case.

In regards to testing, it’s approach easier to check progressive Enhancement than Graceful degradation.

If we tend to work from the progressive Enhancement purpose of reading, we can merely begin with developing the essential version and verify whether or not it works properly. Then we tend to add an added layer and check if everything still works the proper approach so on. So, simply put, when we tend to add an extra layer, we want to verify it doesn’t break the essential version.

On the contrary, we want a unique approach once victimization Graceful degradation. The advanced options are already there and might be tested. to verify that they are doing degrade graciously, we tend to should disable the support of these options. In some cases, you’ll have to be compelled to take a look at it during a completely different browser, however in most cases, you’ll be able to use accessibility options of Opera, internet Developer Toolbar in Firefox, or Developer Tools of Chrome.

Regressive Enhancement

Regressive Enhancement doesn’t cause a lot of buzz around however it’s another methodology developers use all the time.

Regressive Enhancement methodology suggests that building a baseline of full options so replicating/emulating full options through a regression victimization different technologies supported by the older browsers.

Regressive Enhancement is commonly used aboard progressive Enhancement as an abstraction layer on prime of progressive Enhancement. as an example, AngularJS and jQuery libraries are wont to regressively enhance older browsers with options they don’t support out of the box.

To sum up, progressive Enhancement is taken into account to be the most effective and is employed within the majority of cases (layered with regressive enhancement). however Graceful degradation shouldn’t be thought about as an “unwanted” approach. It’s necessary to know that in building a website, internet developers use a mix of all 3 methodologies whether or not they are aware of it or not. At Ahy Consulting, we use a blend of all 3 methods to ensure that your website looks awesome in all kinds of browsers & versions!

Feel free to reach out to me if you need help with what is right for you, using this link.

Cheers!

comments powered by Disqus