Blogging in 2026: Building Your Own Knowledge Base

4th January 2026

After 40 tech articles over five years, I reflect on how AI has transformed my blogging workflow. From slow, manual drafts to efficient AI-assisted writing, I share my approach to building a personal knowledge base, why I write primarily for my future self, and how blogs have become more valuable than ever in the AI era.

Building Content-Adaptive Interfaces with Google's A2UI

29th December 2025

Learn how to build adaptive interfaces where the AI decides not just what to show, but how to style it. Discover Google's A2UI protocol, an open-source standard that enables AI agents to dynamically generate and style UI components based on content analysis. This guide walks you through building a content-driven blog application using Gemini 2.5 Flash and Lit Web Components.

Making a Face Follow Your Cursor with AI‑Generated Images

20th December 2025

Learn how to create an interactive face-tracking effect using AI-generated images. This tutorial covers generating face variations with the fofr/expression-editor model on Replicate, building a Node.js script to automate image generation, and implementing smooth cursor and device motion tracking in the browser using vanilla HTML, CSS, and JavaScript.

Make Your Audio Play with Real-Time Transcript Highlighting

16th November 2025

Learn how to build a fully interactive audio player with real-time transcript highlighting using simple HTML, CSS, and JavaScript. This tutorial walks you through syncing audio with precise caption timestamps, automatically highlighting each spoken line, smooth auto-scrolling, and letting listeners jump to any moment by clicking the transcript. Perfect for podcasts, tutorials, and spoken-word content.

Turning Markdown into Podcasts with OpenAI Agents

13th November 2025

Transform your Markdown blog posts into engaging, conversational podcasts using OpenAI’s Agents SDK. Discover how to automate every step - from scriptwriting and editing to voice generation - to produce natural-sounding MP3 episodes in minutes. Build your own AI-powered production pipeline and give your blog a real voice, no studio or audio expertise required.

Migrating Your Homebrew Setup to a New Mac with One Command

8th November 2025

Easily migrate your entire Homebrew setup to a new Mac with just one simple command. This step-by-step guide shows you how to back up and restore all your Homebrew packages, apps, and developer tools using a Brewfile - saving you hours of manual reinstalls and setup time when moving to a new machine.

Why You Shouldn’t Use localStorage for Transactions - and What to Use Instead

4th November 2025

localStorage may be convenient, but it’s not built for handling complex operations, concurrent writes, or large volumes of data. What seems simple at first can quickly lead to frozen UIs and unreliable transactions. In this article, we dive into the hidden limitations of localStorage and explore how modern, asynchronous storage solutions like IndexedDB and localForage deliver the speed, safety, and scalability that today’s web apps need.

How to Structure a Nest.js Project for Microservices (Monorepo Setup)

12th October 2025

A clean and scalable way to structure your Nest.js project for microservices. This step-by-step guide helps you organise multiple apps and shared libraries for a scalable architecture. Perfect for developers who want a maintainable, modular, and production-ready backend foundation with Nest.js.

Decoupling a System with Nest.js Microservices

11th October 2025

Turn your Nest.js app into a distributed microservice system. Discover how message queues and shared libraries help create a loosely coupled backend. Each service handles its own responsibility, from order creation to persistence and notifications, without waiting on others. This approach makes your backend more resilient, fault-tolerant, and ready for real-world workloads.

The Right Way to Handle Hover in CSS Across Devices

21st September 2025

Learn the right way to handle hover effects in CSS across devices. Discover why methods like screen-size queries, touch detection, and user-agent sniffing fail, and how @media (hover) provides a cleaner, more reliable solution for responsive, accessible designs.