I love the game Balatro. I love it so much it kind of made me reevaluate my entire life.
The basis of it is such a simple elaboration on a game that everybody knows. It feels inevitable, like it was always going to be made and we were all just waiting for it to come around. It's the kind of thing that makes you ask "why didn't I make this?"
Well, so many reasons...I've always loved playing games, but I never really saw game making as a feasible path for myself. Some of that was probably laziness, more of it was self-doubt, even more of it was my complacency with choosing a life path in vaguely that direction ("I'll just learn to program first") and imagining that the next steps would be obvious.
Of course, I was trading in a conception of time that only makes sense to a boundlessly time-rich version of myself.
This is not a blog about making a game, but it may in part be about learning to make a game. It's certainly a blog about learning.
Learning
Learning as an adult is difficult. Not because learning materials are difficult to find—we've never had it better. The primary constraint is time, and the secondary constraint is money, which is convertible to time at an absolutely brutal exchange rate.
My solution to this is to make hay out of the time I spend learning. Creating shareable artifacts from my learning will not only help me retain what I learn, it'll help demonstrate my knowledge to people who can pay me to go deeper on subjects I'm already interested in. If I make those artifacts well enough, they can potentially even help others teach themselves!
In the ideal case, I can use time to make money to buy me more time, saving time for others all the while.
A little while after having this thought and putting serious consideration into starting a blog, my wife showed me Josh Comeau's blog—another big inspiration for this one—and in his post How To Learn Stuff Quickly, I found Shawn Wang's post Learn In Public, which describes this whole feedback loop in much greater detail.
This is both the most inspirational and most brutal part of seriously diving into anything, particularly in a public context. Once you start digging deeper into your best ideas, you'll inevitably find somebody who thought of them years ago, and expressed them much more eloquently. There is such a wealth of talent in the world—so much being created by so many people across such vast spans of time—that if you dig deep enough you will always find somebody who created what you wanted to create only better, with much less apparent effort, a long, long time ago. So why bother creating anything at all?
I feel this question very deeply. I find the act of creativity very satisfying, but I'm generally disappointed by the products of my creativity. I have high standards for my own output, and it takes so much churn of just-okay output to create anything worthwhile in any discipline that I've rarely been able keep up long enough to produce something I'm happy with.
This is, in part, a blog about creating, and about being satisfied with creative output.
Creating
Even after making the bones of this blog, I faced a shocking amount of difficulty writing the first post. In fact, I have an entire "first post" that I archived after finishing because I didn't feel it communicated anything worth the time it would take to read.
Here's a common pattern I've faced in finding future post topics:
- I find a topic worth learning and posting about
- In researching, I find a blog post explaining the topic better than I could
- I think "why write a new post when this one already exists?"
There's a fantastic answer to that question in the Learn In Public post that I referenced:
make the thing you wish you had found when you were learning ... talk to yourself from 3 months ago.
Everybody learns differently, and I often find myself looking over a dozen explanations covering the same ground from slightly different angles until I find the one which best matches my own. In that sense, I'll be creating documentation for my own understanding, and primarily for my personal consumption. If somebody else benefits from my particular understanding, it'll be essentially incidental, but I would absolutely be stoked to hear about it!
All that to say, this isn't a blog about anything in particular. It's a blog about learning and creating—a place to put the products of my exploration as I learn about the something that I want to create.
Something
Recently, LocalThunk—the developer behind Balatro—put up his own blog. In the Balatro timeline post, he shares this little story about coming up with his name:
My partner was learning to code in R at the time, and she asked me “How do you name your variables?” I went on some rant about casing, using descriptive words, underscores, etc. She waits until I am finished and says “I like to call mine thunk”. I thought that was just about the funniest thing I had ever heard.
The way variables are declared in Lua is (sometimes) with the local keyword, thus local thunk was born!
When I know what a variable is in its full context, but the abstraction hasn't yet reached the linguistic part of my brain, I start by defining the value without considering the name—I just call it something
. So that's what this blog is: I know what it is in the abstract; I know its constituent parts; but you'll be figuring out the shape of the whole at the same time I do.