Seems like an interesting effort. A developer is building an alternative Java-based backend to Lemmy’s Rust-based one, with the goal of building in a handful of different features. The dev is looking at using this compatibility to migrate their instance over to the new platform, while allowing the community to use their apps of choice.

  • deegeese@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    96
    arrow-down
    11
    ·
    11 months ago

    I have a hard time believing that rewriting the backend from scratch would be faster than getting PRs approved on the main project.

    Forks like this with one guy who “knows best” usually die a slow quiet death as they get left behind by the main project.

    • spaduf@slrpnk.net
      link
      fedilink
      English
      arrow-up
      61
      arrow-down
      4
      ·
      11 months ago

      I think how quickly this project has gotten to near feature parity is a testament to how slow Lemmy development has been. Think about scaled sort (a feature that has been hotly requested since the migration) and how long that took to get merged in. A sort should not by any means be slow to implement.

        • spaduf@slrpnk.net
          link
          fedilink
          English
          arrow-up
          26
          arrow-down
          2
          ·
          edit-2
          11 months ago

          IMO slow development isn’t necessarily a bad thing.

          Sure but even just recently there was the example of breaking federation over Christmas. Some of those issues persist through 0.19.3 which came out today

          Similarly scaled sort would have made a huge difference for small communities in the period directly after the migration.

        • Carighan Maconar@lemmy.world
          link
          fedilink
          English
          arrow-up
          7
          arrow-down
          3
          ·
          11 months ago

          IMO slow development isn’t necessarily a bad thing.

          Quite the opposite, often it’s a benefit as you don’t end up wasting time and changing code for features where you don’t actually know yet whether your current usage demands or supports them. There’s a lot of genefit in not moving fast and not breaking things. Mostly that, well, you don’t constantly break things.

      • deegeese@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        7
        arrow-down
        4
        ·
        11 months ago

        A sort should not by any means be slow to implement.

        Sure, if the sort key is something readily available. But for scaled sort they have to compute relative size/activity of the communities the specific user is in. The cost isn’t the sort, it’s computing the metric.

        • spaduf@slrpnk.net
          link
          fedilink
          English
          arrow-up
          9
          ·
          edit-2
          11 months ago

          I’m not talking about the literal sorting algorithm. Pretty sure scaled sort is exactly one more operation than hot.

      • deegeese@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        28
        arrow-down
        9
        ·
        11 months ago

        I’m a Java developer and I would much rather pick up Rust to join an active project than try to rebuild something that already works using a less-marketable language.

      • kaffiene@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        11 months ago

        Yeah I agree. Rust is an excellent language when you absolutely must be as safe as possible but don’t want garbage collection. But there is a level of precision required of developers which makes it slower to development in. Other languages like Java, Python and Go are all quicker to develop in. Java is much easier to refactor IMO

    • MeanEYE@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      11 months ago

      Depends on amount of technical debt really. Sometimes rewrite is the only way. But in general fixing things can be done. It’s just matter of time, focus and effort.