Red Hat Enterprise Linux continued to grow and mature in 2021, with the release of version 8.5 pushing Red Hat's flagship Linux distro forward. Keep reading for the highlights of Red Hat Developer's best and most popular RHEL content.
Don't miss the other articles in our Best of 2021 series:
C# 9 pattern matching
The C# language and .NET environment are as at home on Linux as they are on Windows. C# 9, the latest version of the language, can be used with the .NET SDK, which is available on RHEL. Tom Deseyn has written a number of articles that provide a guided tour of many of the language's features, with his installment on C# 9 pattern matching proving particularly popular.
Universal Base Image
Red Hat Universal Base Image (UBI) is a lightweight version of the Red Hat Enterprise Linux user space, stripped down to the bare essentials. You can read our explanation of why your choice of container base image matters, and then move on to the Red Hat UBI e-book to learn about its benefits.
Buildah, Podman, and containerized applications
A deep community of developers use RHEL as a platform for containerized applications. In one of this year's most read articles, Cedric Clyburn offered an introduction to Buildah, an open source tool for building container images that can work with pre-existing Dockerfiles but can also take you beyond Docker's capabilities.
Buildah has overlap functionality with Podman. To learn more about how the two of them work together, read Podman and Buildah for Docker users and Transitioning from Docker to Podman, which remain among the most popular Red Hat Developer articles of all time. (Remember, Podman is included automatically in RHEL 8, and unlike Docker, it does not run as root.)
Debugging
RHEL users have access to a rich suite of debugging tools for correcting and optimizing their code. David Malcolm, who works on the GCC compiler at Red Hat, offered insights into the static analysis capabilities in GCC 11, which can help you diagnose non-deterministic code, unsafe calls, and other potential errors. Other popular articles provided a tutorial on GNU Debugger and an introduction to the rr project, which records trace information so you can "rerun" execution and watch what goes wrong.
Interested in getting really esoteric? Check out Siddhesh Poyarekar's deep dive into some quirks in Intel's double extended-precision floating-point format that spawned an entirely new kind of number, which could wreak havoc on your code if you're not careful.
Go on Linux
The Go language is popular among Linux devs, and we have debugging tips for Golang enthusiasts as well. Derek Parker dives into Delve, a Go debugger that's now available on RHEL.
Memory
Memory management is a particular challenge for many Linux developers, and articles about troubleshooting in this area were among our most popular in 2021. Martin Sebor delivered a series on detecting memory management bugs with GCC 11 that explores some enhancements in the latest version of the compiler.
Valgrind, an instrumentation framework for building dynamic analysis tools that check C and C++ programs for errors, was of particular interest. We presented articles on comparing Valgrind to Sanitizers and on using Valgrind's default tool Memcheck.
The rest of the best
Need more? Here are the rest of 2021's most popular RHEL articles from Red Hat Developer:
- How to activate your no-cost Red Hat Enterprise Linux subscription
- Making environment variables accessible in front-end containers
- Building Red Hat Enterprise Linux 9 for the x86-64-v2 microarchitecture level
- How to work around Docker's new download rate limit on Red Hat OpenShift
- How Red Hat ported OpenJDK to 64-bit Arm: A community history
- A guide for using CentOS Project code
- Containerize and deploy Strapi applications on Kubernetes and Red Hat OpenShift
- Write your own Red Hat Ansible Tower inventory plugin
- Three ways to containerize .NET applications on Red Hat OpenShift
- Containerize .NET for Red Hat OpenShift: Windows containers and .NET Framework
- Kubernetes configuration patterns, Part 1: Patterns for Kubernetes primitives
- Get started with XDP
- Mandrel: A specialized distribution of GraalVM for Quarkus
- X.509 user certificate authentication with Red Hat's single sign-on technology