Testing shows the presence, not the absence of bugs. No amount of testing can prove a software right, a single test can prove a software wrong. This fundamental limitation means we must design our systems to be obviously correct, not merely verified through testing. The best way to achieve reliability is through simplicity and clarity of design.

— Edsger W. Dijkstra

✦

Blog

Nơi mình chia sẻ nhật ký và những câu chuyện nhỏ trong hành trình làm nghề.

❖

Hexagonal Architecture — Kiến trúc đặt domain làm trung tâm

10 tháng 8, 2026•Phong Hy

Hiểu Hexagonal Architecture (Ports & Adapters) qua ví dụ Go: tách business logic khỏi framework và database, code dễ test và dễ thay đổi hơn hẳn.

engineeringarchitecturebackend
Đọc tiếp→

Đổi schema database không downtime — Expand & Contract thực chiến

9 tháng 8, 2026•Phong Hy

Migrate schema Postgres an toàn trên production: expand & contract, backfill theo batch, chuyển code từng phase — không cần tắt service.

engineeringdatabasebackend
Đọc tiếp→

TypeScript Generics thực chiến — Viết code tổng quát mà vẫn an toàn

8 tháng 8, 2026•Phong Hy

Generics trong TypeScript qua ví dụ thực tế: generic function, extends, keyof, infer và cách tránh over-engineering khi áp dụng vào dự án.

engineeringtypescript
Đọc tiếp→

Microservices không phải lựa chọn mặc định (Building Microservices)

7 tháng 8, 2026•Phong

Afterword Building Microservices: khi nào nên và không nên dùng microservices, cạm bẫy tách nhỏ quá sớm và khởi đầu an toàn với monolith.

sachbuilding-microservicesmicroservices+1
Đọc tiếp→
←Trước
1···91011···50
101112···50
Sau→

Trang 10 / 50

Xem tất cả Tags→
✦
Home✦Blog✦Tags

Privacy Policy•Terms & Conditions© 2026 Phong Hy. Crafted with care.