Josh On Design

  • LinkedIn
  • BlueSky
  • RSS
  • Blog
  • About Josh
  • Books & Writing
  • Apps & Projects
  • Hire Me
past future

    Can we still make software that sparks joy?

    March 19th, 2026

    A diatribe in when I am greatly disappointed in my industry.

    Read more...

    Tagged: gui ai rant

    A Senior Engineer Tries Vibe Coding

    March 1st, 2026

    If you live on planet earth and you are at all connected to software you've probably tried out 'vibe coding', ie: using an AI tool to write software for you. As someone who's been writing software for close to four decades I've seen code automation tools come and go. Believe it or not, people used to talk about Visual Basic in the same breathless tones of today's vibe coding tools. The outcome has always been that the new tech never lives up to the hype but can be useful in some contexts. The tricky part is always figuring out what it's good at and what it isn't. I believe these AI tools will go the same way; but hey, maybe this time it's different. I can't talk about what I haven't experienced, so I tried experiments this week. Here's what I learned.

    Read more...

    Tagged: gui ai

    Embedded GUI Layout Algorithms

    October 7th, 2025

    Layout is one of the hardest problems in UI toolkit design because there are so many different ways to design a layout. Creating a system that supports them all is practically impossible. Even creating a system that merely makes them all possible to implement (even if difficult) is a challenge. And making the layout fast is even harder. However, given that we are targeting embedded systems, rather than general purpose interfaces (ex: no resizable windows), we should be able to narrow down the scope to something usable. Let’s dig in.

    Read more...

    Tagged: rust embedded embeddedrust gui

    2025 JS13K WebXR Entries

    September 25th, 2025

    This year's JS13K Entries.

    Read more...

    Tagged: webxr

    Embedded Rust GUI Progress report

    September 16th, 2025

    As part of my ongoing research with embedded Rust on ESP32 devices, (starting with the T-Deck but eventually branching out to other devices), I started creating a simple reusable UI toolkit to automate the boring code that I end up writing over and over for every example. The code is on github but I haven't made a crate for it yet.

    Read more...

    Tagged: rust embedded embeddedrust

    Accessing the Keyboard and Screen on the LilyGo T-Deck with Rust

    August 27th, 2025

    I’m really enjoying using nostd Rust for embedded programming on the [Lilygo T-deck](https://lilygo.cc/products/t-deck?srsltid=AfmBOooByFjhRNf0GYZImQ4xz2IpCBmELtidro9PzSlUJ90iCgWRWSA) and I want to share what I’ve learned so far. There are many excellent tutorials and docs on Embedded Rust in general and the ESP32 in particular, so I’m going to cover things that are specific to the T-deck or that I’ve found to be under documented. Today let’s start by looking at the T-deck’s signature feature, the keyboard.

    Read more...

    Tagged: rust embedded embeddedrust

    Slaughterhouse Five

    August 19th, 2025

    I don't know why I waited until I was almost fifty to read Slaughterhouse Five. I'd always heard it was a groundbreaking work of sci-fi, but I didn't know why. Now that I've read it I can say that it's not really sci-fi, but it certainly is groundbreaking.

    Read more...

    Tagged: bookreview

past future
Like this? Hire Me!