Hacker News new | ask | show | jobs
by TheCoreh 3471 days ago
IMO, you should set up an analytics funnel to measure landing page conversion or (for web apps) usage metrics based on browser version.

Whenever the cost of supporting old, ES5-only browsers (measured by the amount of time spent debugging/adapting code * dev hourly rate) surpasses the income brought in by users on those browsers, it's probably time to make the switch.

For the web app case, you obviously don't want to just cut out access to those users (that would be pretty bad customer service! that can totally ruin your reputation), so you also need to factor in the costs of educating your users about the upgrade, giving them enough time and/or providing an alternative means of using your app. (ex: an Electron-based app installer)

Considering how good the polyfills and transpilers currently are (assuming you already have those set up) the maintenance costs of supporting ES5 are very low. It makes very little financial sense to not support it for existing applications ATM.

If you're just starting with an app, that is going to launch in one year or more (assuming you're focused on a general audience , instead of a specialized market like corporate where browsers are updated more slowly) then I'd probably already start without worrying about ES5 at all.

2 comments

Or you can charge extra to support those users - chances are good that they will either pay or even better, force them to have the conversation about upgrading their systems & do so.
This is the best comment. Thanks k you for making it about the customer and the user instead of "code beauty".
I think people are making it about code beauty because ES6 is code, not a user concern. Right now you're pretty much transpiling down to ES5 for anything user facing.