
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…

Quick Postfix setup for email forwarding
In this article, I’ll present a very basic and quick Postfix setup process for those interesting in email forwarding. This might come in handy if you want to create personal email addresses for your team, but don’t want full inboxes…

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…