Over the past year, a lot of developers have experimented with adding AI to their apps. A chat interface here. A “Generate” button there. Maybe a summarisation feature bolted onto an existing screen. Technically, this works. The model responds. The feature demos well. But the deeper you go, the more
Over the last year, I’ve started noticing something subtle but important. A lot of apps claim to be “AI-powered,” but very few feel genuinely AI-native. At first glance, it’s hard to articulate the difference. The features look impressive. There’s a model involved. Text is being
There was a moment — not long ago — when prompt engineering felt like the future. Threads went viral. Templates were shared. People built entire workflows around carefully crafted paragraphs sent to GPT. And to be fair — it worked. For demos. For experiments. For one-off interactions. But if you’ve tried
In late 2025, I found myself caught in a loop. I was building apps designed to reduce friction, help people track mindfully, and support healthier habits — but my own environment wasn’t serving me. My phone was noisy. My routines were reactive. And I felt like I was living slightly
OpenAI just wrapped their biggest event of the year — and it wasn’t just about AI. It was about software. About how we build it, how fast we build it, and what’s now possible when language models aren’t just assistants — they’re part of your stack. If you
If you’ve read any of my recent posts, you know I’ve been deep in the weeds with Model Context Protocol (MCP), foundation models, and AI-native app design. There’s a pattern I keep coming back to — not because it’s trendy, but because it works. I call
For the past few months, I’ve been diving deep into MCP (Model Context Protocol) — shaping inputs, modularising prompts, and designing smarter ways to talk to models like GPT-4. I even wrote a post about it: Designing Context. It was a personal reckoning: prompting alone won’t scale. You
Prompting doesn’t scale. Not for real products. If you’ve ever tried building something AI-native — not just a demo, but an actual app people use — you’ve likely hit the wall where prompting alone isn’t enough. That’s where context design comes in. This post isn’t
Last year, building with AI meant prompt engineering. This year? It’s all about context engineering. There’s a quiet but powerful shift underway in how we design intelligent features. Not just what the model can do — but what it knows before you even ask. That’s where MCP comes
When I first heard about “MCP” in the context of AI, I shrugged it off. Model Context Protocol? Sounds like a cool acronym. No clue what it actually meant. A few days later, I’d read the docs, run a handful of tests, and started thinking differently about how I
Back in May 2025, I found myself between roles. I wasn’t consulting. I wasn’t deep in client work. I wasn’t resting either. I was floating. Thinking, sketching, shipping bits of code here and there. What I needed was a creative constraint — something small and fast to build,
Since its introduction, SwiftUI has redefined how developers build fluid, Apple-like interfaces. And with each major update, it continues to evolve in powerful and expressive ways. At WWDC24, one standout addition was Zoom Navigation Transitions — a new API that makes navigating between views feel elegant and cinematic. In this
Swift 6 marks a major evolution in the language’s concurrency model, bringing powerful new tools and refinements that make asynchronous programming safer, faster, and easier to reason about. If you’re new to Swift Concurrency or want a refresher, check out my previous post: A Whirlwind Tour of Swift
A Complete Guide for Swift Concurrency and Clean Architecture Synchronizing local and remote data sources is one of the trickiest parts of app development — especially when you want the result to be clean, reliable, and concurrency-safe. In this guide, I’ll show you how to combine SwiftData for local
Going indie is a choice that demands clarity, commitment, and a bit of courage. In this post, I want to share how I made the leap — from full-time roles to building on my own terms — and what I’ve learned along the way. Whether you're considering your own
So, I started writing a guide on how to implement an authorization layer in our apps using Firebase Authentication — and before I knew it, I had written well over a thousand words on just the basics of Swift Concurrency. It occurred to me that it might be worthwhile spending some
Updated October 2025 to reflect my current focus on Swift, web, and AI engineering. I'm Stephen — an indie developer and designer building modern apps across Apple platforms, the web, and OpenAI’s ecosystem. For years, my work has focused on Swift and UI design, but as the industry shifts