~/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 software developer. I've been coding since I was 14.
Professionally I've been working as a full-stack developer with TypeScript, Node.js, and AWS for the past three years. Right now I'm going deeper into Rust and Go, and that's where I want to work next.
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, and some games here and there. I also really enjoy making my own coffee, usually a V60 with freshly ground beans.
- 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.