Writing
2026
-
The Residuality Method: Evolving an Identity System from Naive to Unbreakable
When we design a piece of software, usually we focus on the functional requirements and often try to follow the happy path.
-
Blame Canada Moment of the Big Tech
The big tech is having a 'Blame Canada' moment. Recent lawsuits against Meta and YouTube held companies liable for addictive product designs - but should we stop there?
-
Stay ahead of the Information Overflow - Shift to Personalized Podcasts
Stay ahead of the Information Overflow - Shift to Personalized PodcastsHow many links do you have saved in your reading list right now?I have 12 unread articles
2025
-
Practical Experience: Migrating an Old .NET Project with GitHub Copilot Agent
Practical Experience: Migrating an Old .NET Project with GitHub Copilot AgentI recently migrated an existing CQRS (Command Query Responsibility Segregation) imp
-
To wrap or not to wrap
To wrap or not to wrap, that is the Angular questionShould you write a wrapper layer for UI components in your Angular project?IntroductionA complex Angular app
-
Securing Remix Apps with Asgardeo - Part 2
Securing Remix Apps with Asgardeo - Part 2In the previous part of this article, we explored how to secure Remix applications using Asgardeo by implementing user login and logout functionality.
-
Securing Remix Apps with Asgardeo
Learn to secure Remix (built on React) apps with Asgardeo. This step by step guide covers user login, OIDC integration, and securing protected resources.
-
Customizing Account Locking Rules in WSO2 Identity Server
In a project I worked on recently, there was a business requirement to implement custom account locking rules for different authentication methods in WSO2 Identity Server (WSO2 IS) 7.0.0.
-
This Hidden Web Security Feature Can Break Your Cookies - Here’s How to Fix It
This Hidden Web Security Feature Can Break Your Cookies - Here’s How to Fix ItWhile working on a project with WSO2 Identity Server (IS) 7.0.0, I encountered a rather interesting issue.
2024
-
Implementing CQRS in ASP.NET Core - Separating Read and Write Operations for Scalability and Performance
How to separate read and write operations in ASP.NET Core using CQRS - a pattern that unlocks independent scaling and cleaner domain boundaries.
2023
-
Monitoring Java Applications on Azure with Application Insights
A step-by-step guide to wiring up Azure Application Insights for Java apps - covering agent setup, custom telemetry, and live metrics for WSO2 products.
-
Running WSO2 Products on Azure with Azure Membership Scheme
How to deploy WSO2 Identity Server and other WSO2 products on Azure using the Hazelcast Azure Membership Scheme for cluster coordination.
2022
-
A Robust Angular Search Bar with RxJs Debounce
Build a production-ready search bar in Angular using RxJS debounce, distinctUntilChanged, and switchMap to avoid unnecessary API calls.
13 articles total