June was marked by several major releases and announcements in the world of technology, especially in the area of development. Linux saw the stable release of systemd 256, which brought several new features and changes. Continuing the Linux theme, a new "black screen of death" component was introduced, which will likely appear during kernel panic.
Programming language news also had some significant updates. The Rust project released version 1.79, continuing its rapid development. Meanwhile, SlashData experts have estimated the size of communities of various languages based on a large survey of developers. We are sure you will be interested in the statistics!
Huawei made an unusual announcement of Cangjie, a new programming language that demonstrates compatibility with popular programming paradigms.
Rounding out the list of development news are two interesting projects, Winlator and Lindroid, which aim to make it possible to run Windows and Linux applications natively on Android through emulation. This could open up a whole new world of possibilities for developers.
Overall, June brought both major updates to key platforms and new languages and technologies with exciting implications for the future of coding. Check the details in the is*hosting digest.
Black Screen of Death in Linux under Kernel Panic
In newer versions of the Linux kernel, a "black screen of death" (BSOD) may appear when a fatal error known as a kernel panic occurs. This is similar to the blue screen of death that appears in Windows when the system crashes.
Some Linux users didn't like the recent introduction of a BSOD-style blue screen in Linux. In response, Red Hat engineer Javier Martinez Canillas, who worked on the new DRM Panic infrastructure, suggested making a real black screen of death instead.
The issue arose after some users and developers complained that the current BSOD implementation introduced in Linux 6.10+ for some Direct Rendering Manager (DRM) display drivers looked too much like Windows.
Canillas suggested a black screen as an option, since Linux is open source and customizable. He demonstrated an example of Kernel Panic DRM on a small SSD1306 display, which caused a black screen. This scheme can later be extended to PC and laptop screens.
Huawei Unveiled Cangjie Programming Language
Huawei revealed a new programming language called Cangjie at its 2024 developer conference. Cangjie is an open-source, general-purpose language designed for software development in a wide range of industries.
Cangjie has some great features, including strong typing, memory safety, and compatibility with popular programming paradigms like object-oriented and functional programming. Plus, the language is designed to be easy to read and write.
The language gets its name from the input method of Cangjie, an ancient Chinese character input system. This shows that Cangjie draws on Chinese culture while also being a modern, international programming language.
This programming language is still in its early days, but it's seen as a fresh alternative to existing mainstream languages.
Huawei is counting on Cangjie to lighten the load for developers and make coding more productive and secure. Open source code also paves the way for an independent community to emerge over time.
Rust 1.79 Release
In mid-June, we got some updates to the Rust programming language, which were reflected in Rust 1.79.0.
Among the new features:
- Support for embedding constant expressions directly in code using const {} blocks, avoiding the need to define constants separately.
- The syntax of associated type bounds "T: Trait<Assoc: Bounds...>" has been stabilized, reducing the need to define expressions with nested type bounds.
- Temporary values are now automatically extended in match and if expressions.
- Main functions can now be imported from other modules and crate packages.
- Standard library builds include frame pointers to make profiling easier.
- Stabilized some WebAssembly support.
- Added basic support for aarch64-apple-visionos and riscv32ima target platforms. Also improved support for aarch64-pc-windows-gnullvm target platforms.
To upgrade to version 1.79.0, if you installed the previous version of Rust using rustup, simply run the rustup update stable command.
Winlator and Lindroid to Run Windows and Linux Apps in Android
There's a new way to use Linux on Android devices called Lindroid. With Lindroid, you can run Linux apps inside a container on Android, just like Waydroid, but with full hardware access.
The project author, Erfan Abdi (aka Khode_Erfan), says that the Linux code runs inside the container and has access to the actual smartphone hardware. Lindroid supports multiple displays and multiple input options, and is compatible with Android desktop mode. It will be officially released under LibreMobileOS for all supported devices.
On its own, the Winlator open source project has released version 7.0, which lets Windows apps run on Android. Winlator uses an Ubuntu Linux environment with Wine, Box86/Box64 emulators, Mesa and Vulkan drivers to emulate Windows apps on ARM Android devices.
In addition to the updates for Wine and Box86/Box64, there are also improvements to input management, task manager, and container settings. The latest version includes an experimental WoW64 mode that allows 32-bit Windows applications to run on 64-bit systems. The stability of work via XInput has also been improved, and performance optimizations have been made.
These projects are a fantastic chance for developers to test out their ideas and see what they can do.
Stable Version of systemd 256 Released
It's been six months since the last update, and we've got a stable version of the Linux systemd 256 initialization and service management subsystem ready to go. As you might remember, the previous version of systemd introduced the systemd-bsod component, which provides support for BSOD ("blue screen of death") in Linux.
Here's a quick overview of the changes that were made:
- Added a new alternative to sudo called run0.
- Added a crash_action setting to specify what to do when the system manager crashes.
- systemd no longer loads by default under cgroup v1, which is now considered deprecated.
- Added new systemd-vpick utility for working with versioned directories.
- Extend importctl tool to import/export disk images via systemd-importd.
- Added a new systemd-ssh-generator module, which checks if the sshd binary is installed and binds it via socket activation for each connection.
- Implemented the ability to encrypt service credentials for unprivileged users via systemd-creds.
- Introduced the concept of "pods" for wrapping additional service managers.
- Added a simple varlink interface for systemd-networkd.
More details about the updates are available on the official announcement page on GitHub.
Experts Estimated the Size of Programming Language Communities
SlashData did a quarterly survey of more than 10,000 developers worldwide. They used the results to publish reports on how developers use AI tools and the size of programming language communities.
The Artificial Intelligence report found that 59% of developers use artificial intelligence tools to help with their work, such as chatbots to solve coding questions.
We will pay special attention to the data on the communities of developers using different programming languages. Here is how the communities are arranged in the top five:
- JavaScript - 25.2 million developers.
- Python - 18.2 million developers.
- Java - 17.7 million developers.
- C++ - 11.6 million developers.
- C# - 10.2 million developers.
It's interesting to note that the Rust developer community is estimated by SlashData at 4 million developers (12th in the ranking), yet is the fastest growing. The number of developers using Rust has grown 30% in the last year, and doubled in two years. By comparison, the JavaScript community has grown by 4 million developers in the last 12 months. However, JavaScript usage is lowest among novice developers (52%) with less than three years of experience.
Overall, the report offers some interesting insights for anyone looking to learn a new language, regardless of their background.
Have a great month, and see you in the next is*hosting digest!
Get the most out of your budget with our affordable, efficient VPS solutions. Fast NVMe, 30+ countries, managed and unmanaged VPS.
Dedicated Server
Smooth operation, high performance, and user-friendly setup - it's all there for you.
From $70.00/mo