Which JavaScript should be taught?
A few weeks ago I taught a class on front end development. At some point I had to face the question: which JavaScript do I focus on?
It wasn’t an easy one, but I ended up focusing the JavaScript lessons on the good old ES5. Here’s a bunch of reasons that convinced me:
- the goal of the company is to port existing apps written in .NET to web technologies. It’s a already a huge switch. Let’s not complicate it. 
- Internet Explorer 11 has to be supported. Most of the new features in ES6 are not supported by IE 11. 
- ES6 would have required to introduce (and teach) a bunch of tools that are needed to transpile JS. There was no time and, as mentioned above, the company was already facing a huge shift, especially mindset-wise. More tools, more confusion. 
I could have taught some of the frameworks on fashion nowadays, but I just presented jQuery, even if “it’s 2016 man, no one uses jQuery anymore”.
I focused the lessons on getting things done, with the smallest set of dependencies. jQuery is more than enough to make you go a long way.
Instead of talking about frameworks I preferred to include lessons on accessibility and security.
So now they have a solid base. On top of that they can build products in React, Ember, TypeScript or INSERT_FRAMEWORK_ANNOUNCED_TODAY_HERE. If something goes wrong they can still fall back to old, boring (but working) JavaScript.