开源日报 每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,坚持阅读《开源日报》,保持每日学习的好习惯。
今日推荐开源项目:《自带音效 Keyda》
今日推荐英文原文:《2020 and Beyond Programming Trend Predictions》

今日推荐开源项目:《自带音效 Keyda》传送门:GitHub链接
推荐理由:因为现在大部分人在使用电脑的时间力都是放着音乐的,对按键声可能没有那么在意。但是按键的声音作为操作的一个反馈实际上能够让人对使用键盘这件事更加集中,虽然现在已经有了音乐这种更好的替代品,但是如果想要重温键盘的按键声但是自己的键盘又做不到的话,这个项目能够替代你的键盘来发出按键声,对于那些很安静的键盘来说,它也不会在大半夜吵到你的舍友。
今日推荐英文原文:《2020 and Beyond Programming Trend Predictions》作者:Indrek Lasn
原文链接:https://medium.com/better-programming/2020-programming-trend-predictions-a5d6b70bec26
推荐理由:下一年编程技术的趋势

2020 and Beyond Programming Trend Predictions

Predicting what programming technologies will emerge in 2020


Photo by Safar Safarov on Unsplash

2020 is almost here, as crazy as that sounds. The year 2020 sounds like it’s derived from science fiction, yet here we are — about to knock on its front door.

If you’re curious about what the future might bring to the programming world, you’re in the right place. I might be completely wrong — don’t quote me on this— but here’s what I think will happen. I can’t predict the future, but I can make educated guesses.
“The best way to predict your future is to create it.” ― Abraham Lincoln

Rust Will Become Mainstream


Rust- https://www.rust-lang.org/

Rust is a multi-paradigm system programming language focused on safety — especially safe concurrency. Rust is syntactically similar to C++, but it’s designed to provide better memory safety while maintaining high performance.

Source: Leftover Salad

We’ve seen four years of strong growth of the Rust programming language. I believe 2020 is the year Rust will officially become mainstream. What is mainstream is up for self-interpretation, but I believe schools will start introducing Rust to their curriculum. This will create a new wave of Rust engineers.

Most loved programming languages from the 2019 StackOverflow Survey.

Rust has proven itself to be a great language with a vibrant and active community. With Facebook building Libra on Rust — its the biggest project ever — we’re about to see what Rust is really made off.

If you’re looking to learn a new language, I would strongly recommend learning Rust.

GraphQL Adoption Will Continue to Grow


GraphQL Google Trends

As our applications grow in complexity, so do our data consumption needs. I’m a big fan of GraphQL, and I’ve used it many times. I think it’s a far superior solution to fetching data compared with a traditional REST API.

While typical REST APIs require loading from multiple URLs, GraphQL APIs get all the data your app needs in a single request.

GraphQL is used by teams of all sizes in many different environments and languages to power mobile apps, websites, and APIs.

Who’s using GraphQL

Progressive Web Apps Are a Force to Reckon With

Progressive Web Apps (PWA) is a new approach to building applications by combining the best features of the web with the top qualities of mobile apps.

Photo by Rami Al-zayat on Unsplash

There are way more web developers in the wild than native platform-specific developers. Once big companies realize that they can repurpose their web devs to make progressive web applications, I suspect that we’ll be seeing a huge wave of PWAs.

It will take a while for bigger companies to adapt, though, which is pretty normal for technology. The progressive part would generally fall towards the front end development since it’s mostly all about interacting with the Web Workers API (Native Browser API).

Web apps aren’t going anywhere. More people are catching onto the idea that writing a single cross-compatible PWA is less work and more money for your time.

PWA Google Trends

Web Assembly Will See More Light


Web Assembly

WebAssembly (abbreviated Wasm) is a binary instruction format for a stack-based virtual machine. Wasm is designed as a portable target for compilation of high-level languages like C, C++, and Rust. Wasm also enables deployment on the web for client and server applications. PWAs can use wasm too.

In other words, Web Assembly is a way to bridge JavaScript technologies with more level technologies. Think of using a Rust image processing library in your React app. Web assembly allows you to do that.

Performance is key, and as the amount of data grows, it will be even harder to keep a good performance. That’s when low-level libraries from C++ or Rust come into play. We’ll see bigger companies adopting Web Assembly and snowball from there.

React Will Continue to Reign


Frontend JavaScript frontend libraries

React is by far the most popular JavaScript library for front end development, and for a good reason too. It’s fun and easy to build React apps. The React team and community have done a splendid job as far as the experience goes for building applications.

React — https://reactjs.org

I’ve worked with Vue, Angular, and React, and I think they’re all fantastic frameworks to work with. Remember, the goal of a library is to get stuff done, so focus less on the flavor, and more on the getting stuff done. It’s utterly unproductive to argue about what framework is the “best.” Pick a framework and channel all your energy into building stuff instead.

Always Bet on JavaScript

We can say with confidence that 2010s was the decade of JavaScript. We’ve seen a massive spike of JavaScript growth, and it doesn’t seem to be slowing down.

JavaScript developers have been taking some abuse by being called “not real developers.” JavaScript is the heart of any big tech company, such as Netflix, Facebook, Google, and many more. Therefore, JavaScript as a language is as legitimate as any other programming language. Take pride in being a JavaScript developer. After all, some of the coolest and most innovative stuff has been built by the JavaScript community.

Almost all websites are leveraging JavaScript to some degree. How many websites are out there? Millions!

It has never been a better time to be a JavaScript developer. Salaries are on the rise, the community is as alive as ever, and the job market is huge.

Top languages over time

I wrote earlier on the subject of what makes JavaScript popular — you should probably read that too.

Top open source projects
下载开源日报APP:https://openingsource.org/2579/
加入我们:https://openingsource.org/about/join/
关注我们:https://openingsource.org/about/love/