• 2 Posts
  • 205 Comments
Joined 3 months ago
cake
Cake day: April 13th, 2024

help-circle
  • Yours is a little bit easier to read, but my main problems remain the same. Here’s some initial comments looking at your swagger link from the perspective of a user who is brand new to the lemmy API (and doesn’t use Javascript):

    • I can’t tell what the general flow of the API usage in general is. Am I supposed to login/authorize somehow first? Some common examples, especially in at least one programming language (whether that’s curl or python or whatever) I think would go a long way to help people understand what they’re supposed to do.

    • How do I know if I need to authorize for a particular endpoint?

    • What is the entire URL for any given endpoint? It’s never really explained clearly.

    • What is this “servers” dropdown? What’s the difference between those?

    • Endpoint descriptions are often unhelpful. /user says “Get the details for a person.” It doesn’t tell me this is actually how I’m supposed to find their comments or posts. Nothing tells us this.

    • We have to guess what endpoint we might need for a lot of things. Example: /post/like is also for dislikes, but it doesn’t tell you that. It also never tells you HOW to like or dislike anything, the valid values of score do not appear to be documented. And you’re left to assume that’s the right field to even use for it.

    • What is the content type of the request supposed to be? JSON is never mentioned anywhere.

    • What are these named “parameters”? Is that a query parameter? Why does it say “object” and “(query)”? Does this parameter go in the request body instead? /user shows a parameter called “GetPersonDetails” except in reality this name is (I guess) supposed to be completely ignored, because no part of the request actually uses the string “GetPersonDetails”.

    • Schema is missing for many endpoints, like the request part of /user.

    • What are all these fields under “GetPersonDetails”? Are they all required? Only some? It doesn’t say anything about it.

    • Many of the possible error codes are undocumented.

    There’s probably more but that’s the main stuff I think.



















  • Open source is the very worst thing currently going on because it is so incredibly exploitative, it’s far more exploitative than any actual company is of the workers who work at the company.

    Even the people who are getting paid in open source are getting massively underpaid to do it compared to how much the people who are using their code are making, it’s nothing compared to the power that is accreted by the people who have co-opted that work thanks to the open source model. And then mark zuckerberg gets to define how the internet works despite having paid for almost none of the software that his company actually needed to make that work.

    It’s like feudalism or serfdom, these people did the work and got nothing for it. It’s like you took the worst aspects of capitalism for workers and the worst aspects of socialism for workers and put them together, that’s open source. You get no power and you get no money.

    It’s exploitative whether the people chose to be exploited, just because someone chooses to let you exploit them does not meant that you didn’t exploit them. And for the record that’s how most exploitation works; convincing people to do something that turns out to be very bad for them and very good for you, and that’s exactly what the open source movement has turned out to be.

    I really don’t see the “we post stuff on github under a gpl2 or lgpl or apache or mit license”, all that is to me now is just exploitation. You can say that there’s solutions but until someone demonstrates that those solutions work, it’s the standard “real communism has never been tried” argument. AGPL is the only thing that I’ve seen so far that’s an attempt to fix these fundamentally unfair compensation practices.