Marshall Bowers

Conjurer of code. Devourer of art. Pursuer of æsthetics.

2023 in Review

Sunday, December 31, 2023
1542 words
8 minute read

I haven't written a year-in-review since 2019. I'm sure it's no coincidence that this was the last one before COVID-19 reared its ugly head and threw things into disarray.

I find that it can be hard to write these when everything since March 2020 bleeds together for me, but perhaps that is all the more reason that I should be writing them.

So in hopes of a return to form, here is my 2023 year-in-review.

WorkOS → Zed

After just shy of three years at WorkOS, in September I left WorkOS and started working at Zed Industries.

I've been assisting with a massive rewrite since I started, which we'll be launching early next year. I'm very much looking forward to getting that out into the world and getting to work on our 2024 roadmap!

Grief and Therapy

This year marked the 13th anniversary of my family moving back to the US from China. This was a massive transition for me, and I'm still uncovering the ways in which it's impacted me since.

In the past two years I've started to explore and unpack these feelings.

Back in June 2022 I first learned the term "unresolved grief" and was able to put a name to the weight I've been shouldering all this time. I've also learned that it's a fairly common phenomenon among third culture kids (TCKs), like myself.

After dragging my feet for a while, I finally started seeing a therapist this year. She is a TCK herself and has experience counseling TCKs through their unresolved grief.

So far attending therapy has been immensely helpful as I start to unpack all of the baggage from my life overseas.

Two things that I've learned in the process thus far:

  1. There is way more to unpack than I initially thought. I feel like I'm just at the tip of the iceberg.
  2. I need to give myself the space to process my experiences, and understand that it's not a straight path to being fully healed.

Projects

Crane

In June I started work on something that I've wanted to build for a long time: my own programming language.

This undertaking has always been on the shelf as a "someday" project, with the skills and expertise needed to pull this off always feeling out of reach.

One day I was struck by the realization that not building a programming language due to feeling ill-versed on how to build one was a self-fulfilling prophecy of failure. That was the kick I needed to take the plunge and do something to move me closer to the goal.

And thus began Crane.

There's still a long ways to go before it feels like an honest-to-God programming language, but I'm proud of taking the first step in the right direction.

Untitled MORPG

In a somewhat similar vein, in August I resumed work on a long-running project of building an MMO-lite.

MMORPGs have always been my favorite games to play, and I've always wanted to make one that was my own. Unfortunately, MMORPGs are also the most difficult games to make, and making one solo is almost certainly impossible.

However, I still believe it possible—with sufficient scope-adjusting—to make a game that bears some resemblance to an MMORPG that I would enjoy playing.

I've worked on this project off-and-on for a while now, but this year I made some significant progress towards something that is actually starting to feel like a game.

I'm still not ready to share too much about it publicly, but what I can say is that I have the bones in place for an RPG where multiple players can interact within a shared, persistent world controlled by a separate server.

Goal Review

At the beginning of the year I put together a short list of goals for this year.

Successes

Write Rust, and a lot of it

I've been shouting Rust's praises from the rooftops for a while now, all the while not having a ton of experience using it in anger. I wanted to change that this year, and set myself this goal of writing lots of Rust code.

At the time, I was still using TypeScript at my day job, which meant that any Rust I was writing was still in my spare time.

The bulk of my Rust coding was in the two projects discussed above: the Crane compiler and my work-in-progress multiplayer game.

Since joining Zed Industries in September, I'm now writing Rust full-time, which has been a dream come true.

With all the Rust I've written this year, I can safely say that this goal was an absolute success.

Distance myself from platforms I don't control

I wrote this goal in the wake of Twitter being taken over and summarily sacked.

These events left me feeling wary of all platforms that I don't have direct control over, and prompted a shift towards owning as much of my data as possible.

For instance, I now have a routine job that syncs all of my Last.fm listening data over to flat files in a GitHub repo1. I have all my tweets backed up there as well, up until Twitter did away with API access.

I'm still spending far too much time being consumptive on platforms like Twitter and Instagram.

Connect with others more intentionally

For a while now I've been feeling increasingly isolated in my personal life. I've fallen out of touch with most of my old friends due to time, distance, or both.

While I didn't make as much progress as I would have liked in this area, I did try to be more intentional about connecting with my parents and siblings.

Still a long ways to go.

Failures

Do better at planning and cooking meals

It doesn't feel like there's been any noticeable improvement in this area.

Getting dinner on the table each night still feels like a chore, and I usually find myself scrambling at the last minute to figure out what we're going to eat. This often results in eating less-than-healthy meals, like frozen pizza.

Find a form of exercise that I don't hate

I really haven't been good about exercising this year. I've tried riding the stationary bike a bit, but it never lasts more than a week or two before I fall out of the habit.

On a positive note, I upgraded my home office to an adjustable standing desk this year. I try to stand for about half of my work day, which I've found has left me feeling better overall.

Stats

Code

I'm quite happy with my code stats for this year.

My GitHub chart has a lot of green:

My GitHub contribution chart showing 6,069 commits.

I also hit the ground running in the Zed repo:

My contribution graph for the Zed repo. 562 commits. 93,577 lines added and 80,047 lines removed.

Music

Overall my music listening was down a bit from previous years, but I still found time to listen to a bunch of it.

These are the albums I listened to the most in 2023:

  1. Equinox - City State
  2. Nosebleeds - MisterWives
  3. Zig - Poppy
  4. The Fortress in the Forest - Sanguine Forest
  5. EVERGREEN - PVRIS
  6. Всё - Рожь
  7. DAMSEL IN DISTRESS - GIRLI
  8. Blackbraid II - Blackbraid
  9. Gag Order - Kesha
  10. In The Faith That Looks Through Death - Vital Spirit
  11. Digital Pacific - Luna Shadows
  12. Volume II - Manuel Gardner Fernandes
  13. VOL. 4 :: SLAVES OF FEAR - HEALTH
  14. Kx5 - kx5
  15. After Hours - The Weeknd
  16. Euphoric - Georgia
  17. HELLO, THANK YOU - Blvck Ceiling
  18. Diorama - MØL
  19. Dystopia - Old Seas Young Mountains
  20. Fatalism - Polaris

(*Fin)

For me, 2023 has embodied the polar extremes of good and bad.

This year has been simultaneously tumultuous and rewarding, joyous and mournful. I feel like I've learned more about myself in this year alone than in all of the years preceeding it. But these discoveries have often come at the cost of confronting what has been buried deep in my psyche.

And yet, I remain optimistic that the best days are ahead, and that this new year will contain much to be thankful for.

1

Still figuring out contingency plans for GitHub itself...