[–] 2 points 3 days ago

The little block might be "Jensen's wife's desire for chaos" because if they split, she probably gets a lot of Nvidia stock, and dumping it will get her a bunch of cash while it tanks the stock price...

  • source
  • [–] 58 points 4 months ago (2 children)

    Careful, when the AIs get so good that you can ask them anything and they perfectly understand what you want and produce great results, you're going to get left behind because... you won't know how to use the... incredibly easy tools... hang on...

  • source
  • parent
  • context
  • [–] 9 points 5 months ago

    Apple proposed something a few years ago, when governments were making similar threats, that attempted to strike a middle ground. The idea was that upon uploading an image to iCloud Photos, a on-device scan would be run on that image and an encrypted report generated to be sent up along with the photo. There was differential privacy involved, the report would also sometimes be generated for entirely normal photos, so seeing a report didn't necessarily indicate anything, and they had set it up such that the server would only be able to decrypt the reports if it had a sufficiently large number of photos that had been actually found to be CSAM by the local scan, so there would have to be many false positives to incorrectly get flagged.

    It was incredibly controversial, and they ended up not doing it after all. In my opinion, it's probably the lightest touch and most responsible way to do something like this, and obviously they always pick the most worthy cause for invading privacy... but I still viscerally dislike the idea that my computer would have code designed to try to get me sent to prison under certain circumstances (not that I'd ever be triggering that code with anything but a false positive of course). Somehow it's worse than just saying "in the cloud you have no privacy, your photos aren't encrypted on our servers, and if you upload CSAM we'll drop a train on you."

  • source
  • parent
  • context
  • [–] 5 points 5 months ago

    For about $2000, I picked up a Mac Studio with 96 gigs of RAM, which is effectively all VRAM thanks to Apple's architecture. It doesn't have the raw number-crunching power of the big GPUs but with all that space, you don't need to worry much about the size of the model until they start getting really big, so it's pretty easy and flexible.

    I'm able to do basically everything that others are doing with AI, entirely locally. It generates text and writes code (it's no Opus, but probably on par with the best of a year and a half ago), images, videos, songs, all that stuff (those last few are garbage but it's basically the same level garbage that the cloud models are making). And I have total privacy, will never get a surprise price hike or lose access to a model I like, and know exactly how many bottles of water I'm using to cool it (zero).

    It's not heroin, it's weed. There will be a market for it, but, like, you can also just make it yourself. 90% of what people want will just get done on device. I can't see any way this turns into a trillion dollar industry.

  • source
  • parent
  • context
  • [–] 4 points 7 months ago

    RiffTrax is Mike Nelson's unofficial spinoff that releases audio tracks that replace the official audio with jokes, so they can riff on anything and not just movies they can get the rights to. Joel did a similar thing with Cinematic Titanic, though he focused on B movies. Both projects have pulled in people from MST3K, Joel's been part of some of the RiffTrax live events, and they've all done reunions and stuff together, so it's always been kind of the same crowd doing similar things under various banners.

  • source
  • parent
  • context
  • [–] 2 points 9 months ago (1 child)

    It's very different. You have to come at problems in a very different way because the tools at your disposal are not what you're used to.

    The language itself is quite elegant and simple, if you strip it down to its essence it's basically "when you see A on the left side of the equals sign, replace it with B on the right side of the equals sign" repeated until your program has either errored out or been boiled down to a single value. The type checker ensures that the replacement will be legal no matter what's happening at runtime, and can really help with getting things lined up just right because it's very thorough.

    The simplicity also leads to complexity, though, for a few reasons. The solution to any problem is usually generalizable, since there's such a small surface area to the language itself and the type system allows for very abstract declarations of what a thing does, which leads to very beautiful solutions that are also so general and reusable that it can take work to figure out "okay, so this thing composes one function that is traveling recursively down the list of pairs, applying this function to the first item, and that's composed into this other function that is pulling them apart into separate lists..." whereas if it had been written the "dumb" way it'd be more like "oh, we're breaking these items into two lists and tweaking the first item as we go," unnecessarily tied to the one particular scenario and totally unusable anywhere else in your code, but also more readable and concrete. There's an entire vocabulary of functions that do abstract things that you have to learn to make sense of what's going on sometimes.

    Related to that is monads, which are such a common pattern in Haskell that the language has special notation for them; they're an incredibly powerful tool for putting values in a context and/or creating an environment where background details can be handled out of sight, but they're also so generalizable that they span from the simplest monad that basically just captures "this thing might not actually exist" all the way to the IO monad which, in a way, represents the entire universe, or at least your entire computer. Learning Haskell means wrapping your mind around them, which isn't impossible, they're actually quite simple, basically just 2 functions that need to follow a few rules, but it takes a few examples and explainers to really get it.

    Generally I think any programmer benefits from at least trying out something like Haskell, even if you never become an expert or use it day-to-day, it'll give you a new angle to think from and could spark thoughts you never would have had before.

  • source
  • parent
  • context
  • [–] 2 points 9 months ago (3 children)

    I think Haskell would be a good choice. It's mature, used for real things (amongst a particular crowd, at least) and it's emphatic about being purely functional. Even when it is forced to enable other styles like imperative, it's done in a way that's syntactic sugar for a pure version (do notation being a great example of this, it's really just a chain of lambdas). You can do functional style programming in a lot of languages now, but they'll also let you mix and match other styles, which can make it easy to "cheat." Haskell will teach you functional programming and that's it.

    Also, since it sounds like you're familiar with Rust, it uses a lot of ideas from Haskell. Rust enums are a clone of Haskell's algebraic data types, patterns are almost exactly the same, traits are typeclasses right down to the fact that the compiler can derive some common ones automatically, Rust strongly encourages immutability while Haskell basically requires it, and in both languages you're only allowed to break the rules if you start using things with the word unsafe in them. My experience learning Rust was "oh, C and Haskell had a baby named Rust, cool!" The big difference is that in Rust, you're programming from inside a C-style computer with RAM, while in Haskell you're programming in a mathematical void and the computer is tidily packed away in a box labeled IO.

    A fun guide for learning Haskell is here: https://learnyouahaskell.github.io/

  • source
  • parent
  • context
  • [–] 4 points 9 months ago

    It's not undoing the division, it never happens in the first place. Remainders aren't ever fractions, that's the whole point, they're left over because they can't be divided evenly. 5 % 2, you can take 2 away twice and you'll have 1 left over which can't have 2 taken away.

  • source
  • parent
  • context
  • view more: next ›