The Big Progressive Enhancement Debate
I’ve got bad news, though: Progressive enhancement is dead, baby. It’s dead. At least for the majority of web developers.
"Something happened a few years ago in web browser land. Did you notice it? I didn’t.", he said, "the browser transformed from being an awesome interactive document viewer into being the world’s most advanced, widely-distributed application runtime". What is Progressive Enhancement really? According to Wikipedia
Progressive enhancement is a strategy for web design that emphasizes accessibility, semantic HTML markup, and external stylesheet and scripting technologies. Progressive enhancement uses web technologies in a layered fashion that allows everyone to access the basic content and functionality of a web page, using any browser or Internet connection, while also providing an enhanced version of the page to those with more advanced browser software or greater bandwidth.
As the browser vendors are always trying to innovate and differentiate, the responsiveness and user experience are constantly improving. The ubiquitous availability of browsers as a platform for delivering these responsive applications is compelling.
ROCA is an attempt to define a set of recommendations — independent of any particular framework, programming language, or tooling — that embodies the principles of what we consider to be good web application architecture. Its purpose is to serve as a reference, one that can be implemented as-is or be compared to other approaches to highlight diverging design decisions.