Weeknotes 2022 W07: Storm clouds

February 14​–​20, 2022
1200 words

I’m not doing too well, mentally. It’s been building up for a while. There is a proverbial storm cloud hanging above my head, following me wherever I go. The harder I attempt to escape it, the darker the cloud becomes.

There is also a literal storm cloud, Eunice, hanging above northern Europe, whose hurricane-strength winds made me lose sleep as it made my apartment building groan and creak all throughout Friday night. The lack of rest isn’t helping my mood, either.


I’ve been busy writing! The article on implementing equality in Ruby is slow to make progress, though there’s a chance I can get it published on the Shopify engineering blog — perhaps as a series, rather than just one article. It is getting quite large, after all.

I did some research and experimentation around how to properly implement #hash in Ruby (see Ruby #hash implementations), and that led to two people creating PRs to improve #hash across the Shopify codebase. Is this what thought-leadering is? Saying “this is the way” and then having others do the implementation?


In other writing news: I started working on another horror short story. This time, I am revisiting an old idea and taking a new spin on it. The core idea is the same, but none of the old writing remains. Writing is always tough, but I feel myself improving. I’m sure the horror won’t be in the way it’s written!

I started keeping a (private) note called Story kernels where I stick all my inspiration. With any luck, there’ll be more short stories coming from that. Though I will have to overcome my fear of publishing my writing.

The horror short stories will, for evident reasons, not be published on the Shopify engineering blog.


In more creativity news: I’m slowly tweaking the design and implementation of denisdefreyne.com. The site design as it stands now is some of the best design work I’ve done in a while, and that makes me happy.

Nonetheless, I feel that there are still many parts to improve on. I’m struggling to make a reasonably attractive homepage, and the mobile layout still feels off.

Structuring CSS remains an unsolved problem. I’ve experimented with different approaches for this site, but I’m not overly happy with any of them. I’m excited for new CSS features like cascade layers, which will certainly help.

Richard Rutter’s Web Typography and Matej Latin’s Better Web Type have been quite helpful in improving the design of denisdefreyne.com.

I learnt a lot about dealing with color. It is a surprisingly complex topic, and the more I learn about it, the more I realise how little I know about it. Ironically, the color scheme of denisdefreyne.com has gotten simpler as a result: it is now greyscale with one accent color.


I’m attempting to evolve my implementation of the Lox programming language (from the Crafting Interpreters book). My plan is to improving parsing (use Pratt parsing), error handling (not just per-line error reporting), and maybe more.

I’ve been using Crystal, which works fairly well. Compilation times are long, though, because (as far as I understand) Crystal requires whole-program analysis. This makes compilation slower as the size of the codebase increases. As far as I can tell, Crystal does not have independently compiled units; the entire codebase is compiled every time. I’m a bit worried what that means as my codebase grows even further.


What is up with the German desire to make all cleaning products smell of fruit? My toilet smells like my fruity porridge breakfast bowl, and it’s very, very confusing.


On the entertainment side of things, I started playing Cyberpunk 2077 at the recommendation of a coworker. And oh boy, that game still is a buggy mess. What I’ve experienced so far: people floating around in T-pose, people falling to their death from random places in the sky (also while in T-pose), performance dropping to less than 1fps on occasion, and invisible people drinking from (visible) cans.

Content-wise, it also feels unfinished. I was excited about the metro/monorail system, but the station entrances are fast-travel teleport points, and you can’t actually ride the trains. Some areas in the game are off-limits, and trying to get into them yields a pop-up message “there is nothing for you here yet,” after which you get teleported back to where you came from. It sure doesn’t help with immersion.

Night City, the location the game is based in, also feels surprisingly small. I’m fully aware that modeling a realistic large city for roughly seven million people is an enormous task — especially in an open-world game. I can’t help but wonder, though: is the obsession with the open-world style harming the efforts to create realistic, immersive cities?

That said, it is a pretty game and I’m enjoying playing it. It just takes a while to adjust to the bugginess and get immersed.


I also picked up Vampire Survivors, an early access casual bullet hell game. It’s so simple yet so entertaining! At €2.39 on Steam, it is an absolute steal.


I picked up The Hitch Hiker’s Guide To The Galaxy (HHGTTG) again, in part because it felt like much-needed entertainment to distract from Various Unspecified World Events, and in part because reading is helpful in becoming a better writer myself. Surprisingly though, I found that I’ve become not a fan at all of the writing in HHGTTG. The humor feels crude and repetitive. Maybe I’ve just not been in the right mindset to enjoy this properly.

Shouldn’t it be The Hitch Hiker’s Guide To The Universe, anyway?


It is my unshakeable belief that the transporter in Star Trek is a horrific invention. This topic gets addressed occasionally throughout the series, but then people go back to not thinking about the fact that the transporter is a chamber of horrors. Lt. Barclay was right to be terrified.


I watched Ready Player One. It had good bits in it (the references to The Shining are particularly well done), but overall it was rather bland. It’s a profoundly sad film, and I can’t tell whether it’s on purpose or not. It pretends to be happy and optimistic on the outside. I’m struggling to figure out what it’s trying to tell me.


Earlier this week, I listened to this blockchain discussion on Twitter Spaces, with Angie Jones and Kelsey Hightower. This was a good listen, and much of what was said resonated with me. The recording is available for another 28 days and I recommend giving it a listen.

I’ll need to write up my own thoughts on blockchain technologies at some point. I’ve voiced my opinions rather crudely so far (paraphrasing: “everything is bad”), and even though I still don’t think the blockchain has a purpose at all, maybe I can write down these thoughts in a more nuanced way.

You can reply to this weeknotes entry by email. I’d love to hear your thoughts!
If you like what I write, stick your email address below and subscribe. I send out my weeknotes every Sunday morning. Alternatively, you can subscribe to the web feed.