• 22 Posts
  • 987 Comments
Joined 6 years ago
cake
Cake day: May 31st, 2020

help-circle
  • Yeah, one of the largest pieces of software humanity has created, next to Google Chrome and the Linux kernel, which are all around 30 million lines of code.

    To give a frame of reference: With a team of 5 full-time devs at my dayjob, we can dish out a codebase of about 20 thousand lines over the course of two years.

    A browser might be somewhat quicker to build, because the requirements are relatively clear at this point and you can start implementing many standards in parallel. But yeah, it’s still just an insane amount of code.



  • Was queuing at the checkout in the grocery store today and realized I wasn’t going to be done putting my foods onto the conveyor belt by the time the cashier would be done with the previous customer. Then a guy comes in to queue behind me and in the corner of my eye, I could tell that he only had three items or so. So, I turn to him and tell him that he can skip ahead of me.

    At that point, I see that it’s a bouquet of flowers and a greeting card that he’s holding. He looked a bit embarassed, but then also somewhat touched, because he wasn’t sure, if I was being nice, because he’s carrying his emotions out in the open.

    I wasn’t. 😅 I mainly just did not want to cause unnecessary delay. But was an unexpectedly wholesome encounter anyways.



  • Ephera@lemmy.mltoProgrammer Humor@lemmy.mlSenior devs...
    link
    fedilink
    English
    arrow-up
    4
    ·
    3 days ago

    In my experience, this happens in two ways. Yeah, sometimes a senior just overdoes it due to a lack of experience or shitty requirements or whatever.

    But it also happens a lot that juniors just don’t understand why the layer makes sense to introduce. For example, juniors will readily intermix IO and logic, because they don’t yet understand that this makes code untestable and adds a load of additional complexity into already complex logic code. From that viewpoint, pulling all the IO code out will look like unnecessary complexity, when it’s not.



  • For those unfamiliar with music production: VSTs are basically plugins you can use in music production software (more specifically in “Digital Audio Workstation” software, DAW).

    Except they’re also not really plugins, because they’re actually full-fledged programs, into which an audio stream is fed and then they run arbitrary code to ransom your files transform that audio stream. Well, and typically also to display a UI with knobs to control how the effect should sound like. Those pictures on that webpage are screenshots of their UI.

    As a result, most VSTs are basically just bundled EXE files. You can often run them through WINE, but many people use dozens of these VSTs and may even pay money for them, so you really don’t want to have to worry about them not working under Linux.










  • There should be an open-source recommendation algorithm, though; I’m sure of it.

    Problem is that the kind of algorithm you envision is technologically a black-box, not just by choice. It’s a machine learning model. At best, you could make the training data and instructions public, but it would still be hard to reason why it makes certain decisions. Corporations traditionally try to eliminate biases by throwing as much data at it as possible, but that makes it even harder to reason about it.

    I guess, maybe you could try to split the tasks. So, set up a list of e.g. 50 topics, such as sports, IT, politics etc… Then use a small language model to decide into which categories each post fits. And then you could let the user decide the weights for the topics + weights for recency and vote count.
    Or I guess, automatically decide the weights based on what the user upvotes and then make the weights transparent to each user.

    But yeah, I don’t think there’s prior art in this respect, so would probably need lots of experimenting still.



  • There’s varying takes on why folks prefer Gemini:

    • HTML browsers are too complex. It is virtually impossible to implement a new one. We’ve got 2½ implementations, i.e. Blink/WebKit and Gecko, and that’s it. Yes, you can use Dillo or w3m, links and lynx to view simplistic webpages, but anyone, who actually wants to use the web with these, will quickly run into webpages they cannot view.
      With Gemini, you can use tons of clients, some of them even written in Bash, because it’s so simple, and you will not run into pages you cannot view.
    • Burn the web. Some folks hold the opinion that the modern web is beyond saving, because advertisers control many central parts of it. Presumably, these days folks are also glad to be spared from AI-generated garbage. And again, you can create your own webpage that’s all smallweb with pure HTML and whatnot, but anyone who actually wants to browse these pages has an easier time finding them on Gemini.
    • An own community. Of course, using a different communication protocol cuts off communication with most of humanity. But as a result, many folks on Gemini know each other and bother reading blogs that they might not have read on the HTTP side of things.
      Well, and through survivorship bias, folks on Gemini tend to be nerds who care about permacomputing and the like, so that also helps with finding folks that have similar interests, even if you might end up reading their gardening blog, due to the aforementioned point.

  • Hmm, they might’ve scrambled to add Recall et al, because those other features you named don’t particularly need to be offloaded. Except for maybe TTS, you’re not gonna run these in the background all the time. And if you need the occasional translation, it’s fine, if it takes a bit longer.

    At least, I would’ve absolutely seen headlines à la “Microslop wants you to buy an expensive new PC – to do things your current PC can perfectly fine”.