1- Vue JS is becoming increasingly popular

Vue was created in 2014 and is gaining more and more popularity. It is, in fact, one among the lightest and fastest frameworks available online.

VueJs is an open source project: a library for creating web interfaces using MVVM data association with a awfully simple API. additionally, this framework is even more particular since there’s no big company behind its creation. While for Facebook there’s React and for Google Angular, VueJS was created by one person, Evan You.

From the outset, the documentation has been available in Chinese, which suggests that the framework is incredibly popular in China where it’s employed by large companies like Expedia, Alibaba, Nintendo and GitLab.

Recently, VueJS was included among the ten most well liked GitHub projects in 2017, even more popular than Facebook React. It also has over 80k stars on Github.

2 – Functional programming benefits from Javascript improvements

Functional programming has become increasingly important over the years, but its impact will increase significantly in 2018. Functional programming (PF) may be a programming paradigm during which the program execution flow takes the shape of a series of mathematical relation evaluations . the most strength of this paradigm is that the lack of side effects of the functions, which entails easier verification of the correctness and lack of bugs of the program and also the possibility of greater optimization of the identical.

Functional programming is more predictable and a few say “simpler” than object-oriented programming. it’s certainly easier to check. If you have been working with Javascript for a long time, it is very likely that you’ve got bump into functional programming principles and ideas, which encourage developers to interrupt a program down into small functions.

In 2018, functional programming benefits specifically from recent Javascript improvements like ES6 and ES7.

Useful for functional programming are the subsequent Javascript improvements:

Arrow functions : the arrow functions reduce the boilerplate when writing the functions.

Object / Array Spread: this feature makes it very easy to avoid mutating objects, because it’s much easier to form new objects that contain existing boilerplate (standard) code values.

async / await: sometimes we’d like to call functions that have side effects, even in functional programming, because we’ve several calls that depend upon one another. async / await gives you the chance to form writing asynchronous code easier and “natural” (because it’s more just like the more familiar synchronous code).

3 – Extensions with greater compatibility

What changes in 2018 and can still improve is that the compatibility of those extensions.

What does it mean?

they modify the functionality of an internet browser and might add new features, modify aspects or content of internet sites. Extensions were created for a selected browser, like Chrome or Firefox. this can be changing as Firefox today also supports Chrome extensions.

While within the past, Firefox extensions used three different systems, the WebExtension API will now be the sole thanks to develop Firefox extensions, making them available for other browser systems in addition.

There has been some controversy around this example because since the introduction of Firefox 57 (Quantum), old extensions now not work. Once a replacement version is released with a replacement API, the old extension disappears.

To test the browser’s compatibility along with your extensions, you’ll be able to use an easy extension compatibility tester.

4- Real time web applications

Real time web apps, supported websocket, are available for years, but have become increasingly popular. The reason: users are searching for faster ways of interacting and real time web applications offer the likelihood to share information instantly.

At the bottom of real time web applications there’s a connection between client and server left open where new messages are addressed from time to time. Before real time web applications, you had to manually check for any new incoming messages.