The AI Development Conundrum
Published: ....
Last modified: ....
Share this post on BlueskySee discussion on Bluesky
While I spent a bit of time talking about using AI to help write code in my recent blog post on offloading complexity, I've been thinking more about the trade-offs of heavily using AI to aid with software development.
I was working on a side project the other day, and I decided to give Cursor's composer mode a go at building out a whole feature from start to finish. Normally what I opt to do is start writing the code myself and then rely on the autocomplete features to fill in some of the details. However this time I was diving in head first on letting the AI do all of the deep thinking and implementation as well.
While the feature seemed to mostly work, aside from a few edge cases that I caught when testing it out locally, I also realized that I had no idea what the code was doing.
I was blindly hitting Accept ✅
on it's suggestions, and just assuming that it would do the right thing along the way.
It hit me after a few minutes that I was just there to prompt the system and accept or decline it's suggestions.
I've been thinking about this for about two weeks at this point, and I still feel fairly uncertain about the whole thing.
I got into software development because of the thrill of coding up something that I could see and interact with. Solving difficult problems has been what I really enjoy about the job and the hobby as well!
To borrow from my earlier blog post, offloading the problem solving part of the work (or hobby) feels like it's against the point of doing the work in the first place.
And yet - not using AI at this point to build software feels like rejecting C when you have been writing assembly (like - why wouldn't you opt to become more efficient?)
I think the easy to ask but hard to answer question is what do we do now? Where do we go from here? How do you continue to enjoy working in this field while AI is starting to actually take away the best part of the work from us?
I don't have any answers, so sorry if you came here expecting to find some enlightenment, but I hope that you give it some thought and come up with some ways to find and hold on tight to the parts of the job or hobby that you really enjoy!
Tags:
Related Posts
AI
Published: ....
A quick look at combining Cursor with Obsidian to ask questions of your notes!
Published: ....
A rough mental model for how you should be leveraging AI as a tool for your own growth
Published: ....
I've been using a variety of AI tools as of late, I figured I'd document the ones I'm primarily using!
Development
Published: ....
I recently launched a rewrite and redesign of this personal website, I figured I'd talk a bit about the changes and new features that I added along the way!
Published: ....
A quick tip outlining how to provide specific TypeScript type definitions for a local module!
Published: ....
Slicing software: why vertical is better than horizontal.
Published: ....
What if you could author an entire web application in a single file?
Published: ....
A brief look at Import Maps and package.json#imports to support isomorphic JavaScript applications!
Published: ....
A collection of tech talks that I regularly re-watch and also recommend to everyone!
Published: ....
Some features and functionality that I'd like within a React Server Component compatible framework.
Published: ....
A (running) collection of Bluesky tips, tools, packages, and other misc things!
Published: ....
How to generate a custom Ghostty theme based on any iterm2 theme!
Published: ....
A rough mental model for how you should be leveraging AI as a tool for your own growth
Published: ....
Even more thoughts on dogfooding!
Published: ....
The secret to excellent product teams is using your own product, and often!
Published: ....
(Ab)using Git as yet another tool for thought!
Published: ....
A quick look at the applications and tools that I (generally) use day to day for web development!
Published: ....
There are a variety of different markdown "standards" out there, and sometimes they're not all that consistent
Published: ....
There's a common gotcha when creating Web Request and Response instances with Headers!
Published: ....
Feature toggles are often underused by most software development teams, and yet offer so much value during not only feature development but also refactors
Published: ....
A quick introduction to my new side project, hohoro. An incremental JS/TS library build tool!
Published: ....
webpack, and tools built on it like Next.js, don't support true dynamic imports, but I found a way to trick the system!
Published: ....
I've been using a variety of AI tools as of late, I figured I'd document the ones I'm primarily using!
Published: ....
I've started to use Cloudflare to manage my domains for several side projects, have had to jump through the same hooks multiple times that I figured I should document them here!
Published: ....
Revising my previous blog post on React Error Boundaries and my preferred go-to implementation!
Published: ....
Two neat tricks for enhancing your site's favicon!
Published: ....
The various risks and pitfalls of open source software run by corporations.
Published: ....
A monorepo template for managing a library and documentation together.
Published: ....
How we solved an almost show-stopping production bug, and how you can avoid it in your own projects.
Published: ....
When did semver major changes become so scary?
Published: ....
No I don't mean those Milano cookies you keep taking from the office snack wall either (although you should probably stop snacking on those as often as well).
Published: ....
Pair programming can be good sometimes - but not all the time
Published: ....
A few quick thoughts on burn out and taking a break