On the second weekend of every year, I set aside my entire life for a singular activity—the MIT Mystery Hunt. The problem with ignoring life, sleep, for the monolithic goal of solving a million puzzles, is that you also ignore whatever habits you’ve just tried to start in the new year.
Case in point: it’s been three weeks since my first “weekly” post. It’s a perfect setup for failure!
In 2020, I wanted to review my Russian Anki deck (flash cards for learning new vocabulary) every day. Here’s how that went:
See that gaping white square on the third week? That’s the day my daily streak broke, Saturday, January 18; the weekend of Mystery Hunt 2020! I kept strong through February, March, April, but after a big move in May, the nascent habit was practically gone—and for good.
In 2021, I didn’t even bother trying to start a habit.
Last year, in 2022, I set a goal to write steno every day. And here’s how well I did:
That Mystery Hunt–sized gap is even larger, but despite breaking the streak there and once in a while, I persevered through until that summer. Some travel (without my steno keyboard) meant no daily blog, but after that, and after another yearly puzzlehunt, I was back on track. In winter, I had some more travel, but after settling home, I wrote until the end of the whole year. I’d call that a mission success!
So what changed?
The biggest factor was watching this video, which suggested making small, easy to accomplish goals: I only set out to write twenty words a day, which on most days amounted to two snippy sentences about what I did and how I felt. Add that all up over the year, and it’s somewhere around 16–17k words1, which is a third of the way to a NaNoWriMo novel!
The second factor: I stopped fretting over a broken streak, something that gamified apps like Duolingo love to torment you about. I just tried my best to write each day, and on my worst days, that meant forgetting, or intentionally skipping, and not kicking myself about it.
But on the best days, I sat and typed2 out word after word, exhausted by my slow steno (which is still something like 10 WPM), and wrote paragraphs over hours. Looks like October was a particularly motivating month!
So that’s why I’ve been gone for three weeks, and that’s why I’m still going to write. I’ve got a lot of blog ideas to realise!
-
Word counting is a surprisingly non-trivial problem. How many words are in this sentence: “I’m going to go make a coffee—a real hot one—at 15:30, aight?” If you counted 14 words, good job! You agree with ChatGPT on tokenization, but not on counting (ChatGPT is great at natural language, but not so great at math). I asked ChatGPT to provide a Python script that tokenizes the sentence in the same way, but it utterly fails to generate a correct script: it needs to keep “I’m” and “15:30” together, but split “coffee” from “a” and “one” from “at”. ChatGPT eventually suggests using NLTK, which is the best idea so far–but none of its tokenizers can properly do the aforementioned. All of this is to say that no matter how I tried programmatically counting the words in my daily blogs, they failed to match my human counts (nor the automatic counts in Obsidian). So all the word counts are approximations with the simplest count:
len(text.split())3 ↩︎ -
Stenography pedants insist on using “write” instead of “type”. My understanding is that this comes from a background of shorthand, which was literally written steno, as well as stenographers wanting to distinguish their career from the inferior typists of yore. In the modern days, this is a moot point. Practically all writers are typing, and steno is just another typing method now, if a very arcane art full of interesting history, design, and skill. But that’s a blogpost for another time (; ↩︎
-
Don’t get me started on other languages. Chinese tokenization is even harder, because words can be any number of characters long, without any whitespace separating them. Hey, should I add word counts to these blog posts? ↩︎