Blog

Articles, guides, and notes on software engineering.

Cohesion and Coupling
Architecture 2025-06-25

Cohesion and Coupling

Understand cohesion and coupling as software design metrics. Learn the 7 levels of cohesion (coincidental to functional) and 6 levels of coupling (content to data) with practical examples.

#Design#System Design

Recent Posts

Access Control Patterns Using OPA
Architecture 2025-06-22

Access Control Patterns Using OPA

Explore four access control patterns using Open Policy Agent including Allow/Deny, SQL generation, and AST approaches with responsibility separation.

#Open Policy Agent#Authorization
Introducing ggc — A Go-Based Git Tool
Tools 2025-06-15

Introducing ggc — A Go-Based Git Tool

A complete walkthrough of ggc: the CLI/interactive split architecture, fuzzy-search engine implementation, Workflow Mode internals, customisable aliases, and cross-platform keybinding profiles.

#Golang#Git#CLI#TUI
Go's Concurrency and Parallelism Model and Goroutine Scheduling
Application 2025-06-14

Go's Concurrency and Parallelism Model and Goroutine Scheduling

Understand Go concurrency vs. parallelism. Covers goroutine scheduling, GOMAXPROCS, the GMP model, OS threads vs. goroutines, and how preemption works with sequence diagram examples.

#Golang
Considerations and Solutions for Pagination Impact in OPA
Application 2025-06-14

Considerations and Solutions for Pagination Impact in OPA

Master pagination with Open Policy Agent, offset pagination, cursor pagination, and access control filtering.

#Open Policy Agent#Offset Pagination#Cursor Pagination#Authorization
PostgreSQL Memory Configuration
Database 2025-06-14

PostgreSQL Memory Configuration

Guidelines for optimizing PostgreSQL memory settings for performance and stability. It works through key parameters such as shared_buffers, work_mem, and maintenance_work_mem, covering how to improve response times while avoiding out-of-memory situations.

#PostgreSQL
Understanding IO and CPU Characteristics in Ruby and Rails
Application 2025-06-14

Understanding IO and CPU Characteristics in Ruby and Rails

Understand Ruby GVL, Puma concurrency, IO-bound vs CPU-bound workloads, thread/process tuning, and GC impact on Rails performance.

#Ruby#Ruby on Rails
Considering the Shelf Life of Design
Architecture 2025-06-08

Considering the Shelf Life of Design

Consider design shelf life across business, organization, product, and technical perspectives. Balance constraints and trade-offs.

#Design#System Design#Architecture Strategy#Architecture
Measuring Scalability
Architecture 2025-06-08

Measuring Scalability

Measure system scalability using throughput, latency, efficiency metrics, mathematical models like Amdahl's Law, and practical benchmarking.

#Scalability
Cloud-Native Architecture: Mastering Availability and Cost-Effectiveness in Next-Gen Design Principles
Architecture 2025-06-06

Cloud-Native Architecture: Mastering Availability and Cost-Effectiveness in Next-Gen Design Principles

Notes from reading the book Cloud-Native Architecture: Mastering Availability and Cost-Effectiveness in Next-Gen Design Principles. It summarizes the fundamentals of cloud-native thinking, along with the design principles and trade-offs involved in building for availability and cost-effectiveness.

#Amazon Web Service#Google Cloud Platform#Cloud-Native
Developed an Asset Trend Simulator
Application 2025-05-25

Developed an Asset Trend Simulator

An article introducing the Asset Trend Simulator, a tool built for thinking about personal asset formation. It covers why the tool was created and how to use it to simulate how assets change over time through contributions and investment returns.

#JavaScript
Things to Consider When Writing Architecture Documents
Architecture 2025-05-25

Things to Consider When Writing Architecture Documents

An article on what to keep in mind when writing architecture documents, which play an important role in system design. Rather than a mere listing of design information, it explains how to write them as material that explains the validity of a design to stakeholders, builds consensus, and guides readers to understanding and agreement.

#Architecture Strategy#Architecture
Summary of PostgreSQL Logical Replication Specifications
Database 2025-05-23

Summary of PostgreSQL Logical Replication Specifications

Learn PostgreSQL logical replication: how it differs from physical replication, publisher/subscriber setup with Docker, wal_level configuration, replication slots, and CREATE SUBSCRIPTION.

#PostgreSQL
About Row Level Security (RLS) in PostgreSQL
Database 2025-05-23

About Row Level Security (RLS) in PostgreSQL

Master PostgreSQL Row Level Security with PERMISSIVE and RESTRICTIVE policies for multi-tenant data isolation and access control.

#PostgreSQL#Authorization
Bounded Contexts
Architecture 2025-05-19

Bounded Contexts

Understand bounded contexts in domain-driven design to clarify word meanings, organize responsibilities, and improve system design.

#DDD
Structure of My System Specification Document
Architecture 2025-05-19

Structure of My System Specification Document

Learn to structure system specification documents with sections for architecture, data models, APIs, and sequence diagrams for design clarity.

#System Design#Design#Tips
What is Open Policy Agent (OPA)? A Practical Guide to Policy as Code
Application 2025-05-13

What is Open Policy Agent (OPA)? A Practical Guide to Policy as Code

Learn what Open Policy Agent (OPA) is, how policy as code works, and practical examples of using OPA to centralize authorization logic in your infrastructure.

#Open Policy Agent#Authorization
Communication Guide for Developers and Architects: Learning Information Transmission through Patterns
Architecture 2025-05-10

Communication Guide for Developers and Architects: Learning Information Transmission through Patterns

A book discussing communication through visual information, text, language, non-verbal cues, and documentation.

#Architect
Building Multi-Tenant SaaS Architecture - Principles, Best Practices, AWS Architecture Patterns
Architecture 2025-04-20

Building Multi-Tenant SaaS Architecture - Principles, Best Practices, AWS Architecture Patterns

A review of Building Multi-Tenant SaaS Architecture. It comprehensively explains the essentials specific to SaaS: the two-plane structure of control plane and application plane, tenant authentication and routing, data partitioning, and noisy-neighbor mitigation. Not tied to a particular domain, it reads as broadly applicable.

#SaaS#Book Review
Implementation of Access Control System for Microservices Using OPA
Architecture 2025-03-20

Implementation of Access Control System for Microservices Using OPA

Implement fine-grained access control for distributed microservices using Open Policy Agent and declarative Rego policy language.

#Authorization#Open Policy Agent#RBAC#Microservices