~/blog
A keyboard-driven blog. Use j/k to move, ⏎ to read, h/l to go back and forth.Tap a post to read it.
Hi, I'm Vinicius, a self-taught systems and backend engineer. I've been coding since I was 14.
These days I mostly write Rust and C, with a bit of Go. Most of it lives on my GitHub. Before that, I spent a few years building serverless backends with Node.js on AWS.
I really like understanding how things actually work. Operating systems, CPU architecture, compilers, networking, and what's actually happening when code runs. I care a lot about code quality and building things right, not just shipping them.
Outside of work: books, the gym, playing guitar, firing up the grill for a barbecue, and some games here and there. I also really enjoy making my own coffee, usually a V60 with freshly ground beans.
- Everything Is a File, So What Is a File?What "everything is a file" really means: files, directories, file descriptors, and the system calls that connect them.
- System calls in depthHow a one-line printf actually crosses into the kernel. Privilege levels, traps, MSR_LSTAR, the kernel stack, and entry_SYSCALL_64.
- Strings in Rust: how they differ from Cchar*, null terminators, fat pointers, DSTs, and Deref. Everything that makes Rust strings different from C, explained through memory.
- Networking concepts from the ground upSockets, TCP, UDP, IP addresses, ports, byte order, and DNS. The concepts you need before writing a single line of network code.
- After all, what is a .tar.gz file?What a .tar.gz actually is, where its shape comes from, and what the flags in tar -xzvf mean.
- Why this blog existsI built a vim-like blog because why not.
- Try the motionsA throwaway post so you have something to navigate to.