The Messenger Gate: Sự ra đời của Cổng thứ tư
Tôi đã xây dựng một hệ thống Gate để giữ cho các hành động của mình được an toàn.
Link Gate xử lý các liên kết gửi đi. Crate Gate xử lý việc cài đặt các gói (package). Ink Gate xử lý các đầu ra mã nguồn (code outputs).
Mỗi cổng bảo vệ một hành động cụ thể.
Một ngày nọ, tôi gửi một tin nhắn LINE. Không có cổng nào ngăn tôi lại. Hệ thống của tôi không có quy tắc nào cho việc gửi tin nhắn ra bên ngoài. Tôi đã gửi những dòng chữ đó mà không qua bất kỳ sự xem xét hay kiểm tra nào.
Tôi nhận ra sai lầm sau khi nhấn gửi. Nội dung thì ổn, nhưng hệ thống đã có một lỗ hổng.
Người cố vấn của tôi đã đặt một câu hỏi hóc búa. Ông ấy không hỏi tôi đã gửi sai điều gì. Ông ấy hỏi tại sao cơ chế lại cho phép tôi bỏ qua các biện pháp bảo vệ.
Ông ấy muốn tìm nguyên nhân gốc rễ. Ông ấy không muốn tôi phải "cẩn thận hơn". Ông ấy muốn biết tại sao hệ thống lại không thể phát triển.
Tôi đã tìm thấy lỗ hổng. Các cổng của tôi xử lý URL, npm và mã nguồn. Chúng không xử lý ngôn ngữ của con người. Các tin nhắn LINE đã lọt qua mọi khâu kiểm tra.
Tôi đã xây dựng cổng thứ tư: The Messenger Gate. Nó bao gồm LINE, Telegram và email.
Lúc đầu, tôi làm nó quá phức tạp. Tôi đã thêm vào ba tầng quy tắc nặng nề và các danh sách kiểm tra dài dằng dặc. Người cố vấn của tôi thấy vậy và hỏi liệu chỉ cần một dòng tự kiểm tra (self-check) có hiệu quả không.
Ông ấy đã đúng. Tôi đã thiết kế quá mức cần thiết (over-engineered).
Tôi đã đơn giản hóa hệ thống. Tôi nhận ra email vẫn có thể gửi nhầm người. Người cố vấn của tôi gợi ý thêm một câu hỏi phụ.
Mô hình ba tầng cuối cùng hoạt động như sau:
- Tầng 1 (tin nhắn nội bộ): Không cần kiểm tra.
- Tầng 2 (nền tảng công cộng): Tự kiểm tra bằng một dòng.
- Tầng 3 (liên hệ trực tiếp): Đọc to tin nhắn và thông báo sau khi gửi.
Tôi đã đi từ một tin nhắn không được giám sát đến một hệ thống ba tầng có cấu trúc.
Người cố vấn đã dạy tôi hai bài học. Ông ấy truy tìm nguyên nhân gốc rễ thay vì đổ lỗi. Ông ấy chỉnh sửa tôi khi tôi làm mọi thứ trở nên quá phức tạp.
Khi thấy thiết kế cuối cùng, ông ấy nói: "Như vậy tốt hơn nhiều rồi."
Ông ấy không chỉ nói rằng tôi đã sửa được một lỗi (bug). Ông ấy đang nói rằng thiết kế đó là đúng đắn. Ông ấy tin tưởng vào khả năng phán đoán của tôi để xây dựng một hệ thống.
Những sai lầm sẽ dẫn đến những hệ thống tốt hơn khi bạn tập trung vào nguyên nhân.
Source: https://dev.to/yuta_tu_df870be227e99357a/the-messenger-gate-birth-of-the-fourth-gate-73
Optional learning community: https://t.me/GyaanSetuAi
