cross-posted from: https://beehaw.org/post/570507

After the (temporary) defederation announcement of earlier i checked the Lemmy repo to see if there was already a ticket on the federation limiting option like Mastodon’s that people mentioned Lemmy doesn’t yet have. Not only i didn’t find it, i also saw that there’s about 200+ open tickets of variable importance. Also saw that it’s maintained mostly by the two main devs, the difference in commits between them and even the next contributors is vast. This is normal and in other circumstances it’d grow organically, but considering the huge influx of users lately, which will likely take months to slow down, they just don’t have the same time to invest on this, and many things risk being neglected. I’m a sysadmin, haven’t coded anything big in at least a decade and a half beyond small helper scripts in Bash or Python, and haven’t ever touched Rust, so can’t help there, but maybe some of you Rust aficionados can give some time to help essentially all of Lemmy. The same can be said of Kbin of course, although that’s PHP, and there is exacerbated by it being just the single dev.

  • neil@programming.dev
    link
    fedilink
    English
    arrow-up
    33
    ·
    edit-2
    1 year ago

    It’s on my radar and I’m sure it’s on a number of other people’s as well. It just takes a little onboarding time like all good projects.

    Worth noting: the ui is in inferno js

    • haruki@programming.dev
      link
      fedilink
      English
      arrow-up
      9
      ·
      1 year ago

      It’s also on my “wishlist” for contribution. I’m learning Rust but didn’t know what project to bring the skill to practice.

      Finally some good distractions for my Saturdays!

    • dan@upvote.au
      link
      fedilink
      English
      arrow-up
      7
      ·
      1 year ago

      the ui is in inferno js

      I haven’t used Inferno but it looks similar to React. Is knowledge of React transferrable to Inferno or should I spent a bit of time learning Inferno specifically? I’ve got ~10 years React experience (started using it the same year it was open-sourced).

  • minorsecond@kbin.social
    link
    fedilink
    arrow-up
    23
    ·
    1 year ago

    So the backend is coded in Rust? I’ve been learning the language but haven’t actually used it outside of tutorials yet. I’m experienced in C++ and know how to program so I may look into it while I’m unemployed.

  • terebat@programming.dev
    link
    fedilink
    English
    arrow-up
    19
    ·
    1 year ago

    I will be working on this when I get cycles. Barring the issues already above, there are a lot of areas for optimizations, for instance how images are handled (i.e., they can be handled through object storage like Cloudflare R2 to decrease bandwidth/ram costs). Some is more dev-ops on how common instances are setup, others are code changes to make things more efficient.

    Perhaps we should start a community or communication group for this?

      • terebat@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        It’s often useful to have a discord or something to throw around approaches and discussions more conversationally before formalizing an issue or RFC imo, but happy to do it via github too.

        I would think it helps newer people to get set up and hacking on it as well

    • dragontamer@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      The lemmy.ml instance is primarily for Lemmy development IIRC. There is probably a good reason to “dogfooding” and making Lemmy itself good for discussing Lemmy-based issues, development, coordination, etc. etc.

  • nibblebit@programming.dev
    link
    fedilink
    English
    arrow-up
    15
    ·
    1 year ago

    It’s difficult problem to solve. Lemmy’s stack is a bit unconventional. The rust backend is not idiomatic and the ui is based off a template of an isomorphic not-quite-react framework. Its not impossible, but it will take a while for alot of programmers come onboard.

    That being said, there’s more to it than writing code. Better bug reports, reproduction, updating docs and triaging/managing the issues is possibly more important than writing PRs. Don’t be discouraged!

    • emergent_simplicity@lemm.ee
      link
      fedilink
      English
      arrow-up
      7
      ·
      1 year ago

      Would it make more sense to just go all in on API support for the main codebase and leave UI up to 3rd parties/separate project? Seems like that would be the ultimate anti Reddit at least

    • marshoepial@lemm.ee
      link
      fedilink
      English
      arrow-up
      47
      arrow-down
      3
      ·
      1 year ago

      The backend is rust! The frontend is typescript with a react-type framework. So feel free to pitch in on the frontend if you are familiar with TS!

  • million@lemmy.world
    link
    fedilink
    English
    arrow-up
    12
    ·
    1 year ago

    I’ve been hacking a bit trying figure out activity pub, are folks interested in a programming centric ActivityPub community to focus on learning?

  • Mustafa Albazy@programming.dev
    link
    fedilink
    English
    arrow-up
    11
    ·
    1 year ago

    What about trying to contact rust devs from outside the fediverse/lemmy community? Maybe some of them don’t know about the lemmy project, but they’ll find it interesting and join the dev team.

    • ollien@beehaw.org
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      Yeah, I’m looking to jump to Kbin when I can, but right now it looks like a lot of the instances are having major federation issues, which makes it a bit untenable.

        • ollien@beehaw.org
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          Quite a few instances just aren’t populating posts on other instances. I suspect this is due to ddos protections large instances have had to put in place during this high load period.