Smoothing out Communication in FOSS Projects

From newcomers to community leaders

Tips and Tricks to Build the Linux Kernel

Optimize time and memory usage

Catching runtime bugs with Valgrind and (HW)ASan

Easy to use, yet powerful tools for C/C++ developers

Linux Kernel - Mi first 100 patches in the mainline kernel

How to track the status of your contributions

Rust in the Linux Kernel - Configuration

Step by step to success

Linux Kernel Development - Automatic Cleanup 2/2

More advanced uses of this magic and ongoing work

Linux Kernel Development - Automatic Cleanup 1/2

New (in fact, old) magic to increase code safety

Linux Kernel Development - Firmware API

Making drivers load firmware for their devices

Linux Kernel Development - Extending Drivers for new Devices

Recycling drivers is faster and safer

Linux Kernel Development - Smatch

A powerful tool for static analysis

Linux Kernel Development - Device Tree Bindings

Don't fear them, but respect them

Fixing bugs in the Linux kernel with Syzbot, Qemu and GDB

Let's smash those creepy-crawlies!

Device Driver Development with Raspberry Pi - Device Tree

Describe your devices and let the kernel know

Dealing with I2C devices on Linux

Handling real and virtual I2C devices is easy, if you know how

Device Driver Development with Raspberry Pi - Setup

Simple and cost-sensitive

The Linux Kernel Mentorship Program (LKMP)

What is the LKMP and why you should apply

b4 for Linux kernel contributors

An awesome tool to speed up the submission process

Become a Linux kernel contributor - Part 3

Submit your first patch upstream safely

Become a Linux kernel contributor - Part 2

Things to consider while making changes

Become a Linux kernel contributor - Part 1

Finding something useful for your first contribution