CSDN Developer Weekly Issue 26: Rust is upgraded to Microsoft's first echelon language; "Bear Boy" knocks on the keyboard to break the Linux desktop; 500 AI open source projects worth learning

CSDN Developer Weekly: Only to deliver "interesting/useful" developer content!

Insert picture description here

Popular items this week

0, Rust upgraded to become a Microsoft first-level project

Rust, born in 2015, is a niche modern system programming language. In recent years, it has been favored by major companies. And has been rated as the most popular programming language among developers for 3 consecutive years.

Today, Rust is officially upgraded to become the programming language of Microsoft's first echelon, par with C++ and C#.

Insert picture description here

1. 500 AI open source projects worth learning

  • https://codechina.csdn.net/mirrors/ashishpatel26/500-AI-Machine-learning-Deep-learning-Computer-vision-NLP-Projects-with-code

A foreign AI researcher organized 500 AI projects worth learning in the form of articles, covering machine learning, deep learning, computer vision, NLP and other fields.

Insert picture description here

2. IEEE Medal of Honor awarded to data compression pioneer Jacob Ziv

  • https://spectrum.ieee.org/the-institute/ieee-member-news/ieee-medal-of-honor-goes-to-data-compression-pioneer-jacob-ziv

Recently, the IEEE Lifetime Fellow awarded the Israeli scientist Jacob Ziv the IEEE Medal of Honor this year for his important contributions to information theory and data compression technology and outstanding research leadership.

LZ77 and LZ78 are two lossless data compression algorithms proposed by Abraham Lempel and Jacob Ziv in papers published in 1977 and 1978. They broke away from the design ideas of Huffman and arithmetic coding, and created a series of more effective than Huffman coding. , A universal compression algorithm that is faster than arithmetic coding.

The IEEE Medal of Honor Award was established in 1917. It is the highest award of the IEEE Association and the highest award in the world of electrical and electronic engineering. It is awarded to those who have made special contributions to the field of electrical and electronics.

3. AWS announced the creation of Elasticsearch and Kibana branches

  • https://aws.amazon.com/cn/blogs/opensource/stepping-up-for-a-truly-open-source-elasticsearch/

A few days ago, Elastic announced that it will modify its Elasticsearch and Kibana open source licenses, moving the source code from the Apache 2.0 license to the dual license of the server-side public license (SSPL) and the Elastic license, allowing users to choose the license to apply. According to official information, starting from version 7.11, all maintenance branches and default releases of the two products will continue to use the Elastic protocol.

This move aims to prohibit cloud service providers (aka AWS) from using its software as a service to provide customers. But the license change also means that Elasticsearch and Kibana are no longer open source software. Amazon AWS announced that it will create and maintain a branch of Elasticsearch and Kibana and continue to use the ALv2 license. Amazon claims that it provides Elasticsearch's software as a service under the ALv2 license, and all its improvements on Elasticsearch are submitted upstream.

4. IntelliJ IDEA is 20 years old!

  • https://www.jetbrains.com/lp/intellijidea-20-anniversary/

JetBrains is looking back on its 20th anniversary. At the beginning of its establishment, the company was just a little-known company in Prague. At that time, it had only three employees and served 800 customers with one product. Today, the company has set up 9 offices around the world, with more than 1,250 employees, 25 developer tools, and the number of users has exceeded 8 million.

Five core functions of IntelliJ IDEA:

  • Сode completion
  • Show Intention Actions
  • Run
  • Go to Declaration
  • Toggle Line Breakpoint

Hot news this week

0, Visual Studio will natively support WSL 2

  • https://devblogs.microsoft.com/cppblog/c-with-visual-studio-and-wsl2/

The official Microsoft team announced that in order to provide native support for C++, they released the Linux-based Windows subsystem WSL in Visual Studio in 2019. Currently, Visual Studio will natively support WSL 2, so that developers can seamlessly build and debug on WSL 2 without adding SSH connections.

