• 0 Posts
  • 16 Comments
Joined 11 months ago
cake
Cake day: December 24th, 2023

help-circle


  • I am quite cheeky for saying this but:

    How is it leaky if the default paradigm of any sequential program is the expectation that it will block? If i write blocking socket code I know my thread is blocked until read() returns.

    If i am writing async socket code I know to wait for poll or whatever it is that is the correct way to wait nowadays. My design would reflect that. The blocking is just moved to another thread effectively and this abstraction is packaged as a Future.

    Asynchronous code does not require the rest of your code to be asynchronous. I can’t say the same for blocking code.

    Well this is just stating a tautology isn’t it?

    Edit:

    It would be a Hurculean effort, and I don’t think it’s a sustainable approach. If you’re writing a higher level library, it would be a lot to ask to check if your dependency’s dependency’s dependency maybe reads from a socket.

    I guess I understand what’s the argument here.

    The author wants a safeguard against libraries that are blocking with compiler checks. I agree it is a nice thing to have. But they could have mentioned that without saying “blocking code is leaky abstraction”.








  • The fediverse already has a mechanism to guard against some corporation coming in and taking the code from a platform and building a commercial product on top of it - defederation. We don’t need GPL to “protect” us from anyone here

    I disagree. The reason GPL works is that legal action (Such as from GNU foundation or EFF) deters bad actors.

    The fediverse already has a mechanism to guard against some corporation coming in and taking the code from a platform and building a commercial product on top of it - defederation.

    Defederation only helps the corporations: When the corporation comes in, overwhelms the fediverse with their huge network of active instances and then defederate, the only ones holding the bag are the open intances. . It’s much easier for a private corporation to get numbers to defederate and come out on top than for open source enthusiasts.

    However, there are also many that want to be recognized (financially) for their work. GPL ignores the latter.

    If you want to be financially recognized for building on top of other people’s open source projects then you should write proprietary code. You shouldn’t be allowed to take open source works freely and call the entirety your own. MIT doesn’t prevent that from happening. GPL prevents that from happening.

    I don’t believe that is the case any more

    It’s actually really important in the long run. There can never be true open source without GPL or similar legal licenses.