Blog
Writing about backend engineering, Go, and the things I learn along the way.
Building Reliable Systems with Go
Lessons learned from a decade of backend engineering -- why Go, clean architecture, and boring technology choices win in the long run.
A Basic Guide About Encodings
Encodings are more understandable with proper terminology. A walkthrough of the four abstraction levels from abstract characters to bytes.
Building a Chat From Scratch With Go and MQTT
A tutorial on creating a basic chat application using Go and MQTT protocol with RabbitMQ as the broker.
Understanding Private Proxies for Crawling
A guide to proxy types, protocols, and selection criteria for web crawling -- from datacenter IPs to residential proxies.
GnuPG Small Guide
An introduction to GnuPG for encryption, signing, and key management -- because privacy is not just for paranoid tech guys.
Linux Asynchronous I/O
The four I/O models available in Linux -- blocking, nonblocking, multiplexing, and asynchronous -- and why the terminology is often misused.