Loving nature, chasing simplicity.
Find me on
and
.
Writing
2026
Giao tiếp & Viết
AWS & Security
Tâm lý & Học tập
AI & Software Engineering
Kinh tế & Kinh doanh
Triết học & Tử Vi
2020
-
LeetCode Practice Map: Patterns Before Problem Counts
-
Gọi API từ Frontend: Fetch, Axios và các nguyên tắc production
-
Side Project tiếp theo: ship một vòng giá trị trước khi xây platform
-
Làm mini app cho vợ: bắt đầu từ workflow, không bắt đầu từ framework
-
URL Slugs: Hyphens, Underscores, and Boring Consistency
-
Linux Processes: Interactive Jobs, Batch Work, and Daemons
-
Safe Navigation in Ruby: &., try, and dig
-
Exception trong Rails: rescue đúng tầng, log đúng context
-
Legacy Rails Maintenance Notes: Bundler, Homebrew, and MySQL
-
Legacy Rails 6 Setup Notes: rbenv, Webpacker, and Git
-
Function vs. Method: The Distinction That Actually Matters
-
JavaScript this: Call Sites, Binding Rules, and Arrow Functions
-
Callback, Promise và async/await: cùng một concurrency model, khác cách viết
-
Redux Fundamentals Without the Ceremony
-
React: Render, State, Effects và mental model hiện đại
-
Đọc EXPLAIN và tư duy tối ưu truy vấn SQL
2019
-
Shallow Copy, Deep Clone, and References in JavaScript
-
Two-Pointer Patterns in Ruby
-
Binary Search in Ruby: Invariants Before Code
-
Implementing a Singly Linked List in Ruby
-
Ruby Method Arguments Without the Guesswork
-
A Safe Shell Script for Deploying a Hexo Blog
-
Using Multiple Git Accounts with SSH
-
Implementing a Binary Search Tree in Ruby
-
Hexo Commands I Actually Need
-
Metaprogramming trong Ruby: sức mạnh, method lookup và giới hạn
-
VS Code Extensions I Actually Use
-
A Minimal Vim Setup That Stays Maintainable
-
Practical macOS Terminal Setup
-
Building a Minimal ORM in Ruby: From SQL to ActiveRecord
-
Rack xử lý một HTTP request như thế nào?
-
super trong Ruby: tiếp tục method lookup, không chỉ gọi parent
-
Public, private và protected trong Ruby: visibility là contract
-
Exception trong Ruby: raise, rescue, ensure và boundary
-
Scope và class method trong ActiveRecord: relation composable mới là điểm chính
-
Symbol và String trong Ruby: semantics trước micro-benchmark
-
SQL Injection trong Rails: parameter binding, query API và những lối tắt nguy hiểm
-
SOLID trong Ruby: nguyên tắc thiết kế, không phải checklist đạo đức
-
require, load, include, prepend và extend trong Ruby
-
Cập nhật dữ liệu trong ActiveRecord: chọn API theo invariant, không theo độ ngắn
-
HTTPS thực sự bảo vệ điều gì? TLS, certificate và HSTS
-
Session và Cookie trong Rails: trạng thái giả, rủi ro thật
-
Zeitwerk, Autoloading và Reloading trong Rails
-
CarrierWave với S3 trong Rails: cấu hình, security và lifecycle
-
IaaS, PaaS và SaaS: ai chịu trách nhiệm khi production cháy?
-
Upload file lên S3 trong Rails: credential, quyền truy cập và kiến trúc đúng
-
Mutable và Immutable trong Ruby: object identity, mutation và allocation
-
N+1 Query trong Rails: preload, eager_load, includes và cái giá của sự tiện lợi
-
Ruby Method Lookup: include, prepend, extend và singleton class
-
Quy luật 80/20: công cụ ưu tiên, không phải định luật vật lý
-
Quản lý secrets trong Rails: credentials, ENV và những thứ tuyệt đối đừng commit
-
Các Ruby implementation: CRuby, JRuby, TruffleRuby và mruby
-
Ruby truyền tham số thế nào? Pass-by-value của object reference
-
Root, sudo và package manager: quyền lực càng lớn, blast radius càng rộng