2023 Reddit API controversy

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
File:Reddit is killing third-party applications.svg
An image posted on many subreddits as protest during the blackout.[1]

In April 2023, the discussion and news aggregation website Reddit announced its intentions to charge for its application programming interface (API), a feature which had been free since 2008, causing a dispute. The move forced multiple third-party applications to shut down and threatened accessibility applications and moderation tools.

On May 31, Apollo developer Christian Selig stated that Reddit's pricing would force him to cease development on the app. The resulting outcry from the Reddit community ultimately led to a planned protest, from June 12 to 14 in which moderators for the site would make their communities private[2] or would restrict posting. Following the release of an internal memo from Reddit CEO Steve Huffman and defiance from Reddit, some moderators continued their protest.[3]

Alternate forms of protest emerged in the days following the initial blackout. Upon reopening, users of r/pics, r/gifs, and r/aww voted to exclusively post about comedian John Oliver. Multiple subreddits labeled themselves as not safe for work (NSFW), affecting advertisements and resulting in administrators removing the entire moderation team of some subreddits. A Reddit spokesperson said the removals were due to a violation of Reddit's Content Policy[4] and Moderator Code of Conduct,[5] which prohibits moderators from incorrectly marking a community as NSFW. Some moderation teams were eventually reinstated while some others were not.[6] The protest has been compared to a strike. The third iteration of r/place was covered with various messages attacking Huffman, including the final result.

Background

Reddit is a news aggregation and discussion website. Posts are organized into "subreddits", individualized user-created boards moderated by users.[7] In 2008, Reddit introduced its application programming interface (API), granting developers access to the site's corpus of posts and comments. Developers have used Reddit's free API to develop moderation tools and third-party applications; the API has also been used to train large language models (LLMs), including ChatGPT and Google's chatbot Gemini.[8]

Subreddit moderators have leveraged their subreddits en masse in the past to protest decisions that Reddit has made. In the self-described "Great Reddit Blackout of 2015", users publicly disagreed with the company over the termination of Victoria Taylor, a Reddit employee who held Ask Me Anythings (AMAs) and was vital to r/IAmA.[9] In 2021, Reddit hired Aimee Knight, whose father, David Challenor, was convicted earlier that year for raping and torturing a 10-year-old child, resulting in another blackout.[10]

API changes

On April 18, 2023, Reddit announced it would charge for its API service amid a potential initial public offering.[8] Speaking to The New York Times' Mike Isaac, Reddit CEO Steve Huffman said, "The Reddit corpus of data is really valuable, but we don't need to give all of that value to some of the largest companies in the world for free". In spite of those changes, Huffman said that the API would continue to be available for free for developers who create moderation tools or researchers who use Reddit's data for academic purposes.[11] Announcing the changes, Reddit stated that the Reddit data aggregation site Pushshift—whose service was used by LLMs—violated its API rules; the company also said it would restrict access to adult content.[12]

Quoting their explanation of a previous protest that complained about how Reddit made major changes to the site without “any apparent care” to how it would affect moderators, the moderators of r/IAmA stated they would no longer solicit AMAs from notable figures.[13] Because the third-party apps they previously used to moderate their subreddit would no longer work, and criticizing Reddit’s lack of response on making the official app accessible, the moderators of r/Blind stated that they could no longer moderate on mobile.[14]

Impact on third-party applications

On May 31, Christian Selig, the developer of the third-party Reddit client Apollo, said that he was quoted US$12,000 for 50 million requests and could be forced to pay US$20 million per year in order to continue to operate. Selig stated that he could not pay Reddit's pricing and was unsure of how to even charge it. Speaking to The Verge, he posed that Reddit's pricing could present an existential risk for Reddit clients such as Rif Is Fun for Reddit (RIF) and Relay.[15]

On June 8, Selig announced that he would shut down Apollo on June 30. In a Reddit post, he alleged that Huffman told employees that Selig was blackmailing the company out of US$10 million; Selig provided audio recordings between himself and a Reddit employee disproving the claim.[16] His announcement was accompanied by other similar statements, including from RIF developer Andrew Shu, who cited Reddit's "hostile treatment of developers building on their platform" and a high API cost. Other third-party Reddit apps, such as Sync for Reddit and ReddPlanet, have also announced that they will shut down.[17]

Amid concerns that these applications could no longer work, Reddit responded by stating that it would give "non-commercial, accessibility-focused" apps an exception from their pricing terms. A moderator of r/Blind contended that they had received no clarification from Reddit about how it would be defining "accessibility-focused apps". Several third-party applications with extensive accessibility features were later confirmed to be given an exemption as "non-commercial accessibility-focused" applications.[18] RedReader and Dystopia have received exemptions.[19] Additionally, Huffman provided an exemption for "third-party moderation [tools]"; former Ars Technica writer and moderator of a ZFS subreddit Jim Salter wrote to the publication that he does not know of "anyone at all" using such a client.[20]

