Cái bẫy 'null reference' trong TypeScript và cách tránh
Mình chia sẻ mấy cái bẫy null/undefined hay gặp trong TypeScript và cách xử lý — từ optional chaining tới discriminated unions.
THE ENGINEERING JOURNAL
Những điều mình xây, những vấn đề mình gặp, và những gì mình học được. Về phần mềm, từ bên trong.
Mình chia sẻ mấy cái bẫy null/undefined hay gặp trong TypeScript và cách xử lý — từ optional chaining tới discriminated unions.
Cảm nhận về Chương 8 sách Think Like a Programmer: nghệ thuật tái sử dụng code, cân bằng giữa NIH syndrome và copy-paste programming, và cách dùng code người khác một cách thông minh.
Topic 24 trong chương Pragmatic Paranoia: Tại sao chương trình chết lại tốt hơn là chương trình 'bị thương' và tiếp tục chạy? Cảm nhận của mình sau khi đọc.
Rate limiter là thứ backend dev nào cũng nghe qua, nhưng thiết kế sao cho đúng thì không phải ai cũng biết. Câu chuyện từ basic Token Bucket tới distributed với Redis.
Cảm nhận Chương 6 sách Think Like a Programmer của V. Anton Spraul — Big Recursive Idea, head vs tail recursion, đệ quy với linked list và binary tree.
Design by Contract (DBC) là một trong những nguyên lý quan trọng nhất của Pragmatic Programmer — giúp phân định trách nhiệm giữa các module bằng hợp đồng rõ ràng. Preconditions, Postconditions và Class Invariants là nền tảng.
Mình chia sẻ mấy lệnh Git thực tế — interactive rebase, stash, blame — giúp dev solo quản lý code gọn gàng hơn. Kinh nghiệm từ mấy lần lỡ tay và cách khắc phục.
Cảm nhận Chương 5 sách Think Like a Programmer của V. Anton Spraul — class, encapsulation, Rule of Three, interface design, và tư duy thiết kế phần mềm
Tại sao một cuốn sổ tay và cây bút lại là công cụ mạnh mẽ nhất mà một lập trình viên có thể sở hữu? Bài học từ Topic 22 của The Pragmatic Programmer về engineering daybooks.
Mình chia sẻ cách sử dụng context.Context trong Go để cancel request và downstream operations một cách graceful, tránh memory leak và data inconsistency.