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.

    • cum@lemmy.cafe
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      I think the people who say this and think Rust is the second coming of Jesus, just don’t code. You choose the right language that’s needed for the job. Server stuff like this is Java’s bread and butter. As amazing as Rust is, it has proven to not be a great choice for Lemmy’s development.

      • hansl@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        I’m curious why you say Rust “ has proven “ to not be a great choice. There is a lack of Rust programmers, but its been the fastest growing community on GitHub for multiple years now, and has proven to be viable at all level of the stack.

        Full disclaimer: I code and work in Rust daily on the backend and frontend.

    • MashedTech@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      Next step, is to remake Lemmy in JavaScript. Pure JavaScript, no typescript, only express, nothing else

    • P03 Locke@lemmy.dbzer0.com
      cake
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      an alternative Java-based backend to Lemmy’s Rust-based one

      Going from a modern well-designed language to an old-and-busted, kitschy, memory-hogging, bloated language. This is literally a step backwards.

      Rust, Go… hell, even Ruby-on-Rails or whatever Python is offering nowadays would be a better choice.

    • loutr@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      Because modern Java is an OK language with a great ecosystem to quickly build web backends. And there are lots of java devs which means more potential contributors.

      • Fudoshin ️🏳️‍🌈@feddit.uk
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        Hello world in Java = 500 lines of code.

        Hello world in Rust = 3 lines of code.

        Java is over-engineered corporate bullshit used by banks and Android development. Nobody programs Java for the fun of it.

  • bdonvr@thelemmy.club
    link
    fedilink
    English
    arrow-up
    0
    ·
    2 years ago

    What missing features are so important that you decide to recreate the entire backend of Lemmy because you think the devs aren’t fast enough?

    • Ghostalmedia@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      Java instead of Rust is going to be a big thing for a lot of people who would like to contribute in their spare time. Yeah, Rust is cool, but every CS grad and their mother knows Java.

      Back during the migration surge a few months ago, you commonly saw a LOT of comments from folks saying they would love to help eat away at the project’s backlog, but they just didn’t have the time or energy to learn Rust at the moment.

      • P03 Locke@lemmy.dbzer0.com
        cake
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        Yeah, Rust is cool, but every CS grad and their mother knows Java.

        Sure, twenty-five years ago, when Sun was pushing their language hard into colleges everywhere.

        Now? Sun Microsystems doesn’t even exist, and everybody hates the JVM in an ecosystem where VMWare, Docker, and Kubernetes do the whole “virtual machine” model much better.

      • Amaltheamannen@lemmy.ml
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        Any recent CS grad is obsessed with rust, trust me. It’s not hard to learn either with that background.

    • Corngood@lemmy.ml
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      Browsing the code makes me angry at how bloated Java projects are:

      package com.sublinks.sublinksapi.community.repositories;
      
      import com.sublinks.sublinksapi.community.dto.Community;
      import com.sublinks.sublinksapi.community.models.CommunitySearchCriteria;
      import com.sublinks.sublinksapi.post.dto.Post;
      import com.sublinks.sublinksapi.post.models.PostSearchCriteria;
      import org.springframework.data.domain.Page;
      import org.springframework.data.domain.Pageable;
      import org.springframework.data.jpa.repository.JpaRepository;
      import org.springframework.data.jpa.repository.Query;
      import org.springframework.data.repository.query.Param;
      import java.util.List;
      
      public interface CommunitySearchRepository {
      
        List<Community> allCommunitiesBySearchCriteria(CommunitySearchCriteria communitySearchCriteria);
      
      }
      

      Every file is 8 directories deep, has 20 imports, and one SQL statement embedded in a string literal. 😭