my thoughts on AI assisted coding


I have some complex thoughts about AI assisted coding. They’re still swirling around in my brain and not completely solidified into a specific Opinion™, so read with that in mind.
I am 1000% excited about the productivity bump of AI assisted coding - there's no question that we can accomplish in a few working sessions what would take us probably weeks of dev/planning time without AI, so that's really cool! I’ve also found asking ChatGPT for answers on general coding questions to boost my understanding of concepts, provide options I wouldn’t otherwise have thought of (like when it suggest the use of Nuxt layers for a work project), and give helpful examples when parsing code documentation. Of course, Cursor has also been a valuable asset for stripping away the boring repetitive tasks in coding, as it can scaffold components and even projects, check syntax, format text into HTML, and many other things. It’s all very exciting!
At the same time, without negating that excitement, and without negating that understanding that AI is expediting our process, I’m wondering whether in the long term using AI assistance is going to strip a measure of joy from the process of coding. Let me explain. While the main goal of development is to produce working code that benefits the business in some way (at least in the context of a job), I believe doing development should also produce excitement and joy in the developer. Why? Well, when you remove those things, you likely end up with lower quality work, because the developer just doesn’t care enough to work well, or you end up with the same quality of work, but produced by the developer with an immense effort. Both of these situations lead to burnout.
The reason I think using AI assistance to an extreme and having AI write most of the code for you strips the creative process of coding of joy, is that the developer becomes an observer of the code-writing process. The work becomes largely checking AI for mistakes, essentially code review, rather than producing code. Now, I realize that there’s a natural shift in a developer’s role as one becomes more experienced anyway - when you are a manager you tend to spend less time writing your own code and more time reviewing others’ - but utilizing AI to the extent that’s being suggested (not just scaffolding and documenting but actually creating whole projects) seems to take that tendency to an extreme.
But more personally, I’m (still) wondering how do I actually learn and improve as a coder within this framework of AI assisted coding? Where are the opportunities to grow and learn about how technologies work under the hood? Or do I just learn how to use AI tools better, and that counts as improving as a coder, because in the end some code was produced (though not really by me)? Do I totally rely on AI because it can do the work? What if those tools become more expensive or are limited in some way by the people who control them? Then, having been dependent on coding with AI, I’ll lack the experience to switch back to the former kind of developer experience. This kind of thing concerns me. Essentially, I’m worried about becoming a lazy, bored, and joyless developer.
I’m not trying to be alarmist. In the past few weeks I have really been striving to approach these questions with an understanding of both sides of the situation - the benefits and the drawbacks. Because, let’s be honest, most new technologies come with a handful of both. But it’s difficult to ignore the very swift changes to the processes of development that have occurred in the past months, to the way I make my livelihood. I did in part choose development because it’s a creative outlet, and it brings me joy. I’m glad to provide value to whichever company I work for as well, but I don’t think that all meaning or experiences in life should be sacrificed to that end. People should find fulfillment in their jobs as well, if they’re going to be able to maintain them long term without burnout, and yes, even bring value to the business.
Subscribe to my newsletter
Read articles from Madeline Caples directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Madeline Caples
Madeline Caples
I'm a frontend developer at Fuego Leads where I build cool stuff using Vue. I've worked there since April 2023. On Hashnode, I like to write about machine learning and other software engineering topics.