
I am a creator and a builder.
I love building something new or striving to build it better. My drive is making technology fun, approachable, and engaging for everyone.
๐ ๏ธ Product Engineering
Professionally, I am a full-stack developer working on everything from the cross-platform Flutter-based mobile app that an end user engages with to the backend powering it with Node.js, tRPC + OpenAPI, Zod, and more. I care about performance and crafting interfaces that feel intuitive and polished out of the box.
โจ AI In Practice
AI is a fundamental part of my modern toolkit. I have worked with local agentic systems through Jolla Mind2 and opencode, and leverage tools like Claude across the entire pipeline; from ideation to implementation to rollout and communication. It has changed how I approach building software and connecting with the people who use it.
๐ง Desktop Linux
As the founder and lead of Buddies of Budgie, I develop Budgie Desktop, an independent desktop environment available across all popular Linux and BSD-based operating systems. For Budgie 10, that means GTK3 and Vala. For Budgie 11, I am learning Qt6 and C++ as part of a ground-up rewrite.
โ๏ธ Infrastructure & CI/CD
I design and maintain CI/CD pipelines using GitHub Actions and Woodpecker, with deployments spanning Google Cloud, DigitalOcean, as well as Vercel. Good infrastructure should be invisible and not an impediment to iteration.
๐ท Cinematography
My camera is another instrument in my creative toolkit. I originally got it for cinematography, sharing my interests in technology, open source, and development. Photography came along for the ride, though video is still where my passion is.
Development updates, reviews, and more.
I livestream development work, share progress on Budgie Desktop and other projects, and occasionally review hardware and software that catches my attention.
In this stream, we work on integration of KConfig and KConfigXT into the budgie-shell panel, building on lessons learned...
In this video, I demonstrate some early budgie-shell panel configuration: dynamically creating the directory structure,...
Quick demonstration of Magpie, the in-progress Mir-based compositor for Budgie Desktop 11. This demonstrates our early c...

Latest from the Blog

Sharing windows in OBS Studio under wlroots-based Compositors
In this blog post, I provide a handy workaround for sharing windows in OBS Studio under wlroots-based compositors.

Building an Alternative Ecosystem
In this blog post, I dive into the need to build an alternative ecosystem of desktop applications.

Dev Diary 12: Koto August Progress Report
In this development diary, I provide an update on progress made on Koto in the month of August 2021 and an extensive debrief on my experience with GTK4.
What I'm Building
Open source software that serves users across the Linux ecosystem and beyond.
Budgie Desktop
โAn independent desktop environment for Linux, built for simplicity and elegance. Currently shipping 10.10; building 11 in Qt6 and C++.
Koto
โAn in-development audiobook, music, and podcast manager for desktop Linux.
Buddies of Budgie Website
โThe organization website with a focus on approachable design and developer documentation.
Budgie Desktop Services
โBudgie Desktop Services is the future central hub and orchestrator for Budgie Desktop (with a focus on Budgie 11). Today, it primarily provides Wayland-native display configuration for Budgie 10.10; over time it will coordinate broader desktop logic for Budgie 11.
Leading an independent desktop environment.
I started Buddies of Budgie in 2022 to give Budgie Desktop an independent home across the Linux and BSD communities. As the organization lead, I write code, contribute to architectural direction, handle DevOps, and work to make our contributors' efforts feel meaningful. I share our progress through blog updates and livestreams.
Budgie 10.10 ships today with Wayland support and a Vala/C/GTK3 stack. Budgie 11 is a ground-up rewrite in Qt6 and C++, designed to be modular, extensible, and built to last the next decade.
buddiesofbudgie.orgโ

