Will AI Replace Developers?

Simply put, yes. However, it’s unlikely to happen in the next 20 years or the near future.

I’ve heard some people make a simple argument: ‘Autopilot didn’t replace pilots.’ While it doesn’t fully address the question, it does make some sense. Even though autopilot handles about 95% of the flying time, pilots are still necessary. Until machines can consistently prove themselves trustworthy and operate independently better than humans, I doubt pilots will be remove from the cockpit; they serve as redundancy.

Self-driving cars have been a topic of discussion for over a decade now. How long before they replace Uber drivers? That’s another good question. I believe we still have a while to wait. Similarly, the idea of AI replacing software developers isn’t new; In fact, it’s been a topic of discussion since the 1960s or even earlier; it didn’t just emerge in recent years.

Software Development isn’t just Coding

Software development isn’t merely about writing code; it’s about solving problems. Generating code itself is a straightforward task — whether it’s done by a human or by AI like Chat GPT, the outcome remains the same, much like using a hammer or a nail-gun to drive in a nail. The result is the same, and it doesn’t matter which you do, other than save time. What GPT can’t do is solve problems, just as a nail-gun alone can’t build a house.

Effective Communication Between Business and Developers Is Essential

The development process for a feature or application involves extensive communication between various teams, particularly between the business and development teams. While a new feature may initially appear flawless upon release, ongoing changes in business plans and decisions often require constant adjustments. At times, the business may request tasks that are technically impossible for developers to implement, leading to necessary pushback and compromise. Managing these challenges requires careful attention to detail and precision in communication. Currently, AI lacks the capability to handle such detailed interactions. For instance, just recently, when I asked AI to create an image of a Shiba Inu performing kung fu without clothes, it frequently generated images of the dog wearing wacky sweatpants. Despite many attempts to correct this, the AI still occasionally produces these unexpected images of the dog wearing wacky sweatpants.

AI Does the Job But Not Up to the Standard

I recently had AI generate some unit tests for my code, based on my real job. It completed the task quickly, and the code ran without problems. However, it fell short of meeting the high standard of best coding practice: the test coverage was not enough, and the code it made was repetitive, making it longer than necessary. For example, for a simple function that could be done in one line with the Vitest library, AI wrote over 10 lines of code. And sometimes, the code it produced didn’t even work.

AI is a Great Tool for Developers

From what I see it now, AI serves as a valuable tool that greatly assists me in my work. It efficiently handles the tedious groundwork, saving me a significant amount of time. In debugging, it often identifies the issue or points me in the right direction towards the cause. Additionally, when I need to look up commands, syntax, or functions, AI provides quick solutions, bypassing the need for extensive Googling and browsing through numerous links.

In Conclusion

AI won’t replace developers anytime soon, period. If AI does eventually replace developers, it will likely be one of the last professions affected, after many others. So, I’m not worried at all.

Leave a Reply

Your email address will not be published. Required fields are marked *