■ SEARCH.EXE
    recreational-programming

    Building a Local Voice-to-Text and Rewriting Assistant on Linux

    This article comes from a frustration I had with Discord Web. I didn't have the possibility to directly send a voice message.…

    journal

    A Look Back at My COVID-Era Home Gym

    During my teenage years, I was quite into weightlifting. When the COVID-19 pandemic hit, I decided to buy some equipment and build…

    journal

    How I Almost Fell for a Leboncoin Phishing Scam

    Yesterday, I was uploading listings for some fitness equipment I bought during the COVID period on the French equivalent of Craigslist (not…

    maths

    The Trick Is in the Representation

    This article is about several mathematical puzzles which will sharpen your reasoning. There will be several well-known ones, such as the Monty…

    linux

    Pacman, APT and dpkg: Under the Hood

    Package managers are often reduced to a few commands: install, update, remove. But behind those commands sits a much larger system involving…

    linux

    Installing Gentoo the Hard Way

    In this article, we'll proceed to install Gentoo. This article follows the story of manually installing Linux distros which begins here [here]…

    linux

    Installing OpenBSD the Hard Way

    In this article, we'll go through the manual installation of OpenBSD and see the differences and similarities with Linux. The setup We'll…

    linux

    Manually Installing Arch and Void Linux on the Same Disk with UEFI and GRUB

    In this article, we'll deep dive into the manual installation of multi-distrributions in one disk. The Setup We'll install Arch And Void…

    linux

    I Just Wanted Wi-Fi to Work on Linux

    About a week ago, I needed to set up a laptop for my mum to use while working remotely. The initial plan…

    software-computational-architecture

    Where R Data Pipelines Pay Their Cost: data.table, dplyr, fread, readr, and vroom

    My previous article was somewhat polarizing. Most readers responded positively, but some disagreed with the benchmarking methodology I used. That criticism is…

    software-computational-architecture

    data.table VS dplyr in a data pipeline

    Recently, I wanted to create an analytical dashboard for the visits on this blog, entirely server-side. This means reading the NGINX /var/log/statix.log…

    journal

    A CV, a Phone Number, and a Data Leak

    The other day, I was searching for the name of a friend on Google, and his personal Curriculum Vitae appeared as the…

    journal

    My Overengineered YouTube Thumbnail Generator

    Following up on my YouTube channel creation from the previous article, on Mon. 25 May 2026 14:02:06 CEST, I wanted to write…

    journal

    A Practical Linux Setup for Recording Technical Videos

    On Sun May 17 21:35:37 CEST 2026, I decided it was time to start a YouTube channel to promote my articles. Here…

    software-computational-architecture

    The Cartesian Product Disaster Tour: Haskell, C, and 25GB of Allocations

    In this article, we’ll explore something that looks innocent: computing the cartesian product of several lists. In Haskell, it is almost boring:…

    software-computational-architecture

    Why Parsers were invented ?

    A lot of text-processing tools can get surprisingly far without a real parser. For simple patterns, tools like sed, awk, or small…

    blogroll

    Blogs that worth a bookmark

    Gwern.net A huge collection of long-form essays by Gwern Branwen on AI, statistics, psychology, technology, science, economics and plenty of other rabbit…

    journal

    Journal - April 2026

    Days 19 19 First Entry, this is a test. ♥ Support

    latex

    Doom in LaTeX (+Bash)

    This article is a part of my full LaTeX guide here article Here some captions of the game: How did i create…

    latex

    Traversing a Tree in pure LaTeX

    This article is a part of my full LaTeX guide here article At the end of the article, you'll be able to…

    latex

    Dissecting LaTeX: Revenge, Four Years Later

    When I was a chemist, I wrote my internship report in LaTeX. It was at first a pain in the ass: -->…

    software-computational-architecture

    SAM, the 'other' SED from the 80s

    Prerequisites This article will reference SED syntax that is described here: sed This was also vastly ispired by this comment (user: piekvorst)…

    linux

    AWK: The Small Language That Quietly Became a Data Engine

    There is a moment every engineer hits. You're staring at a text file-logs, CSVs, metrics, something messy-and you think: "I just need…

    linux

    Sed, a powerfull mini-language from the 70s

    There's a moment when using sed stops feeling like typing weird incantations… and starts feeling like you're programming a living stream of…

    system-design

    Bash Arrays: From First Steps to Real-World Mastery

    Bash arrays aren't just containers, they're a way to control how data flows through the shell. This guide builds from zero to…

    recreational-programming

    Building a ChatGPT-like CLI in Bash: a journey through pipes, JSON, streaming, and shell weirdness

    There is something deeply satisfying about building a serious tool with primitive Unix bricks. The mentioned in this article comes from: repo…

    journal

    Statix, llama.cpp, and a Night of Autonomous Blogging

    This article is about this repo: autoBlog There is a particular kind of joy in software engineering that does not come from…

    default

    The Archaeology of a dead .OVA

    "It should be easy to download." Famous last words. The Premise There exists (or existed) a certain .ova file. .ova is a…

    software-computational-architecture

    How Modern Browsers Render the Web: A Deep Technical Journey

    From HTML bytes to GPU pixels — the complete architecture of a modern browser rendering engine. Introduction: The Browser as a Game…

    system-design

    Debugging a “Slow VPS” That Wasn’t Slow

    My VPS suddenly felt extremely slow: pages taking 3–5 seconds TLS handshake hanging random spikes in latency First instinct: server issue. Reality:…

    software-computational-architecture

    From Backtracking to Factorial Coordinates: Understanding Permutations Deeply

    Most developers learn permutation generation through recursion and swapping. It works, it's elegant… but it often feels a bit magical. This article…

    software-computational-architecture

    Binary Operations: AND, OR, XOR, NOR - and Their Deep Relationships

    Binary operations are the foundation of computation. At the lowest level, everything reduces to simple operations on bits: true (1) and false…

    software-computational-architecture

    Java Deep Dive: Architecture, Memory, OOP & Modern Features

    A comprehensive technical reference — from JVM internals to streams, lambdas, and the philosophy behind Java's design choices. Table of Contents Introduction…

    system-design

    Statix: A Static Engine That Behaves Like a Dependency Graph

    Most static site generators rebuild everything. Statix doesn’t. It rebuilds exactly what changed — nothing more, nothing less. This article is a…

    system-design

    Go Joining Errors - Learn with Examples

    In Go (since Go 1.20), errors.Join lets you combine multiple errors into a single error while still preserving each individual error inside…

    software-computational-architecture

    OpenTelemetry in Go, finally explained: traces, metrics, logs, propagation & middleware

    I spent the day digging into OpenTelemetry in Go and, honestly, a lot of things that look magical at first finally clicked.…

    system-design

    Statix - I Built My Own Blog Engine (Because I Refuse to Negotiate with Markdown Toolchains).

    Let me clarify something immediately. First the repo is here lol: Statix, and second This is not a “framework”. This is not…

    functional-programming

    jq as a Stream Calculus and Tree Algebra

    A Deep Semantic and Operational Mini-Book This is not documentation. This is not a tutorial. This is a semantic excavation. We will…

    linux

    Logrotate for Nginx: Understanding missingok, notifempty, sharedscripts, prerotate, postrotate (and switching to size-based rotation)

    If you run Nginx in production, your access and error logs can grow fast. On most Linux systems, log rotation is handled…

    system-design

    Streaming a MariaDB Dump from Go: Pipes, Syscalls, Backpressure and the Runtime

    We start from a very simple handler: spawn mysqldump, capture its stdout, and stream it directly to the browser. No intermediate file.…

    system-design

    Dispatch Responsibility: C++ Compile-Time Power vs Go Runtime Reflection

    When comparing C++ and Go, one of the most interesting differences is not syntax, not performance, and not even generics — it…

    default

    Designing a Column-Major Matrix Class with Row-Major Multiplication Optimizations (CPU & GPU)

    When I designed my C++ Matrix<T> class for Fulgurance, I deliberately chose a column-major memory layout (Fortran/Eigen style). It fits linear algebra…

    default

    Rebuilding the LU Decomposition and Benchmarking It Against My Own Determinant Algorithms

    When I first started playing with determinant algorithms in C++, I wanted to really understand what happens behind Eigen’s .determinant() call. So…

    default

    Building a New Determinant Engine - An Iterative Combinatorial Approach

    One morning, I decided to compute a determinant from scratch — no recursion, no Gaussian elimination, no library shortcuts. I wanted to…

    default

    Exploring the Power of Metaprogramming in Rust

    Metaprogramming in Rust: Exploring macro_rules! Power Rust offers one of the most expressive and hygienic metaprogramming systems in modern languages. Through declarative…

    default

    📊 Building a Flexible Access Log Analyzer in R

    In this tutorial, we’ll walk through the design and implementation of a small but powerful R script that analyzes web server access…

    functional-programming

    The Knight’s Tour in Haskell — From Brute Force to Warnsdorff’s Heuristic

    One of the most fascinating and ancient problems in recreational mathematics is the Knight’s Tour — the challenge of moving a chess…

    functional-programming

    Checking Graph Bipartiteness in Haskell

    One of the most elegant problems in graph theory is determining whether a given graph is bipartite. A bipartite graph is one…

    functional-programming

    Solving the Eight Queens Problem in Haskell

    The Eight Queens Problem is one of the most famous challenges in computer science and mathematics. The goal is simple to state…

    functional-programming

    Exploring Reachability in Directed Graphs with Haskell

    Exploring Reachability in Directed Graphs with Haskell Graphs are a natural way to represent systems of connections — from flight networks to…

    functional-programming

    How Do They Display Trees — Three Layout Algorithms in Haskell

    When you visualize data structures in a GUI — such as decision trees, syntax trees, or even neural networks — one key…

    functional-programming

    Constructing All Spanning Trees in Haskell (Problem 83)

    In graph theory, a spanning tree of a connected graph is a subgraph that includes all the nodes of the original graph,…

    functional-programming

    Graph Isomorphism in Haskell (Problem 85)

    Graph isomorphism is one of the classic challenges in graph theory and computer science. It involves determining whether two graphs have the…

    functional-programming

    Introduction to Graph Theory in Haskell

    Graph theory is one of the most fascinating areas of computer science and mathematics, forming the foundation for countless real-world applications: from…

    functional-programming

    Implementing Huffman Encoding in Haskell

    Huffman encoding is one of the foundational algorithms in data compression — elegant, efficient, and entirely based on simple mathematical principles. It…

    default

    The Goldbach Conjecture and Its Recursive Implementation in Haskell

    The Goldbach Conjecture is one of the oldest unsolved problems in mathematics. It states that every even integer greater than 2 can…

    functional-programming

    Understanding Recursion Through Combinations, Permutations, and Trees in Haskell

    Recursion often feels like a mysterious concept when you first encounter it — until you realize that it’s not about doing something…

    functional-programming

    Finding the Optimal Path in Haskell: A Recursive Exploration

    I will explain from my point of view the solution to the following problem here, we explore a recursive approach to solving…

    functional-programming

    Understanding the Haskell Type System: From Typeclasses to Data Structures

    In this tutorial — inspired by my video “Structure de données et système de types en Haskell” — we dive into the…

    functional-programming

    Understanding Parenthesis Tokenization in Haskell

    Context Before building a full arithmetic calculator in Haskell, there was one key challenge I needed to solve first: understanding and tokenizing…

    functional-programming

    Building a Tiny Reverse Polish Notation (RPN) Calculator in Haskell

    In this project, we’ll build a small expression evaluator using Reverse Polish Notation (RPN) — also called postfix notation. The idea is…

    functional-programming

    Learning Haskell with Weird Goals

    Sometimes, the best way to learn a language is by using a simple, even slightly “weird” goal as an excuse to explore…

    functional-programming

    Brute-forcing Pythagorean Triples with Haskell List Comprehensions (up to 100)

    We want all integer solutions (a,b,c) to the equation a^2 = b^2 + c^2 with 0 < a < 100. This is…

    recreational-programming

    Turning Blog HTML into RSS, the Low-Level Way (in C++)

    If you publish long-form posts on the web, you’ve probably felt the friction of keeping your RSS feed in sync. I did…

    recreational-programming

    A New Way to Explore Your System on Linux

    On Linux, productivity often comes from small but powerful tools. dmenu and rofi are great examples: minimalist application launchers that make your…

    recreational-programming

    Automating YouTube Video Imports into My Website with One Magic Bash Line

    Over the past months I’ve been downloading my own YouTube videos with yt-dlp. It’s a fantastic tool for archiving, and I’ve built…

    recreational-programming

    Building My Own Parser in R - A Custom Syntax Experiment

    This was one of my older projects, a little bit eccentric but very educational. I wanted to see if I could design…

    system-design

    Building InFoEnd: An End-to-End Encrypted Chatroom in Go

    InFoEnd is my first experiment with building a secure chatroom application in Go. The goal: create a real-time messaging system where messages…

    default

    Reimplementing diff in C++: A Minimalist Approach

    Why Rebuild Something That Already Exists? The diff command is one of the cornerstones of the GNU/Linux ecosystem. It’s simple in appearance,…

    default

    Automatic Documentation for Any Codebase

    When working with R, I loved how Roxygen lets you generate clean documentation directly from comments in your source code. But I…

    software-computational-architecture

    Reimplementing Cross-Validation for KNN in R (from Scratch)

    After reimplementing K-Nearest Neighbors (KNN) from scratch, I wanted to take things a step further: build a cross-validation system entirely in base…

    software-computational-architecture

    Reimplementing K-Nearest Neighbors (KNN) from Scratch in R

    As part of my exploration of machine learning fundamentals, I decided to reimplement classic algorithms from scratch instead of relying directly on…

    software-computational-architecture

    Optimizing the Exponential Function in Cherubin

    Cherubin is my C++ library for computing very large numbers represented as strings. One of the hardest functions to implement efficiently in…

    software-computational-architecture

    Reimplementing the Cauchy Distribution in Fulgurance (C++ Statistics Library)

    Introduction Fulgurance is my C++ statistics library where I reimplemented several probability distributions from scratch, including the Cauchy distribution. The goal of…

    software-computational-architecture

    Cheating a Bit: Approximating atan, arccos, and arcsin in the Cherubin Library

    This project is part of my Cherubin library — a C++ library for computing very large numbers represented as strings. Because Cherubin…

    recreational-programming

    SoundCutr: An Early Attempt at Voice Extraction in Audio Files

    Think of this article as a small time capsule of my programming journey — proof that everyone starts somewhere, and that projects…

    default

    Implementing DataFrames in C++: A Custom Approach for High-Performance Data Manipulation

    Introduction When working with data, Python and Pandas dominate the landscape. They provide an intuitive way to load, transform, and analyze datasets.…

    functional-programming

    How Haskell (and the Functional Mindset) Rewired the Way I Think About Code

    I didn’t set out to “become a functional programmer.” I stumbled into Haskell after years of imperative and OOP work, mostly focused…

    system-design

    Building an HTTP Server in Rust Without a Framework

    All code excerpts below are highlights of the full implementation. See the complete source on GitHub: julienlargetpiet/HTTP_Server. Why write your own server?…

    system-design

    Building an Encrypted Terminal Chatroom in C - A Personal Engineering Story

    I built a tiny chatroom that runs entirely in the terminal, written in C, with all messages encrypted. This article is my…

    recreational-programming

    Validating JSON Syntax: A Conceptual Approach

    In modern systems, JSON has become the de facto standard for exchanging structured data. Its popularity comes from its simplicity and readability.…

    software-computational-architecture

    Emulating Binary-Level Operations and Number Representations

    At the heart of every computer lies a simple truth: everything is binary. Whether you are working with integers, floating-point numbers, or…

    default

    Editing My YouTube Videos the Weird Way: With Nothing but ffmpeg

    Most people edit their YouTube videos with slick GUIs: Premiere, DaVinci Resolve, Final Cut Pro, even OBS + Shotcut for the open-source…

    software-computational-architecture

    Unsolved problem !!!

    Statement and motivation (inspired from pb.93 of 99 Problems in Haskell) This problem originates from the motivation to find all possible results…

    recreational-programming

    Custom Encoding For Integers

    Ok, so i had to encode a structured data, a positive integer in this case representing the space for the server to…

    recreational-programming

    Authentication Without Cookies

    Recently, i've been programming a simple cloud webserver in Go. And of course, it is unavoidable when including accounts, how to make…

    system-design

    Simple Compression Algorithm

    I've just finished implementing a simple text compression algorithm in C++, i will talk about its implementation in this article. The programm…

    default

    Implement Core Operations

    I have just finished developing a library for manipulating numbers so large and/or precise that no conventional datatype can encode them. You…

    recreational-programming

    Symetric Encryption Protocol

    How i've implemented an original symetric encryption protocol with combinatorial mathematics repo Or download on this website as zip: zip It starts…

    recreational-programming

    A ReGex Dialect

    In this article i'm gonna present you a method to implement RegEx. Link: repo Or on this website: zip Before the explanation,…

    recreational-programming

    An Original Transformation Engine

    In this article i will introduce you, in short, how i've implemented transformation engine XSLT like from scratch (with C++). repo Or…