
If you light a lamp for someone else, it will also brighten your own path.
How can I help today? Choose a category to explore.

After a (very) long hiatus from gaming I recently got back into Table Top Role Playing Games (TTRPGs) and it has reignited some of my creative writing as well. Tips, tricks, and stories abound! Come along for the adventure!

Dig into this new section about Perforce Puppet with news and FAQs and tutorials on one of the leading Enterprise infrastructure automation tools on the market.

DevRel and Technical Product Marketing
As a professional creator in DevRel and product marketing, I like to share my thoughts on what I’ve been learning about, how to improve your DevRel craft, and how to connect and help your community. Being in DevRel is honestly one of the most satisfying career tracks I’ve had!
Looking for something else?
Over the years I’ve written on a lot of different topics, maybe you’ll find what you need in one of these tags!
agile (42) alm (63) Amplify (10) architecture (17) Audiobook (41) azure (14) Borderlands (40) Bunkers and Badasses (12) christmas (26) CMS (14) conference (8) continuous deployment (12) continuous integration (13) Corruption of Lani (22) D&D (70) deployment (19) DevOps (35) DevRel (27) Firebase (9) GenAI (13) Generative AI (14) Jax (28) Keystone (11) Lani (30) mvp (8) Netlify (11) Puppet (31) Puppet Enterprise (13) Puppet Enterprise Advanced (9) scrum (20) service-oriented architecture (13) Sitecore (146) soa (12) SW5e (12) TDS (12) TFS (13) Thora (27) TTRPG (124) Vercel (12) XM Cloud (16)
Latest articles
-

Failing Over Between Gemini Models
In a recent article I highlighted how to use Google Gemini LLM for tagging content, but I also highlighted that the free tier offered has daily quota that you need to stay under. Each model that you connect to has its own quota, and with some simple error trapping we can toggle between tiers and… Read more
-

Using Webhooks to Update an Algolia Index on Every Sanity Edit
While exploring Sanity and Algolia, I decided to investigate how to keep my Algolia index updated as edits were made in the Sanity Studio. It turned out that this was super simple to set up by using webhooks in the Sanity Studio configuration. I followed a great guide on Sanity io by Irina Blumenfeld on… Read more
-

Using Google Gemini to Suggest Tags From a Taxonomy List
I recently wrote about using OpenAI as I was exploring doing some tagging of content based on product or article information. After seeing the cost it would be for a large number of requests, I looked into what might have a more generous free tier and found Google Gemini to be quite useful for development… Read more
-

Moradin’s Call | A Thora Silentblade tale
The sun was hot and high in the sky when they started to approach their destination. Even though Thora felt as if they had all just arrived minutes ago from that other plane, the dwarf also felt sweaty and tired, as if they’d been sitting there for hours glued to the wagon driver’s bench. Everything… Read more
-

Using OpenAI to Suggest Tags From a Taxonomy List
To be able to search and list products by tags, the data in a database needs those tags associated to every product (or piece of content). Sometimes, that is just too large to manually curate. I wanted auto-tagging, but not just whatever tag the AI could think up. I have a specific taxonomy that I… Read more
-

Using GROQ to Extract an Excerpt from a Sanity Block Content Field
I was digging into Sanity to learn a little bit more about GROQ and how the queries work while building out a potential replacement for my blog hosting. When listing articles, one of the most common things I want to do is show a little excerpt from the article, but I don’t want to create… Read more
