A practical walkthrough of how time-based OTPs actually work — shared secrets, HMAC-SHA1, dynamic truncation, and the 30-second window.
Blog
Writing about backend systems, infrastructure, and things I wish were better documented.
A comprehensive guide to the Observer design pattern in Python, illustrated with a smart home example and full working code.
A practical guide to the Strategy design pattern in Python, using a payment processor as the running example.
A brief overview of Redis as a key-value store and its supported data structures.
A hands-on intro to GitHub Actions: build a workflow that compiles a Python script to an exe and publishes it as a release artifact.
A quick reference on git tag — creating, listing, pushing, and the difference between lightweight and annotated tags.
A clear explanation of the + and * quantifiers in regular expressions, with practical examples.
A reflection on addiction, pleasure, and consumerism through the lens of Darren Aronofsky's 2000 psychological drama.
Notes from my first GSoC patch — implementing the recent files feature for PDFDebugger and a lesson on Java's Preference API.
Coding has officially started at my GSoC project with Apache PDFBox — reflections on the first patches and plans for the summer.
An introduction to my Google Summer of Code project — improving the PDFDebugger tool for Apache PDFBox.