• 1 Post
  • 36 Comments
Joined 1 year ago
cake
Cake day: June 9th, 2023

help-circle
  • while i don’t have any specific opinions about this that other people haven’t addressed, i just want to flag up something;

    How this could be enforced? No voting from the All and/or Local feed. Seems easy and straight forward.

    this seems unenforcable. as in, you can’t really tell where someone discovered a post from. yeah you can just remove the buttons from those views clientside and it’ll probably work for the majority of cases, but alternate clients or modifications to lemmy-ui can simply put the buttons back in (or in cases of unmaintained or differently opinionated clients, just not remove the buttons at all). the backend can’t really differentiate which view a vote comes from. federation especially can’t differentiate which view a vote comes from.






  • (talking about microblog fedi here, Lemmy/threadiverse is it’s own thing)

    don’t do hashtags. hashtags (especially common ones like #memes) are overrun by repost bots and low quality garbage.

    the trick is to be on a small-to-medium instance you vibe with (1k active users seems to be the sweet spot. anything larger than 2k I’d avoid. do NOT join any flagship instances like mastodon.social), follow fun people from your local timeline, and see who they boost. and follow up the boost chain until your timeline is sufficiently fun.






  • One of the reasons I use containers instead of installing things directly is that i can completely uninstall a service by deleting a single directory (that contains a compose.yml and any necessary volumes) and running a docker/podman system prune -a

    or that i can back up everything by backing up a single “containers” dir, which i could have on a subvolume and snapshot if i wanted to

    systemd/quadlet on the other hand makes me throw files in /etc (which is where you’re supposed to put them, but ends up resulting in them being tangled together with base system configuration often partially managed by the package manager)

    The Solution™ to this is configuration management like ansible or whatnot, which needlessly overcomplicates things for the use cases i need (though they’re still useful for getting a base system “container ready” wrt ssh hardening and such)

    tldr: i want my base system to be separated from my services, and systemd integration is the exact wrong tool for this job


  • I imagine the most “ideal” outcome would be “whatever link the default webui shows as the fediverse link (the colorful icon on all posts / comments)”, as that’s the “canonical” link (technically, the ActivityPub ID, which is I think required to be a link as per the spec) of that specific post or comment.

    It’d be the most accurate in terms of visibility (could be deleted by OP and the delete might not reach your instance), latest edits, vote counts, and replies for that specific thing, that said it’s definitely not as convenient as just copying the link in your URL bar and pasting it to wherever.

    Also depending on the exact software running on an instance, that link may not point to a human readable page, but that’s a pretty rare edge case that even the most incomplete real life implementations I’m aware of handle reasonably well (even if it ends up doing a redirect)





  • A long-running web thing like Lemmy doesn’t need the processing benefits of native compilation, and can avoid memory vulnerabilities with a garbage collector. Most things it does are IO bound (receive data from other servers, send data to other servers, occasionally render some HTML, interact with a database…) so you’re really not benefiting from anything specific to Rust, but you are losing a significant amount of developer effort into things like working with the borrow checker or the infamously long compilation times that could instead go into implementing functionality.

    You could make something just as performant as Lemmy is today with Python or JS (JS would particularly work well given the prevalance of JITs).


  • I’d been eyeing azorius.net lately considering it’s much smaller/younger than Lemmy and already federates (and might make an interesting foundation to build something out of before it grows too large, hint hint to anyone who actually knows Go) but I don’t have the Go experience to actually go through its code.

    I’ve been experimenting with ActivityPub on my own time and I am kinda starting to understand why all AP projects end up being large messes. It’s spaghetti code all the way across the fedi.


  • Because now you have to maintain that fork. If it was as simple as pressing the little fork button on GitHub and importing a few PRs in than there’d already be several forks right now.

    The Lemmy codebase is a beast that’s evolved over several years. Not everybody can just jump in and throw anything they want just because of how complex a system it is internally. (I learned that the hard way.)

    Across the fediverse all the major successful forks have a motivating factor. Glitch social is maintained by the only other paid developer hired to work on Mastodon and acts as an unstable branch / “feature fast track” of sorts, Akkoma exists because upstream Pleroma has sided with the freeze-peach crowd too many times to count. Firefish and Iceshrimp had a whole… thing… (too much drama to explain) (oh and upstream Misskey is way too Japanese for western developers to contribute, including commit messages and code comments) What’s the motivation to start a Lemmy fork? And what’s the motivation to keep maintaining it?

    I really want to see a Lemmy fork. Particularly one that attempts to prioritize instances as their own individual communities (rather than the Redditesque “instances as free horizontal scaling” view of the fedi a lot of people seem to have). Hell I might end up attempting to contribute a quality of life feature or two of my own if a viable fork were to exist. Yet there isn’t any.

    So, I guess what I’m trying to say is, the only reason no fork exists is because nobody has stepped up to the challenge.

    EDIT: And of course with ActivityPub in the mix you also have to consider how it will affect federation with other instances, and building consensus among other projects (not necessarily just Lemmy) regarding any extensions you might decide to add to the protocol (though you’d have much easier time implementing extensions from other projects if they solve your issue)