The official reddit app uses a seperate, undocumented graphql based api rather than the public REST one they allow for public use. I suspect someone is/will be already using it to emulate the 'old' API soon enough.
Better to stay logged out if you’re gonna browse with an unauthorised client.
Besides, the client could keep a list of subreddits you like anyway, and retrieve posts from those instead of from the default front page.
Worst reddit can do then is to IP ban you bat at least they won’t be deleting anything that you’ve been spending time to write.
Even factoring in the risk of a rug pull, it makes more sense to use an API than spend ongoing constant effort reversing a first-party one that will keep breaking on your users randomly and need urgent fixes all the time.
I mean, if you have a public API, it makes sense, engineering-wise, to build your internal API on top of that, doesn't it? But apparently not everyone does it like this.
So, for example, if those clients have only a fraction of the features of your internal clients, it may make sense to relegate them to a separate, stable backend service while you work on your internal one. But if there's just a couple of internal methods and everything else has to be public, it probably makes sense to have a single backend.
There's a lot of in-between cases, and that's where an engineering architect shows his skills in choosing the right approach.
Old reddit for example uses the reddit API essentially directly. now with new reddit, there's been a split, and it looks like from my count that reddit is currently supporting like 7 different APIs internally, parts of them all used in various different places. The reddit API is pretty functional and most of what anyone would ever really want to do was already supported in the API (and therefore available basically with few current restrictions).
Few of the actual undocumented/internal APIs on reddit are all that interesting.
[1]: https://www.reddit.com/r/redditdev/comments/14nbw6g/updated_...
With the necessary "not a lawyer" disclaimer in place: in the case of Reddit's APIs (or anyone else's), AFAIK the issue wouldn't a trademark or patent issue, per se -- an API can't be patented (or trademarked), and it's debatable whether they can be copyrighted. (A case between Oracle and Google involving Java's APIs made it all the way to the Supreme Court, which kind of punted on making a definitive legal decision as to the copyrightability of APIs.) But, making unauthorized use of them could almost certainly be classified as a breach of contract, e.g., a violation of the end-user license.
The fact that without the associated secret, an API key is useless.
Android (at least with the standard Google services) seems to provide an implentation of this through the play integrety API [0]. I'm not familiar with the internals of that system, but I have worked on this type of system for a much more constrained use-case.
If I were designing this, my first pass at a napkin design would be:
* Devices running the app must have a TPM. This TPM is loaded with a private key that is intended to remain highly secret. Corresponding public key is well known.
* During boot, "everything" is measured into the TPM's Platform Configuration Registers (PCRs). To measure something into a PCR, you update the PCR value as: PCR[n] = hash(PCR[n] || measured_value).
* The TPM does not (in this use-case) have a notion of what the "correct" values of the PCRs are. However, it can use the secret key to sign the PCRs values. Forging this signature would require either breaking the underlying crypto, hacking the TPM, or learning the secret key contained within the TPM. To prevent replay attacks, the TPM includes a nonce sent by the server.
* The device sends the server a list of what firmware/kernel/OS it is running (everything that was measured into the TPM). The server determines what the PCR values for the claimed configuration should be, and validates the signature that the TPM generated
* You now know that the OS is "trusted", and can now trust the OS to verify that the app is signed by a given public certificate and is running in a sufficiently secure environment.
Redirect_uri helps with webapps that run on a standard web browser. However, if the client is not a web app (or, is running under a properly modified web browser), it can simply ignore the redirect.
Oauth2 does contemplate a client_secret field for client authentication. However, such a field is useless on public clients.
The oath2 spec is very explicit that client_id can not be used as a means of authenticating clients.
edit: looking at the list of cases, and knowing that the US legal system relies on precedents, it feels like using an online service's private API is allowed under this act.
If someone uploads their AWS token to Github it isn't legal to use it even if it was made public.
I'm pretty sure these kinds of services where you can incur significant charges by using the API have a stipulation in their ToS that any API calls performed with your key are considered to be made on your behalf. Kinda like banks do with online banking, "everything done online under your login is considered as if you've done it at a branch with paper forms". Regardless of laws it's still your own responsibility to protect your credentials.
Isn't it do similar operations to extract videos from websites?
Crony capitalism and big tech monopoly is what happened. These companies achieved success by doing innovations once but today they no longer want to work the hard route of innovating things. Instead, they're using the "legal" and convoluted route that involves closing the source code or build processes of everything, acquiring the small competitor who tries innovation and shut it down, encouraging walled gardens and non-standard APIs everywhere, etc.
When ICQ was huge, it wasn't your average joe sixpack using the internet. Now that it is, there's a lot of money to be made.
If you're asking about the moderators, they were forced to either reopen or be un-modded. They did what they could.
Lemmy is not a replacement. A totally different experience for every sub-Reddit is not going to work.
Reddit was pitched as The Front Page of the Internet. Where is the front page of Lemmy?
> Lemmy is not a replacement. A totally different experience for every sub-Reddit is not going to work.
Not sure what you mean.
Where? By who? For what platform? Show me?
The issue with replacing Reddit is that you need millions of users to crowd-source all that information that has gone into every minor sub-reddit. I don't think it's sub-reddits like /r/askreddit, /r/pics or /r/politics that people would be missing in a Reddit clone. It's all the small specialized sub-reddit, where you could get help fixing a lawnmower or debate the finer points of the various aspect ratios of national flags.
For instance you mention "debate the finer points of various aspect ratios". Current social networks are not very good for actual debate, in fact the genesis of Sqwok can be traced to a live debate in r/worldnews where I grew tired of refreshing the page. Many of the alternatives popping up for both Twitter & Reddit are cloning the underlying data model and user interface without offering much more.
Sqwok is different in that it couples some of the familiar aspects of existing social networking with high quality instant messaging, designed from the ground up for live public debate and discussion in a new format. Still has a long way to go but I believe there's a place for it.
If we had spent the time building better NNTP clients, rather than trying to integrate with the API of single company, I think we could have had the possibility at least of having true communities.
Now, if you had said "if we had spent the time building a better NNTP protocol and servers", I would have agreed. In the end, that's basically what the fediverse is.
I feel like it would have been easier to fix NNTP. It had at least a clear focus.
HN is where I’ll be for my daily news stuff, and I’m actively looking for communities and forums around my more niche interests and hobbies.
Lemmy has grown exponentially in the last few months and I've found it to be an adequate replacement after learning the basics.
I was skeptical about reddit in 2008 and hesitated to leave digg.
Please don't use only your tech and stats goggles to analyze the situation, understand that we are talking about people with a vast range of experiences and wants and needs.
The fact that they're installing an alternative app kinda makes them super-users of Reddit anyway, so asking them to generate their own personal API key shouldn't be too unreasonable.
It just seems strange that the app would choose to completely shut down instead.
Assuming you are on android since you patched the app. Did you manage to do it without data loss? It's annoying to turn on httpcanary every time I launch rif.
It would lead to a cat and mouse game and Christian is not interested in that. Why should he bend over backwards to improve user experience of a platform that is working actively against him?
Do you mean the old one? That's probably also getting scrapped in the near future, I'm guessing.
MSN messenger quickly took over after it was released in '99.
I remember hearing at the time that ICQ remained popular in Russia and other Eastern European countries for much longer than it did in Western Europe though.
Some developers got free passes. I know of some. Total level playing field.
The thing with centralized social services though is that network effects exist. You can't just switch from Reddit to Lemmy or Kbin the same way you can switch between Windows and Linux.
When that app shut down, it just felt natural to leave Reddit behind.
I opened an account on Twitter instead, having never used it before.
The leadership of Reddit always seem to have been hated by the users, but I feel this might be the final straw that sends it the way of Digg etc.
It feels a whole lot like people who threaten to move to Canada every 4 years.
I can understand the iOS apps, the App Store hegemony does kinda force this and there were cases of Apple removing apps that interact with an online service without that service's permission. But web, desktop and Android apps have no one to force them to comply with these kinds of rules, yet these are also shutting down.
It wasn't always like this. 15 years ago, when ICQ was huge, everything with a screen, keyboard, a network interface, and a way to run arbitrary code had an unofficial ICQ client for it. Most people haven't ever seen the official clients. That's just one example. What happened?