Truly persistent terminals in VSCode and Cursor

There are times when I am embarrassed to realize that I have accepted a painful limitation for years. In this case, it is my resistance to restarting my IDEs because I don’t want to lose my terminals. Now, thanks to a burst of motivation and a modern chatbot, I’m setup for my IDEs to resume exactly where they left off.

Continue reading “Truly persistent terminals in VSCode and Cursor”

$5 millionaire for a week: riches to rags in the startup world

For a few brief moments, my stock holdings in my former employer were hypothetically worth $5 million. This is the wild story of how I realized less than 1% of that value.

I’ll be pretty specific about some of the numbers, because equity compensation is a mystery to most people. Until I went through this, I never knew what’s possible and what’s normal. It’s a very complicated topic, but I hope that by sharing a real world situation, someone else might be able to learn something useful.

Continue reading “$5 millionaire for a week: riches to rags in the startup world”

Ready or not: The Fake Story of Music

A cartoon rocket ship launching, leaving behind an exhaust cloud and musical notes

For almost a year, I have been crafting and re-crafting a project I call The Fake Story of Music. It has been stuck in its present state for more than half of that time, and there’s so much more I want to do before it matches the vision in my head. However, I think it’s already pretty good and I’m letting go of my perfectionism.

Start with the story behind the fake story, or jump right in.

Let me know what you think in the comments on this post.

LLMs think

An “AI brain”, rendered by ChatGPT

It’s interesting to see scientific people categorically reject the notion that LLMs “think”. People write them off as “fancy autocomplete” or regurgitating their source material, and conclude that they do something categorically different than what humans can do. That it’s all just a parlor trick. I think1 that’s wrong.

Continue reading “LLMs think”

GraphQL was not the future

GraphQL Logo
The GraphQL logo. Credit: the GraphQL Foundation

Six years ago, I wrote Is GraphQL The Future? for the Artsy Engineering Blog. At the time, I thought it was possible devs might bypass REST and reach directly for GraphQL when designing APIs. We can now confidently say that the answer is “no”, but I’m still very proud of that piece, and I think I was right about a lot of other things.

I find myself revisiting GraphQL for the first time since working at Artsy, and the piece has been a useful refresher. I think I really nailed describing what GraphQL actually is, rather than analogizing it to things it has fundamental differences with.

So, what happened to GraphQL?

Continue reading “GraphQL was not the future”

Rust: First impressions

My new company uses Rust heavily for its backend systems. I’ve been interested in Rust since its beta days, but only from a distance. I was very intrigued by the ownership system, which is Rust’s most distinctive and innovative feature. I also knew it inherited a lot from languages like Scala and OCaml. How hard could it be?

Read on for some loosely organized hot takes.

Continue reading “Rust: First impressions”

Arc of a job search

Credit: sk via Pexels

It is always helpful to have a roadmap for an unfamiliar experience. I did not, as I embarked on an intense job search. But maybe my reflection will be useful to others.

I noticed that the process has followed an arc. Much like chess, it has a distinct opening, middlegame, and endgame. Each of these phases has a very different feel, and has required me to optimize in different ways.

Continue reading “Arc of a job search”

Rejection is a gift

A cup of tea
Credit to Charlotte May, via Pexels

“I’m not everyone’s cup of tea.”

This is one of the big takeaways of my job search, as it nears its end. This is hard for me to acknowledge, as someone who can get along with nearly anyone and with a track record that highlights my versatility.

I don’t mean this in terms of getting along with interviewers. I mean in terms of people’s vision for the role they’re hiring for and whether I’m a high confidence match.

But I think that’s OK.

Continue reading “Rejection is a gift”

Silence is golden

Image of a man overwhelmed by symbols representing a maelstrom of messages
It me

Protect your notification space. This is my #1 tip for managing time and attention.

My goal is to to only get notifications for things that require my timely action or awareness. Everything else needs to be out of my notifications, especially marketing and news. Unfortunately, enforcing this is a continuous job.

I want to talk about why I think this is critically important and then some concrete strategies I apply.

Continue reading “Silence is golden”

search3 is coming

ChatGPT-created picture for the concept of holistic search. It is a surreal image of a magnifying glass suspended in the air looking at some kind of network of lights. There's a cloud in the background and various orbs surrounding the cloud with vague pictures inside.

Similar to how people have coined the term web3 to describe a proposed radical change in the consumer web landscape, unlocked by the blockchain1, online search is about to be disrupted by the same technology that gave us ChatGPT. Soon, we’ll be able to search by describing what we’re looking for, holistically, rather than having to think like a search engine.

Or, at least, I hope so.

Continue reading “search3 is coming”