JavaScript News and Updates of March 2021
Tags: javascript, news, webdev, html
Published: 2021-03-31 11:18:38

Greetings to all JavaScript admirers! It is time to continue our wanderings on the JavaScript land and become familiar with the latest news and updates. 

In this article, I will provide you with interesting insights into the latest programming trends from RedMonk, new Gantt libraries based on popular JavaScript frameworks, new versions of the Gatsby framework, V8 JS engine, and DHTMLX Spreadsheet, and top it off with useful materials to strengthen your coding abilities.

Let’s kick it off!

## New Tools and Updates

#### Latest RedMonk’s Rankings on Programming Languages
RedMonk, a well-known analytical company specialized in the software industry, has recently published a new edition of its ranking on top-used programming languages. This popular quarterly survey is based on a peculiar methodology. The results are obtained by combining data from GitHub (pull requests) and Stack Overflow (discussion traction).  

![RedMonk rankings](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ipp9lwsxxz8b68egnmbd.jpg)

So who is on top this time? Unsurprisingly, it is JavaScript. Since 2018, the numbers of JS pull requests are up 453%. JavaScript maintains its dominance in the realm of programming languages and it is very unlikely to change in the near future. It is also interesting to mention the growing popularity of TypeScript that has been moving steadily up the rating list in recent years. Visit the RedMonk [page] (https://redmonk.com/sogrady/2021/03/01/language-rankings-1-21/) to learn about other trends.

#### DHTMLX Introduces New Gantt Libraries in Pure React, Svelte, and Vue.js

![DHTMLX Gantt libraries](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/62tomc0hvt7x781mth87.png)

The DHTMLX company, specialized in JavaScript UI tools for various business needs, has recently rolled out three newly-made Gantt libraries fully written in React, Svelte, and Vue.js. This release is a real gift for web developers who use these popular JavaScript frameworks for building project management apps, where Gantt functionality is in high demand.

Using DHTMLX React Gantt and Svelte Gantt, developers should not worry about any dependencies or compatibility issues, as they are composed of purely native code and can be smoothly integrated into React, Vue, or Svelte-based apps and provide superfast performance. But the most remarkable characteristic of new Gantts is their reactivity. It means that all changes in the code or Gantt UI are rendered in the chart without any delays, thereby contributing to a better user experience.

These libraries include everything you need to properly manage project tasks with drag-and-drop. Various types of tasks and dependencies between them, vertical markers for indicating key project dates, tooltips, editing form for introducing changes on-the-fly, and other useful capabilities are available out-of-the-box. All elements of new Gantts are fully customizable, allowing you to adjust them to the needs of any project. Further information on these promising products is provided in this [release article] (https://dhtmlx.com/blog/brand-new-dhtmlx-gantt-libraries-pure-react-svelte/).

#### DHTMLX Spreadsheet v4.1 is Here

![DHTMLX Spreadsheet](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lvmcarm3no2pso91ro5f.jpg)

If you have to implement a feature-packed Excel-like data table in a web application but have no time and desire to do it from scratch, DHTMLX Spreadsheet can be a big helper in such endeavors. And by the way, the DHTMLX development team has recently rolled out a minor update (v4.1) of this handy JavaScript component, enriching it with new helpful features. The centerpiece of this release is a new ability to create and manage multiple worksheets.

From now on, it is possible not only to add as many new sheets to the table as you need but also to apply cross-referencing between them. There is also a new context menu that significantly simplifies interactions with multiple sheets. All of this stuff and many other useful things can be easily implemented with the help of new API methods and events. If you want to learn more technical details about the DHTMLX Spreadsheet update, check out this [release article] (https://dhtmlx.com/blog/dhtmlx-spreadsheet-4-1-multiple-sheets/).

#### Highlighting V8 Version 9.0

![V8 JavaScript engine](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b5kzwby8wfmsfo9ch5re.jpg)

The development team of the V8 JavaScript engine has recently announced a major update of its product (v.9.0). The new version of this highly-performant JS engine comes with a range of new features that will be appreciated by developers. For instance, it is now possible to benefit from RegExp match indices, optimized super property access, and faster WebAssembly calls. Moreover, it is no longer necessary to bother about the token sequence for ( async of, as it was disallowed. But it should be taken into account that V8 v.9.0 is currently in beta. It will receive a stable status with the release of Chrome 90. For more details, check the V8 [blog post] (https://v8.dev/blog/v8-release-90).

#### Meet Gatsby 3.0

![Gatsby v3.0](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rec3yd91yyxmbik5c0r3.jpg)

Gatsby is a modern frontend framework based on React and GraphQL. It is widely used for generating lightning-fast websites and applications. Earlier this month, Gatsby was updated to version 3.0. This major update includes a lot of improvements that are expected to boost both user and developer experience.

Gatsby is valued by many for its high performance and the new iteration of this development tool brings this vital parameter to a new level. Developers will certainly enjoy significant speed enhancements in local development sessions. Build times have been reduced from several minutes to 10 seconds thanks to the use of Incremental Builds by default. It helps to update apps with new content much faster. The new implementation of the Gatsby Image plugin facilitates more efficient image optimization and makes Gatsby-based projects more performant. Read this [article] (https://www.gatsbyjs.com/blog/gatsby-v3) to find more details about this update and learn how to get started with Gatsby v3.0.

## Useful Tips and Articles
#### New TypeScript Handbook
When thinking about programming languages that can possibly overcome JavaScript in terms of popularity among web developers, TypeScript should certainly be on the shortlist. TypeScript expands the capabilities of JavaScript and the number of applications written in this language has increased significantly over the past few years. If you plan to start learning this language, you can take advantage of a new official TypeScript handbook.

The TypeScript team from Microsoft put in great efforts to prepare a comprehensive resource for learning TypeScript. This book is intended for programmers with some JavaScript background who want to try coding in TypeScript. This handbook has a consistent structure and allows learning key aspects of TypeScript in a step-by-step way. You can read this handbook [online] (https://www.typescriptlang.org/docs/handbook/intro.html) or download it in [PDF] (https://www.typescriptlang.org/assets/typescript-handbook.pdf) or [Epub] (https://www.typescriptlang.org/assets/typescript-handbook.epub) formats.

#### Overview of Popular JS Libraries for Project Management
When building project management applications, developers are frequently asked to implement complex functionalities such as Gantt charts, event calendars, or schedulers. These tools help companies to organize all business processes more efficiently, but it can be very time-consuming to integrate them into a web project from scratch. That is where special JavaScript libraries can come in handy. Using out-of-the-box components helps to accelerate the development process and avoid unnecessary bugs. This [article] (https://hackernoon.com/5-javascript-project-management-libraries-to-boost-web-development-162c35e4) provides an overview of popular JavaScript solutions for building project management apps.

#### Useful Tools for Frontend Monitoring
It is impossible to build a web application with zero defects - one of the sad truths in the life of any web developer. No matter how much time is dedicated to testing before the project reaches the production-ready stage, some bugs and vulnerabilities will go unnoticed anyway. Therefore, the arsenal of any developer must include special tools that help to test applications after they go live. This [article] (https://blog.bitsrc.io/5-different-tools-for-frontend-monitoring-79db94014d) offers valuable information about frontend monitoring tools intended for handling runtime issues.

#### Small JavaScript Bundle Size Does Not Always Mean Good Performance
Performance is probably a key characteristic of any web project and it is frequently closely linked to the bundle size of JavaScript code. This metric is undoubtedly important and it certainly affects JavaScript performance. But it is important not to forget about other criteria that also have an impact on performance rates such as parsing time, execution time, memory usage, etc. This insightful [article] (https://nolanlawson.com/2021/02/23/javascript-performance-beyond-bundle-size/) explores this topic in great detail.

#### Ambiguity of Ternary Operator in JavaScript
Many newcomers to web development find it difficult to understand and master the JavaScript ternary (conditional) operator. There is also a popular belief that ternaries make your code harder to read. Thus, many young coders prefer to use if statements when it comes to conditional expressions. But it is not that simple. Ternaries are more concise and can be really helpful in some situations, while the use of if statements also has some side effects. It is really important to understand the difference between ternaries and if statements as well as their most suitable use scenarios. These issues are fully analyzed in this [article] (https://jrsinclair.com/articles/2021/rethinking-the-javascript-ternary-operator/).


Thanks for reading. Hope that you’ve learned something useful about JavaScript from this material. And there’s more to come next month.