Linear, startup quản lý dự án đình đám, đã tạo nên cơn sốt trong giới phát triển khi ứng dụng của họ phản hồi gần như tức thì, trong khi các app CRUD truyền thống mất tới 300ms mỗi thao tác. Bí mật nằm ở triết lý thiết kế táo bạo: đặt cơ sở dữ liệu ngay trong trình duyệt của người dùng.

Đảo ngược mô hình truyền thống

Thay vì gửi mọi thao tác lên server và chờ đợi, Linear lưu dữ liệu vào IndexedDB trên máy người dùng. Khi bạn cập nhật một issue, việc gán giá trị trực tiếp (như issue.title = '...') cập nhật dữ liệu trong bộ nhớ cục bộ (MobX observable), giúp giao diện hiển thị kết quả ngay lập tức. Lệnh issue.save() chỉ đưa thay đổi vào hàng đợi đồng bộ lên server ở chế độ nền, hoàn toàn ẩn khỏi người dùng.

Loại bỏ spinner

Theo bài phân tích kỹ thuật được cộng đồng Hacker News đón nhận nồng nhiệt, yếu tố then chốt là "giấu hết network request". Một ứng dụng truyền thống phải chờ fetch API, parse JSON rồi mới render lại UI. Linear làm ngược lại: cập nhật giao diện ngay từ local, sau đó đồng bộ với server qua WebSocket. Người dùng không còn thấy spinner, skeleton hay màn hình đơ cứng.

Ý nghĩa với người dùng thường

Đối với doanh nghiệp, tốc độ này đồng nghĩa với năng suất cao hơn. Nhà phát triển có thể tập trung vào code thay vì chờ load. Còn với người dùng cuối, trải nghiệm làm việc nhóm trở nên mượt mà như đang thao tác trên file Excel local. Công nghệ này không chỉ dành cho Linear: bất kỳ startup nào muốn xây dựng ứng dụng web tốc độ cao đều có thể áp dụng nguyên lý "local-first" với sự hỗ trợ của AI và đồng bộ thời gian thực.