On June 30, Reddit's proposed changes went into effect, shutting down some third-party Reddit clients, including Apollo, Sync, BaconReader[21] and RIF.[22] In spite of this, Narwhal will remain available without ads,[23] while Relay and Now for Reddit turned to a subscription model to remain profitable.[24]

Reddit's reactions

Huffman addressed several of the announced changes to the API service in an Ask Me Anything (AMA). Concerning the changes for third-party apps, he said Reddit could "no longer subsidize commercial entities that require large-scale data use." He went on to say that Reddit would work to make its mobile app more accessible.[25] Although Huffman claimed Reddit was actively in communication with many third-party application developers to aid in their continued operation, some developers commented that Reddit had not responded to them in months.[26]

Tim Rathschmidt, a spokesperson for Reddit, told The New York Times that Reddit was in contact with communities to "clarify any confusion around our Data API Terms, platform-wide policies, community support resources, and timing for new moderator tools." He added that Reddit "needs to be fairly paid to continue supporting high-usage third-party apps", noting that the new API pricing "is based on usage levels that we measure to be comparable to our own costs".[27] Rathschmidt also stated that Reddit's hosting costs were in the multi-millions.[28]

Subreddit blackout

In response to Reddit's API changes, multiple subreddits announced that they would be shutting down from June 12 to June 14.[29] Huffman's AMA resulted in some subreddits, including r/polls, going private ahead of the June 12 protest.[30] The moderators of r/iPhone and r/Music decided to go private indefinitely beginning on June 12.[31] Some communities proposed moving to the messaging service Discord or the Lemmy network of instances in the fediverse.[32] Efforts to promote fediverse-based alternatives were marred with paranoia after Reddit banned users and subreddits related to Lemmy and Kbin.[33]

On June 12, over 7,000 subreddits went private, including Reddit's largest subreddit, r/funny. Other large subreddits that chose to go private include r/aww, r/gaming, and r/science. Some subreddits, such as r/NintendoSwitch, r/Frugal, and r/StarWars, opted to restrict new posts. r/DankMemes only allowed users to post memes relating to the API changes.[34] At approximately 10:58 a.m. Eastern Time, Reddit was affected by a major outage caused by "expected stability issues" due to the large number of subreddits going private. The outage was resolved hours later.[35] An estimated 8,500 subreddits had gone private or restricted by June 13.[36] Subreddits continued to protest through June 15, while subreddits like r/pics and r/art became restricted.[31] On June 13, The Verge published an internal memo in which Huffman told employees that the protest "will pass".[37] During the initial protests, some subreddits considered staying private indefinitely, including r/aww, r/music and r/videos, which continued to stay private. r/nba tweeted that it would stay private "indefinitely"; the decision to go private coincided with the final game of the 2023 NBA Finals.[38] Similarly, r/philadelphia went private following the collapse of a portion of Interstate 95 in Pennsylvania, leading to angry comments from users and requests to reopen.[39] Huffman's internal memo became the primary motivation for more than 5,000 subreddits to continue their blackout indefinitely.[40][3]

On June 15, in the first interview since the blackout began, Huffman told NPR that a "small group" is "very upset". He reiterated that the blackout did not have effects on revenue but "created a fair amount of trouble".[41] Speaking to NBC News, he compared moderators to a landed gentry and said that he would be looking into implementing a democratic process to let users vote moderators out.[42] On June 16, The Verge obtained a note Reddit sent to moderators of subreddits that were still private with offers to help remove moderators "hindering reopening", telling the publication that they wanted "mods who want to mod to be able to do so." A Reddit administrator commented that if the moderators' decision to keep the subreddit private was unanimous, Reddit would replace them with a new team of moderators. Reddit spokesperson Rathschmidt later confirmed that moderators may be in violation of Reddit's code of conduct for keeping communities private. Fearing they would be replaced, many moderation teams, such as r/Apple's, reopened their subreddits.[43] According to the Associated Press, around 4,000 subreddits were still private by June 16.[44]

Speaking to Axios' Kerry Flynn, Reddit COO Jen Wong said that Reddit "respects [users's] right to protest".[45] On June 22, Reddit began pressuring subreddits that continued their blackout to reopen, according to a message released publicly by an r/DIY moderator. Out of fear that Reddit may install new moderators, r/DIY reopened.[46] r/TranscribersOfReddit, a subreddit that provides alternate text for images posted to Reddit, announced it would shut down on June 30.[47]

