Weeknotes 2022 W50:
Apple vintage no more

Week of December 12 to 18, 2022
What are these? These week­notes are a reflection on the past week. I write about anything from hobby projects and work to creativity and mental health. I publish my week­notes every Sunday morning. Consider subscribing via email or using the web feed!

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 Weeknotes 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 Weeknotes 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 Weeknotes 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!


Week­notes for December 12 to 18, 2022. Browse the weeknotes archive, get these week­notes via email or subscribe to the web feed.