Michael Labbé

207 Followers
373 Following
219 Posts

Programmer from Vancouver focused on systems, tools and games.

https://www.michaellabbe.com

Merit is associative rather than directly judged by a lot of people. You see this in all fields. "Guitar player X is up and coming; they once shared the stage with Clapton".

It's hard to make people extrapolate gameplay. On the flip side, people seem to OVER-extrapolate the capability of robots from demos. "We're doomed", say the masses, because they saw a robot breakdance on a static plane. 5/5

Turns out many of the people who come to game publisher pitch meetings cannot extrapolate gameplay in their heads. These are people who determine the value and risk profiles of a game before spending money on them. Usually this falls back, then, on developer credentials and how high "x meets y" descriptions score for their portfolios.

"Look at this concept, and imagine these mechanics playing out!" is simply courting disaster. A large percentage of the population evidently *cannot mentally simulate gameplay* from pictures or documents. Not even for a second.

As a game developer, you may have the ability to reason about imagined systems interacting for seconds or even minutes at end. Take a second to reflect that this is a unique capability and not something that most people possess.

"Imagine this, stretched out over twelve hours!" is the best case. Most people can imagine doing the same thing they just did, but for longer.

"Imagine doing this, but with good art!" is a phrase you invoke at your own peril. Most people can imagine good graphics instead of greyboxes, but not all.

One of the the most common missteps is assuming other people think like you do. This manifests in mistakenly assuming they would reach the same conclusions, but also that other people have the same capabilities that you do.

I've had the dubious distinction of pitching game demos to publishers a few times in my life. A demo inherently asks the viewer to imagine something that's not there.

1/x

An interesting facet of guis that seems underexplored is displaying updated stats in a context menu while scrolling an underlying document. For instance, displaying the current function name / nesting depth under the context menu's position in a code editor.

You Can't Promote a Language By Its Features Alone

"In reviewing why languages are successful there is often a retroactive feature-driven mythology wherein we over-attribute the success of a language to its unique syntax and functionality."

https://www.frogtoss.com/labs/you-can't-promote-a-programming-language-by-its-features-alone.html

You Can’t Promote a Programming Language By Its Features Alone

It is deceptively easy to make the mistake of attributing a language’s popularity solely to the syntax and functional features of the language. In reviewing why languages became successful, there i...

Frogtoss Labs

In 2026 I will be shipping a new type of tool for program writing. It has a visual ah-ha moment that translates well in 10 second GIFs. My gut says the best approach is to *downplay* it so it doesn't come across as pretentious or requiring a paradigm shift.

Ultimately, productivity improvement over time comes from stacking small gains, and I think I have something new that programmers will decide to add to their stack.

One of the most overlooked things in troubleshooting system stability is USB-C hubs. They add drives (including SDCards!), ethernet and HDMI ports to a system of random quality. You don't need to use these ports/drives to light up code paths in your kernel. Also, they never spec how much of USB-C's 100W they tax to run the chip. But it's usually 15W or so. They get warm, so you know it's not gonna be free.

hashtag unplug the hub.

I grew up in the DOS era of 8.3 filenames, so it took me until today to realize that naming a file extension after a program that consumes it is useful marketing.

.swift, .odin, .dart, .scala