Author: Areknawo
Translation: Crazy geek
Original text: areknawo.com/web-develop…
Reproduced without permission
Happy New Year to you all! Since this post was published on January 1, 2020, I thought it would be a good time to discuss Web development for the next 366 days! Because… Yes, 2020 is a leap year!
Start with the disclaimer, then jump into the actual content. Obviously I don’t know what the real future will look like, and there is no sophisticated statistical analysis on which to base my assumptions. Everything I’ve written here is just my personal opinion on the direction of Web development. All of this is based on my experience and observations. If you disagree with what I wrote, that’s normal! Of course you can share your insights in the comments!
Abstract
- JavaScript and top 3 UI frameworks will continue to be popular;
- Svelte will continue to grow
- Cloud computing, server-side programming and JAMStack will continue to grow;
- Preprocessing and performance optimization are the future;
- WASM brings a lot of computing power to the Web;
- Aterial Design, rounded corners, gradients and dark motifs are the current Design trends.
JavaScript
Some people love it, some people hate it, but as a member of the first Group, I’m happy to say that JavaScript is here to stay. Not only coding in a basic way (obviously), but taking the lead in one of the most popular and versatile programming languages. It spans the Web, desktop, mobile devices, servers, and even the Internet of Things (IoT), and its dominance in open source will grow.
TypeScript
However, JavaScript is not alone in this quest. In addition to HTML and CSS, there are a number of JS-compilable languages. TypeScript is the best known of these languages. With all the benefits of static typing, it has recently gained tremendous popularity. Although it won’t become a W3C standard anytime soon, it benefits from the flourishing of JavaScript. I use TypeScript in almost all of my projects and expect more to do so by 2020.
change
People who have a different attitude to JS than I do — and something for you. While JS won’t be everywhere in the foreseeable future, who knows what it will bring us in the next decade? For now I can only say that the main focus of the language may change slightly. We’ll talk about that later.
UI library/framework
React, Vue, and Angular will be the new industry standards!
Okay, maybe I’m exaggerating a little! Seriously, they are the best of the best frameworks. Independent ecosystems and large communities cannot be ignored. They won’t be that simple. React is almost the jQuery of its time (in terms of its enthusiasm and popularity), Vue gets more new features and huge improvements with V3, and Angular… Just Angular — you know what I mean.
Svelte
But there is a new entrant in the field, and it would be unwise not to mention it. It’s called Svelte, and it’s getting a lot of attention. Many are even expected to compete against the “top of the heap” in 2020.
Personally, I think Svelte will struggle to meet such high expectations. I hope I’m wrong, because the way it creates the UI is very novel! I’m talking about it preprocessing code in an extra “compile step” to provide a smaller, more efficient client package. The rise of JS has led to serious abuse of its functions. If Svelte takes off, we should see more development in the area of preprocessing, which will be beneficial to both developers and users
Server side and cloud
With Svelte in mind, it’s safe to say that more and more computing will be moved off the client side. In the form of what is known as a cloud. We have cloud computing (like AWS), cloud gaming (like Stadia), cloud storage (like Google Drive), and many other services and tools based on this idea. Now it’s moving into Web development!
cloud
We are used to cloud services and third-party apis to speed up the development process and provide some functionality. By relying on multiple such apis from trusted providers, our software is not only more secure, but has more potential and even higher performance (compared to all operations on the client side). So I think overall reliance on cloud services will continue to grow over the next few years.
A static web site
But I also want to talk about something different from clouds. The concept of preprocessing and the well-known additional compilation steps provided by tools such as Svelte. There are a number of performance aspects to be implemented before reaching the client. For example, SSR and JAMStack have been popular for several years. They provide excellent client performance, SEO, and many other benefits without much effort. JavaScript is still used, just less and less.
pretreatment
All well and good, but static sites lack some of the features of dynamic sites, and SSR usually requires powerful servers to function properly. All in all, client code is still necessary to perform many other operations and can sometimes be a bottleneck. With that in mind, I think preprocessing like what Svelte does will get more attention on the “code” scale.
Perhaps you’ve heard of Facebook’s open source project Prepack, which aims to “partially evaluate” JS code? In its final form, it should be able to walk through your code and preprocess it, giving you highly optimized results. The project is still in its early stages and development has stalled, but I think it’s a good example of the overall idea of pre-processing.
performance
In addition to preprocessing and server-side optimization, the client itself has some room for improvement. With the rapid development of JS, it is now used for some very demanding tasks for which JS was not originally designed. Of course the JS language itself and its syntax are great (though sometimes cumbersome), but I’d like to talk more about performance and execution.
V8
Google’s V8 is ahead of the JavaScript engine market. It offers the latest features, top performance, and all that great stuff. It was the first to give us JIT compilation capabilities, which dramatically reduced the execution time of JS code. Thanks to this progress, JS is currently one of the “fastest scripting languages” on the market!
WASM
Having said that, JS’s capabilities are limited. This is why WebAssembly (WASM) was created. This is an efficient format and is the target of compilation in languages such as Rust and C++. Depending on the program, it can be orders of magnitude faster than JS, making it an ideal choice for portable, high-performance computing.
It is important to know that WASM is not intended to replace JS. On the contrary, it will do all the heavy lifting and keep JS focused on the UI. With its impressive performance, we will eventually be able to create heavy applications (such as games) that can run anywhere and impress users with their responsiveness!
Since launching its minimum Viable product (MVP) in 2017, WASM has been slowly but successfully acquiring new features. WASM was officially approved as a fourth Web language by the W3C on December 5, 2019. But it can also be used outside the browser as a portable module. It’s easy to see how WASM will continue to evolve. Who knows — maybe in a few years we’ll be able to play AAA games in our browsers!
design
I’d like to conclude by introducing some “design trends” to summarize these predictions. You should know that even though code is very important, the most important part of the user experience is the design and UI.
Material Design
I don’t think the design trend will change much this year. No, Skeuomorphism is gone. As in previous years, Google’s Material Design (MD) will be mainstream. However, things may look different because of the need for “customizability.”
Instead of strictly following the guidelines laid down by Google, different brands adopt certain design codes and use them to create their own “unique look” and stand out from the competition. However, things like rounded corners, gradients, bright colors and dark patterns with dark themes will be common. Again, simplicity, user experience (UX), and mobile devices will be the main focus.
accessibility
In addition to visual content, accessibility (A11y) is likely to grow in importance. The Web is increasingly occupied by a wide variety of people, and providing a good experience for all should be the main goal of all designers.
In particular, more general sites like social media and news magazines should be accessible to different people with disabilities. But the A11Y goes beyond that, improving even the comfort of everyday users by responding to subtle details like keyboard buttons and touch gestures. The more such features a site implements, the more likely users will like it.
It’s your turn
That’s my prediction for Web development in 2020. Whether you agree or not, I’d love to see your constructive feedback and your own predictions in the comments below!