I am a student who has been programming in JS for roughly 2 years, though I write more code in C++ then in JS, only do some front-end stuffs as a hobby. Does that count as a novice in your definition?
Personally, I find some new JS syntax like class, variadic argument and default parameter not only make the code more readable but also more optimizable by JS engine. I can finally write JS code in more "C++ like" way!
I do agree some new JS syntax are not very helpful for me. But then again, these new JS syntax are opt-in, meaning I can still use old syntax as usual and old code should continue to work.
Tc39, like any other programming language specification committees, is very serious about backward compatibility, otherwise some old (often misused, hard to optimize, roots of many bugs) syntax like "with" and "eval" would have been removed long time ago. (I would love to see <iostream> to get removed from C++, but alas, backward compatibility).
Toolings for ES6 and onwards shouldn't be a big issue. Many tools and JS engines itself implement new JS features and iterate quickly before the proposal is even finalized.
I think the main issue most people face will be lack of interest to try/learn new things and adapt, which IMHO is one of the most important skill in general programming.
- Rong Jie
On Sunday, April 30, 2017 at 2:40:57 PM UTC+8, kai zhu wrote:
no, not everyone with stakes in frontend-development is as smart as you or the other blink-devs here, and you people setting standards really should care about these lesser mortals. i just wish some of you can look out your ivory towers and see the misery and disenfranchisement of tech companies around the world unable to ship frontend-products these days, due to the chaos and confusion over es6 and its toolings, and how it undid many of their “solved” frontend painpoints.
-kai