SelAromDotNet

A professional .NET developer, educator, creative technologist, electronic musician, and sci-fi/horror nerd.

Session Recap: Create AI Apps with .NET Minimal APIs and MAF

A recap of my third Cyber RGV talk with a complete tour of how .NET APIs evolved over two decades, and how minimal APIs pair with Microsoft Agent Framework to make building AI apps surprisingly painless.

Sprints, Spaces, and Streamlining my Developer Workflow with Superthread

I found a project management tool that actually matches my workflow. Here is why Superthread was the right fit for my blog and development projects.

Cleaning Up Bad SQL Data: Find and Delete Duplicate Records The Right Way

Find duplicate data in a production SQL table? Follow this pragmatic, real-world guide to safely find and delete those duplicate rows using a Common Table Expression (CTE), and learn how to prevent it from ever happening again with a unique constraint.

Hello World (Again!): Rotating Focus and Reclaiming Creativity

After a chaotic 2025 filled with burnout and unfinished projects, I'm reviving my blog. Here is how a late-night breakthrough and a new 'Rotating Focus' system helped me find a way back to my creative passions.

Session Recap: The Evolution of .NET AI — From Raw Requests to Autonomous Agents

A recap of my second talk at Cyber RGV, walking through how AI integration in .NET has evolved from raw HTTP calls all the way to stateful, multi-agent workflows.

Session Recap: .NET Blazor — One Framework to Rule Them All

A recap of my first-ever public tech talk, given at the Cyber RGV September 2025 session. What Blazor is, what I covered, and where to watch the full recording.

If AI Can Make A Doofus Like Me Sound Interesting, What Can't It Do?!

I recently discovered an incredible new feature of Google's NotebookLM that can generate a conversational podcast about ANYTHING. To truly challenge it, I picked the most mundane topic I could think of: me!

Piranha CMS: Customizing the Model with Regions and Fields

Discover how easy it is to add fields to your custom types in Piranha CMS using Regions.

Piranha CMS: Working with Default and Custom Routing

Routing your custom pages and posts to their own handlers provides a unique layout for each of your custom types.

Piranha CMS: Working with Models and Creating Custom Types

Easily create custom types for pages, posts, and archives to serve different kinds of content on your site.

Showing 1-10 of 191 posts