Tôi không nghĩ anh ấy có nghĩa là "Thiết kế tồi" nhiều như "Thực hành tồi". Nói chung, một ứng dụng web nên không trạng thái càng tốt. Mặc dù, ví dụ, bạn có thể cần biết thông tin người dùng để cho phép xem trang, thông tin đó có thể được lưu trên máy khách dưới dạng cookie và máy chủ chỉ cần xác thực thông tin người dùng mỗi lần.
Điều đó sẽ rất lý tưởng, nhưng bạn không thể luôn tin tưởng vào việc khách hàng có thể lưu cookie. Hơn nữa, nó liên quan đến việc xác nhận người dùng theo kiểu không trạng thái, có khả năng liên quan đến việc truy vấn thông tin từ cơ sở dữ liệu cho một yêu cầu trang đơn giản. Thông thường, việc lưu thông tin đó trong phiên sẽ đơn giản hơn.
Tuy nhiên, một khi bạn đã vượt qua Rubicon, rất nhiều lập trình viên muốn lưu lại không chỉ thông tin xác thực trong phiên mà còn nhiều thứ khác nữa. Đây là một mô hình chống và có xu hướng làm cho ứng dụng web của bạn phụ thuộc nhiều vào trạng thái, đó chính xác là những gì được cho là nên tránh ở nơi đầu tiên.
Một số lập trình viên sẽ xoay quanh công nghệ như Spring (nếu bạn đang sử dụng Java) để gỡ rối những gì sẽ là một mớ hỗn độn của các phụ thuộc, nhưng tôi cho rằng điều đó chỉ giúp tạo ra các phụ thuộc dễ dàng hơn thay vì loại bỏ chúng. Những công nghệ như vậy sẽ hỗ trợ sự phát triển của bạn, không làm cho vấn đề chống mô hình của bạn giảm bớt vấn đề.
Do đó, một nguyên tắc nhỏ là nếu bạn có thể viết nó không trạng thái, có lẽ nên làm như vậy hoặc bạn có nguy cơ rơi vào cái bẫy này. Rõ ràng là bạn sẽ gặp phải những tình huống bắt buộc, nhưng nói chung, bạn chỉ nên lưu thông tin mà nếu không khó có thể truy vấn.