WSL2, yet another round of Microsoft trying to get Linux tooling onto Windows

WSL2 will soon be officially available as part of Windows 10, version 2004! As we get ready for general availability, we want to share one additional change: updating how the Linux kernel inside of WSL2 is installed and serviced on your machine. We’ve heard lots of community feedback that the install experience could be streamlined, and we’re taking the first step towards this by improving the servicing model of the Linux kernel. We’ve removed the Linux kernel from the Windows OS image and instead will be delivering it to your machine via Windows Update, the same way that 3rd party drivers (like graphics, or touchpad drivers) are installed and updated on your machine today. This change will give you more agility and flexibility over Linux kernel updates in WSL2. Read on to learn more about how you’ll see this in the user experience.

Also this WSL attempt will not change the fact that Windows is architecturally incompatible with Linux. Just one example of why Linux tooling cannot work on Windows: Windows cannot delete files that are open, i.e. have active file handlers, whereas Linux has no problems in doing this. So if you try to run a Linux process that modifies the same files as a Windows process does, this will cause all kinds of problems. Actually this use case is not theoretical as this was the reason why I have dumped WSL and went back to Linux.

WSL, Windows, Linux

Wasmtime brings interoperability with other language ecosystems and their runtimes to WASM

WASM - WebAssembly
Wasmtime is a standalone wasm-only optimizing runtime for WebAssembly and WASI. It runs WebAssembly code outside of the Web, and can be used both as a command-line utility or as a library embedded in a larger application. There are Rust, C, and C++ toolchains that can compile programs with WASI. See the WASI intro for more information, and the WASI tutorial for a tutorial on compiling and running programs using WASI and wasmtime, as well as an overview of the filesystem sandboxing system.

Looks like with Wasmtime just another piece is added to the WASM ecosystem that makes polyglot runtime efforts like GraalVM an afterthought.

WASM, GraalVM

GNOME not only just works but is also getting faster

GNOME
His latest achievement is a combination of a Mutter and GNOME Shell change around only offscreening actors with Clutter that haven't changed in 2+ frames. This change is done to avoid the performance penalty of the offscreen working where the actor may be trying to animate at a full frame-rate. In turn he found that with an Intel Core i7 7700, the Mutter/Clutter + GNOME Shell change led to the render time of box pointers improving by 25~30%. Not bad for this on top of all the other ongoing GNOME performance work!

GNOME is the only desktop environment on Linux I know that brings the "just works" of the Mac world to the Linux desktop. GNOME is a robust and reliable desktop environment to get your job done - no matter what you are doing. Unlike KDE, GNOME does not bring the bells and whistles that usually break your user experience as soon as you are not copying exactly the configuration setup of the current month's KDE developer in charge.

Linux, GNOME

Linux outperforms FreeBSD also in multi-thread workloads on AMD Ryzen Threadripper 3990X

Linux vs FreeBSD on AMD Ryzen Threadripper
Lastly is a look at the geometric mean for all of the benchmarks conducted for this FreeBSD vs. Linux scaling comparison on the AMD Ryzen Threadripper 3990X. In the end, both CentOS Stream and Ubuntu 20.04 (development) delivered similar performance and were basically tied for first. FreeBSD 12.1 performed well and in terms of LLVM Clang 8.0.1 (their default compiler) versus GCC 9, the GNU compiler tended to offer slightly better performance in these particular benchmarks on this AMD Zen 2 HEDT processor. At 16 cores, RHEL8-based CentOS was about 17% faster than FreeBSD 12.1 while at 128 threads the lead expanded to 28% based upon the geometric mean or 21% when comparing the GCC9 results on FreeBSD 12.1. With these benchmarks and their varying multi-threaded abilities, when going from 16 to 128 threads on CentOS was 3.1x the performance while on FreeBSD 12.1 was 2.8x for both compilers. While CentOS and Ubuntu were offering slightly better performance, it's great to see in any case FreeBSD 12.1 running nicely out-of-the-box on the AMD Ryzen Threadripper 3990X with System76 Thelio Major.

