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.

  • dcormier@beehaw.org
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    I’m a professional dev who’s been doing Rust for a few years, and I just looked into their repo for the core project this morning. They’ve tagged some issues as being good for newcomers, which is helpful. I already reviewed someone’s code there to try to help.

    I intend to try to pick off some issues. I like to write code, and I’d like to see this project improve.

  • TheSaneWriter@vlemmy.net
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 year ago

    I am a Software Engineer by trade, and I’m right now trying to learn and contribute to their code base but unfortunately, it takes a lot of time to get used to someone else’s code. Hopefully, contributions will pick up once we’ve all had some time to look at it.

    • hazel 🤷🏻‍♀️🏳️‍🌈@beehaw.org
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      I’ve been programming as a hobbyist for a decade on and off but I’ve still never contributed to any projects but I’ve long wished to. Major imposter syndrome. Would working on this be next level difficulty?

      • TheSaneWriter@vlemmy.net
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        No, it wouldn’t be. The first step is honestly to get it running locally, then make sure debugging and breakpoints work, and then pick a feature you want to add or improve, use the debugger to see what code currently executes, and then hook your feature into it. Make sure to familiarize yourself with Rust syntax if you’re not already, but I think you could do it.

          • feidry@midwest.social
            link
            fedilink
            English
            arrow-up
            2
            ·
            1 year ago

            Kind of in the same boat as you. Self taught when it comes to coding and I’ve dabbled in Rust a little. It’s way over my head, or was last time I messed with it. Strongest with C# (thanks Unity) for reference. Not saying not to do it but just giving a heads up from someone you might relate to.

  • dill@lemmy.one
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    I’m hoping to contribute to jerboa. That’s more my wheel house than rust

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

    They probably could use more manpower to some extent but we’re all forgetting The Mythical Man-Month; just chucking more bodies at a software project doesn’t necessarily speed it up any more than nine women can have a baby in one month.

    That said I’m happy to do the odd bit here and there if there’s any call for it, either for lemmy itself or BeeHaw.

    • anji@lemmy.anji.nl
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      You’re right of course, but there’s tons of individual features which can be worked on in relative isolation. The devs need help with moderation tools, performance, frontend, etc. With 200+ open issues I’m sure more developers making proactive pull requests can make a difference.

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

    Maybe this is a good excuse for me to (apologies) shake off the Rust and contribute some. I’ve only contributed once or twice to a FOSS project, though, so I’ll need to read up a little on best practices and etiquette.

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

      Don’t shake it off! They need all the Iron Oxide they can get, from what I’m hearing.

  • SuitedUpDev@feddit.nl
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    One of the first things I did when I learned about Lemmy and joined an instance is see if I could contribute in some way, shape or form.

    But unfortunately it’s written in Rust, a language in which I have 0 experience and 0 knowledge. :(

  • pimeys@lemmy.nauk.io
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I would love to participate. I’ve been doing Rust professionally for seven years now and I understand the language very well. Too bad there is just so much work already and adding a new project feels a bit too much. I’d love to read the source one day though, maybe I find some time.

  • SQL_InjectMe@partizle.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    @mobyduck648@mobyduck648@beehaw.org

    They probably could use more manpower to some extent but we’re all forgetting The Mythical Man-Month; just chucking more bodies at a software project doesn’t necessarily speed it up any more than nine women can have a baby in one month.

    Sure, but look at the rapid progress llama.cpp made in the past 3 months, especially in the 1-2 weeks after its launch


    btw, my instance just linked to this community so I don’t see your comment (which is why this is a root level comment)

    • Ludrol@szmer.info
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      If you copy a link to the comment and put it into a search bar (on your instance) you can force a server to prioritise this one comment to load on your instance. Then you can reply with your comment.

    • nii236@lemmy.jtmn.dev
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 year ago

      Hey, you should point out that Georgi Gerganov is a 100xer programmer and slapped together llama.cpp in a weeknd

      • SQL_InjectMe@partizle.com
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Yes but my point is that 6 pages of PRs were created within 10 days of the repo being launched which was accomplished by chucking a lot of bodies at the project.

  • DeadGemini@waveform.social
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago

    I’m not a dev, but I do have SOME coding experience and have been wanting to help with some open source projects, if nothing else but for the experience. Rust has been on my “to learn” list for like a year now. I def have a lot to learn, but the best way to learn is to get your hands dirty. I’ll take a look at the Github page and see if there’s any low-hanging fruit I can try to tackle lol

    EDIT: I’m pretty sure I can help with some of these. My coding skills are out of practice, and idk any Rust yet, but I’m a fast learner. Currently learning how to use git to fork a repo, add code, and create a PR, then I’ll go learn some Rust syntax and get to work! I’m actually really excited! I’ve been wanting to figure out how to contribute to FOSS projects since I started daily driving Arch Linux like a year ago, and this is a great opporunity for me to learn!

    If anyone has any development tips for a noob like me, let me know! I’m going in pretty blind here, so any advice is appreciated!

    • redcalcium@c.calciumlabs.com
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      Just a general tip: don’t use your distro version of rust (Lemmy) and nodejs (lemmy-UI). Instead, install them using a version manager, which allows you to switch to different versions of rust or nodejs without being tied to whatever version your distro have in their repository. This is very useful during development when you often need to try different versions to debug an issue (e.g. is this bug only happen on certain compiler version?), testing an upcoming beta features, etc. This apply to most programming languages as well, such as Python, PHP, Go, etc.

      For rust, rustup seems to be a popular choice. For nodejs, nvm and asdf is quite popular. asdf even support both rust and nodejs.

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

        rustup seems to be a popular choice

        Not just that, it’s the official way of installing and updating your Rust toolchain, maintained by the Rust project themselves.

    • Toxic_Tiger@beehaw.org
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 year ago

      My only coding experience was way back in Sixth Form in the early 2000s. I love the enthusiasm that comes across from your post.

      Do it for Lemmy! For the Fediverse!

  • nii236@lemmy.jtmn.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    The previous calls for forking were not convincing (political), but this post makes sense to, if the community is unable to contribute because of a lack of attention from external help.

    I’m not sure if that’s the case and I’ll have to have a look myself.

    I’m happy to contribute, and hopefully the process of new contributors (CONTRIBUTORS.md) is easy and straightforward, and the issues are triaged by someone dedicated, perhaps from the community.

    • DigiWolf@pawb.social
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 year ago

      Honestly I’m casting my support with KBin after hearing about the political affiliations of the main Lemmy dev. It’s worrisome because at this time of volatility, the community is going to be very fragile and stuff like that can really cause a massive problem when the community starts hitting critical mass

      • Leigh@beehaw.org
        link
        fedilink
        English
        arrow-up
        0
        ·
        1 year ago

        First, I respect you doing what you feel you need to.

        That said, I think we need to be careful about how we decide what products to use or support based off the politics or history of their development. That seems like a risky game to me. How much slave labor was used in creating the very products we’re using right now, for instance?

        • DigiWolf@pawb.social
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          1 year ago

          I get that, there’s a bunch of unethical associations with everything we use. But right now the main developer of Lemmy has his profile setup with Chairman Mao as his background, his Github repo avatar is Che Guevera, and he has an entire repo filled with propaganda copy-pasta. In the past people have also pointed out that lemmy.ml and lemmygrad.ml resolve to the same IP address although this is no longer the case. Lemmygrad supports the DPRK and transitively one of the most horrific dictatorships in the world, and yet it’s advertised on the “Join-Lemmy” website.

          Even if the software itself is apolitical and we can see through the open-source nature of it that it is not going to be abused to further those agendas, there’s no doubt that as that knowledge becomes more commonly known that it could severely impact the whole idea of a Federated Reddit alternative.

          I guess the most important thing to consider is that the software, being open-sourced, can easily be forked if this ever becomes a problem.

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

    I wish so badly I could code, I spent 8 years trying to understand it and get into the industry, but it never quite clicked in my brain. Soooo I do IT infrastructure. I wish so badly to contribute code

    • WatTyler@lemmy.sdf.org
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 year ago

      May I ask you more about your experience attempting to learn? I don’t know if it’s because I can program but eight years seems a long time. In return, I’d be happy to offer you a few pieces for advice that could help?

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

        That’s so kind of you!
        I started by aiming for front-end web dev. I learned HTML & CSS (I know, we’re not PROGRAMMING yet). At the time, that’s all I was hearing it’d take to get into the role. Then it was “you should probably know some Javascript,” and I wasn’t ready for how big of a jump that was. By the time I started understanding it, it became “learn jQuery,” which I learned and used for a couple of small websites, then came the libraries…
        “AngularJS is the future” well now I need to learn Git, compiling, CMD…
        ReactJS starts becoming a thing and I say “seriously? I’ve learned enough of these things, quit moving the goalpost, React isn’t going to stick around”
        Yeah…it definitely stuck around…but as an Open Source nerd, I got super excited by VueJS and started learning that. No jobs in that apparently, aaaand I no longer want to do web dev, especially since I never reached the point of enjoying coding, it was always a means to an end.

        So there were two major issues for me: \

        1. I never focused on one language enough to truly LEARN to code, it was a constant sense of “I’m not keeping up”. I may be able to write the syntax, I might know the basics about functions, vars, and looping, but never really got using it in a super practical sense other than to try a couple of personal challenging projects that my ADHD arse couldn’t ever stick with. \
        2. Me and coding speak and think very differently. Stick with me here, I know, it’s a language, but the way something should be written and formatted are different from how I think it should be, and this is a very hard one to explain to folks. The best example I can give is that I might say like (and this is a poor example because remember, I don’t code and I’m not doing any active coding projects) \

        var person = { userInput }
        var num;
        
        function findNumberOfLetters (person) {
            num = length(person);
        }
        function response(person, num) {
            findNumberOfLetters(person);
            console.log("Hello " + person + "! Did you know that your name has " + num + " letters in it? Numbers are rad!");
        }
        


        I’m sure I did things wrong, but again, this is just for the sake of example. So, I write something like this thinking that it’s nicely structured and easy to read, and inevitably won’t work. I pass this to a friend, and the answer seems to always be a less structured, more nested code. So for this example, something like \


        (function response(userInput) {
            console.log("Hello " + userInput + "! Did you know that your name has " + length(userInput) + " letters in it? Numbers are rad!");
        })
        


        Obviously their answer is shorter and this isn’t exactly a complicated program, but for some reason, making the thing that provides a response to the user to do any of the logic feels wrong and messy to me. It’s a really hard thing to explain, I hope this makes some amount of sense, but I just process things very differently than code does, and it just ends up really incompatible. I’ll beat my head for weeks over-complicating something because I want it to “be clean” only for someone I know to come up with something that actually works within seconds.
        This isn’t to compare my skills against them, it’s to say that I’m thinking about it wrong, I’m organizing it wrong.
        That said, knowing how code functions has helped me to know enough to be dangerous and apply it in other ways, such as building Azure Logic Apps to manage ticket intake, or building alert monitoring. So it’s come in very handy in its own way, I just don’t have to competency to actually make any contributions to Open Source projects, especially since I don’t write in two of the coolest languages that I wish I could learn: Python and Rust.

        No pity party here, I love what I do and I don’t intend to change careers to coding, but I do end up feeling helpless in the face of instances like this where I wish so badly to contribute to a project that I care so strongly about and want to see thrive. I know there’s other ways to contribute, such as providing graphics, UI, documentation, financial, hosting, etc. but coding always seems to be the most in need to keep up with demand, and with more and more projects coming out all the time, the more programmers are in need to see them through.

        • redcalcium@c.calciumlabs.com
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          1 year ago

          Here is a thing I found helpful in my >10 years of programming career: break your problem from top to down (aka Top-Down programming).

          Consider this problem: I want to send a post card to my friend.

          Now let’s break down this problem into several steps:

          1. Obtain a post card
          2. Drop the post card at a post office

          Next, each of those problems can be broken down even further.

          Obtain a post card:

          1. Visit a store that sells a post card
          2. Select a post card to suit your taste
          3. Go to the cashier and pay

          Now each of those steps can again be further broken down into even more sub steps:

          Visit a store that sells a post card:

          1. Identify a nearby store that sells post cards by googling them and find their address
          2. Open Google Maps to plan a route to the store
          3. Get out of the house and enter your car
          4. Drive to the store

          You see where I’m going? Break your problem down into actionable pieces you can solve in the programming language of your choosing. How deep you go depends on what programming language to use. If you’re using a High Level programming language such as Python, you usually don’t need to break down the problem too deep in order to solve it. But if you’re using a Low Level programming language (e.g. assembly), you’re going to need to break down your problem very deep into actionable pieces that can be solved in assembly.

          Hope that can help you.

        • WatTyler@lemmy.sdf.org
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          1 year ago

          Thank you so much. This is a terrific insight. A little later I’m going to sit down at my PC and type something up I think will help.

          I’d ask you as a fellow ADHDer ✊ if I forget to please remind me to write up my response 😂

          EDIT: Response now posted here

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

            Likewise, you gave an amazing response and I want to dedicate some time to properly reading and responding to it, so I’ll be responding when I have a good opportunity to commit :) Thank you so much for such a thoughtful and thorough response, I really look forward to going over it
            Edit: While I still can’t thank you enough, I’ve finally given a more thorough reply here

          • l3mming@lemmy.fmhy.ml
            link
            fedilink
            English
            arrow-up
            0
            ·
            edit-2
            1 year ago

            I’m a programmer of 25+ years. Everything written above is spot on. I too started with C and I still love that thing like my first born. It is so immensely satisfying writing something in C that a) works b) doesn’t leak memory and c) passes all your unit tests. Nothing else compares.

            I too looked at React and hated it with a passion. Then I saw VueJS and kind of liked it. Then I saw Nuxt and now I’ve gone all in on NuxtJS. It is so simple and well-thought out compared to the shambles that is React. It’s very satisfying to use. Rust is next for me.

            I’ve learnt well over 10 languages over the years. Some well, some well enough. Learning a language is bit like reading a book. If you’re a third of the way in and it’s doing nothing for you, don’t waste your time. Grab another one off the shelf and try that. Don’t put pressure on yourself - it should be enjoyable, not stressful. Just chip away at it bit by bit and enjoy the little discoveries.

            Don’t worry so much about your coding style. From the examples you gave, yours is much easier to follow than the second one. And, you know what? Most ‘senior programmers’ I’ve worked with have been bad coders. The bar is not as high as it may appear.

            Sounds like you’re currently a systems guy with a bit of programming skills. That’s an awesome combination to have, and mirrors my own all those years ago. The best bit is your have the freedom to learn programming as a hobby, without the pressure. Enjoy the process. Watch some videos by Sebastian Lague on Youtube, they’re magical.

            Best of luck with your programming journey. It is an immensely enjoyable hobby, and ridiculously useful skill to have.

            • WatTyler@lemmy.sdf.org
              link
              fedilink
              English
              arrow-up
              0
              ·
              1 year ago

              Thank you for taking the time to read my response. I really appreciate having the approval of someone with decades of experience (which, I very much don’t). Out of curiosity, when you started programming would have been the early days of Java, C++ etc. and the start of the ‘OOP revolution’. Can you recall why you started with C, when OOP was very much en vogue?

              • l3mming@lemmy.fmhy.ml
                link
                fedilink
                English
                arrow-up
                1
                ·
                edit-2
                1 year ago

                That’s a very good question. Java and OOP really were new and exciting things when I first entered the workforce. But, I first started programming long before Uni and joining the workforce. I first started programming on one of these: https://en.wikipedia.org/wiki/Intellivision using an ‘Intelliputer’. Then I learnt Logo on an Apple IIe. Then GW-BASIC on MSDOS, then PASCAL, then C. Then I stuck with C for a long time, including most of Uni.

                So, by the time Java and OOP came along, I already had 10+ years of procedural programming behind me. That actually made it really difficult for me to to learn OOP. It was some weird paradigm that didn’t align with anything I knew. So I gave Java a mostly wide berth for as long as I could and focused instead on Perl, then PHP.

                Both of those ended up getting OOP abstractions crammed into them, so eventually I did end up learning OOP, but it was more through osmosis. By then Java had largely come and gone. As much as it saddens me, Perl too largely died. That left me with PHP which, to be fair, was becoming quite a nice language by then.

                By now I was a devout OOP developer and really enjoyed the OOP changes to PHP. Python, being object based, was the next logical choice. Javascript was still a pile of poo. Then Javascript got OOP abstractions too and suddenly was all the rage. Then they started putting the frontend on the backend (Node) and I was truly lost at sea. To me it it was twice as much work to build something (API + frontend) compared to the old server side rendering. It seemed way to much effort just to avoid a page load.

                Nevertheless, I tried React and I hated it, it made no sense - though Javascript was looking a lot nicer by then. So I held off a little longer on adding ‘frontend dev’ to my resume, then NuxtJS came along and here we are.

                So, long story short, I’ve been doing this forever. I technically review team code all day, every day. I know good code, I know bad code and have seen shit that still gives me nightmares.

                The funny thing is, I have written dozens of cool tools that I think are pretty damn clever, yet I have never open sourced anything. My reason is the same as yours: Because I still don’t think any of it is good enough.

  • Pekka@feddit.nl
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I started looking into building a theme for Lemmy, but it was quite difficult to get everything to run well locally. When I did a checkout the main branch had an error in the Rust code and the main branch of the ui had an error that prevented the websocket from connecting to the back-en. I did get it to work by fixing the small error in rust and using a branch that fixed the websocket error. But it was hard to get started.

    I was wondering if there is a Lemmy development community here on Lemmy. I tried searching for it on Lemmy.ml, but the cummunties about Lemmy and support don’t really look like they are about development.