Insert picture description here

1. Multiple Linux distributions consider removing Chromium packages

Recently, Google Chrome Team notified Linux distribution developers via email. In order to improve the Google user data security experience, beginning March 15, 2021, end users of Chromium and Chromium OS derivatives that use google_default_client_id and google_default_client_secret on the build configuration will not be able to log in to their Google accounts.

Insert picture description here

2. "Bear Kid" hacked the Linux desktop randomly

  • https://github.com/linuxmint/cinnamon-screensaver/issues/354

Recently, a programmer father nicknamed robo2bobo reported a bug on Github, and the cause of the bug was caused by his two bear children. robo2bobo wrote: "A few weeks ago, my kids wanted to hack into my Linux desktop. I was standing behind them. They typed and clicked everywhere, which eventually caused the Linux Mint screensaver to crash, causing both people to crash. Can access the desktop".

According to the error report, the two children simultaneously pressed random keys on the physical keyboard and the on-screen keyboard. Robo2bobo allowed the children to reproduce the problem again, and it succeeded. Later, he reported the bug on Linux Mint's GitHub page. And a great god said that he had warned Cinnamon and GNOME official 17 years ago.

Currently, Linux Mint has released related patches to solve the bug.

3. GCC 11 enters the final development stage, and 62 high-priority returns

  • https://gcc.gnu.org/gcc-11/changes.html

Recently, GCC 11 officially announced that GCC 11 is already in the fourth stage of development. As of the time of its announcement, there are still 62 P1 priority returns to be processed. In addition, there are 334 with P2 priority, 35 with P3 priority, 190 with P4 priority, and 24 with P5 priority.

Some updates are as follows:

  • The default mode of C++ is changed from -std=gnu++14 to -std=gnu++17
  • When building GCC, the host compiler must support C++11, not C++98
  • 支持 Linux Kernel Concurrency Sanitizer (KCSAN)
  • Optimize the calculation method of column number
  • Introduce AddressSanitizer hardware assisted support
  • Implemented some C++20 features, such as supporting conteval virtual functions
  • Fixed some C++ defect reports, such as the default template parameter problem of variable templates
  • C and C++ new warning types
  • Optimized support for C++17 and C++2a

4. Intel has hired Glenn Hinton, a CPU architect who retired for 3 years

  • https://www.anandtech.com/show/16438/new-intel-ceo-making-waves-rehiring-retired-cpu-architects

Last week, Intel announced veteran Pat Gelsinger (Pat Gelsinger) as CEO, and it will take effect on February 15. The new official has three fires. At present, Pat Kissinger's "first fire" is the return of Glenn Hinton, the title of "Father of Core i7".

CSDN community selection

0, let Flutter run on the Hongmeng system

  • https://blog.csdn.net/MeituanTech/article/details/112975700

HarmonyOS is a future-oriented and full-scene distributed operating system launched by Huawei. Based on the traditional single-device system capability, Hongmeng proposed a distributed concept based on the same system capability and adapting to multiple terminal forms. Since the release of HarmonyOS 2.0 in September 2020, Huawei has accelerated the large-scale implementation of the Hongmeng system. It is estimated that by the end of 2021, the Hongmeng system will cover hundreds of millions of terminal devices including mobile phones, tablets, smart wearables, smart screens, and car machines. . For mobile applications, new system concepts and new forms of interaction also mean new opportunities. If we can make good use of Hongmeng's development ecology and its characteristics and capabilities, applications can cover more interactive scenarios and device types, thereby bringing new growth points.

Among the many existing cross-end frameworks, Flutter has outstanding advantages in adapting to the new system with its high degree of multi-end consistency brought by its self-rendering capabilities. Although Flutter has no official plan to adapt to Hongmeng, after a period of exploration and practice, the Meituan takeaway MTFlutter team successfully realized Flutter's native support for the Hongmeng system.

