Denis Defreyne

Weeknotes 2025 W21: An accident

May 19​–​25, 2025

Quick bits:

  • I had my birthday earlier this week. Hooray!

  • I’m rather pleased with my new hair clipper. This one is corded, meaning it won’t die like my cordless one.1 And so, I started the week with a fresh haircut. (Cutting one’s own hair is still tricky, but I’m getting the hang of it.)

  • Inspired by Andrew Plotkin’s new portfolio page, I renamed my Work page to Portfolio. “Portfolio” makes more sense. Next up: make it look pretty with screenshots and stuff.

  • My RSI has been acting up. Not fantastic. But what consistently helps is taking a break as soon as I feel it coming.

  • At the end of the backend engineering craft meeting at work, I suggested we all raid the frontend engineering craft meeting happening simultaneously. My coworkers gave me a weird look. I guess they’re really not the sort that hang out on Twitch a lot.


Shower thoughts:

  • Kinda wild that people had no way of telling what they looked like before the invention of the front-facing camera.2

The other day, I got cursed at by a cyclist who got upset at me walking on the sidewalk. In their way, apparently. Where they should not be fucking cycling in the first place.

Later that day, a driver pulled their parked car onto the street, crossing the bike path where I was cycling, without looking for cyclists and without using a turn signal. I couldn’t brake in time, and hit the car and crashed onto the ground. Ambulance and police got called by bystanders. I’m mostly fine, fortunately — primarily, that was quite the scare.

I’m wondering whether Brompton bicycles are more prone to crashing. Their tiny wheels make them significantly less stable than regular bikes. Usually that’s not a problem, but it makes it hard to retain balance when braking and turning at the same time.


When I’m starting a new project, I often get a ton of ideas, a roadmap starts to form, and I start maintaining lists of to-do items. Having all those pieces of information in one file is overwhelming, and keeping them in separate files means I lose the connection between them. It would be so nice to have a per-project wiki.

And so I started making one. Here’s what Deniki looks like so far:3

A screenshot of Deniki. There are two open documents, each with a plaintext editor with blue wiki links. Each window has a toolbar with home, back, and forward buttons.

I genuinely like the idea of a personal, per-project wiki.4 I’ve got Bear for all my notes, but Bear is not a great place to put project-specific details. This is especially relevant for fiction projects I work on: the things I invent in terms of locations and characters certainly don’t belong in Bear. In that way, Deniki is more like Scrivener,5 though much more open-ended and minimal.

Minimal it will remain. From the screenshots, it might look like Deniki supports Markdown, but it really only uses double square brackets, like [[Deniki]], for creating links. It’s just plaintext otherwise.

A distinguishing feature (or anti-feature) is that in Deniki, you can create a wiki without having to think about what to call it or where to save it on disk: you open a blank window and start typing. This might seem like a small thing, but it is one of the things that puts me off from using Obsidian.

I initially started Deniki as an Electron project, built with Type­Script and Preact, but building desktop apps in JavaScript is a pain. It is written in AppKit now, which is an improvement, but not a walk in the park either — AppKit’s documentation is quite sparse and often out of date.

Special thanks to Christian Tietze whose collection of posts on macOS development are continuously helpful.

I have started documenting my own learnings and dubious advice in the hope that it is useful for the people that come after me.


My Kinesis Freestyle Pro mechanical keyboard is having hardware problems. The “S” key is acting up. Often, the keypress doesn’t register anymore. This is mildly annoying at best.

I’ve not been overly happy with the keyboard when it comes to the software, either. The software that comes with it to configure the keyboard layouts and macros no longer properly works on recent macOS versions. The keyboard configuration software works by mounting the keyboard as an external drive, but that drive often fails to mount (yielding a “disk not readable” error), and when it finally does mount correctly, the Freestyle Pro SmartSet App often fails to recognize the presence of the drive.

Still, it is by far the best keyboard I have ever used. I would not want to (or even be able to) go back to a non-mechanical or non-split keyboard.

But it is critical that I have a working keyboard. So, I’ve ordered a ZSA Moonlander. I’ve been eyeing that one for a long time, and it’s been recommended to me by many people.


Entertainment:

  • I finished Assassin’s Creed Mirage.6 It’s a good game, though quite small, and very much the same as the previous games. Though I like the focus on stealth, which the previous games had been moving away from.

    Now… on to play Assassin’s Creed Shadows?7


Links:


  1. See Week­notes 2025 W19: Divin-AI-tion, Week­notes 2024 W42: Fidelity, and Week­notes 2024 W52: On hold↩︎

  2. Not sure if I need a separate “shitpost” section of my week­notes. ↩︎

  3. I’ll let you guess what “Deniki” stands for. ↩︎

  4. See the Create a standalone wiki app idea page where I’m collecting all my thoughts. ↩︎

  5. I’ve still got the idea of creating a structured prose editor. Deniki is a separate project, though I imagine there’s quite the overlap. I might get back to the structured prose editor at some point. ↩︎

  6. Assassin’s Creed Mirage (Ubisoft Bordeaux, 2023), published by Ubisoft. ↩︎

  7. Assassin’s Creed Shadows (Ubisoft Québec, 2025), published by Ubisoft. ↩︎

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, subscribe to the web feed.