- Reddit bắt đầu yêu cầu đăng nhập vì xem việc dùng Old Reddit khi đã đăng xuất là nguồn chính của scraping độc hại và lưu lượng tự động, nhưng New Reddit vẫn có thể truy cập khi đăng xuất
- Old Reddit cung cấp bài đăng và bình luận chủ yếu dưới dạng HTML thuần, tải xuống khoảng 1 MB và gửi đi 0,5 MB, trong khi New Reddit cần JavaScript tải nhiều dữ liệu hơn khoảng 5 lần
- Trong một thử nghiệm trình duyệt hạn chế, New Reddit cũng có thể nhận văn bản bình luận chỉ với một số JavaScript và yêu cầu API bình luận, nên chưa xác nhận được liệu thay đổi này có thực sự chặn scraping hay không
- Old Reddit tải 200 bình luận ngay từ đầu, còn New Reddit chỉ tải 25 bình luận và sau khi cuộn cũng chỉ khoảng 35, nên rõ ràng scraper có lý do để ưu tiên Old Reddit gọn nhẹ hơn
- Thay vì viện dẫn mơ hồ lý do “an toàn”, Reddit đáng lẽ nên nói thẳng mục đích là hạn chế scraping hoặc ngừng dịch vụ; việc ép đăng nhập tạo ra rào cản không cần thiết cho người dùng muốn đọc kết quả tìm kiếm do con người viết
Reddit và kết quả tìm kiếm do con người viết
- Reddit được xem là một công ty lưu trữ vô số diễn đàn phổ biến và tìm cách trích xuất nhiều giá trị nhất có thể từ các cộng đồng do người dùng tạo ra
- Khi dữ liệu do con người tạo ra trong kỷ nguyên LLM trở nên có giá trị cao, các bài đăng trong cộng đồng Reddit càng trở thành tài sản quan trọng hơn
- Tranh cãi Reddit API trước đây cũng được xem là một trường hợp cố gắng thu hồi giá trị từ cộng đồng
- Thêm
site: reddit.comvào từ khóa tìm kiếm giúp dễ tìm các kết quả do người thật viết, nên ngay cả khi không tích cực dùng Reddit, các kết quả tìm kiếm này vẫn đáng để truy cập
Yêu cầu đăng nhập của Old Reddit
old.reddit.comlà frontend cung cấp giao diện cũ của Reddit, nhưng giờ đây khó sử dụng bình thường khi đã đăng xuất- Một nhóm nhỏ người dùng Firefox và NoScript đã nhiều lần trải qua việc một sản phẩm đang hoạt động bình thường bị đẩy ra ngoài vì ngừng hỗ trợ
- Điện thoại 8 năm tuổi và máy tính bảng 10 năm tuổi không còn dùng được vì hệ điều hành đã quá cũ
- API mà ứng dụng Stack Exchange đã biến mất khỏi app store sử dụng cũng bị ngừng
- Reddit giải thích biện pháp này là “để giữ Reddit an toàn”, nhưng không rõ người dùng muốn truy cập tri thức gây ra mối đe dọa gì cho nền tảng
Vấn đề scraping mà Reddit nêu ra
- Theo thông báo chính thức của Reddit, việc dùng Old Reddit khi đăng xuất là nguồn chính của scraping độc hại và lưu lượng tự động
- New Reddit vẫn có thể truy cập khi đăng xuất, nên vẫn còn nghi vấn vì sao chỉ hạn chế Old Reddit
- Một bình luận liên quan cho rằng phương thức lưu lượng độc hại liên tục thay đổi, khiến việc chặn và vượt chặn lặp đi lặp lại; phát hiện sau sự cố thì dễ, nhưng chặn chủ động thì khó
- Có cách diễn giải rằng Old Reddit không có ngăn xếp bảo mật hiện đại, nên khó đối phó hơn với lưu lượng tự động; quản trị viên Reddit đã dùng điều đó để thay cho câu trả lời
Cách Old Reddit hoạt động và lưu lượng truyền tải
- Sau khi đăng nhập và khảo sát luồng thông báo, Old Reddit cung cấp nội dung người dùng chủ yếu dưới dạng HTML thuần
- Nếu không tải thêm bình luận, có thể đọc trang mà không cần JavaScript
- Trang được đo tải xuống khoảng 1 MB và gửi đi 0,5 MB, trong đó phần lớn phản hồi là HTML
- Mất khoảng 2 giây để nhận phản hồi và chậm hơn GitHub khoảng 4 lần so với kích thước
- Chưa xác nhận được là do giới hạn tốc độ hay bản thân Reddit vốn chậm
- Yêu cầu tải thêm bình luận được xử lý gọn và nhanh, cũng không phát hiện vấn đề bảo mật rõ rệt nào khác với một trang web thông thường
Sự phụ thuộc vào JavaScript của New Reddit
- Không có JavaScript, New Reddit hầu như không tải được nội dung ngoài bài đăng
- Tổng lượng tải lớn hơn Old Reddit khoảng 5 lần; thử nghiệm được thực hiện bằng cách giữ lại chỉ các yêu cầu tối thiểu cần thiết để lấy nội dung trong trình duyệt, thay vì vượt qua chính xác cơ chế bảo mật
- Chỉ cần cho phép các yêu cầu sau thì bản thân trang đã tải được
- Khi áp dụng bộ lọc, nút tải thêm bình luận vẫn ở trạng thái đang tải, nhưng phản hồi thực tế của yêu cầu có chứa văn bản bình luận
- Chỉ cần chạy JavaScript của trang và gửi các yêu cầu cần thiết là có thể nhận thông tin bình luận, nên chưa rõ việc chạy JavaScript có phải là rào cản cốt lõi để chặn scraper hay không
CAPTCHA và truyền hành vi người dùng
- Trong lúc làm mới trang nhiều lần và tải bình luận cùng trả lời, hầu hết không thất bại
- Trong một thử nghiệm duy nhất khi bỏ bộ lọc yêu cầu, các trường CAPTCHA được truyền dưới dạng tham số truy vấn kèm theo chuyển hướng, nhưng không tái hiện được hiện tượng này
- Cũng chưa xác nhận được liệu CAPTCHA có xuất hiện khi gọi trực tiếp API bình luận lặp lại hay không
- New Reddit gửi tín hiệu heartbeat về Reddit mỗi khi người dùng cuộn trang hoặc di chuyển con trỏ
Giới hạn của hiệu quả hạn chế scraping
- Đây có vẻ không phải là vấn đề an toàn của bản thân frontend, mà là biện pháp Reddit nhằm làm khó việc scraping dữ liệu do người dùng tạo ra có giá trị
- Điều này không chứng minh rằng vẫn có thể scrape New Reddit, và vẫn có khả năng công việc khó hơn so với Old Reddit
- Lý do scraper ưu tiên Old Reddit là trang gọn nhẹ và tải nhiều bình luận ban đầu hơn
- Old Reddit tải 200 bình luận ngay từ đầu
- New Reddit ban đầu chỉ tải 25 bình luận, và khi cuộn thì tự động tăng lên khoảng 35 bình luận
- New Reddit đã thay giao diện cũ thiên về HTML thuần bằng cấu trúc nặng hơn khoảng 5 lần, phụ thuộc vào web component và các thứ tương tự; kết quả là trình duyệt nhận nhiều dữ liệu hơn và thực hiện nhiều công việc hơn
- Việc tăng gánh nặng cho trình duyệt có thể cũng làm tăng chi phí scraping, nhưng hiệu quả chặn thực tế chưa được xác nhận
Phản ứng trước lý do “an toàn”
- Nếu Reddit âm thầm áp dụng phản hồi 30X/40X cho
old.reddit.com, hoặc tuyên bố loại bỏ vì ít người dùng, đó vẫn sẽ là một quyết định khó chịu nhưng có thể dự đoán được - Điều gây phản ứng mạnh hơn là việc tước đi một cách truy cập đang hoạt động bình thường bằng lý do bảo mật/scraping mơ hồ, không liên quan trực tiếp đến người dùng thật
- Trong các trường hợp có thể hiểu được nhu cầu như Anubis, người dùng vẫn sẵn sàng bật JavaScript; trọng tâm của sự phản cảm không phải là bản thân JavaScript, mà là sự lệch pha giữa giải thích và biện pháp
- Blog cá nhân cũng cung cấp văn bản dưới dạng HTML thuần như Old Reddit, nhưng khác với nội dung do người dùng tạo trên Reddit, đó vốn là nội dung của chính người vận hành
Các lựa chọn còn lại và lo ngại
- Người dùng có thể đăng nhập, nhưng sự bất mãn vẫn còn vì bị buộc phải làm một bước vốn trước đây không cần thiết
- Có thể phải dùng New Reddit, và cũng không biết Reddit có tiếp tục duy trì hỗ trợ Old Reddit hay không
- Có lo ngại rằng nếu Reddit thấy có thể, trong tương lai họ cũng sẽ chặn truy cập New Reddit khi đăng xuất
- Tác giả muốn một internet nơi có thể trực tiếp tìm kiếm và đọc văn bản do con người viết, thay vì một môi trường phải đi qua các LLM khổng lồ và đắt đỏ để đọc bài viết thật của mọi người
- Thảo luận liên quan cũng được đăng trên Lobste.rs
1 bình luận
Ý kiến trên Lobste.rs
Ví dụ rõ nhất cho enshittification của mạng xã hội là quá trình chuyển từ Reddit cũ sang Reddit mới. Bản cũ tuy lỗi thời nhưng nhanh, gọn gàng, có thể tải hàng chục phản hồi mà không làm nặng trình duyệt, và những điểm bất tiện cũng có thể cải thiện bằng các công cụ như RES hay Toolbox.
Cứ vài tháng tôi lại thử dùng lại bản mới, nhưng dù đã tham gia gần 15 năm, tôi vẫn khó thích nghi. Hai thanh bên khổng lồ chiếm diện tích, việc mở bài viết chậm và rối rắm, đôi khi đang tải các cụm bình luận thì trang tự làm mới khiến mất ngữ cảnh.
Cũng có những tính năng tốt như đăng ảnh, bình chọn, công cụ quản trị mới, nhưng cuối cùng tôi vẫn dùng bản cũ. Có vẻ công ty cũng không còn khả năng quay lại ưu tiên sự tiện dụng cho người dùng; việc lập trường từng nói sẽ hỗ trợ bản cũ vô thời hạn gần đây bị hạ xuống thành “không phải ngay lúc này” cũng là tín hiệu đáng ngại.
/r/rust, nơi tôi thường tham gia, cũng rất có thể sẽ sụp đổ khi mất phần lớn quản trị viên và người dùng lâu năm. Khi Rust trưởng thành và trở nên quá đại chúng, chất lượng cũng đã giảm mạnh so với 10 năm trước. Reddit mới phù hợp hơn với hướng đi công ty mong muốn, nhưng với web cũ thì đó là một sản phẩm hoàn toàn khác, không còn hy vọng.
Vấn đề cốt lõi là thông điệp PR viết “vì bảo mật” chứ không phải “để giảm tải scraping lên máy chủ”. Với các nhà vận hành website ngày nay, tải do scraping là một mối lo hoàn toàn chính đáng; phần còn lại tuy là sự bực bội hợp lý, nhưng hơi xa với vấn đề trước mắt.
Ứng dụng đèn Philips Hue cũng suốt nhiều năm đã hiện banner nói rằng họ sẽ không cho điều khiển đèn nếu không có tài khoản, “vì bảo mật”. Bảo mật thực sự là giữ toàn bộ giao tiếp trong mạng của tôi, chứ không phải lôi máy chủ bên ngoài và hệ thống xác thực bên ngoài vào để điều khiển thiết bị trong mạng gia đình. May là đến nay vẫn chỉ là cảnh báo và vẫn hoạt động tốt mà không cần tài khoản.
Tôi thấy tiếc cho các trang nhỏ bị scraper gây thiệt hại, nhưng với Reddit thì không mấy đồng cảm. Nếu Google và các bên khác đã trả khoản lớn để truy cập API, tôi không thấy lý do gì Reddit không thể tiếp tục hỗ trợ truy cập không đăng nhập chừng nào Old Reddit còn đáng duy trì. Tôi cũng nhớ đã thấy chuyển hướng CAPTCHA, nên cũng nghi ngờ việc thêm nó vào Old Reddit có khó đến vậy không.
Nếu suy đoán theo hướng hoài nghi, có lẽ ai đó đã đặt giới hạn tốc độ 2 giây cho Old Reddit, rồi thấy số liệu scraping không đổi nên quyết định khai tử, và sau xung đột nội bộ thì phương án thỏa hiệp hiện tại ra đời.
Trong lĩnh vực kiểu này, nói dối trắng trợn phổ biến đến mức phi lý và quá thường được bỏ qua. Cho đến vài tháng trước, Cloudflare vẫn hiển thị “cần kiểm tra bảo mật kết nối trước khi tiếp tục vào example.com”, rồi gần đây mới đổi sang cách nói thật hơn rằng dịch vụ chặn bot độc hại đang xác minh người dùng.
Lý do Google đưa ra khi loại bỏ XSLT cũng tương tự. Ban đầu họ nêu bảo mật là lý do chính, nhưng trước khi thực sự bắt đầu loại bỏ, họ lại cung cấp một phương án thay thế tương thích đầy đủ được triển khai dưới dạng tiện ích mở rộng, tự làm vô hiệu lập luận bảo mật của mình. Vậy mà đến giai đoạn loại bỏ thực tế, họ vẫn tiếp tục nói “vì bảo mật”, trong khi lẽ ra nên thành thật đưa ra các lý do chính đáng khác. Điều gây khó chịu không phải là việc mọi hãng trình duyệt đều muốn loại bỏ XSLT, mà là cách Google đóng gói chuyện đó.
Doanh nghiệp thích nói mọi thứ là “vì an toàn”. Từ lâu rồi, ở một cửa hàng tiện lợi, tôi từng được bảo rằng không thể mang túi xách nhỏ vào trong, vì sự an toàn của tôi và các khách hàng khác. Có thể người ta dùng túi rỗng để đánh ai đó, và cũng có thể họ từng bị cướp, nhưng mối lo thực sự gần như chắc chắn là trộm cắp.
Nếu họ thành thật thay “an toàn” bằng “để duy trì và tăng biên lợi nhuận”, tôi sẽ tôn trọng hơn nhiều. Mục đích của kinh doanh là kiếm tiền, đó là điều hiển nhiên.
Có thể dùng các frontend bảo vệ quyền riêng tư chỉ đọc cho Reddit như redlib, libreddit, teddit cùng với plugin chuyển hướng như libredirect. Ngoài nhà phát triển của các giao diện đó, không ai có lý do phải trực tiếp chịu đựng những trò lộng hành mới nhất của Reddit.
Dùng old.reddit.com có thể vượt qua rào đăng nhập của các subreddit 18+, vốn không chỉ gồm chủ đề tình dục mà còn nhiều nội dung nhạy cảm khác.
Với người muốn truy cập một số chủ đề mà không có tài khoản Reddit, thay đổi này tệ hơn. Reddit vẫn là một kho tư liệu khổng lồ nên tôi thường thêm site:reddit.com vào truy vấn tìm kiếm.
Reddit cũng loại bỏ JSON API, chặn luôn các công cụ như lurker(https://tangled.org/oppi.li/lurker), vốn cho phép xem Reddit mà không cần tài khoản, rào đăng nhập hay JavaScript. Tôi biết ngày này rồi cũng sẽ đến, và có vẻ dữ liệu do người dùng tạo ra chất lượng cao là tuyến phòng thủ của Reddit.
Old Reddit cũng không “an toàn” cho lợi ích kinh doanh của Reddit. Reddit mới giờ từ chối hoạt động hẳn trên điện thoại và cưỡng ép chuyển sang tải ứng dụng; trong ứng dụng, các trình chặn quảng cáo thông thường không hoạt động, nên Reddit có thể kiểm soát mạnh hơn nhiều so với trên trình duyệt. Trong khi đó, trang cũ vẫn dùng được trên di động.
Tôi đã thấy rất nhiều bot rõ ràng và tiếp thị trá hình trên cả Reddit lẫn HN. Một trong số ít nơi tôi còn giao lưu trực tuyến là lobste.rs, vì ở đó có thể tin rằng phần lớn là người thật.
Khi đọc bình luận trên Reddit mới bằng di động đến một mức nào đó, một rào cài ứng dụng không thể đóng sẽ xuất hiện, ép rằng “Reddit tốt hơn trong ứng dụng”. Cách duy nhất để tránh điều này mà không cài app là Old Reddit.
Có vẻ việc xem một website di động được làm tử tế quá một hai trang là “không an toàn”, và việc đóng Old Reddit có vẻ nhằm bịt lỗ hổng này trong kênh dẫn người dùng cài ứng dụng.