Tags: #programming

DrunkLeen

21 Dec 2025
#programming#rust#error-handling#unsafe-rust

Unsafe Rust starts where Rust no longer guarantees safety

This article explains what unsafe really means in Rust and why it exists. unsafe does not turn safety off; it shifts responsibility from the compiler to the programmer. By looking at real code examples, we see how raw pointers work, what Undefined Behavior is, and why it is far more dangerous than a simple panic. Finally, the article shows how unsafe should be used correctly: kept small, controlled, and hidden behind safe abstractions, with clear invariants that make the rest of the code safe to use.

10 Dec 2025
#linux#programming

Building My Smallest Personal Linux (from Kernel to Lua)

In this project I build a tiny 64-bit Linux system from scratch. First, I use tinyconfig plus a few manual tweaks to build a minimal x86_64 kernel and boot it in QEMU until I hit the classic no working init found error. Then I write a very small init in Rust + assembly (no std, no libc) that talks directly to the kernel via system calls and runs as PID 1. Finally, I statically compile Lua, bundle it together with my init into an initramfs, and use the kernel’s own tooling to create a bootable ISO that can run Lua inside this tiny Linux world. The goal is not a daily-driver distro, but to build the smallest Linux system that I actually understand from the inside out.

03 Dec 2025
#rust#programming#error-handling#tokio#async

Error Management in async Rust β€” from practical experience to architectural depth

A small async Rust project shows how to run multiple HTTP requests in parallel, apply timeouts, isolate panics, and clearly classify errors. The focus is not just speed, but building predictable, meaningful concurrency in real-world systems. True async isn’t about writing code β€” it’s about understanding how to give structure to simultaneous work.

29 Nov 2025
#fibonacci#rust#python#algorithm#recursion#programming

Returning to the simplest complicated problem: a deep look at Fibonacci and two ways of writing it in Rust and Python

This post explores two different approaches to the Fibonacci problem β€” the naive recursive method and the optimized memoized version β€” to show how a simple sequence reveals deep lessons about complexity, structure, recursion, and algorithmic thinking. The naive version demonstrates exponential growth and wasted computation, while the memoized version shows how adding memory transforms recursion into a powerful and efficient tool. Ultimately, Fibonacci becomes a metaphor for the essence of programming: making the right choices.