Mời quán cốc trà đá: gắn nút donate bằng SePay và webhook
Gắn nút ủng hộ cho blog bằng SePay, và chuyện làm sao biết tin "tiền về" là thật: API Key, OAuth 2.0, HMAC khác nhau thế nào, kể bằng chuyện đời thường.
~$ cat posts/README.md
Mấy bài viết linh tinh...
10 bài
Gắn nút ủng hộ cho blog bằng SePay, và chuyện làm sao biết tin "tiền về" là thật: API Key, OAuth 2.0, HMAC khác nhau thế nào, kể bằng chuyện đời thường.
AI không có lỗi, lỗi ở cách tụi mình dùng nó với nhau: forward output không đọc, đổi tool vì cái mác, ít nói chuyện dần. Vài cảm xúc kể ở quán trà đá.
Chữ D trong SOLID (Dependency Inversion): code nghiệp vụ không nên dính chặt vào một dịch vụ bên ngoài cụ thể. Bài cuối series SOLID quán trà đá.
Chữ I trong SOLID (Interface Segregation): đừng bắt class hứa những việc nó không làm được hay không ai cần. Bài thứ tư series SOLID quán trà đá.
Chữ L trong SOLID (Liskov Substitution): thay class này bằng class khác thì phải chạy y như cũ, người gọi không cần biết. Bài thứ ba series SOLID quán trà đá.
Chữ O trong SOLID (Open/Closed): thêm tính năng mới bằng cách viết code mới, không phải mổ code cũ đang chạy ngon. Bài thứ hai series SOLID quán trà đá.
Chữ S trong SOLID (Single Responsibility): mỗi class chỉ nên có một lý do để thay đổi, sửa chỗ này không hỏng chỗ kia. Mở màn series SOLID quán trà đá.
Bài cuối series Blog trà đá: hai bài trước tính tiền, bài này kể chuyện dựng cái blog anh em đang đọc. Từ brainstorm với Claude, vibe coding Rails, đến infra Cloud Run + TiDB, backup tự chế và email domain, toàn đồ gần như free.
Cập nhật chi phí thật sau 1 tuần chạy blog trên Cloud Run + TiDB Cloud, tính xem free tier TiDB có đủ không, và cái giá phải trả cho chữ 'free'.
Blog anh em đang đọc đây chạy trên một hệ thống kiến trúc "enterprise-grade, cloud-native, microservice-ready, AI-ready, metaverse-ready". Tổng chi phí mỗi ngày: một ly trà đá. Không thêm hạt hướng dương.