That particular code is idiomatic to anyone who worked with 2D bitmap graphics in that era.
pt == point, r == rect, h, v == horizontal, vertical, BSR(...,1) is a fast integer divide by 2, ORD4 promotes an expression to an unsigned 4 byte integer
The algorithms are extremely common for 2D graphics programming. The first is to find the center of a 2D rectangle, the second offsets a point by half the size, the third clips a point to be in the range of a rectangle, and so on.
Converting the idiomatic math into non-idiomatic words would not be an improvement in clarity in this case.
(Mac Pascal didn't have macros or inline expressions, so inline expressions like this were the way to go for performance.)
It's like using i,j,k for loop indexes, or x,y,z for graphics axis.
Shpongle albums are split up into normal-sized tracks. Most CD players, media players, and streaming services support gapless playback of albums, at least for subscribers. When a Shpongle album is played with gapless playback enabled, it sounds like one long song.
I don't have a Spotify link handy, but here's a YouTube Music example:
Fun fact: The PowerMac G5 CPU cooling fan controllers have a failsafe mode: If the OS doesn't communicate with the fan controller, the fan controller assumes the worst: that the CPU is switched into the most power-hungry mode possible. To prevent potential damage to the CPU, after about 30 seconds, the cooling fans are cranked up to extraordinarily loud levels.
Apple didn't document how to control the fans. It took Microsoft a while to reverse-engineer the fan controllers. During that time period, using the G5s as Xbox dev kits required putting up with extraordinarily loud fans.
I'll add that initial dev kits are typically released 18 months before the console launch, that means they are built using technology that is one generation behind the hardware that the actual console will use. In the old days before Moore's Law ended, that meant that the console had to have a much more expensive CPU and GPU, to try to match the expected performance of the console hardware. These days, with only marginal improvements in CPU and GPU from generation to generation, this is much less of an issue.
He's covered the decline of BBBY many times in his newsletter, explaining the financial details and shaking his head each time.
His Monday April 24th, 2023 newsletter, titled "Bed Bath Moves Beyond", covers the situation once again. It ends:
"Bed Bath saw that its retail shareholders wanted to throw their money away, and that its sophisticated lenders wanted to get their money back, and realized that there was a trade to be done that would make everyone, temporarily, happy. So it did the trade. It’s amazing. The lawsuits are gonna be great."
Reddit recently announced changes to their APIs pricing and features that will probably lead to the abandonment of most third-party Reddit clients. Users of those clients are upset.
Besides animation and games, Flash was also used for streaming video and video conferencing.
iPhone customers were so desirable that, over time, the video streaming sites had to support Apple's video streaming format. They would have also supported Apple's video conferencing app, but I think Apple was unable to open-source the protocols for the video conferencing format, due to patent issues.
I also felt Tim was tempting fate when he said "You can import directly from a self published URL. Of course it's the responsibility of the publisher to never change the semantics of that code in an incompatible way."
I just can't imagine that working at scale. I bet they add semantic versioning support pretty quickly.
Thanks for this link, very helpful in understanding the Verse language!
Verse-as-a-scripting-language-for-a-game-engine is an interesting experiment. The million script writers who use it are not going to have any understanding of the functional language underpinnings. They're going to copy-and-paste until things work. There's going to be a lot of superstition and cargo cults.
I guess Tim Sweeney has a long history of successfully using exotic custom scripting languages in game engines, from ZZT to various generations of UnrealScript. So he probably knows what he's doing.
In my opinion Draw Things is the best stable diffusion app currently available for macOS/iOS. It's free, it is available in the App Store, it manages downloading models and weights, it supports a wide selection of popular models as well as custom weights, and it supports inpainting, text2image, and image2image.
It has some oddities: it uses a sqlite database to store generated images rather than the more traditional files, and the UI is idiosyncratic. You have to follow the author's twitter feed to learn how to use the advanced features.
Those quotes are entirely compatible with "not really".
Chris is talking about the Sooner: https://www.androidcentral.com/look-back-google-sooner-first.... It was called Sooner because it was going to come to market "sooner" than the other, more advanced, Dream prototype. After the iPhone announcement Sooner was canceled, in favor of the "Dream" prototype, which eventually shipped in a modified form as the G1.
The _software_ difference between non-touch Sooner and the touch-capable G1 were relatively minor. Same OS, same view system, same application framework.
As I recall, Chris's role at the time was as a UX focused engineer, so perhaps from his POV it was a massive redesign. But if you consider Android as a whole, relatively little changed. I recall the apps being pretty easy to port over to support touch. (Moving to a bigger screen helped offset the problem of having to make the buttons way larger.)
It's easy to write an app that displays arbitrary graphics at 1600 nits on the MacBook Pro. You just have to use the Metal API, an "extended" color space, and a Float colorPixelFormat.
I'm not sure that this blog post author is trying to accomplish, possibly they are trying to use some other API besides Metal?
pt == point, r == rect, h, v == horizontal, vertical, BSR(...,1) is a fast integer divide by 2, ORD4 promotes an expression to an unsigned 4 byte integer
The algorithms are extremely common for 2D graphics programming. The first is to find the center of a 2D rectangle, the second offsets a point by half the size, the third clips a point to be in the range of a rectangle, and so on.
Converting the idiomatic math into non-idiomatic words would not be an improvement in clarity in this case.
(Mac Pascal didn't have macros or inline expressions, so inline expressions like this were the way to go for performance.)
It's like using i,j,k for loop indexes, or x,y,z for graphics axis.