2020 State of JS in Review
Tags: codenewbie, beginners, javascript, yearinreview
Published: 2021-03-02 18:36:01

JavaScript, and it's world of related technologies and frameworks, are constantly in motion. While the massively adopted heavy hitters such as React and WebPack work very well, and are not going away anytime soon, still new frameworks and features arise to help make JS become more efficient and effective (and dare I say simple?), keeping developers learning. Since 2016, [Sacha Greif](https://twitter.com/sachagreif) and [Raphaël Benitte](https://twitter.com/benitteraphael) have been collecting, analyzing and visualizing data on how developers use JavaScript, tracking how JS technologies and usage differs from year to year. 2020 data has recently been released, and show some interesting insights into how the [State of JavaScript](https://2020.stateofjs.com/) is evolving for developers.

#### [2020 State of JavaScript](https://2020.stateofjs.com/)
![State of JavaScript Website](https://imgur.com/2lqcrcb.jpg)


## Some Fun Insights

#### Front-End Frameworks
Looking through popular JavaScript frameworks, there are a few that top the usage charts year after year, such as [React](https://reactjs.org/), [Angular](https://angular.io/), and [Vue](https://vuejs.org/). What was interesting to see while looking into JS front-end frameworks from 2019 to 2020 was the swift adoption of [Svelte](https://svelte.dev/), which not only topped the charts in User Satisfaction and Interest in the past two years, but has moved it's way from the 9th to the 4th most used CSS framework in a year. This newly popular JavaScript framework is definitely worthy of a look for any Frontend Developer.
###### Takeaway: [Svelte](https://svelte.dev/)
--- 
#### Back-End Frameworks
While looking at options for building a JavaScript back-end, the options included in the survey results can seem a little muddled. First, there are back-end specific frameworks such as [Express.js](https://expressjs.com/), and then there are fully functional server-side rendering frameworks such as [Next.js](https://nextjs.org/) and [Gatsby.js](https://www.gatsbyjs.com/) that provide out-of-the-box functionality with backends included and requiring minimal setup. Express is clear leader in usage, but Next.js is gaining popularity and ties with Express for the highest satisfaction rate. When it comes to needing a pre-built, boilerplate single-page-application setup, Next.js seems to be a great option, but if building a more customized or diverse application that needs a dedicated and specific backend, Express.js has maintained its place since released in 2017 as the clear winner in JavaScript back-end frameworks.
###### Takeaway: [Express.js](https://expressjs.com/)
--- 
#### Data Layer
When it comes to importing the back-end data layer into the front-end, [Redux](https://redux.js.org/) remains the most used state management tool, but [GraphQL](https://graphql.org/) is gaining in popularity of usage and maintains the highest satisfaction rating. Important to note, GraphQL is not a state management tool, but instead is a different way of managing the data layer and allows for less data to manage in the front-end. The use of GraphQL reduces developers need of using a robust state management tool such as Redux, and allows for the potential use of a simpler state management solution. Redux seems to not satisfy developers like it used to, and new tools have entered the arena within 2020 to help resolve this issue. We will see if any of these tools take hold as the most used for state management and the data layer in the near future. For now, GraphQL seems like a good API for developers to look into for managing the data layer.
###### Takeaway: [GraphQL](https://graphql.org/)
--- 
#### Most Adopted JavaScript Technology: TypeScript
Much of the reason for looking into this type of survey data for the usage and trends of JavaScript by professional developers is to find the best emerging tools, and to look into which technologies have been adopted by the most developers. In 2020, the clear winner in adoption across the majority of JavaScript developers is [TypeScript](https://www.typescriptlang.org/), which builds on traditional JavaScript while introduces static typing, helping developers catch errors early and improving reliability of the code written.
###### Takeaway: [TypeScript](https://www.typescriptlang.org/)
--- 
## Conclusion
While there are definitely some heavily adopted and highly reliable tools that most developers keep going back to in the world of JavaScript development (React, WebPack), keeping an eye out for new technologies that might improve or simplify development is always exciting to do. Looking through the date visualizations from the [2020 State of JavaScript](https://2020.stateofjs.com/) can be useful for newbies and more senior developers alike in learning what new features and technologies are on the rise, along with what is being used currently with high levels of satisfaction. I myself will be looking into improving my JavaScript toolset and feature usage after looking into these trends, and so should you!

**What new JS technology have you been learning or do you want to learn next??**