The es6 advent was a watershed, bringing not only new features but a new way to look to the ECMAScript standard. After that, es7 and beyond versions were incrementing on the natural evolution of this path.
Lots of tools were raising at the same time. That led to, sometimes, using tools like Grunt, Gulp, Bower, npm, and Webpack in the same project! It was a mess and it was easy to be puzzled within this environment. You can imagine how overwhelmed a beginner would feel trying to figure out this scenario.
That was me. Not only trying to learn tons of new things at the same time, but also trying to guess where the wind was blowing to and decide what I should learn first. I chose AngularJS and Ember — and now we can see that React was the king of stability and adoption in this competition. Actually, I am much happier now working with React projects. :)
The configuration storm
Another issue that is getting solved is the configuration storm.
Two years ago, it was very common to copy-paste a lot of code to start a new project. Fortunately, the tools evolved in that sense. Today, it’s possible to create a react app with a single line. It’s possible to create a webpack bundle with zero configuration. Dan Abramov wisely talked about it in 2017.
That eliminates barriers and noises to beginners, giving them a sense of direction. They can focus on doing stuff and, while they deliver value to the market, they create intimacy with the tools and learn how to handle the corner cases, progressively.
If you compare the publication State of JS 2018 with its previous editions, you will see that there was a kind of uncertain between 2016 and 2017, but not very much changed between 2017 and 2018. The topic “Build tools” disappeared: maybe the competition became irrelevant with the huge adoption of webpack.
In the back-end, Express lost a bit of popularity a few years ago, but regained it and probably will keep the crown for the next years. Speaking in “next”: you should look to Next.js, a zero-config server-side rendering for React projects.
In terms of front-end, I believe that React and React Native will be at the top of the list for a long time. Redux and REST are still the default modus operandi of web apps, but Apollo and GraphQL are becoming more and more trendy. I hope that, until the end of this year, we have great progress in this field.
Most of our front-end projects in Hexis Hub are applying or moving toward PWA requirements. It means we are building web apps that run on the browser, but could be used as desktop or mobile apps without a big overhead. They offer a native user experience that is smooth and fluid and should work even if you are offline.
For componentization, we are currently using React and a modular structure to reuse the codebase through different platforms. We also have an eye on Lit Element, a wonderful library for creating native web components.
You have a booming market with good demand for new developers. You have a well-prepared ground to know not only what to learn but also how to learn it. You are holding all the aces. What are you waiting for?