Ending Support For IE 11
A handful of the APIs IE does not natively support include Promise, the vastly more performant Beacon api, the fetch api for simplifying JSON api workflows, and the exciting esm api, and the critical VTTCue.prototype.getCueAsHTML for partners wanting to skin subtitles.
The Investigation
This was not a decision the Player Team undertook lightly, we knew we needed to use a data-driven decision making approach to be able to gain company wide buy in. Luckily, we have a wealth of analytics around our product for precisely these decisions and after sampling 100 million player sessions from last month less than 0.01% were on IE. After this investigation we knew it was possible to make this decision and improve the experiences of 99.99% of all end users who interact with Flowplayer.
Immediate Impacts
After discovering how big of an impact this move might have for our end users, we set to work to detail key candidates in our codebase for simple refactors that might give us an immediate impact. We discovered over 650 lines of code that can be simplified or in some cases removed completely, which may sound like a modest gain, but we are optimizing for kilobytes and bytes at Flowplayer.
Future Impacts
There are several places we have slated for significant innovation including stream-lining our embed offerings, developer experience, and a revamped CSS skinning system using modern CSS variables. These are just a few of the many advances we are looking forward to adding to our product in 2021.
Hard Limitations
Any of our customers with hard limitations around IE will find that we have a reasonable solution for them, we have created a single immutable release for IE that can be used indefinitely, but we would like to remind them that Microsoft has declared a fast approaching sunset timeline). More on our release channels can be found here toghether with a changelog for our stable release that we recommend in production environments.