It is also necessary to explain in advance, because the Hongmeng system is currently in Beta version, so this set of adaptation solutions has not been launched in actual business, which is a relatively early exploration of the technical level. Next, this article will share some of our experience in the process of transplantation and development through the introduction of principles and some implementation details. I hope to inspire or help everyone.

1. Zhang Wensong will resign. He used to be the "market rusher" of Ali open source and devoted himself to open source for 20 years

Recently, according to LatePost reports, Didi internally issued an announcement stating that a technical committee will be established. Among them, CTO Zhang Bo will serve as the chairman of the technical committee, Orange Heart preferred CTO Lai Chunbo, and international CTO Bu Zheng as vice-chairs. The Technical Committee will continue to invest in stability assurance and middle and backstage cost reduction and efficiency enhancement.

At the same time, there is also a heavy news: Zhang Wensong, Didi's senior vice president, will leave in the near future, and the basic platform work he is responsible for will be taken over by Yang Yi, the person in charge of intelligent middle station.

2. Oracle 2021 annual security alert: Critical Patch Update released 8 database warnings

  • https://blog.csdn.net/enmotech/article/details/112975376

Oracle Corporation issued its first annual safety warning on January 19, 2021. Regarding the Oracle database, there are a total of 8 security warnings. This security vulnerability can be fixed by applying the latest CPU patch.

This important patch update contains 8 new security patches, as well as other patch corrections for Oracle database products. Among the 8 security vulnerabilities:

  • CVE-2021-2018 vulnerabilities can be exploited remotely without authentication, that is, intruders can exploit these vulnerabilities over the network without user credentials. The security risk of this vulnerability is high, with a risk score of 8.3, but the attack complexity is high. It affects Oracle 18c and 19c, but only affects the Windows platform.
  • CVE-2021-2035 is an attack through the Scheduler component of the database. It requires Export Full Database permission. Controlling this permission can reduce risk. This vulnerability has low implementation complexity and a risk score of 8.8 points. It is recommended to sort out database permissions or apply patches repair.
  • CVE-2021-2054 is related to the Sharding component. I believe most users will not use it. If the distributed component is not used, it can be ignored.
  • CVE-2021-2116 and CVE-2021-2117 are related to Oracle Apex. They are attacked through the http protocol, but require a valid user account and do a good job in account management, which is not very risky.
  • CVE-2021-1993 is related to the Java VM and is a continuation of the previous series of deserialization vulnerabilities, which can be prevented through the permission restrictions of the Package, or patched.
  • CVE-2021-2045 is related to the Text component. Most users should also not use this option and can be ignored (when installing the database, these unused options are best not to be installed).
  • CVE-2021-2000 is a vulnerability related to the Unified Audit-unified audit management feature. It requires the SYS account and requires extremely high permissions, so the risk is the lowest. The security score is 2.4.

Among the above 8 risk vulnerabilities, two of them (CVE-2021-2035, CVE-2021-2054) were reported by Eddie Zhu, an expert from Beijing Anhua Jinhe.

3. 18 good habits for writing JavaScript!

  • https://blog.csdn.net/qq449245884/article/details/112915420

In my many years of programming career, I will give priority to the way of writing code, not only to make the code more concise, but also because it helps to improve coding efficiency and make coding faster.
Writing 1000 lines of code is not the same as writing 300 lines of code, which is of great help to the program or script we are doing. You must be very careful when programming, because dirty code can be a serious problem in large projects.
Many programmers criticize the JS language for not having a standard way of working like Java or C++, but the truth is that JavaScript is one of the best languages ​​currently in use, some of which are Facebook and Netflix. Libraries like React improve front-end performance. As for the back-end, nextJs is used to increase speed. These combinations make today's programmers crazy.

ECMAScript v6 (abbreviated as ES6 or ES2015) is the standard that JavaScript has been following since June 2015.
By learning the following skills, we can improve the way we write code. Take time to practice on the console and learn well.

Guess you like

Origin blog.csdn.net/weixin_39786569/article/details/112992560