maegul (he/they)

A little bit of neuroscience and a little bit of computing

  • 107 Posts
  • 2.11K Comments
Joined 2 years ago
cake
Cake day: January 19th, 2023

help-circle
  • The interesting dynamic is that it seems like they’re making things that could lay lots of foundations for a lot of independent decentralised stuff, but people and devs need to actually pick that up and make it happen, and many users just want something that works.

    So somewhat like lemmy-world and mastodon-social, they get stuck holding a centralised service whose success is holding hostage the decentralised system/protocol they actually care about.

    For me, the thing I’ve noticed and that bothers me is that much of the focus and excitement and interest from the independent devs working in the space don’t seem too interested in the purely decentralised and fail-safe-rebuilding aspects of the system. Instead, they’re quite happy to build on top of a centralised service.

    Which is fine but ignores what to me is the greatest promise of their system: to combine centralised and decentralised components into a single network. EG, AFAICT, running ActivityPub or similar within ATProto is plausible. But the independent devs don’t seem to be on that wavelength.








  • Absolutely. It’s a shit show.

    And interestingly, making the general public more aware of this is likely quite important. Because 1, they have very idealistic views of what research is like, and 2, just about everyone is entering research blind to the realities. It’s a situation that needs some sunlight and rethinking.

    IMO, a root cause is that the heroic genius researcher ideal at the base of the system’s design basically doesn’t really exist any more. Things are just too big and complex now for a single person to be that important. Dismantle that ideal and redesign from scratch.



  • It’s not too hard. There are a bunch of different platforms one might experiment with as well as instances. Some will use multiple accounts for different needs or interests. On lemmy, multi accounts are useful for have different feeds, for example. I probably have 7-10. I’ve probably forgotten about a few of them. If you’re curious, it happens.




  • It’s definitely an interesting and relevant idea I think! A major flaw here is the lack of ability for communities to establish themselves as discrete spaces desperate from the doomscrolling crowd.

    A problem with the fediverse on the whole IMO, as community building is IMO what it should be focusing on.

    Generally decentralisation makes things like this difficult, AFAIU. Lemmy has things like private and local only communities in the works that will get you there. But then discovery becomes a problem which probably requires some additional features too.




  • The catch is that the whole system is effectively centralised on BlueSky backend services (basically the relay). So while the protocol may be standardised and open, and interpreted with decentralised components, they’ll control the core service. Which means they can unilaterally decide to introduce profitable things like ads and charging for features.

    The promise of the system though is that it provides for various levels of independence that can all connect to each other, so people with different needs and capabilities can all find their spot in the ecosystem. Whether that happens is a big question. Generally I’d say I’m optimistic about the ideas and architecture, but unsure about whether the community around it will get it to what I think it should be.


  • Suspicion is totally fair re BlueSky IMO. The system they’ve design seems to me (and others AFAICT) to have the potential to include interconnected components or sections with various degrees of independence.

    The elephant in the room, which I point out on BlueSky whenever I can, is that no one seems to really be trying to build the hard parts of that out. Which is a shame because it could be interesting.

    EG, there’s a chance that a hybridised system running both BlueSky’s protocol and the fediverse’s could be viable and quite useful. Add to that the integration with some E2EE, and it finally feels like an actual attempt at building something new for the modern internet.

    Fortunately there is some noise around these ideas, so hopefully their system can outlast their finances. But yea, a rug pull is definitely not out of the question.



  • I think for python tooling the choice is Python Vs Rust. C isn’t in the mix either.

    That seems fair. Though I recall Mumba making headway (at least in the anaconda / conda space) and it is a C++ project. AFAIU, their underlying internals have now been folded into conda, which would mean a fairly popular, and arguably successful portion of the tooling ecosystem (I tended to reach for conda and recommend the same to many) is reliant on a C++ foundation.

    On the whole, I imagine this is a good thing as the biggest issue Conda had was performance when trying to resolve packaging environments and versions.

    So, including C++ as part of C (which is probably fair for the purposes of this discussion), I don’t think C is out of the mix either. Should there ever be a push to fold something into core python, using C would probably come back into the picture too.


    I think there’s a survivor bias going on here.

    Your survivorship bias point on rust makes a lot of sense … there’s certainly some push back against its evangelists and that’s fair (as someone who’s learnt the language a bit). Though I think it’s fair to point out the success stories are “survivorship” stories worth noting.

    But it seems we probably come back to whether fundamental tooling should be done in python or a more performant stack. And I think we just disagree here. I want the tooling to “just work” and work well and personally don’t hold nearly as much interest in being able to contribute to it as I do any other python project. If that can be done in python, all the better, but I’m personally not convinced (my experience with conda, while it was a pure python project, is informative for me here)

    Personally I think python should have paid more attention to both built-in tooling (again, I think it’s important to point out how much of this is simply Guido’s “I don’t want to do that” that probably wouldn’t be tolerated these days) and built-in options for more performance (by maybe taking pypy and JIT-ing more seriously).

    Maybe the GIL-less work and more performant python tricks coming down the line will make your argument more compelling to people like me.

    (Thanks very much for the chat BTW, I personally appreciate your perspective as much as I’m arguing with you)


  • Yep! And likely the lesson to take from it for Python in general. The general utility of a singular foundation that the rest of the ecosystem can be built out from.

    Even that it’s compiled is kinda beside the point. There could have been a single Python tool written in Python and bundled with its own Python runtime. But Guido never wanted to do projects and package management and so it’s been left as the one battery definitely not included.


  • I feel like this is conflating two questions now.

    1. Whether to use a non-Python language where appropriate
    2. Whether to use rust over C, which is already heavily used and fundamental in the ecosystem (I think we can put cython and Fortran to the side)

    I think these questions are mostly independent.

    If the chief criterion is accessibility to the Python user base, issue 2 isn’t a problem IMO. One could argue, as does @eraclito@feddit.it in this thread, that in fact rust provides benefits along these lines that C doesn’t. Rust being influenced by Python adds weight to that. Either way though, people like and want to program in rust and have provided marked success so far in the Python ecosystem (as eraclito cites). It’s still a new-ish language, but if the core issue is C v Rust, it’s probably best to address it on those terms.