Souls Like Strings

Ender Magnolia: Bloom in the Mist

The Assassins Creed 2 of video game sequels.

Why

  • All the stuff that made Ender Lilies amazing, with the rough edges sanded off
  • New setting and new (slightly) less depressing vibes
  • Stronger connections to all your summons as characters
  • Satisfyingly links the two games in the same universe

Why Not

  • Can feel a little too similar to its predecessor, at least when played back to back

Impressions

A fantastic sequel which takes the medieval fantasy foundation of the original and brings it into the steampunk-ish future. The basic gameplay and premise are the same,...

Continue reading

Infinite Jest

Named for what it provides David Foster Wallace while people try to guess what on Earth is going on.

It's a testament to the difference between great and decent writers that I had absolutely no idea what was happening for the majority of this book, but was still enraptured enough to spend something like 40 hours finishing it.

DFW opens with the classic 'start at the end' gambit, then constantly keeps the reader off balance by jumping around in time and resolutely refusing to reveal anything resembling an overarching...

Continue reading

TWIL July 18th 2025

  • BE VERY CAREFUL WITH FORCE PUSHING
  • ABSOLUTELY DO NOT FORCE PUSH WITHOUT CHECKING CHANGES AFTER A LONG AND COMPLEX REBASE ON TRUNK
  • WHY WOULD YOU DO THAT
  • make sure you're not setting this.loading = true on a class that has another 5 or so api calls coming up
    • especially if it's not an observable property
    • and you want them to run simultaneously
  • when you roll out a new feature to prod, don't just spend hours making a performance monitoring dashboard
    • instead you should probably spend that time looking at the error monitoring
    • or do both,...
Continue reading

TWIL July 11th 2025

  • If you're going to have types, don't trick them. No matter how annoying it is to do them properly now, having misleading types will cause someone else a lot more annoyance down the road.
  • Alternating between passing regular props, destructuring them from params, and sometimes using injected props is very confusing. Stick to one.
  • mobx allows you to make properties on a store observable, then components you mark as observers react to changes in observables which affect them.
Continue reading

Cobalt Core

Breaking out of time loops with the power of friendship.

Why

  • Distinct and interesting gameplay for each crewmate
  • Having three for each run + meaningfully different ships opens up a lot of possibilities
  • Funny/charming story & characters

Why Not

  • You don't like card games, roguelites or quirky animal-like characters.

Impressions

As someone whose time to play games is more limited these days, my favourite thing about Cobalt Core was that it had a story with a clear and satsfying endpoint; which left me feeling I'd experienced all the game had to offer. That's not...

Continue reading