• 0 Posts
  • 6 Comments
Joined 1 year ago
cake
Cake day: July 6th, 2023

help-circle
  • Maybe this comment will age poorly, but I think AGI is a long way off. LLMs are a dead-end, IMO. They are easy to improve with the tech we have today and they can be very useful, so there’s a ton of hype around them. They’re also easy to build tools around, so everyone in tech is trying to get their piece of AI now.

    However, LLMs are chat interfaces to searching a large dataset, and that’s about it. Even the image generators are doing this, the dataset just happens to be visual. All of the results you get from a prompt are just queries into that data, even when you get a result that makes it seem intelligent. The model is finding a best-fit response based on billions of parameters, like a hyperdimensional regression analysis. In other words, it’s pattern-matching.

    A lot of people will say that’s intelligence, but it’s different; the LLM isn’t capable of understanding anything new, it can only generate a response from something in its training set. More parameters, better training, and larger context windows just refine the search results, they don’t make the LLM smarter.

    AGI needs something new, we aren’t going to get there with any of the approaches used today. RemindMe! 5 years to see if this aged like wine or milk.


  • Hyperfixating on producing performant code by using Rust (when you code in a very particular way) makes applications worse. Good API and system design are a lot easier when you aren’t constantly having to think about memory allocations and reference counting. Rust puts that dead-center of the developer experience with pointers/ownership/Arcs/Mutexes/etc and for most webapps it just doesn’t matter how memory is allocated. It’s cognitive load for no reason.

    The actual code running for the majority of webapps (including Lemmy) is not that complicated, you’re just applying some business logic and doing CRUD operations with datastores. It’s a lot more important to consider how your app interacts with your dependencies than how to get your business logic to be hyper-efficient. Your code is going to be waiting on network I/O and DB operations most of the time anyway.

    Hindsight is 20/20 and I’m not faulting anyone for not thinking through a personal project, but I don’t think Rust did Lemmy any favors. At the end of the day, it doesn’t matter how performant your code is if you make bad design and dependency choices. Rust makes it harder to see these bad choices because you have to spend so much time in the weeds.

    To be clear, I’m not shitting on Rust. I’ve used it for a few projects and great for apps where processing performance is important. It’s just not a good choice for most webapps, you’d be far better off in a higher-level language.


  • I wouldn’t shortchange how much making the barrier to entry lower can help. You have to fight Rust a lot to build anything complex, and that can have a chilling effect on contributions. This is not a dig at Rust; it has to force you to build things in a particular way because it has to guarantee memory safety at compile time. That isn’t to say that Rust’s approach is the only way to be sure your code is safe, mind you, just that Rust’s insistence on memory safety at compile time is constraining.

    To be frank, this isn’t necessary most of the time, and Rust will force you to spend ages worrying about problems that may not apply to your project. Java gets a bad rap but it’s second only to Python in ease-of-use. When you’re working on an API-driven webapp, you really don’t need Rust’s efficiency as much as you need a well-defined architecture that people can easily contribute to.

    I doubt it’ll magically fix everything on its own, but a combo of good contribution policies and a more approachable codebase might.



  • In reading this thread, I get the sense that some people don’t (or can’t) separate gameplay and story. Saying, “this is a great game” to me has nothing to do with the story; the way a game plays can exist entirely outside a story. The two can work together well and create a fantastic experience, but “game” seems like it ought to refer to the thing you do since, you know, you’re playing it.

    My personal favorite example of this is Outer Wilds. The thing you played was a platformer puzzle game and it was executed very well. The story drove the gameplay perfectly and was a fantastic mystery you solved as you played. As an experience, it was about perfect to me; the gameplay was fun and the story made everything you did meaningful.

    I loved the story of TLoU and was thrilled when HBO adapted it. Honestly, it’s hard to imagine anyone enjoying the thing TLoU had you do separately from the story it was telling. It was basically “walk here, press X” most of the time with some brief interludes of clunky shooting and quicktime events.

    I get the gameplay making the story more immersive, but there’s no reason the gameplay shouldn’t be judged on its own merit separately from the story.