• 0 Posts
  • 16 Comments
Joined 2 years ago
cake
Cake day: June 9th, 2023

help-circle


  • I'm pretty sure the ball landed in

    C3.

    Albert is very sure that Bernard doesn’t know either. Bernard would know the location if it was in 5 or 6, indicating to all of us that Albert was told a row that isn’t A or B.

    Now that Bernard can also deduce that it’s not A or B, he’s narrowed it down to one possibility. That means all of us now know it can’t be column 1 either, because if it were, he wouldn’t have gotten anything from that new fact.

    Finally, now that column 1 is eliminated, Albert has deduced the location. Row D would’ve left two more possibilities, but row C leaves just one. Albert must know it is in row C.

    For the rest, well, there isn’t even actually a question, I suspect you’d open a door and pick a box and hope that you’ve got a gold ball to pick, and it’s not clear that he’s following Monty Hall rules and always opening a bad door, but I think knowing which ball got thrown would make the rest of the odds fall into place.


  • As the other comment said, Severance is going to get truckloads of money for the foreseeable future, it’s one of Apple’s biggest hits. And the delay for the second season wasn’t intended; it sounds like they weren’t happy with much of the second half and had to go back to redo it. That being said, I won’t spoil it too much but

    Tap for spoiler of... tone I guess

    the second season does also end on a kind of “wow, what’s the fallout from this going to be” note, so if you were bothered by the season 1 ending it might hit the same nerve.


  • More specifically, they’re borrowing the more mathematical meaning of variables, where if you say x equals 5, you can’t later say x is 6, and where a statement like “x = x + 1” is nonsense. Using “let” means you’re setting the value once and that’s what it’s going to remain as long as it exists, while “var” variables can be changed later. Functional languages, which are usually made by very math-y people, will often protest the way programmers use operators by saying that = is strictly for equality and variable assignment is := instead of == and = in most C-style languages.


  • Do you think there’s any reason to believe that these tools are going to continue their breakneck progress? It seems like we’ve reached a point where throwing more GPUs and text at these things is not yielding more results, and they still don’t have the problem solving skills to work out tasks outside of their training set. It’s closer to a StackOverflow that magically has the answers to most questions you ask than a replacement for proper software engineering. I know you never know if a breakthrough is around the corner, but it feels like we’ve hit a plateau for the foreseeable future.


  • It’s very good for navigating and editing text quickly, and fantastic for situations like “I need to do the same thing 100 times” with things like macros. Coders are frequently opening a big, complex file, jumping around it a lot, changing big and small parts of it, and doing repetitive tasks. For something more like writing out thoughts for an email, editing them slightly, then being done with that text forever, there aren’t as many advantages, you’re spending most of your time in “insert” mode which is effectively “normal text editor that people are used to” mode. That said, it’s one of those things where when you do get used to it and start to enjoy it instead of being frustrated by how different it is, you start wanting it wherever you have to type anything.








  • Yeah, they’re probably talking about nulls. In Java, object references (simplified pointers, really) can be null, pointing nowhere and throwing an exception if you try to access them, which is fine when you don’t have a value for that reference (for example, you asked for a thing that doesn’t exist, or you haven’t made the thing yet), but it means that every time you interact with an object, if it turns out to have been null, a null pointer exception is getting thrown and likely crashing your program. You can check first if you think a value might be null, but if you miss one, it explodes.

    Kotlin has nulls too, but the type system helps track where they could be. If a variable can be null, it’ll have a type like String?, and if not, the type is String. With that distinction, a function can explicitly say “I need a non-null value here” and if your value could be null, the type system will make you check first before you can use it.

    Kotlin also has some nice quality of life improvements over Java; it’s less verbose (not a hard task), doesn’t force everything to belong to a class, supports data classes which are automatically immutable and behave more like primitive values than objects, and other improvements.