Hudson

  • Home
  • Writing
  • Blog
  • 2026

  • Sep 14
    Nó chỉ là một flag
  • Sep 12
    Hiểu đúng cơ chế vẫn chưa đủ
  • Sep 9
    AWS IAM: Hiểu Đúng Từ Nền Tảng
  • Sep 6
    Tại sao tôi chán, và não tôi đang nói gì
  • Aug 29
    Auth / Identity — Mental Model
  • Aug 26
    MCP không có gì thần thánh: cuối cùng vẫn là API, input/output và business logic
  • Aug 25
    Từ khóa dịch vụ AWS cho SAP-C02
  • Aug 24
    Harness: bộ khung biến model thành agent
  • Aug 20
    Compound, Đạo và những ván cược dài hạn
  • Aug 20
    Current AI Agents Are Overhyped and Fundamentally Limited English
  • Aug 19
    China, Việt Nam và cái bẫy bão hòa kinh tế
  • Aug 19
    Brain & Anxiety Playbook
  • Aug 19
    Discussion Notes — Friston, Prior, Meta Awareness, Tỉnh Thức
  • Aug 19
    Practice, Rest, and Motor Learning: Protect the Learning Signal
  • Aug 19
    Procedural Memory vs. Working Memory & Cơ chế đạt Flow State
  • Aug 19
    Từ khủng hoảng 1997 đến Bitcoin: Những nguyên tắc về dòng chảy vốn và niềm tin tập thể
  • Aug 18
    Framework luận Tử Vi Trung Châu phái theo Vương Đình Chi
  • Aug 18
    Âm Dương – Turning & Cân bằng động
  • Aug 18
    Hai góc nhìn về AI-assisted programming
  • Aug 18
    Học mà không có phản hồi
  • Aug 17
    Kinh tế: Dòng chảy, Fiat và Chiến lược Tài sản
  • Aug 15
    Market Research vs Market Validation
  • Aug 14
    Công Thức Veritasium Cho Presentation Và Blog
  • Aug 14
    7 Bài Học Về Bán Hàng
  • 2022

  • Sep 23
    Direct upload image to S3 with SAM English
  • Sep 23
    Speed up image processing with CarrierWave English
  • Sep 18
    Sidekiq on Heroku English
  • Sep 18
    Upgrade a Heroku Postgres plan English
  • Sep 17
    Create email with MJML English
  • Sep 12
    Custom Heroku domain English
  • Sep 12
    Moving from Heroku to Render English
  • Sep 12
    Nginx basic configuration English
  • Jun 18
    Bad way to deploy Rails project to EC2 English
  • 2020

  • Jul 3
    LeetCode Practice Map: Patterns Before Problem Counts English
  • Jun 28
    Gọi API từ Frontend: Fetch, Axios và các nguyên tắc production English
  • Jun 27
    Side Project tiếp theo: ship một vòng giá trị trước khi xây platform
  • May 17
    Làm mini app cho vợ: bắt đầu từ workflow, không bắt đầu từ framework
  • May 14
    URL Slugs: Hyphens, Underscores, and Boring Consistency English
  • May 13
    Linux Processes: Interactive Jobs, Batch Work, and Daemons English
  • May 12
    Safe Navigation in Ruby: &., try, and dig English
  • Apr 23
    Exception trong Rails: rescue đúng tầng, log đúng context
  • Mar 16
    Legacy Rails Maintenance Notes: Bundler, Homebrew, and MySQL English
  • Feb 5
    Legacy Rails 6 Setup Notes: rbenv, Webpacker, and Git English
  • Jan 11
    Function vs. Method: The Distinction That Actually Matters English
  • Jan 10
    JavaScript this: Call Sites, Binding Rules, and Arrow Functions English
  • Jan 9
    Callback, Promise và async/await: cùng một concurrency model, khác cách viết
  • Jan 9
    Redux Fundamentals Without the Ceremony English
  • Jan 8
    React: Render, State, Effects và mental model hiện đại
  • Jan 5
    Đọc EXPLAIN và tư duy tối ưu truy vấn SQL
  • 2019

  • Dec 28
    Shallow Copy, Deep Clone, and References in JavaScript English
  • Dec 20
    Two-Pointer Patterns in Ruby English
  • Dec 16
    Binary Search in Ruby: Invariants Before Code English
  • Dec 6
    Implementing a Singly Linked List in Ruby English
  • Dec 5
    Ruby Method Arguments Without the Guesswork English
  • Dec 1
    A Safe Shell Script for Deploying a Hexo Blog English
  • Dec 1
    Implementing a Binary Search Tree in Ruby English
  • Dec 1
    Using Multiple Git Accounts with SSH English
  • Nov 12
    Hexo Commands I Actually Need English
  • Sep 21
    Metaprogramming trong Ruby: sức mạnh, method lookup và giới hạn
  • Sep 20
    VS Code Extensions I Actually Use English
  • Sep 20
    A Minimal Vim Setup That Stays Maintainable English
  • Aug 5
    Practical macOS Terminal Setup English
  • Jun 26
    Building a Minimal ORM in Ruby: From SQL to ActiveRecord English
  • Jun 24
    Rack xử lý một HTTP request như thế nào?
  • Jun 16
    super trong Ruby: tiếp tục method lookup, không chỉ gọi parent
  • Jun 11
    Public, private và protected trong Ruby: visibility là contract
  • Jun 10
    Exception trong Ruby: raise, rescue, ensure và boundary
  • Jun 9
    Scope và class method trong ActiveRecord: relation composable mới là điểm chính
  • Jun 9
    Symbol và String trong Ruby: semantics trước micro-benchmark
  • Jun 8
    SQL Injection trong Rails: parameter binding, query API và những lối tắt nguy hiểm
  • May 17
    SOLID trong Ruby: nguyên tắc thiết kế, không phải checklist đạo đức
  • May 15
    require, load, include, prepend và extend trong Ruby
  • May 8
    Cập nhật dữ liệu trong ActiveRecord: chọn API theo invariant, không theo độ ngắn
  • May 4
    HTTPS thực sự bảo vệ điều gì? TLS, certificate và HSTS
  • Apr 17
    Session và Cookie trong Rails: trạng thái giả, rủi ro thật
  • Apr 17
    Zeitwerk, Autoloading và Reloading trong Rails
  • Apr 11
    CarrierWave với S3 trong Rails: cấu hình, security và lifecycle
  • Apr 10
    Upload file lên S3 trong Rails: credential, quyền truy cập và kiến trúc đúng
  • Apr 10
    IaaS, PaaS và SaaS: ai chịu trách nhiệm khi production cháy?
  • Apr 8
    Mutable và Immutable trong Ruby: object identity, mutation và allocation
  • Feb 25
    N+1 Query trong Rails: preload, eager_load, includes và cái giá của sự tiện lợi
  • Feb 24
    Ruby Method Lookup: include, prepend, extend và singleton class
  • Feb 22
    Quản lý secrets trong Rails: credentials, ENV và những thứ tuyệt đối đừng commit
  • Feb 22
    Quy luật 80/20: công cụ ưu tiên, không phải định luật vật lý
  • Feb 20
    Các Ruby implementation: CRuby, JRuby, TruffleRuby và mruby
  • Feb 19
    Ruby truyền tham số thế nào? Pass-by-value của object reference
  • Feb 5
    Root, sudo và package manager: quyền lực càng lớn, blast radius càng rộng
  • 2018

  • Dec 30
    Viết Bash script an toàn hơn trên macOS và Linux
  • Jun 28
    length, count và size trong Ruby/Rails: giống mà không giống
  • Jan 23
    Lệnh open trên macOS: mở file, app và URL từ Terminal
  • Jan 1
    Linux File Permissions: đọc rwx, dùng chmod, đừng chữa cháy bằng 777
  • Home
  • Writing
  • Blog
  • English
  • TIL