AI Assisted Programming - Book Preview
When I started writing on substack I expected that I would write about many topics in software design. It would’ve been easy to cycle though newer thoughts on legacy code and technical debt but frankly, that hasn’t been what I am most interested in recently.
For the past year, I’ve been excited about AI — particularly how it is changing programming practice. To be fair, there are many ways that it doesn’t. For decades we’ve had code completion in our IDEs. As an advocate of TDD, I’ve often found these suggestions annoying but sometimes they are pretty good. The question then becomes: how do I deal with this thing that I didn’t write? In addition, there are many other questions about refactoring, testing, review fatigue and safety.
I decided to write a book about these topics despite the fact that LLM-based technology is changing rapidly. There’s Cambrian explosion of tools and nearly weekly we see them leapfrog each other. Is there anything durable in this space? Will anything I write now have relevance in a year?
With these thoughts in mind, I’ve made a few bets:
I am betting that chat interfaces (verbal and textual) will be with us for a long time. They are, simply, the most open and flexible way to use this technology.
I’ve also bet that the hallucination problem is not going to go away completely and that, and some level, humans will be in the loop — we’ll correct misunderstandings and find better ways of asking for what we want. The devil is in the details and we supply the details. That sounds a lot like programming.
I’m betting as well, that despite the skepticism that most of us have about the reliability and usefulness of these tools (there is nothing like getting burned early) LLM-based AI isn’t going away. Some things we learn now will be durable.
There are seven chapters in the book now (Hint: read the first one first). Afterwards, look at the chapters on projections and pidgin specification. They jump right into the heart of the book.
I don’t have an ETA for the completion but I do want to invite you all to take the ride with me. I plan to add chapters weekly.
I’m releasing 50 free coupons for the book today. I hope to get feedback from you all during the writing process.
I’m excited. If this topic is something you are interested in, I hope you are too.
P.S. I’m sure this question will come up - Is this book written by AI? The answer is “nope.” I like writing. If anything changes, I’ll let you know.
Michael Feathers