Thanks for replying, that's an interesting architecture. The idea of using a high-up parallel state seems particularly neat as a way to ensure every part of the page render stays independent, and to burst up the compute serving the response.
That is not a use cases I would've expected Step Functions to handle; I'm intrigued. You're using express ones, I assume, but how are you wiring them up and why?
Perhaps coincidentally, it was also around the same brief beautiful moment in time where one could talk with all of one's friends using a single messaging client, possibly even over federated XMPP.
> [Mr. Tan] has directed job candidates still working for Apple to bring “Actual parts” from Apple to their interviews for “show and tell” sessions in which he and his team at OpenAI can elicit still more Apple confidential information.
> As part of its investigation, Apple found a “pattern by employees who depart for OpenAI of taking steps to evade the security processes intended to protect Apple’s confidential information.”
> Apple also claims former engineer Liu exploited a security bug to download confidential engineering files after leaving the company. Rather than report the exploit, Liu allegedly joked about it in messages (“LOL,” “so funny”). Liu also failed to return an Apple-issued laptop after his departure.
This seems pretty close to "they trust me, dumb fucks" behaviour.
USB-C maximalism is great for travel. I personally recommend travelling with a USB-C desktop charger, but use one that accepts a IEC C7 ("figure-8") cable. Then, travel with only the cable corresponding to your destination (or buy one when you get there). That avoids having a wall wart that might not fit in narrow spaces, or whose weight might make it fall out of older sockets.
This is also something to be aware of when teaching people, too. I've seen advice for designing Anki-style flashcard decks that reminds people to create flashcards for both A->B and B->A.
The problem is that Wayland just isn't a compelling alternative for many people, so they don't move. For me, I see no benefit because I got used to avoiding HiDPI and don't have a mixed-DPI workspace. For some bizarre reason they made each compositor implement input-handling separately, so for example artists might have to switch compositor just to use their tablet of choice. And worse yet, some people with input accessibility needs are just going to get straight up locked out of libre computing. See https://nocoffei.com/?p=451 for one example.
Not in my experience, because the self-checkouts have to be designed for untrusted users instead of trusted employees. So I spend more time reacting to "please scan item" -> "place item in bagging area" -> "unexpected item in bagging area" -> wait for employee to notice that my checkout needs an override.
Whereas a manned checkout lane gives me a proper belt to put my items on and someone who can usually operate a terminal fairly quickly.
Speculation, as someone who grew up with some of those games:
We could use Heretic/Hexen as the most direct contemporary example of a "Doom++ engine": it had keyboard look up/down, inventory, and the ability to fly up/down. Wiki reckons Heretic sold 500k units and Doom 2 sold 1.2M. Hard to say in hindsight if that was caused by less enthusiasm for a fantasy aesthetic or the decline in enthusiasm for Doom-level tech.
We can also look at how far BUILD-style engines were able to push environments in 2.5d engines of the day. Duke3D had sloping floors and wildly changing terrain that was revolutionary for the time. (Remember the second level in the shareware version, where you basically blew up a building halfway through the level?) Other contemporary BUILD-style titles like Eradicator were able to add crude room-over-room by declaring floating platforms and other special entities without having to build them into truly 3D world geometry.
A third point on the triangle might be Rise of the Triad, which pushed the Wolf3D engine well beyond anything a normal person would expect. Apogee were able to add keyboard look up/down and flight up/down, more verticality in levels by adding floating discs and floors (again outside of the standard level geometry).
And to stretch the triangle metaphor to a tetrahedron, there's also a lot stuff from the Doom source port universe that might have been invented if Carmack & Co. had to push the Doom engine as far as it could go. When you can add new things and linedef/sector actions, that allows a lot of flexibility when you don't have to build the engine from scratch.
All that makes me think that 1994 iD could probably have had a commercially successful game on a Doom++, especially if Carmack kept learning all the portability and networking stuff that made Quakeworld work during the shift to Windows 95. What's much less clear to me is whether they'd be able to catch and/or drive the wave of 3D accelerator development, and whether Epic MegaGames would have just leapfrogged them completely with Unreal. I think the Quake-on-Doom++ timeline might end with Unreal becoming the engine more people built on through the 2000s (instead of all the Q3/idTech3-based games). The talent retention could mean that iD stays competitive on worldbuilding and feel (the Doom Bible shows they had some of those ideas, but the tech wasn't ready for them), and Carmack+Abrash+... could probably catch up with Sweeney+.... We probably don't get American McGee's Alice in that timeline though.
EDIT: The other thing to consider is that Descent was also bringing 6DOF (degrees of freedom) to PC gaming. While it was a portal-based engine like BUILD, it had 3D-modelled polygonal enemies etc. It was a beloved but niche title because it was so challenging to play, but it shows that there's a bunch of technical innovation around at the time, and maybe it gets a larger market share and the technical innovation happens with or without iD?
I think it's a really cool homage, but that the site could be a little clearer that it's not Fabien's work. When I first clicked through and saw a different name, I was hopeful that someone had started a publishing house dedicated to high-quality dissections of classic games.
> If you are a non-resident business and you sell goods into Australia with a customs value of A$1,000 or less, GST applies and you will have to collect this from your customer and send the GST to us.
I am not very familiar with Go and especially not its generics support. Can you implement the "join" version instead of the "bind" version, where you turn a T[T[a]] into a T[a]?