Other activities

Alternate forms of protest

File:John Oliver November 2016.jpg
Users of r/pics and r/gifs exclusively posted about comedian John Oliver upon reopening

On June 17, r/pics and r/gifs reopened with a poll on whether their respective subreddits should be used to exclusively post about comedian John Oliver. Oliver tweeted his approval and provided pictures for users of r/pics to use. r/aww opened its subreddit a day later, only allowing "adorable content featuring John Oliver, Chiijohn, and anything else that closely resembles them".[48] Similarly, r/iPhone began posting images of Apple CEO Tim Cook.[49] r/horny became a subreddit for posting about Christianity and Minecraft (2009).[50] The subreddits r/malefashionadvice and r/femalefashionadvice became subreddits for fashion advice relating to the 1700s, with one post on the latter referencing the character of Elizabeth Bennet from Pride and Prejudice (1813).[51] r/steam, a subreddit for the video game distribution service Steam, began posting about literal steam.[52]

As a form of protest, multiple subreddits began allowing not safe for work (NSFW) content, resulting in an influx of pornography onto some subreddits, such as r/interestingasfuck. The NSFW label prevents companies from running advertisements on these subreddits.[53] On June 20, Reddit began removing moderators who labeled their communities as NSFW. The move, in accordance with Reddit's policies, left r/MildlyInteresting, r/interestingasfuck, r/TIHI, and r/ShittyLifeProTips—subreddits with millions of subscribers—unmoderated.[54] Conversely, r/PoliticalHumor gave all users moderator permissions, referring to Huffman's "landed gentry" comment.[55] Moderators of r/scams have begun approving content at a deliberately slow pace; in some circumstances, up to two weeks.[49] BotDefense, a crowd-sourced community effort to remove bots on Reddit, left the site in July.[56]

File:Fuck spez.png
Users used r/place to voice their discontent with Reddit CEO Steve Huffman

On July 20, Reddit began its third iteration of r/place, an interactive canvas in which users can only place one pixel every 5 minutes, announcing it one day earlier. Normally, r/places takes place every five years since April 1st 2017. Users organized to create a subreddit to protest the API on the canvas,[57] and numerous messages of "Fuck spez"—referring to Huffman's Reddit username—were written. Additionally, German users wrote, "spez ist ein Hurensohn" (spez is a son of a bitch).[58] The canvas was expanded two days later, leading to more messages critical of Huffman, although they were largely overwritten in favor of art.[59] On the final day of r/place, users wrote, "Fuck Spez", in all caps, comprising most of the canvas.[60]

On July 21, participants on r/place, collectively generated a visual representation featuring a guillotine. This depiction included the likeness of the Reddit mascot, Snoo, positioned atop the guillotine's block, with the name "spez" inscribed on it.[61]

Data hack

The ransomware group BlackCat threatened to release 80 gigabytes of data if Reddit does not pay US$4.5 million and undo the API changes.[62] Reddit had previously confirmed a security incident that took place in February which compromised "internal documents, code, and some internal business systems." A spokesperson confirmed that BlackCat is related to that February incident.[63]

Subreddit takeovers

On July 21, Reddit took over the subreddit r/malefashionadvice through an account named "ModCodeofConduct" amid pushes for the subreddit's community to move to Discord and Substack; ModCodeofConduct is the sole moderator of several other subreddits, including r/ShittyLifeProTips, r/AccidentalRenaissance, and r/oldbabies.[64] Through the ModCodeofConduct account, Reddit administrators sought new moderators for these subreddits. A moderator for r/AccidentalRenaissance told Ars Technica that new moderators would find the task challenging, given that they would be subject to "the worst photos they could imagine", including child pornography, dying children and animals, and human feces. The moderator described how previous moderators of r/AccidentalRenaissance had "art history backgrounds, formal education, and an instinctual grasp of what makes a photo 'Renaissance.'", qualifications disregarded by Reddit; they further noted that the subreddit's contents "now [...] are simply 'Not Renaissance.'", and criticized Reddit's choice of moderators.[65]

Reactions

Reddit co-founder Alexis Ohanian tweeted, "Online community-building is more like IRL community-building than people realize", in an apparent reference to the backlash to Reddit's API changes.[66]

On June 29, Mojang Studios, the developers of Minecraft, would cease posting game updates and official content onto Reddit, citing moderation and rule changes. Though owned by Microsoft under its Xbox division, the policy implemented by Minecraft developers did not extend to all Microsoft and Xbox brands. A Mojang representative noted that the company would reconsider if Reddit's API rules change.[67]

Analysis

