Posts
2026
How to Survive This Crazy Ai World
A non-programmer's honest take on AI anxiety, and how daily use of tools like Claude Code shifted the real bottleneck from writing code to coming up with ideas.
How to Set Up AWS MCP in VS Code with AWS SSO
Use AWS MCP in VS Code with an AWS SSO profile instead of relying on the default credential chain.
How to debug Python script with uv in VS Code
Debug Python scripts with uv dependencies in VS Code using PEP 723 inline metadata.
2024
Setup Meross Smart Garage Door Opener with Merlin Roller door
Setup Meross smart garage door opener with Merlin roller door and HomeKit.
How to monitor Python app in Kubernetes with New Relic APM
Monitor Python Flask apps in Kubernetes using New Relic APM auto-attach.
My Cka Experience
CKA exam preparation tips and experience from a successful candidate.
Fix Ubuntu APT Update Error After Kubernetes Package Repo Change
Fix Ubuntu APT errors after Kubernetes migrated to pkgs.k8s.io repositories.
2023
2022
Deploy Metrics-server in Kubernetes with TLS enabled
Deploy metrics-server in Kubernetes with signed kubelet certificates and TLS.
Run Pihole on Kubernetes
Deploy Pihole on Kubernetes with MetalLB and persistent storage volumes.
How to remove NotReady Pods from Kubernetes
Remove NotReady pods by uninstalling helm charts or deleting pending jobs.
Build Full Stack Webapp Using Cloudflare Worker and Github Pages
Build a full-stack webapp using Cloudflare Worker backend and GitHub Pages frontend.
Setup Kubernetes Cluster from scratch
Build a Kubernetes cluster from scratch using kubeadm on Ubuntu nodes.
2021
I wrote a Cloudflare CLI tool
Python CLI tool for querying Cloudflare API and retrieving firewall rules.
Bye Bye Google Blogger🖐, Hello Cloudflare Pages😘
Migrate blog from Google Blogger to Cloudflare Pages using Hugo.
Setup Cloudflare for S3 Bucket
Publish S3 bucket through Cloudflare CDN using Workers to modify headers.
Setup Cloudflare for AWS API Gateway
Setup Cloudflare CDN for AWS API Gateway with custom domain and ACM.
Automate EC2 Instance Security Group Rules Update
Automate EC2 security group rules updates using Python and Selenium.
Setup Splunk Universal Forwarder with TLS
Configure Splunk Universal Forwarder with TLS encryption for syslog intake.
Use PowerShell to delete SPAM Blogger comments
Delete Blogger SPAM comments using PowerShell and Google OAuth2 API.
Use Ansible to update Splunk Universal Forwarder Configuration
Update Splunk Universal Forwarder configurations using Ansible and Jinja2 templates.
2020
OWA and ECP failure after Install Exchange 2016 CU17
Fix OWA and ECP failures after Exchange CU17 by replacing corrupted config files.
Package and deploy a PowerShell Lambda function with custom modules
Package and deploy PowerShell Lambda functions with custom modules using SAM.
Test out PowerShell 7 new features in WSL1
Test PowerShell 7 new features and module installation in WSL1 Ubuntu.
2019
Monitor AWS VPC Connectivity with Python
Monitor AWS VPC connectivity by deploying EC2 instances with Python.
RDP to EC2 with SSM Port Forwarding
RDP to EC2 instances securely using SSM Session Manager port forwarding.
VMware Site Recovery Manager Multi-Site Pair Deployment
Deploy VMware SRM multi-site recovery with shared recovery site configuration.
How Secure is RDP?
RDP session hijacking vulnerability using NT AUTHORITY/SYSTEM account.
Use Terraform to build server in VMware
Provision Ubuntu servers in VMware vSphere using Terraform and iPerf3.
Sydney AWS Summit 2019 - My Experience
Experience and highlights from attending Sydney AWS Summit 2019.
Setup Cross Account S3 Access for Cloudberry Drive
Configure cross-account S3 access for Cloudberry Drive using IAM roles.
The Un-documented Way to Setup AWS SSO with Okta
Setup AWS SSO with Okta using App Roles instead of privileged user accounts.
Infrastructure as Code with CloudFormation
Deploy Apache redirect service using CloudFormation with cfn-init automation.
2018
Use Microsoft Graph API to extract Excel file contents
Extract Excel file contents from SharePoint using Microsoft Graph API.
Understand OAuth and Open ID Connect
Understand OAuth authorization flow and secure delegation using access codes.
How did I pass AWS Solution Architect Professional Exam in just 3 weeks
Pass AWS Solution Architect Professional exam with 3 weeks preparation.
Deploy Docker Image with AWS ECS (Part 2)
Complete ECS cluster setup and deploy containers using task definitions.
Create a PowerShell Module
Create a PowerShell module with proper functions, parameters, and help documentation.
Build a PDC in Azure with DSC
Automate Azure PDC setup using DSC with PowerShell configuration.
Install AWS CLI on WSL Ubuntu
Install AWS CLI and aws-shell on WSL Ubuntu with pip.
Deploy Docker Image with AWS ECS (Part 1)
Upload Docker images to AWS ECR using CloudFormation and AWS CLI.
Azure - Update Existing RSG with ARM Template
Update existing Azure resources with ARM templates without breaking deployments.
Monitor Office 365 Outages with Twitter
Monitor Office 365 service status using PowerShell and Twitter API.
Over the Wall - with help from Azure
Bypass GFW using Azure P2S VPN and Squid proxy server.
Setup AWS SSO CLI & API Access
Setup AWS SSO CLI access with Azure AD using aws-azure-login tool.
Setup SSO Access to AWS Console with Azure AD
Setup AWS Console SSO access using Azure AD SAML without root credentials.
Migrate Azure AD Connect Between AD Forests
Migrate Azure AD Connect between AD forests with staging mode configuration.
2015
2014
Annoying Office 365 issues: Username won't sync through DirSync
Fix Office 365 UPN sync issues by revoking licenses before DirSync.
Receive error: Target mailbox doesn't have an SMTP proxy matching '.mail.onmicrosoft.com' when move mailbox to Office 365
Fix mailbox migration errors by adding missing SMTP proxy addresses.