- Hệ thống bình luận miễn phí Disqus chèn quảng cáo quá thô kệch và mang tính spam, nên đã ngừng sử dụng dịch vụ
- Đã quen với một web không quảng cáo trong môi trường Pi-hole + Wireguard VPN, nhưng khi tạm thời tắt chặn quảng cáo thì thấy ngay một loạt quảng cáo chướng mắt và các yêu cầu theo dõi
- Những quảng cáo này không chỉ phá hỏng trải nghiệm tối giản và sạch sẽ của blog, mà còn xâm phạm quyền riêng tư của khách truy cập và tạo ra doanh thu dựa trên nội dung của người vận hành
- Người vận hành đã gỡ Disqus và quyết định giữ blog là một tài nguyên tự do cho lập trình viên, không quảng cáo, không theo dõi
- Tính năng bình luận hiện được tạm hoãn; tác giả mong có thể tìm được một hệ thống bình luận thay thế tôn trọng quyền riêng tư hoặc tự host trong tương lai và đang xin gợi ý
Mở đầu
- Giải thích ngắn gọn lý do và bối cảnh dẫn đến việc gỡ hệ thống bình luận Disqus khỏi blog
- Disqus đã bắt đầu hiển thị quảng cáo trên gói miễn phí từ vài năm trước
- Khi đó email thông báo có giọng điệu khá nhẹ nhàng, khiến việc này trông như không phải vấn đề lớn nên đã không coi trọng
- Vì hệ thống bình luận trước đây của Disqus có thiết kế tinh tế, nên đã kỳ vọng quảng cáo của họ cũng sẽ ổn
Vấn đề quảng cáo
- Những quảng cáo Disqus thực sự nhìn thấy gần đây, trái với kỳ vọng, lại bẩn mắt và gây khó chịu
- Tác giả đã chặn quảng cáo trên mạng gia đình trong thời gian dài bằng Pi-hole, và khi ở ngoài thì dùng Wireguard VPN để duy trì cùng môi trường chặn đó
- Vì đã quen với môi trường chặn quảng cáo quá lâu nên không còn nhận ra trải nghiệm web thông thường ngập tràn quảng cáo đến mức nào
- Gần đây do không nhận được thông báo bình luận từ Disqus nên đã tạm tắt chặn quảng cáo để kiểm tra, nhưng không thấy bình luận nào mà chỉ thấy những quảng cáo đậm mùi lừa đảo
Trải nghiệm người dùng và quyền riêng tư
- Bày tỏ lời xin lỗi vì đã để khách truy cập blog phải nhìn thấy những quảng cáo như vậy
- Tác giả muốn giữ blog là một không gian cung cấp thông tin tối giản và gọn gàng, nhưng nhận ra quảng cáo Disqus đã phá hỏng mục tiêu đó và còn xâm phạm quyền riêng tư của khách truy cập
- Khi kiểm tra bằng Firefox Dev Tools, tác giả còn phát hiện nhiều yêu cầu theo dõi được tạo ra
- Nhận ra Disqus đã kiếm tiền từ nội dung của người vận hành và dữ liệu khách truy cập
- Đã gỡ Disqus để biến blog thành một không gian không quảng cáo và không theo dõi dành cho lập trình viên và người làm kỹ thuật
Giải pháp thay thế và kết luận
- Đang suy nghĩ lại xem blog có thực sự cần tính năng bình luận hay không
- Hiện tại vẫn có thể giao tiếp với khách truy cập qua nhiều cách như GitHub hay Twitter/X
- Vì việc có một không gian thảo luận cho từng bài viết vẫn có giá trị, tác giả đang xin gợi ý về hệ thống bình luận tôn trọng quyền riêng tư hoặc có thể tự host
- Gửi lời cảm ơn đến độc giả đã tiếp tục tin tưởng blog
- Một lần nữa xin lỗi vì đã gây ra sự phiền toái
5 bình luận
Tôi cũng đã gỡ livere vì có vẻ quảng cáo cũng bám theo ở phía dưới.
Hả?? Disqus có quảng cáo à?? rồi tôi quay lại xem blog của mình thì ra công cụ bình luận tôi dùng trên blog là Cusdis cơ mà.. haha;
Bình luận Facebook từng khá ổn vào thời ai cũng dùng Facebook nhiều..
Ý kiến trên Hacker News
Ngoài vấn đề số lượng quảng cáo quá nhiều, vấn đề của kiểu quảng cáo này còn nằm ở chỗ gần như không có cách nào báo cáo đúng nghĩa rằng đó là quảng cáo lừa đảo. Reddit cũng vậy, khi báo cáo quảng cáo thì chỉ có thể chọn “lý do khác”, không có mục “quảng cáo này rõ ràng là lừa đảo”. Có lẽ vì nếu các mạng quảng cáo thực sự gỡ bỏ quảng cáo lừa đảo thì lượng inventory còn lại sẽ giảm mạnh. Thực tế, mỗi khi tôi dùng YouTube mà không đăng nhập, tôi gần như chỉ thấy đầy quảng cáo chất lượng thấp, kiểu như chỉ cố đạt KPI cho đủ
Tình hình của YouTube thật sự rất kỳ lạ. YouTube là một nền tảng có năng lực và có khá nhiều nội dung tốt, nhưng quảng cáo thì lại ở mức rất tệ, kiểu “mũ len chặn 5G”, sản phẩm sức khỏe không rõ nguồn gốc, hay quảng cáo với nội dung về phân gây khó chịu. Điều này làm tôi có ấn tượng xấu hơn về YouTube và Google
Tôi đã nhận email spam từ một công ty gối tên Derilla suốt nhiều năm, và sau khi manifest V3 được áp dụng thì quảng cáo của họ còn xuất hiện ngay trên trang chủ YouTube. Tôi không hiểu nổi ai lại mua gối sau khi xem email spam hay quảng cáo YouTube, nhưng dù không hẳn là lừa đảo thì đây vẫn là một công ty cực kỳ phiền phức
Tôi hơi nghi ngờ nhận định rằng “không còn đủ inventory để hỗ trợ đầy đủ tất cả các dịch vụ dựa vào quảng cáo trên toàn bộ web”. Ngược lại, tôi nghĩ nếu có một mạng quảng cáo lọc quảng cáo lừa đảo thật tốt và chỉ cung cấp inventory chất lượng cao, họ hoàn toàn có thể thu phí premium từ nhà quảng cáo. Chỉ là vì Google gần như độc quyền trong mảng mạng quảng cáo cho nền tảng mở, nên phần lớn người dùng либо chặn toàn bộ quảng cáo, либо không chặn gì cả, thành ra hầu như không có lựa chọn thay thế. Tôi còn dùng cả bộ lọc tùy chỉnh trong uBlock Origin, và sẽ rất hay nếu có hỗ trợ mức điều chỉnh dần dần như Privacy Badger thay vì chỉ on/off
Ngành quảng cáo luôn nói rằng mình sạch sẽ còn các nhà quảng cáo lừa đảo là chuyện của người khác, nhưng thực tế tôi nghĩ toàn ngành đều phải chịu một phần trách nhiệm cho tình trạng lừa đảo này. Nếu họ thật sự muốn xử lý quảng cáo lừa đảo một cách tích cực, họ đã tiếp nhận báo cáo từ người dùng nghiêm túc hơn rồi
Tôi dùng Mastodon cho phần bình luận trên site của mình. Cách triển khai tôi dùng là bản chỉnh sửa nhẹ từ Adding comments to your static blog with Mastodon. Vì site có chủ đề khá rõ ràng, tôi gắn thẻ một cộng đồng Lemmy trên Mastodon để liên kết. Sức hấp dẫn của federation là rất lớn
Tôi cũng chọn cách tích hợp Mastodon và cực kỳ hài lòng. Có nhiều hướng dẫn khác nhau và việc triển khai cũng dễ, đó là điểm rất hay
Tôi cũng dùng đúng cách đó. Rất thích
Tôi hoàn toàn không có ý định để bình luận trên site của mình. Nó chỉ làm tăng thêm rắc rối. Tôi thấy tốt hơn nhiều nếu chỉ cross-post sang HN hay Reddit rồi trao đổi ý kiến ở đó
Tôi thấy echo-chamber-js khá hay. Nó tạo ra một cơ chế shadow ban toàn cục cho tất cả mọi người, biến ô bình luận thành không gian riêng của từng người
Tôi thường đăng bài lên HN, và nếu ít upvote thì cũng hơi thấy bất an, nhưng tôi đang nghĩ hay là cứ đăng mọi thứ lên HN rồi xử lý phần thảo luận bằng link ở đó. Tôi lo như vậy có bị xem là vi phạm quy định vì quá thiên về tự quảng bá không. Câu “đừng dùng chủ yếu cho mục đích quảng bá” khiến tôi băn khoăn
Dạo này phần lớn blog đều như vậy. Thảo luận và bình luận diễn ra trên các nền tảng khác như mạng xã hội
Thường thì hoặc chỉ toàn bình luận ngọt ngào, hoặc kết thúc bằng chiến tranh bình luận, nên tôi đồng cảm 100%
Nhưng làm vậy thì khách truy cập blog sẽ khó bình luận nếu họ không biết bài đã được cross-post, và trên HN cũng có rủi ro spam
Có người nói rằng “sau nhiều năm dùng Pi-hole và chặn hơn 1 triệu domain, tôi đã quen với một thế giới gần như không có quảng cáo. Đến mức quên luôn trải nghiệm Internet thông thường là như thế nào”, kèm theo ước tính rằng 30~50% người dùng Internet dùng trình chặn quảng cáo. Tôi cũng không thấy quảng cáo lần nào suốt nhiều năm. Nhưng tôi nghĩ Pi-hole có phần được đánh giá hơi quá cao. Trình chặn quảng cáo trong trình duyệt hiệu quả hơn và Pi-hole lại còn nặng. Thậm chí tự đưa blacklist vào cấu hình Unbound/Bind/Dnsmasq còn hiệu quả hơn
Tôi thích ở Pi-hole là nó chặn được nhiều loại lưu lượng telemetry phát sinh từ các dịch vụ ngoài trình duyệt như smart TV hay Netflix. Hôm nay tỷ lệ chặn của tôi là 23.1%. Pi-hole còn cho xem thống kê bằng biểu đồ và dễ tạm thời bỏ chặn theo từng domain. Tôi cũng khuyên dùng một giải pháp thay thế Pi-hole bằng Unbound
Tôi chỉ dùng uBlock Origin trong trình duyệt, không dùng Pi-hole, mà vẫn thấy hài lòng. Nhưng trong gia đình có nhiều thiết bị khác nhau như smart TV, tablet... nơi quảng cáo có thể xuất hiện, nên tôi hoàn toàn nghĩ có những môi trường mà Pi-hole là cần thiết
Cũng nên tính đến chuyện di động chiếm khoảng 60% tổng lưu lượng, trong khi ở đây trình chặn quảng cáo chưa được phổ biến rộng
Trên điện thoại, tôi chặn quảng cáo toàn hệ thống bằng AdGuard DNS, rồi dùng trình chặn quảng cáo tích hợp của Vivaldi để bắt nốt phần còn sót lại như một lớp phòng thủ kép
Cá nhân tôi cũng thấy tỷ lệ người dùng trình chặn quảng cáo nghe có vẻ quá cao, nhưng tìm kiếm một chút thì thấy đây là con số khá đáng tin
Tôi bỏ Disqus vì quảng cáo. Thay vào đó tôi tự làm một giải pháp thay thế bằng Cloudflare Worker miễn phí. Đó là dịch vụ req4cmt, chuyển dữ liệu từ form POST bình luận thành JSON rồi append vào file .jsonl, sau đó git push. Bình luận có thể được render bằng git fetch từ repo từ xa hoặc từ raw.githubusercontent.com. So với plugin bình luận dựa trên Github Issues, ưu điểm là mọi dữ liệu đều được lưu trong Git và không cần đăng nhập riêng. Tôi không thích đăng nhập Github OAuth vì plugin có nguy cơ lộ access_token và dữ liệu repo. Vì git push có thể dùng với bất kỳ remote nào nên có thể dùng github, gitlab hay đâu cũng được
Cách này phải chấp nhận rủi ro. Người dùng có thể trực tiếp đưa dữ liệu có vấn đề pháp lý vào repo, và khi có yêu cầu xóa thì có thể phải sửa cả git history. Đây chỉ là giải pháp tốt khi mọi người đều sử dụng với thiện chí
Lưu bình luận bằng git làm tôi thấy sợ, giống như ghi bình luận vào groupware vậy, vì dấu vết sẽ tồn tại vĩnh viễn và quản lý sẽ rất khó
.jsonl có thể ổn cho bảng tin dung lượng nhỏ, nhưng dùng git làm kho dữ liệu thì có khá nhiều vấn đề. Tôi nghĩ có thể cân nhắc các lựa chọn như sqlite hay D1 của Cloudflare (tương thích SQLite, có gói miễn phí)
Tôi tự hỏi có plugin bình luận nào dựa trên Github cho phép đăng bình luận trực tiếp bằng tài khoản Github không. Với blog công nghệ thì phần lớn độc giả đều là người dùng Github, nên có vẻ khá phù hợp
Tôi đã triển khai một cấu trúc tương tự bằng API Gateway, Lambda và DynamoDB. Chi phí cũng gần như bằng không và không cần Git
Ngay từ đầu tôi đã không định đưa bình luận vào blog. Tôi chỉ ghi hướng dẫn kiểu “nếu muốn để lại ý kiến thì hãy liên hệ qua email”. Tôi nghĩ độc giả được chia sẻ bài viết của tôi và vào đọc thì nên tập trung vào bài viết. Tôi cảm thấy việc không có mục bình luận sẽ hữu ích hơn cho độc giả. Dĩ nhiên blog có thể tạo ra những cuộc thảo luận thực sự giá trị, nhưng những cuộc trò chuyện đó sẽ có ảnh hưởng lớn hơn và nhiều người đọc hơn nếu diễn ra trên HN hay các diễn đàn chuyên dụng
Thật đáng tiếc khi cả cá nhân lẫn công ty đều ở trong hoàn cảnh phải chặn bình luận trên blog hay video. Dù có nhận ý kiến qua email thì điều đó cũng giống chuyện YouTube ẩn số dislike và chỉ cho nhà sáng tạo thấy, hoàn toàn khác với cách thảo luận công khai. Tôi thậm chí còn từng thấy nội dung chất lượng thấp hoặc mang tính lừa đảo ngụy tạo cả phần bình luận
Blog là nơi thể hiện bản sắc của tôi, nên tôi nên được quyền tự do tuyển chọn theo ý mình. Ý kiến của người khác nếu cần thì tôi sẽ tự chọn lọc rồi đăng lên. Không cần để hình ảnh của mình bị làm rối bởi lời nói của những người xa lạ ngẫu nhiên. Nếu thật sự muốn đối thoại, ta luôn có thể tranh luận ở một cộng đồng riêng khác
Tôi thích cách của blog Mark Seeman(ploeh): nếu muốn để lại bình luận thì hãy mở PR. Số lượng bình luận sẽ ít đi, nhưng chỉ những độc giả nghiêm túc mới tham gia và cũng chặn bot hiệu quả. Xem blog ploeh
Tôi không đồng ý với quan điểm “tôi muốn người ta đọc bài của tôi mà không bị phần biểu diễn ở ô bình luận làm phiền”. Một nửa niềm vui của Internet là tranh luận về phát ngôn của người khác. Ví dụ, bài blog này có hơn 500 bình luận và chính tác giả cũng vào tranh luận. Tôi tin rằng nếu chặn những bình luận như vậy thì giá trị của blog đó đã giảm đi
Tôi có một side project nhỏ dùng Disqus, cũng từng nhận email thông báo sẽ có quảng cáo, nhưng vì luôn bật uBlock nên tôi còn chẳng để ý quảng cáo thực tế trông thế nào. Xem ảnh chụp màn hình quảng cáo Disqus ngoài đời thực. Những khối quảng cáo khổng lồ nằm cả trên lẫn dưới phần bình luận, cảm giác như lưu lượng bị tận dụng đến cực độ. Có lẽ tôi cũng nên xem qua các lựa chọn thay thế. Tự code cũng được, nhưng tôi không muốn phải xử lý cả spam lẫn moderation... hoặc có khi bỏ luôn phần bình luận. Dự án của tôi: abx.funkybits.fr
Tôi cũng bỏ Disqus. Tôi thấy tiếc phần bình luận, nhưng không muốn để lại những quảng cáo kinh tởm và mã theo dõi của nền tảng trên site cá nhân làm cho vui. Vì vậy tôi chuyển sang giscus(https://giscus.app/), tích hợp với Github Discussions, và vì site của tôi được host trên GH Pages nên phần bình luận dựa trên Github Discussions rất hợp
Tôi từng đặt nhiều kỳ vọng vào Cactus.chat dựa trên matrix. Nhưng đúng kiểu sản phẩm của giao thức matrix, nó có hạn chế là quá thiếu trực quan và khó sử dụng. Bên phía cactus chat chính còn ngừng host file JS, mà các nhà phát triển dường như cũng không coi đó là vấn đề gì. Dù vậy đây vẫn là một hệ thống bình luận rất ngầu và tôi vẫn tiếp tục dùng nó cho blog của mình. Xem cactus.chat
Tôi đang chuyển blog Wordpress của mình sang static site. Trước đây bình luận khá nhiều nên tôi đã nghĩ nhiều về cách giữ lại chức năng bình luận. Thứ tôi tìm được là Comentario(tài liệu chính thức), một công cụ bình luận độc lập dạng self-hosted. Chỉ cần một file thực thi Go và cơ sở dữ liệu SQLite là đủ, và nó còn hỗ trợ sẵn việc migrate bình luận cũ từ Wordpress, nên cực kỳ đơn giản. Nhưng dạo này số bình luận không còn nhiều nữa, nên tôi định chỉ render tĩnh các bình luận cũ trước, còn việc thêm chức năng bình luận mới sẽ để sau. Chỉ riêng việc lưu giữ bình luận cũ thôi cũng đã đủ giá trị về mặt lưu trữ và tư liệu rồi
Tôi đang tự host engine bình luận Comentario cho blog Hugo của mình, nên thấy nó ở đây thật sự rất vui.