Hacker News new | past | comments | ask | show | jobs | submit login

IE 11 is the last browser with any substantial share that is no longer being actively developed (and automatically updated). As such the are a number of new features that get broad support in "evergreen" browsers that IE will never support. Most frameworks and developers end up bending over backwards to polyfill these features leading to more complex code and larger file sizes. Here are a few examples:

ES6/ES2015 - https://caniuse.com/#search=ES6

Every other major browser supports this natively aside from IE, but most people still transpile their modern code down to ES5 + polyfills for compatibility

CSS Variables - https://caniuse.com/#feat=css-variables

Again, widely supported, but instead we use tools like SASS/LESS

Web Components[1] (Shadow DOM[2] and Custom Elements[3])

Newer frameworks like Ionic 4 rely heavily and web components and see it as the future of all UI frameworks and the end of framework churn[4]. Once again IE 11 holds back the pack and has to be pollyfilled[5]

1. https://developer.mozilla.org/en-US/docs/Web/Web_Components

2. https://caniuse.com/#feat=shadowdomv1

3. https://caniuse.com/#feat=custom-elementsv1

4. https://blog.ionicframework.com/the-end-of-framework-churn/

5. https://blog.ionicframework.com/october-2018-a-big-month-for...

Proxy - https://caniuse.com/#feat=proxy

Vuejs is completely rewriting its observation mechanism[6] to be proxy-based in version 3, however it appears that cannot be polyfilled and so they will be providing a second, optional, not-fully-compatible build, specifically for IE 11[7]

> Most of the ES2015 features used can be transpiled / polyfilled for IE11, with the exception for Proxies. Our plan is to implement an alternative observer with the same API, but using the good old ES5 Object.defineProperty API. A separate build of Vue 3.x will be distributed using this observer implementation. However, this build will be subject to the same change detection caveats of Vue 2.x and thus not fully compatible with the “modern” build of 3.x. We are aware that this imposes some inconvenience for library authors as they will need to be aware of compatibility for two different builds

6. https://medium.com/the-vue-point/plans-for-the-next-iteratio...

7. https://medium.com/the-vue-point/plans-for-the-next-iteratio...

Imagine the number of hours that could be saved globally if all this work and testing didn't have to happen anymore.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: