2 điểm bởi GN⁺ 2024-08-25 | 1 bình luận | Chia sẻ qua WhatsApp
  • Câu chuyện Reddit chặn tôi vì phát triển ứng dụng

  • Khởi đầu

    • Vào tháng 6 năm 2023, Reddit công bố chính sách giá API mới
    • Trước đây là miễn phí, nhưng giờ họ yêu cầu $12,000 cho mỗi 50 triệu lượt gọi API
    • Đây là một đòn giáng mạnh vào các ứng dụng và bot phi thương mại
  • Geddit

    • Trong lúc tìm hiểu Reddit API, tôi phát hiện rằng chỉ cần thêm .json vào cuối URL là có thể nhận toàn bộ trang dưới dạng JSON
    • Tôi tạo một wrapper Reddit API bằng thư viện JavaScript đơn giản và đặt tên là Geddit
    • Nó cung cấp khả năng sử dụng Reddit ở chế độ chỉ đọc một cách ẩn danh
  • Phát triển ứng dụng

    • Tôi phát hiện ra framework Capacitor và Ionic, cho phép phát triển ứng dụng di động native bằng HTML, CSS và JavaScript
    • Tôi phát triển Geddit thành một ứng dụng Android và chia sẻ nó trên GitHub
    • Ứng dụng được nhắc đến trên Hacker News, Android Police, Reddit, YouTube và nhiều nơi khác
    • Trang GitHub Releases ghi nhận hơn 25k lượt tải xuống
  • Kết

    • Tôi phát hành nhiều phiên bản và bổ sung phần tạo kiểu theo hướng dẫn Material Design
    • Tôi đăng ứng dụng lên cửa hàng F-Droid
    • Tôi nhận được email từ Reddit và đã giải thích rằng đây không phải là sản phẩm thương mại, đồng thời không lạm dụng API
    • Tôi dừng phát triển trong khi chờ phản hồi từ Reddit
  • Tổng kết của GN⁺

    • Bài viết này cho thấy tác động của chính sách giá API mới của Reddit đối với các nhà phát triển ứng dụng phi thương mại
    • Geddit là một dự án mã nguồn mở cho phép sử dụng Reddit ẩn danh bằng cách đi vòng qua Reddit API
    • Dự án đã bị dừng lại do phản ứng từ Reddit, nhưng hiện vẫn còn hoạt động
    • Những dự án khác có tính năng tương tự gồm có Apollo và Juno

1 bình luận

 
GN⁺ 2024-08-25
Ý kiến trên Hacker News
  • Khi còn nhỏ, Reddit là trang tôi thích nhất; tôi thường khám phá những subreddit mới lạ, thú vị rồi đọc bất cứ bài viết và bình luận nào
    Ngày trước trang chủ cũng khá đáng xem, nhưng giờ cảm giác như một bữa tiệc bot kiêm cỗ máy tuyên truyền
    Tôi vẫn dùng, nhưng ít hơn nhiều, và chỉ để đọc các subreddit kỹ thuật ngách chứ không phải để giải trí
    Tôi từ chối dùng app di động chính thức và đã dùng Baconreader cùng Relay trên Android; Relay vẫn sống sót sau thay đổi API bằng mô hình đăng ký
    Tuy vậy nhờ Revanced, giờ có thể vá phiên bản Relay cũ để dùng miễn phí bằng API key của mình

    • Có thể tóm gọn rằng gần như mọi nền tảng mạng xã hội phổ biến hiện nay đều đã biến thành bữa tiệc bot và cỗ máy tuyên truyền
      HN vẫn ổn để học xem điều gì đang diễn ra trong thế giới công nghệ, vì nó đơn giản và lọc được nhiều nội dung kém chất lượng, nhưng số bình luận chỉ phản ứng với tiêu đề đang tăng lên
      Reddit, giống Meta, đã trở nên khó dùng vì trải nghiệm người dùng quá tệ nếu không có tài khoản; còn X thì ít nhất không giả vờ, thay vào đó chặn hẳn không cho dùng
      Tôi nghĩ chúng ta cần nhiều website đơn giản hơn nữa, nhưng không rõ động lực nào sẽ tạo ra cấu trúc như vậy
    • Vấn đề không chỉ ở app, mà bản thân nội dung đã thoái hóa
      Trước đây nhiều subreddit có nội dung đúng với tên gọi, còn giờ 90% là nội dung chính trị Mỹ, ngay cả r/pics cũng không ngoại lệ
      Không chỉ bài viết mà cả bình luận cũng liên tục chen lập trường chính trị vào; kể cả trong các bài không liên quan đến chính trị, nên đọc rất mệt
    • App và website của Reddit ngày càng tệ hơn
      Trông như ví dụ điển hình về việc ban quản lý và các lãnh đạo phá hỏng nền tảng khi cố thể hiện ảnh hưởng của mình và biện minh cho mức lương
      Bot và tuyên truyền theo đúng nghĩa đen ở khắp nơi, nền tảng tiếp tục xấu đi, nhưng phải thừa nhận là nó vẫn gây nghiện ở mức nào đó
      Việc HN nhìn chung là một không gian tránh chính trị khá đáng mừng
      Tôi đã chán cảnh người ta không biết cương lĩnh của ứng viên thị trưởng địa phương, thậm chí không biết thị trưởng là ai hay hội đồng thành phố làm gì, nhưng lại bàn về địa chính trị và chính trị trong nước như một cuộc chiến fandom
      Tôi cho rằng điều này đến từ việc báo truyền thống mang tính địa phương đã chết, và về bản chất bị truyền thông Internet toàn cầu thay thế
      Có vẻ hầu hết người Ý biết về chính trị Mỹ nhiều hơn những gì đang xảy ra trong khu phố của họ, hoàn toàn đảo ngược
    • Khi một công ty bỏ mặc trong thời gian dài, đôi khi còn chủ động đối đầu với những người dùng và nội dung từng tạo nên giá trị độc đáo cho nền tảng, thì kết quả sẽ như thế này
      Đòn kết liễu tất nhiên là sự cố API, nhưng trước đó đã có thể thấy những người thật lòng quan tâm đến các cộng đồng Reddit khác nhau không chịu nổi những trò của công ty hoặc sự thờ ơ của họ, rồi bỏ cuộc và rời đi
      Trong lúc đó Reddit vẫn tiếp tục tăng trưởng, nên nhìn từ góc độ quản trị kiểu bảng tính thì hẳn mọi thứ có vẻ không có vấn đề gì
      Nhưng phần lớn tăng trưởng đó là nội dung ít công sức có thể thấy ở bất kỳ nền tảng xã hội nào, còn nội dung độc đáo từng khiến Reddit đặc biệt thì đã giảm dần cả về lượng lẫn chất trong nhiều năm
    • Nếu muốn nhận tóm tắt hằng ngày/hằng tuần về các subreddit kỹ thuật ngách, có thể dùng https://redditletter.com
      Đây là dịch vụ tôi làm vì chính mình cần
  • Có vẻ đã đến lúc giới thiệu dự án fediverser [0], giúp thoát khỏi Reddit
    Nó cho phép đăng ký vào một instance Lemmy [1] bằng tài khoản Reddit và tự động theo dõi các cộng đồng thay thế tương ứng trên Lemmy
    Danh sách lựa chọn thay thế được crowdsourcing, và bản triển khai chính nằm tại https://fediverser.network
    Nếu muốn fork, hãy chạy instance của riêng mình và quản lý theo cách bạn muốn
    Vài tháng trước tôi nhận được một khoản tài trợ nhỏ từ NLNet và đang làm việc để tích hợp tính năng này vào client Voyager, tức PWA clone Apollo
    Nếu có cá nhân hoặc công ty nào muốn giúp thêm hoặc tài trợ, hãy liên hệ
    [0] https://fediverser.io
    [1] https://portal.alien.top

    • Trên Reddit tôi là kiểu người dùng im lặng, thường chỉ đọc chứ không viết
      Vì có thể tương tác với Lemmy ở một mức độ nào đó thông qua Mastodon hoặc các ứng dụng ActivityPub khác, và ngược lại cũng vậy, tôi hy vọng hai loại mạng xã hội này sẽ giúp nhau phát triển
      Tôi thắc mắc liệu có thể thêm thiết lập tài khoản Fediverse của mình để khi bấm vào cộng đồng thì được chuyển hướng tới máy chủ của mình không
      Ví dụ khi tìm /r/switzerland, bên cạnh switzerland@feddit.ch do Fediverser đề xuất sẽ có một nút để mở trên máy chủ Fediverse của tôi, tương tự nút “Take me home” của web client Mastodon
    • Sẽ thật tuyệt nếu hệ sinh thái Lemmy tái hiện được trải nghiệm thời hoàng kim của Reddit
      Hiện hoạt động vẫn còn thiếu, nhưng tôi định tự tham gia để trở thành một phần của giải pháp
    • Vấn đề của Lemmy là “cộng đồng” tương ứng với subreddit lại bị gắn với một instance cụ thể
      Kết cục là mỗi instance đều có các c/linux, c/funny, c/technology, c/anime riêng biệt, khiến việc sử dụng trở nên rất khó
    • Tôi tự hỏi liệu điều này có giải quyết được vấn đề moderator say quyền lực không
  • Geddit hiện vẫn hoạt động và là một app tuyệt vời; có thể đọc các bài được đánh dấu NSFW ngay cả khi không có tài khoản
    App còn hoạt động khác mà tôi biết là RedReader; có vẻ Reddit để yên không phá vì nó có các tính năng trợ năng nâng cao cho độc giả khuyết tật
    Tuy nhiên không thể truy cập các mục NSFW và sẽ hiện thông báo yêu cầu dùng website
    IP dùng chung đã bị Reddit chặn ở cấp mạng, và duyệt ẩn danh cũng bị vô hiệu hóa
    Có lẽ mỗi ngày tôi thấy khoảng 50 CAPTCHA, và tôi thật sự nhớ web ngày xưa cùng văn bản thuần túy

    • Điều kỳ lạ trong cuộc siết API của Reddit là họ chưa bao giờ thực sự chặn truy cập API không xác thực
      rif is fun cũng vẫn hoạt động, hoặc ít nhất là lần cuối tôi chạy cách đây một hai tháng thì nó vẫn hoạt động ở chế độ chỉ đọc
      Endpoint JSON mà Geddit dùng là API của Reddit và vẫn mở toang, nên không thể gọi là “vượt hạn chế API”
    • Nếu tài khoản đã đăng nhập là moderator, dù chỉ của một subreddit có một người, thì có thể truy cập NSFW trong RedReader
    • Chỉ cần dùng old.reddit.com không được sao? Với tôi thì vẫn chạy tốt
  • Reddit mà tôi biết đến lần đầu vào thời điểm người dùng rời bỏ Digg từng là một nơi rất tuyệt
    Đáng tiếc là nó quá mong manh để giữ được trạng thái tốt đẹp đó, và những màn kịch do sai lầm vận hành lặp đi lặp lại của ban quản trị đã bào mòn thiện chí
    Công ty đáp lại bằng cách ngày càng thù địch hơn với người dùng, và không có dấu hiệu sẽ ngừng vắt kiệt mọi thứ từ họ, dù là thời gian rảnh, tiền bạc hay bất cứ thứ gì khác
    Chúng ta cần một cách công khai để trao đổi với nhau về các chủ đề ngách mà không có những bên trung gian độc hại

  • Thật ngạc nhiên là vẫn còn người phát triển dựa trên Reddit như một nền tảng
    Phụ thuộc vào nền tảng vốn đã rủi ro, mà lại còn là Reddit
    Ưu điểm duy nhất của Reddit chỉ là hiệu ứng mạng gắn với nội dung người dùng tốt; còn lại, kể cả cách họ đối xử với nhà phát triển, gần như đều là bãi rác

    • Nghe như đây không phải một việc kinh doanh mà là dự án cá nhân làm cho vui, và ngay từ đầu đã biết sẽ có ngày nó kết thúc
    • Reddit giờ hầu như không còn tạo ra nội dung người dùng chất lượng nữa
      Họ đã giết con ngỗng đẻ trứng vàng, và việc kinh doanh trứng tất yếu đang sụp đổ
  • Có đoạn nói rằng việc phát hiện ra chỉ cần thêm .json vào cuối URL là có thể nhận toàn bộ trang ở định dạng JSON là một khai sáng lớn; thực ra cách này đến giờ vẫn hoạt động
    Nếu lấy một bài đang nổi hiện nay, đổi https://www.reddit.com/r/funny/comments/1ezq3po/asked_for_my... thành https://www.reddit.com/r/funny/comments/1ezq3po/asked_for_my... thì có thể nhận tất cả bình luận dưới dạng JSON mà không cần xác thực
    Thật thú vị vì có lẽ sẽ rất dễ dùng cách này để tạo một client có UI ổn và né hết quảng cáo

    • Theo tôi biết thì cách đó thực ra không lấy được tất cả bình luận
      Nếu thử liệt kê toàn bộ bình luận của bài viết dựa trên dữ liệu trả về, nó sẽ dừng ở một con số nhỏ hơn rất nhiều so với con số Reddit web UI hiển thị
    • Họ vẫn còn hỗ trợ cả JSONP [1]
      Một ứng dụng React nhỏ [2] đã 9 năm không đụng tới của tôi dùng cách này mà đến giờ vẫn chạy tốt
      [1] https://www.reddit.com/r/programming/comments/cxh3a/we_just_...
      [2] http://insin.github.io/just-dadjokes/
  • Tôi đã bỏ Reddit khi họ làm những việc như thế này, và cuộc sống tốt hơn nhiều
    Reddit thời kỳ đầu có cộng đồng và nội dung tốt, nhưng khi trở nên phổ biến hơn và bắt đầu vắt kiệt doanh thu, giá trị của nó đã giảm
    Việc các dự án mô hình ngôn ngữ lớn ban đầu khởi đầu bằng cách cào dữ liệu Reddit thật buồn cười
    Có lẽ vẫn tốt hơn đống rác ngẫu nhiên của Common Crawl, nhưng thế giới đã chuyển đi nơi khác rồi

    • Tôi tò mò là đã chuyển đi đâu
    • Tôi nghĩ vẫn còn những cộng đồng tốt
      Điều này phụ thuộc rất nhiều vào moderator; ví dụ những nơi như /r/anime thì không có lựa chọn thay thế
  • Nếu là tôi thì tôi thậm chí sẽ không trả lời
    API cần thiết duy nhất là HTTP
    Những người cố khiến người khác tin rằng họ có quyền quyết định user agent nào được dùng chỉ là đang cố kiểm soát nhiều hơn những gì họ sở hữu

  • Thêm .rss vào URL subreddit thì cũng có thể nhận được RSS feed
    RSS vốn được thiết kế để bot, tức chương trình máy tính, đọc; không biết lập trường của Reddit là gì
    Cái này cũng bị xem là “né giới hạn API” sao?

    • Tôi cũng đang dùng như vậy
      Có vẻ phía Reddit đã quên RSS, hoặc không quan tâm vì nó không cung cấp toàn bộ nội dung nên không hữu ích cho app
      Mẹo của tôi là đăng ký feed “phổ biến trong tuần” của từng subreddit; làm vậy thì lượng bài đổ về giảm xuống mức khá dễ quản lý
  • Thao túng câu chuyện đã trở thành một ngành kinh doanh lớn trên toàn cầu
    Vì vậy Reddit muốn buộc người ta trả 30.000 USD mỗi năm cho API, và Twitter/X cũng làm điều tương tự vì cùng lý do