Blog

  1. Which C Version Does the Linux Kernel Use? C90, C99, or C11 – Explained

    The Linux kernel, the heart of the world’s most widely used operating system, is written primarily in C. As a cornerstone of modern computing, its design...

    Read more
  2. How to Fix 'sudo Group Doesn't Exist' Error When Running usermod on CentOS 7: Create Sudo Group Correctly

    If you’ve ever tried to grant sudo privileges to a user on CentOS 7 by running `usermod -aG sudo <username>`, you might have encountered the frustrating error:...

    Read more
  3. How to Fix 'stdin: is not a tty' SSH Error When Executing Remote Commands Through Another Machine

    If you’ve ever tried to run a remote command over SSH—especially through intermediate machines (e.g., jump hosts)—you may have encountered the frustrating...

    Read more
  4. How to Show Job Count in Bash Prompt Only When Nonzero (Avoid Clutter)

    The Bash shell prompt (`PS1`) is more than just a static string—it’s a dynamic tool that can provide real-time context to boost your productivity. One common...

    Read more
  5. How to Show Current Git Branch with Coloring in Linux Terminal (Like Git Bash on Windows)

    If you’ve used Git Bash on Windows, you’ve likely noticed its handy feature: the terminal prompt automatically displays the current Git branch you’re working...

    Read more
  6. How to Show Complete Arguments in strace (Even with Curly Brackets) When -s Isn't Enough

    `strace` is an indispensable tool for debugging and understanding how programs interact with the Linux kernel. It traces system calls (syscalls) and signals,...

    Read more
  7. How to Show All Keys in Redis in One Line: Fixing the 'redis-cli keys *' Error

    Redis, the popular in-memory data store, is widely used for caching, session management, and real-time analytics. A common task when working with Redis is...

    Read more
  8. Should We Use Multiple Acceptor Sockets for Large Connections? SO_REUSEPORT Benefits & NGINX Case Study

    In the era of cloud computing, microservices, and high-traffic web applications, handling **millions of concurrent connections** is no longer a niche...

    Read more
  9. Child Process Termination: exit vs return vs _exit in fork() - Which Should You Use?

    When working with process creation in Unix-like systems, the `fork()` system call is a cornerstone, enabling the creation of new child processes. However,...

    Read more
  10. Should the FUSE getattr Operation Always Be Serialised? Implications for RESTful API-Backed Filesystems

    Filesystems are the backbone of how we interact with data, but traditional filesystems are bound to local storage. Today, with the rise of cloud storage and...

    Read more