Application
216 articles
Catching Up on New Features from PHP 7.4 to PHP 8.1
Learn new PHP 8.1 features including typed properties, arrow functions, union types, match expressions, and attributes.
Implementing a Load Balancer in Golang
Implement a round-robin L4 load balancer in Go from scratch. Covers reverse proxy with httputil, round-robin scheduling, and active and passive health checks.
Introduction to Building an HTTP Router with net/http
This article explains how to create a custom HTTP router using Golang's standard package net/http.
Proofreading Text with textlint and reviewdog on CircleCI
Automating text proofreading using textlint and reviewdog on CircleCI.
A Comprehensive Introduction to OAuth: Principles and Practices for Implementing a Secure Authorization System
A Comprehensive Introduction to OAuth: Principles and Practices for Implementing a Secure Authorization System
A Book to Understand Attacks and Countermeasures on OAuth and OIDC (Redirect Attack Edition)
A Book to Understand Attacks and Countermeasures on OAuth and OIDC (Redirect Attack Edition)
A Tutorial Guide to Understanding OAuth2.0 Without Just Going Through the Motions!
A Tutorial Guide to Understanding OAuth2.0 Without Just Going Through the Motions!
Resources for Catching Up on OAuth2 and OIDC
Explore OAuth2, OIDC, JWT, and authentication standards through comprehensive specifications, books, and implementation guides.
Git Commit Split: Shell Command Quick Reference
Quick reference shell commands for splitting a Git commit using interactive rebase, reset, and staged re-commits for granular commit history.
A Book to Understand the Differences Between OAuth, OAuth Authentication, and OpenID Connect
A book to understand the differences between OAuth, OAuth Authentication, and OpenID Connect
Reading Code of Golang HTTP Server
Master Go HTTP server internals: request routing, HandlerFunc casting, multiplexer design, and server configuration patterns.
Updated My Custom Router
Discover middleware support and optimizations in the goblin Go HTTP router with performance benchmarks and HTTP routing features.
How to Split a Commit in Git
Learn how to split Git commits using interactive rebase to create granular, organized commit history for cleaner code reviews.
Database Migration for Spanner Using golang-migrate
Migrate databases using golang-migrate with Google Spanner. Execute SQL migrations in Docker with GCP authentication management.
Stuck with ReadOnlyTransaction in Go's Spanner Client
Fix session pool exhaustion caused by missing tx.Close() on Cloud Spanner ReadOnlyTransaction in Go. Learn proper transaction lifecycle management and issue detection with zagane.
Basics of Authentication and Authorization
Learn authentication and authorization fundamentals: identification, RBAC, ABAC, credential types, SSO, SAML 2.0, OAuth 2.0, and OpenID Connect with practical context.
Implementing In-Memory Cache in Golang
Build a lightweight in-memory cache in Go with TTL expiration and thread-safe access using sync.Map. Covers design requirements, expiration logic, and trade-offs vs. library solutions.
Summary of Go CodeReviewComments
Improve Go code quality with essential code review guidelines: receivers, error handling, goroutines, and naming conventions.
What is JWT? JSON Web Tokens Explained for Secure API Authentication
Learn how JSON Web Tokens (JWT) work—header, payload, signature structure—how to use JWTs for stateless API authentication, and common security pitfalls to avoid.
What is gRPC? A Practical Introduction to gRPC with Go
Learn what gRPC is, how Protocol Buffers work, and how to build a gRPC server and client in Go. Includes comparison with REST and when to choose gRPC.