In all benchmarks I saw during the last few years, Linux keeps outperforming *BSD systems in multi-thread as well as in single-thread workloads with Intel as well as with AMD hardware.

Linux, FreeBSD

Android 11' goodness

Android 11
Android has led the way towards the future of mobile, with new technologies like 5G to foldable displays to machine learning built into the core. A hallmark of our approach is a strong developer community that provides early and thoughtful feedback, helping us deliver a robust platform for apps and games that delight billions of users around the world. So today, we’re releasing the first Developer Preview of Android 11, and building on a strong feedback cycle last year, we’re making this year’s preview available to you earlier than ever.

Android 11 delivers new capabilities in respect to 5G, Neural Networks API 1.3, for even better machine learning, more fine-granular privacy controls and last but not least, substantial under the hood security improvements.

Android, Features

Several Linux distributions vs Windows Enterprise & Professional on AMD Threadripper 3990X

Windows vs Linux Benchmark
When taking the geometric mean of all these benchmark results, the Windows 10 Professional performance was the same as Windows 10 Enterprise for this Threadripper 3970X testing, unlike the Enterprise advantage we've seen on the larger Threadripper 3990X. The slowest of the eight Linux distributions tested was the Ubuntu 20.04 development snapshot, but that still came out to be 9.5% faster than Windows 10. The fastest Linux distribution was Clear Linux on the Threadripper 3970X with a 19% over Windows in these cross-platform benchmarks. Following Clear Linux with a strong showing was the new rolling-release CentOS Stream. Dig through more data over on OpenBenchmarking.org.

Actually in other benchmarks that were running with Intel CPUs, Linux was winning by around the same margin against Windows.

Linux, Windows, Benchmark

Just betting on ideology is just not enough anymore

Test pipeline
At the same time, Mozilla is trying to help rewrite some of the internet's foundational technology. It's working to enable a new protocol called DNS over HTTPS, or DoH, which would make it harder for carriers and ISPs to track users as they browse. (The effort earned Mozilla an "Internet Villain" nomination from a group of ISPs in the United Kingdom, though they later rescinded the nomination.) Mozilla was early to the fight to encrypt the entire web through HTTPS, and is now leading the charge on DoH as well. Mozilla's DoH work, like many of its other privacy-first initiatives, is gaining momentum across the industry. Google has several ongoing DoH-related projects in Chrome and has announced its intention to eliminate third-party tracking cookies — though it won't go as far as Firefox in blocking those cookies altogether. Microsoft's new Edge browser and Apple's Safari both have powerful anti-tracking features, and they're turned on by default. Google followed Mozilla's lead in blocking those obnoxious desktop-notification pop-ups. Browser developers everywhere are making the web a little safer to peruse. All of this is good news for Mozilla, with a big caveat: Every privacy-conscious Edge or Safari user is one less person using Firefox. Baker, like so many other Mozilla employees, insists that's OK. Mozilla's job, its mission, its manifesto, has always been bigger than browsers. Besides, by the time those browsers get fixed, there will be entirely new internet universes — voice assistants, AI interfaces, mixed-reality platforms — requiring a champion for openness and humanity. "I mean, we have this manifesto," Baker said. "It's not like we're going to reach it one day and be done, right? Even if we did, a week later, there'd be new things to do."

I have supported Firefox for years; donated to Firefox to advertise this browser in a German newspaper; I liked and enjoyed Firefox for its speed and for pushing the boundaries as Internet Explorer was holding back the web evolution. I have stopped supporting Firefox as Firefox began actively promoting systems to censor annotate "not trustworthy content" which is essentially a form of opinion inflection.

Firefox, Web

IntelliJ IDEA vs Eclipse and why Eclipse never managed to win my heart and mind

IntelliJ vs Eclipse
If we are choosing a Java IDE then Intellij IDEA is definitely better than Eclipse. It's not just a matter of taste. IDEA is objectively better. It lets you to quickly and easily write and change the code, suggests appropriate names, finds the appropriate methods. It does not require you to exactly select the expressions, but guesses what you want to do and how you wanted to name it. IDEA anticipates and suggests.

