minimalism as a harness

2026-04-12

LLMs have a much easier time if it is clear that there is one, and only one, way to do something.

Python, ironically, isn't that. It's too flexible. But a language like Lua is! It only has one container object and it is also delightfully lightweight to run.

And on top of that, it turns out that there's a delightfully minimal, but batteries included, 2d game engine called LÖVE that really gets you a prototype quickly.

So I gave it a spin and it turns out you don't even need to worry about game assets! LÖVE comes with APIs for graphics, fonts, sounds and even music. It's got everything you need to generate all of it!

So basically, with an engine like that, you're getting mighty close to zero-shotting a first prototype. It does help if you have a simple game in mind and if you can point to a variation of an existing game. So I went for the bacteria puzzle from 7th guest. I barely had to explain this game and it could just immediately go for it.

The only thing that I missed while exploring this was a notebook environment for this space. Something similar to what Bret Victor talks about here.

More than anything, that feels mighty tempting to explore some more!

Until then, the minigame can be played here.

you win while training

2026-04-10

Back when I was rowing in college a teammate said an incredibly memorable thing:

You don't win a rowing match during the match, you win it during the training.

Few things ring as true as this and the attitude deserves to be repeated.

You're free to keep an outcome in mind, but outcomes require preparation. And that preparation is where it is at.

legos vs 3d printers

Let's say, as a dad, that there are two cool kinds of creative toys you could make with your kid.

  1. You buy a 3d printer, and print what-ever creative thing you two can come up with.
  2. You buy lego, and take things apart together when you want to make an adjustment.

The 3d printer is way more flexible in what shapes it can create. But once it's created, you cannot change it anymore. The only thing you can do is to put down the shape, walk to the computer and then re-design. Then, you have to wait for the 3d printer to print the new shape and hope for the best because there is a disconnect between holding something in your hand and seeing a design plan on a screen.

Lego is different. Don't like a part? Take it out, and swap it. Not only is this fun, but you are actively using your hands the whole time! By interacting with the shape, you also become better at creating it. It's a super direct feedback mechanism, very different to the 3d printer.

The reason I bring up this story is because it describes why I still like to code, be it manually or agentically, in Python notebooks. It allows me to think more about the pieces of legos that I want to have and how they are going to click together. This lets me play and understand the problem I am trying to solve much better. And it also gives me the ability to quickly iterate on my ideas. Even when I decide to drop a lego-piece for now, I can still easily pick it up again later. It's also a lot easier to explain what the code is doing to a 3rd party when you have the right widgets/elements.

I've met peers who prefer to fully vibe code an app for each and every use-case. There's a place and a time for that. But that feels too much like a 3d-printer to me and sometimes I want software that's just more like legos.

video game write-offs

2026-04-08

It seems that companies might have very good reasons to hang on to a video game IP even if they have no intention of using it. I imagined this would mainly be to prevent another company from using the IP, but Michael Cain, a developer on Arcanum, has another reason: taxes!

When Microsoft bought Activision, they had to assign a dollar value to every "dead" IP they acquired—including Arcanum. Let’s say they assigned it a value of $5 million.

If Microsoft decides they will never make Arcanum 2, they can write that $5 million off as a total loss to lower their tax bill.

So that means that if anyone wants to buy the IP, even if Microsoft is never planning on doing something with it, it can still be more valuable to sit on it. It's worth more as a tax-shield than a source of revenue.

the light of a CPU

2026-04-08

Just quoting this tweet.

I would like to make my apologies for defending M$, but I must from time to time. I have to put respect on github for handling the amount of shit code that has been added over the last 3 months. literally 10s of billions of lines of code that will never see the light of a CPU

It does a good job of describing something that I've been wondering. How many of those lines of code are written only to never ever run anywhere?

once the ball is rolling

2026-04-07

It can be hard to go from 0 to 1. But once you're there, it's much easier to go from 1 to 2.

I was reminded of this today when I looked at the YT stats for the marimo channel. It took 6 months to get our first 500,000 views. But it only took 3 months to go from 1,000,000 to 1,500,000.

notes on youtube and devrel

2026-04-01

I've been doing developer relations for over five years now, and YouTube has been a big part of that. The marimo channel sits around 1.5 million views and 10k subscribers after a year, so I like to think I've learned a thing of two that others might learn from.

I'm writing this for DevRel people who might be curious to upload videos to share their (hopefully good) ideas.

  • YouTube is a huge. It stands as one of the largest search engines ever now. If you have a tool that's worth knowing about, odds are people are going to learn from it by searching on YouTube as opposed to Google. That means that either you put a video there such that you can own the message, or you're going to have to accept the voice of some influencer to do this for you.
  • Thumbnails and titles are important. People click before they watch something. As always in life, try to keep things simple. You can overdo it with thumbnails. But a small pro tip. Try to go for a background that's common across all the videos. That way if someone likes your content, your background is a thing that they will recognize.
  • Hooks matters less than story. Grabbing a hook to pull someone's attention tends to be common advice, but it will only get you so far. If you overpromise, people will remember and it's your job to stand out as a reliable source of information. So instead of worrying about the introduction, maybe you should worry about the full story of the video first. Once the story is solid, making the introduction is going to be a lot easier.
  • Short form content is increasingly becoming the norm. It's content that's easier to make, easier to get high view numbers for, but it's also content that shows up much less when users search for you.
  • Subscribers matter way less than they used to. It used to be the case that the algorithm would favor a high subscriber count. It feels that that's less the case. It's more preferred that you have a video that is watched till the end.
  • Resist the views temptation. Views, that's the thing that's measurable. But that's also a distraction. Remember that anything you do on YouTube is meant to be a funnel for "another thing" you're trying to promote. Views matter less than that "other thing". It's not necessarily the case that download numbers correlate with view counts on YouTube. So you want people to see your video, sure, but the video should also convince people to do something after they see it. Influencers might care more about viewcounts for their sponsors, but you should care
  • Analytics are deceiving. A view doesn't imply a single person saw one video. If it's a YouTube short a view is counted twice, or even three times, if the video loops back to the start. More important metrics exist, like number of (new) viewers, but these require a drill down in analytics.
  • Show don't tell. Too many videos don't take the actual efforts to even run a line of code. When you're doing developer relations, you're talking to adults here. So why would you repeat what's listed on the documentation page? Go a step further. Be enthusiastic. Show that you care!
  • Having a popular channel is very valuable. When the channel was small, it was hard for us to find guests who might want to appear on a livestream. Now that the channel is bigger, there's a lot more inbound for this. Sure, it might take a year before you get there, but do consider it's an investment. One that can pay off well.
  • Buy decent gear. The camera matters less than the microphone. But you can't expect to get people to take your video serious with a potato quality video.

Just some points, feel free to take a lesson out of it. I also have this video and this video on my recording setup for extra details.

prune early and often

uv is amazing but it does come with a sneeky little downside. Every time and you create a cache there's a good chance that it will stick around for-ever. Especially if you create many demo projects with their own environment.

That's why, like flossing, you'll want to frequently do this:

uv cache prune 

Just today this saved 168.2Gb from my drive!

marathon data

This paper had an interesting chart:

Uploaded image
The time it took for a large group of people to finish a marathon.

Notice how this marathon chart has spikes at precise half-hour marks? These numbers are self reported and they also serve as an interesting reminder not to trust data at face value.