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

help-circle

  • Please ignore cloud; they have been posting inaccurate flamebait throughout this thread.

    I would never not buy a laptop from Apple. Not only are they the last PC maker that hasn’t fallen to the Microsoft Monopoly Machine, but their laptops are well-built†, futuristic, and have incredible value and battery life for what you get. Especially since they migrated off of Intel.

    † I know someone will inevitably come up with a counter-example, but the last time they had a widespread quality problem was a little more than ten years ago.






  • The GPUs aren’t really a problem; the M2 Pro/Max/Ultra chips are much more powerful than Intel’s integrated GPUs, are very competitive with other mobile GPUs, and are competitive with all but the high end of desktop GPUs. The main thing holding them back is they consume less electricity, which is important in a laptop, but is not necessarily important in a desktop PC.

    The problem is, game developers tend to pick the platforms that will make them the most money, and Microsoft has held an uncontested monopoly on the PC OS market for more than thirty years now. They have held onto their monopoly for so long because they have the high ground on GPUs (Apple has a grudge against Nvidia that probably won’t go away until Tim Cook retires), and they also hold a number of popular games that are exclusive to Windows (Call of Duty, FIFA, Madden, Final Fantasy, Counter-Strike, Fortnite, Diablo, Far Cry) whereas Apple’s highest profile exclusive macOS game at the moment is Hello Kitty.

    It seems like each time Apple makes gains in the PC market (iPod/iPhone halo effect, keeping controversial UI changes to a minimum), Microsoft gains one and a half times that.


  • I’ve brought various apps, bundles, and frameworks from PowerPC to Intel to 64-bit to ARM ever since macOS 10.0 first launched. Usually the most difficult parts were:

    1. During the PPC to Intel transition, converting code that expected all data to be big-endian over to handling little-endian data, and catching integer division by zero before sending such operations to the CPU
    2. During the 64-bit transition, switching from all the APIs Apple removed over to newer APIs, if not already done, and converting all code that expected integers and pointers to be 32-bit over to 64-bit
    3. During the ARM transition, converting code that abused variadic functions to code that used them properly, and converting all code that expected long doubles to be 128-bit over to 64-bit (I know some developers were burned by the VM page size change, but that didn’t affect anything I did)

    But yeah, usually the most difficult part of the transition is managing the dependencies. Whenever Apple transitions CPU architectures, if your app depends on a closed-source third-party library or kernel extension made by developers that went out of business years ago, you’re more or less screwed unless you can find or build a replacement.




  • In the Final Fantasy Legend (or “Makaitoushi SaGa” as it was called in Japan), I somehow managed to make it to the game’s final boss without realizing the shops in the game sold more than three items per shop.

    The game’s shopping interface presented you with a list of items, three at a time, but there was no indication on the screen that the list was scrollable, so I thought that the list presented were all they sold. That meant I missed out on about 75% of the items in the game, including a few that turned out to be kind of important for the last boss fight.

    Of course, I couldn’t beat the last boss, and the only way to escape the last boss’s lair was to use an item that was sold in late game stores, but was buried in the list of items, so I had to start the game again from the top.

    Good user experience design is important in games.