In the past, actually around ten years ago, as Eclipse was the sad & cruel de facto standard for Java developers, I really tried to get used to the Eclipse IDE. However I have never managed to get used to modal windows constantly pushing exceptions into my face, even for trivial operations, such as a search. Fortunately we have entered the polyglot programming since quite some years and other IDEs become more widespread, decreasing the need for IDE uniformity. Until today I have managed to stay a happy and enthusiastic IntelliJ IDEA user saving several hours a week - every week - not fighting and working around bugs that the Eclipse IDE kept pushing onto its users, since its inception. Today IntelliJ - like never before - is not just an IDE for Java developers. IntelliJ is a polyglot development platform for a wide variety of languages and technologies.

Java, Software Development

KDE vs GNOME and why I just stopped trying to switch to KDE

GNOME vs KDE
In its default configuration, GNOME utilizes a top panel containing an activities button, clock, system status area, and user menu. The overview allows for quick access to and switching between open windows and applications. GNOME strives to utilize as few system resources as possible and offers a simple-to-use interface that may be more friendly to novice Linux users. While GNOME also offers advanced setting allowing for customization of its environment, experienced users may find its interface somewhat limiting.

Comparisons always boil down to requirements and the area of application and therefore there cannot be "the better ..." anything! And hence I can only speak about my decade-long experience with KDE & GNOMEfrom a perspective of a software creator. I really had sympathy for the technological foundation of KDE, i. e. Qt, the quality and just the right amount of flexibility that KDE 3.x was providing, around a decade ago. But everything changed with KDE 4.x which was - Linus would probably say- "just a pile of broken garbage". The reliability improved though with KDE 5.x. Still despite disliking GNOME a lot because of its aesthetics and its very odd ways to approach UX in its early days, I have switched to GNOME. During the the past few years GNOME changed a lot. The design improved a lot and the UX has improved even more. Actually I went back to GNOME over and over after trying to work with KDE in a business environment... you know the thing where you need to print, give presentation and use WiFi hotspots in various hotels without spending an hour or a day figuring out why your desktop environment prevents you from just using them. All these things were just very complicated with KDE which just did not work or - even worse - worked just "sometimes". An UX anti-pattern that KDE started to apply increasingly is to give users the opportunity to re-configure almost everything. What is bad about this "flexibility"? Giving users flexibility, also gives users opportunities to break things for themselves without knowing it. And KDE has really mastered the art of giving users all the ways possible to break things for themselves. An please don't tell me about "powerusers should know what they are doing...". I am a power user and a software craftsman myself. Still I was able to screw up my UX by overriding just a few defaults very carefully. KDE? Never again! I have tried to (re-)switch from GNOME to KDE several times and failed miserably. KDE was just not working, worked unreliably and just "sometimes", or was allowing configurations that just break UX in unexpected ways.

Linux, KDE, GNOME

Regulation vs creative chaos

Apple Brand
EU lawmakers overwhelmingly called on Thursday for rules to establish a common charger for all mobile device makers across Europe, a drive that iPhone maker Apple has criticised. Members of the European Parliament voted by 582-40 for a resolution urging the European Commission, which drafts EU laws, to ensure that EU consumers are no longer obliged to buy new chargers with each new device. The Commission should adopt new rules by July, the lawmakers’ resolution said. The resolution said voluntary agreements in the industry had significantly reduced the number of charger types, but had not resulted in one common standard. Electronic waste, the resolution said, was some 16.6 kilograms (36.6 pounds) per EU inhabitant in 2016, for a total of 12.3 million tonnes, an unnecessarily large amount. The resolution also said wireless charging could prove beneficial by mitigating waste, but urged the Commission to adopt rules that ensured wireless chargers were able to charge many different mobile devices.

This is probably one of those double-edged sword decisions: on the one hand (over-)regulation kills competition and any kind of innovation. On the other hand innovation & creativity is always about a competition of ideas and solution. However Apple might boost their pseudo-standards for political and strategical reasons and not for the sake of innovation.

Technology, Politics