Weeknotes 2022 W50:
Apple vintage no more

December 12​–​18, 2022
← previous weeknotes
next weeknotes →

I’ve been sleeping particularly badly the last few weeks. It hasn’t been improving. My sleeping pattern is irregular: sometimes sleeping 10h+ and sometimes sleeping maybe 6h; sometimes being dead tired by 10 PM and sometimes being wide awake at midnight.

For me, those are usually the early onset signs of a depression. I hope it doesn’t go much further. I’m not entirely surprised, though: the stress and last week’s bad news are definitely having an effect on me.

Back in Week­notes 2022 W37: Sick, I talked about the web site I built for the vintage Apple hardware to give away. I finally posted about it on Mastodon and got a ton of responses.

Even better — in those few days, I talked with dozens of people and found someone close by who’s already taken the entire collection! The Apple hardware is all gone! Hooray!

I’ve not replied to all the emails I’ve gotten just yet. I’ll get around to that later today, to thank people for their interest. Undoubtedly I’ll have to disappoint some people, but that was inevitable.

Thank you for the good times, vintage Apple hardware. May you find a great future somewhere else.

The giant aquarium in Berlin has burst, causing quite the devastation. I suppose everyone is lucky that this did not happen during daytime, or there certainly would have been (human) fatalities. 1000 tons of water does not fuck around. Yikes.

I’m feeling a little emotional about it. I’ve been there a few times, and it has always been impressive — and also mildly scary. I suppose my apprehension wasn’t unjustified in the end.

Here’s one of my mediocre photo of it, back in 2019:

I hadn’t done any work on Gex (not since Week­notes 2022 W27: Air), but this week I ripped out the LLVM implementation and replaced it with a highly incomplete, mostly broken C source-to-source compiler.

The LLVM implementation broke at some point in the last few months, and I have not been able to debug it. All I got was weird stack traces that made no sense to me.

LLVM is powerful, but it’s also quite difficult to use. The documentation is terse, and it’s mostly geared towards usage from C++. On top of that, the C API is not properly documented and doesn’t quite match the C++ API.

So, I feel that a C transpiler might give me more of a chance to move the project forward. It’s also definitely easier to debug: I’m familiar with C and the output just makes so much more sense.

However, it does mean that I’ll need to translate the Gex AST into a C AST before writing out the C code. Writing out the C code directly from the Gex AST is doable for only the most trivial programs.

But realistically, I’ll drop the work on Gex again some time soon because I really don’t have much time to dedicate to it. Still, it’s fun, and I might continue bit by bit as I have the energy, time, and motivation for it.

Twitter is becoming a worse place day by day. The link to my Mastodon profile now says “Warning: this link may be unsafe.”

Elon Musk is becoming more and more of an unstable and dangerous individual.

Speaking of Elon, you should vote in the Worst Person In Tech competition. I was rooting for my former boss (a fascism enabler), but there are definitely worse people in tech.

The Atom GitHub repository got archived. What a journey this pieces of software has set us on. (I didn’t have anything to do with that, but I do feel a little emotional about it. In a good way.)

At work, I’m slowly but surely moving away from the environment branches approach (see Week­notes 2022 W46: Burn III, also teeth). We managed to get a fix written and deployed to staging in 15 minutes, which would previously have taken about an hour. It’s a fantastic improvement.

I’ve always known what the end goal was in terms of delivery pipelines. The challenge was moving an existing project to use that approach while ensuring everyone is on board and the migration path does not disrupt the day-to-day work. It’s too early to declare victory, but I think I’m doing it right.

I’ve also been cleaning up some of the scripts that are in use at work. In particular, I’m changing them to Use long-form options in scripts, which makes the scripts just so much easier to read and understand.


Should I install the next-gen update for The Witcher 3? And play the game again? I do have the ability to run the real-time raytracing now… hmmmm!