As someone relatively new to js and the community can you give me brief account of what babel was and what happened to it so that I can understand OPs article better?
Babel is primarily a Javascript-to-Javascript compiler. It was originally known as "6to5", and is mostly used for compiling newer ES6 syntax to older ES5 syntax for compatibility with browsers that don't yet support all of ES6.
Originally, Babel implemented all the syntax parsing and transformation logic internally, so there was a single "babel" package that gave you all the capabilities built-in. That also included support for some not-yet-final pieces of syntax, like decorators. However, the Babel authors decided to switch to a plugin-based architecture, with each individual bit of syntax as a separate plugin. That was good for modularity, but many people were upset that they now had to install and manage lots of different plugins to get the same capabilities they used to get "out of the box". Also, since Babel is usually used with a bundling tool like Webpack, there's frustration at the overall amount of configuration that's often needed to get a brand new project set up.
Babel is a fantastic and vital tool, and ultimately the switch to a plugin architecture is a good thing, but it did cause a lot of churn and frustration for people. Tools like Create-React-App have helped simplify the setup process, and I think the upcoming babel-preset-env plugin will also help a lot of people.
6
u/trakam Dec 05 '16
As someone relatively new to js and the community can you give me brief account of what babel was and what happened to it so that I can understand OPs article better?