The Problem With Evergreen Browsers
Posted on 2014-07-08
On the surface, the concept of an "evergreen" browser – a browser that is always updated to the latest version – sounds like a no-brainer. Finally, browser makers have delivered us from the hell that was stagnant browser versions! IE6 is dead, and will never return!
There is a downside to evergreen browsers, however. People stop supporting older versions as soon as the newer version is released, because all users are immediately upgraded to the latest version when they open their browser. However, there are a few special cases where users can't upgrade their evergreen browser.
Case 1: Unsupported platform
This is the primary circumstance that users of evergreen browsers fall behind. Generally this is a problem for Mac users, although both Linux and Windows are also susceptible.
My partner has a Macbook from several years ago, and it has been "antiqued". In addition to being a move that reeks of arrogance, this means that Apple has deemed her laptop too old to write software for. She is stuck with an older version of OS X, and cannot get updates for any of her software. She is currently stuck on Firefox 15, which is starting to lose the ability to process more modern web technologies.
Case 2: Permission and distribution
While the browser makers can send updates directly to users, sometimes an intermediary steps in and controls the flow of updates. This is the case if you're using Linux and you get your browser from your distributions' software repositories, or you work in an environment where your network administrator controls when updates are applied.
In some cases, installing these updates require administrator rights. Even if you can download the updates, you cannot apply them without being an administrator of your computer, and not everyone has this ability.
These factors generally result in fewer and less frequent updates, which could put you a few versions behind. If web developers are using cutting-edge features in their sites, these users could end up on the cutting room floor.
What to do
You can prevent these slightly-stale browser users from having problems with your site. We have been dealing with these kinds of conditions for years and have practices that can prevent them from breaking everything.
Progressive enhancement was made for this problem. It worked when we were battling the old IE versions, and it works now. Be sensible about implementing new technology, and make sure fallbacks are available and working.
I appreciate this article as many young developers are stuck in the assumption that newer is always better, and what came before is junk. There are a huge number of flaws in the "evergreen" browser concept. The main one is the simple fact that, constantly changing the browser's support of technology means a many points in time websites are customized for that one moment in time, not a changing future that will now wreck them. If a browser now changes any format for an element, the browser is now update but millions of web applications now break. If we knew browser versions we could detect them over time, or leave alerts, or have rewrite cycles as we do now. With the evergreen concept technology today gets the latest, but future generations now get punished. It was a terrible strategy to begin with and too much based on a short term attention deficit world. The older strategy of agreed on standards and releases would have meant powerful, predictable changes are released on the Web World. Instead now, we have unpredictable changes and constant turmoil in the development community, year after year as new CSS and HTML gets released, leaving behind a mess of web applications that increasingly dont work, dont support newer technology, and worse, no way to know what to support tomorrow.