Columnist Megan McArdle compared Reddit to the nonprofit organization Goodwill and said that the site's moderators have "essentially gone on strike".[68] The Verge reporter Jay Peters noted that the quality of Google Search results decreased, citing the lack of resources for The Legend of Zelda: Tears of the Kingdom (2023), among other grievances.[69] John Herrman of Intelligencer made a similar comment.[70] Casey Newton drew attention to a comment Huffman made praising Elon Musk for his tenure as Twitter's CEO;[71] among Musk's decisions as CEO was to remove Twitter's free tier for its API.[72] In an all-hands meeting, Google senior vice president Prabhakar Raghavan admitted users were "not quite happy" with Google's search results after the blackout.[73]

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. 3.0 3.1 Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. 8.0 8.1 Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found.
  18. Lua error in package.lua at line 80: module 'strict' not found.
  19. Lua error in package.lua at line 80: module 'strict' not found.
  20. Lua error in package.lua at line 80: module 'strict' not found.
  21. Lua error in package.lua at line 80: module 'strict' not found.
  22. Lua error in package.lua at line 80: module 'strict' not found.
  23. Lua error in package.lua at line 80: module 'strict' not found.
  24. Lua error in package.lua at line 80: module 'strict' not found.
  25. Lua error in package.lua at line 80: module 'strict' not found.
  26. Lua error in package.lua at line 80: module 'strict' not found.
  27. Lua error in package.lua at line 80: module 'strict' not found.
  28. Lua error in package.lua at line 80: module 'strict' not found.
  29. Lua error in package.lua at line 80: module 'strict' not found.
  30. Lua error in package.lua at line 80: module 'strict' not found.
  31. 31.0 31.1 Lua error in package.lua at line 80: module 'strict' not found.
  32. Lua error in package.lua at line 80: module 'strict' not found.
  33. Lua error in package.lua at line 80: module 'strict' not found.
  34. Lua error in package.lua at line 80: module 'strict' not found.
  35. Lua error in package.lua at line 80: module 'strict' not found.
  36. Lua error in package.lua at line 80: module 'strict' not found.
  37. Lua error in package.lua at line 80: module 'strict' not found.
  38. Lua error in package.lua at line 80: module 'strict' not found.
  39. Lua error in package.lua at line 80: module 'strict' not found.
  40. Lua error in package.lua at line 80: module 'strict' not found.
  41. Lua error in package.lua at line 80: module 'strict' not found.
  42. Lua error in package.lua at line 80: module 'strict' not found.
  43. Lua error in package.lua at line 80: module 'strict' not found.
  44. Lua error in package.lua at line 80: module 'strict' not found.
  45. Lua error in package.lua at line 80: module 'strict' not found.
  46. Lua error in package.lua at line 80: module 'strict' not found.
  47. Lua error in package.lua at line 80: module 'strict' not found.
  48. Lua error in package.lua at line 80: module 'strict' not found.
  49. 49.0 49.1 Lua error in package.lua at line 80: module 'strict' not found.
  50. Lua error in package.lua at line 80: module 'strict' not found.
  51. Lua error in package.lua at line 80: module 'strict' not found.
  52. Lua error in package.lua at line 80: module 'strict' not found.
  53. Lua error in package.lua at line 80: module 'strict' not found.
  54. Lua error in package.lua at line 80: module 'strict' not found.
  55. Lua error in package.lua at line 80: module 'strict' not found.
  56. Lua error in package.lua at line 80: module 'strict' not found.
  57. Lua error in package.lua at line 80: module 'strict' not found.
  58. Lua error in package.lua at line 80: module 'strict' not found.
  59. Lua error in package.lua at line 80: module 'strict' not found.
  60. Lua error in package.lua at line 80: module 'strict' not found.
  61. Lua error in package.lua at line 80: module 'strict' not found.
  62. Lua error in package.lua at line 80: module 'strict' not found.
  63. Lua error in package.lua at line 80: module 'strict' not found.
  64. Lua error in package.lua at line 80: module 'strict' not found.
  65. Lua error in package.lua at line 80: module 'strict' not found.
  66. Lua error in package.lua at line 80: module 'strict' not found.
  67. Lua error in package.lua at line 80: module 'strict' not found.
  68. Lua error in package.lua at line 80: module 'strict' not found.
  69. Lua error in package.lua at line 80: module 'strict' not found.
  70. Lua error in package.lua at line 80: module 'strict' not found.
  71. Lua error in package.lua at line 80: module 'strict' not found.
  72. Lua error in package.lua at line 80: module 'strict' not found.
  73. Lua error in package.lua at line 80: module 'strict' not found.

Further reading

  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.