Skip to content

Blog

Follow along as I write about my journey into the emerging field of AI Engineering. Large Language Models (LLMs) open a new category of fuzzy functions allowing us to build software solutions that were not possible before. Regardless of how quickly models continue to improve, there are two categories of techniques that will continue to remain relevant:

  1. Evals - The cardinality of input and output domains of these functions f: String -> String is essentially infinite. This makes the task of measuring quality and performance equal parts difficult and important.
  2. Composite Solutions - We will always be able to achieve more reliable results by composing systems from smaller, more purpose built components.

Is All AI Powered Software Development Vibe Coding?

There's a lot of strong opinions on both sides when it comes to the newly coined term "Vibe Coding". I prefer to avoid all the drama. I just like to build software. I think it's important not to throw out the baby with the bathwater. So, vibe coding is a thing now. Ok then, what does AI powered software engineering look like? How is it different from vibe coding?

I think it all comes down to autonomy. First, let's take a look back at the last 2 years of my AI powered software development journey.

Vibe Coding

Obligatory AI generated image of vibe coding

My Current Go-To Tools and Services

These are my favorite tools/services as of April 2025. Please note: I use a Mac and some of the software below isn't available on other platforms.

Retro Futuristic Tools

Obligatory AI generated image of tools

Cursor IDE

The ways I use Cursor have evolved over the year and a half I've been using it. I absolutely love the latest update introduction of agent mode. Writing code has never been more fun.

Superwhisper

Superwhisper STT (Speech-to-Text) is the best I've used. If you aren't using a tool like this daily, you are missing out.

Local No-Code MCP Agents

Do you keep notes and other configuration files on your local system under a git repo? Do you neglect committing and pushing because it feels like a chore? In this post I introduce one of my favorite new use cases for local, no-code agents using Anthropic's popular MCP standard.