Michael Labbé @frogtoss.bsky.social · 02/06/2026Announcing Grain DDL: code gen by & for demanding engine developers. Define structs/data once. Write custom generators for protocols, saves, shaders, etc. No macros. Generate reviewable code on every keystroke. 300kB exe (Win/Mac/Linux). Apply for Closed beta: www.frogtoss.com/grain 022
Michael Labbé @frogtoss.bsky.social · 14/04/2026We are fortunate to have a Handmade event in Vancouver. The format is a mix of presentations and conversations -- if striving for great software is your thing, this is worth checking out. 051
Michael Labbé @frogtoss.bsky.social · 21/10/2025Printable Base89 LUT Encoding - Embed LUT indices in your utf-8 strings www.frogtoss.com/labs/printab...frogtoss.comPrintable Base89 LUT EncodingNeed In state logic or semantic markup with text strings, there are two options: in-band formatting, or out of band formatting. In-band formatting indicates changes in a string. For instance: Hello... 000
Michael Labbé @frogtoss.bsky.social · 01/10/2025Whatever is next, this is playing messaging games with apps that people use for productivity. That doesn't feel good. affinity.serif.com/en-gb/affinity.serif.comCreative Freedom Is Coming - AffinityCreative Freedom Is Coming. October 30 020
Michael Labbé @frogtoss.bsky.social · 30/04/2025Steve Jobs: Part of what made the Macintosh great was that the people working on it were musicians, poets, and artists, and zoologists, and historians Satya (interpreted): 30% of Microsoft's code is written by a computer that learned to generate code from reddit opinions and incomplete github repos 020
Michael Labbé @frogtoss.bsky.social · 19/03/2025An educational use for LLMs would be to diff two compiles and explain the changes between them at a disassembly level. You could set up a start checkpoint and then work on making various changes and have it explain the impact of those changes on the code generation. 010
Michael Labbé @frogtoss.bsky.social · 14/03/2025My unpopular opinion on hidpi monitors is to put them closer to your face instead of using scaling. Now you have more real estate and the font size is the same after factoring perspective dimuntion! 000
Michael Labbé @frogtoss.bsky.social · 01/02/2025Why is it that there are these handy "Minecraft server operator moms and dads" that host game servers for their kids, but we need a 1.74 trillion dollar company to share our photos and videos with our family members. The core value of the platform should be commoditized by now. 000
Michael Labbé @frogtoss.bsky.social · 30/01/2025Some other things that didn't exist when I shipped this messageboard in 2000: - blogs (this code fingers .plans) - frontend, node - remotely affordable multicore servers - javascript that could update the DOM after page load - best practices like not logging error messages to the browser 010
Michael Labbé @frogtoss.bsky.social · 30/01/2025In 2000, I wrote a news posting/threaded forum software in Perl for threewave. At 5.5kloc of Perl, it ran well for 3 years. Things that did not exist back then: - CSS - Firefox - The cloud - CI - Stable usb support in Linux - SSL by default - Python 2 - SaaS 100
Michael Labbé @frogtoss.bsky.social · 28/01/2025"I have to switch languages because the one I invested time, knowledge, code and tooling in has a flaw and there is a better one" Past a reasonable point, the flaw is not worse than the reset. A good programmer can write good software in a bad language. Stay the course. 010
Michael Labbé @frogtoss.bsky.social · 28/01/2025Regarding the youtube/social media systems language wars: Ship, don't quip. 010
Michael Labbé @frogtoss.bsky.social · 27/01/2025I jump between debuggers a lot (VS, Xcode, Remedy) and find the keyboard shortcut muscle memory to be a challenge. The 8Bitdo Micro controller has a mode where it is a bluetooth HID keyboard and you can emit any keyboard keys, so I do the usual step into/over/out/jump to location using it with 140
Michael Labbé @frogtoss.bsky.social · 16/01/2025A screenshot of my web browser checking out a Gamecube purchase in 2001 from Future Shop. The last time Nintendo boosted spec without drastically altering the core intent of the console! 000
Michael Labbé @frogtoss.bsky.social · 14/01/2025Do you make games that have mouse move events? On MacOS, this event code is running up to 8,000 times a second on gaming mice, and you must do your own collation or suffer extremely high CPU both in the OS and in your application. mastodon.gamedev.place/@michaellabb...mastodon.gamedev.placeMichael Labbé (@michaellabbe@mastodon.gamedev.place)MacOS runs a lot of code on pointer update. I can get my WindowServer process to utilize 80% of an m4 performance core by moving my mouse. A builtin trackpad can bring it as high as 16%. After an i... 030
Michael Labbé @frogtoss.bsky.social · 20/12/2024It would be cool if there was an indie-ran OST app that let you explore by composer, organize music by intensity, included stage-appropriate imagery and controlled your smart lights to match the game's visuals at the time the music played in-game. I would pay a monthly fee for that. 000
Michael Labbé @frogtoss.bsky.social · 15/12/2024It's unbelievable to me how far the Windows brand has slid with enthusiasts in a decade. It's unfortunate that the largest audience of people who pay for PC software have an antagonistic relationship with the OS provider. Microsoft forcing hardware upgrades on so many users is a baffling choice. 100
Michael Labbé @frogtoss.bsky.social · 02/12/2024Cool things in games we lost for no great reason: - Adhoc wifi (play Mario Kart games around a campfire) - Second screen (Battlelog live updates) - Same friends, same server (screw matchmaking, play with same group every night) 000
Michael Labbé @frogtoss.bsky.social · 25/11/2024Apple's Instruments names program hangs >250ms as "microhangs". That's a lot of hang, actually. 000
Michael Labbé @frogtoss.bsky.social · 19/11/2024High time for a reintroduction! I'm Mike, lifelong game developer drawn to on online games, system engineering and performance. I've attached key art from some of the games I've worked on. After twenty years of making games, I'm still swinging for the fences - no signs of slowing. 130