
Manipulating rfkill-using devices programmatically
If you are running Linux on a laptop, and using Wireless technologies such as WiFi or Bluetooth, you probably already came across these software switches that allow you enable/disable your wireless devices at the software level (in case you don’t have…

Capturing a webcam stream using v4l2
A few months ago, I came across a blog post dating back to 2013, which described the basics of v4l2, and how to capture a video frame from a camera in Linux. However, this article was missing a few pieces,…

Tracing the Linux system calls
Hello there! Today, I want to talk a bit about the Linux system calls, and more specifically, the mechanism offered by the kernel when it comes to tracing them. In this article, I’ll try to describe a part of the /sys…

UNIX: child processes upon parent termination
Hello there! Let’s stop talking about development for now. Today, I want to talk about UNIX processes, more specifically, how processes behave when their parent processes are killed or exit. But first, a little reminder about how processes are organised…

3 book recommendations : Linux development
Hello again! Let’s have a break, shall we? Let’s forget about the technical stuff for a while… In this article, I’ll present to you a few books I’ve enjoyed in my field, hoping you’ll find them just as interesting. If I…

UDP against routers : hole punching
Hello there! Today, I ran a few tests with UDP networking (yes, my hobbies are really exciting), and my results made me think I could write another article… This is the first one related to networking, hopefully it’ll be understandable…

Lightweight databases in C : GDBM
If you’re a web developer, or some JDBC fan, you probably already used SQL (or similar) systems such as Oracle, MySQL, PostgreSQL, … (so many of them). These engines are called RDBMS, which stands for Relational Database Management System. These…

Basic daemon programming in C
Hello there! As a first C article, I thought I could describe a simple, yet useful, daemon programming process. Let’s quote some definitions first. In multitasking computer operating systems, a daemon is a computer program that runs as a background…