Using AI tools will get you results fast. It is getting very good at writing code. With the larger context windows, it can examine your whole codebase and write out a new feature in the style you use elsewhere. The problem is, it's very good at writing code. It's less good at refactoring. If you were to implement a new feature manually, you'd try to consolidate things instead of just copying a file that does a similar thing and slightly modifying it. I've had instances where the AI just automatically duplicated a bunch of code to complete the task. It actually worked, but at what cost? You are sacrificing long-term maintainability for short-term gains. Is there a silver lining to it? I'm not quite sure yet, these are still the early days. What I see is that it depends a lot on how you use the GenAI tools. It is tempting to write the feature description and let the AI rip through the codebase until the feature starts working, but that's a dangerous approach. It's probably better to tone down the requests and ask the AI to help you design a feature and use it as an idea generator or to get proposals. Avoid blindly accepting code that it spews out. That's a sure way to shoot yourself in the foot. As we get better tooling and learn how to use these tools more, we'll probably get better at maintainability too. But as it stands today, be very careful how much AI-slop you're willing to tolerate in your codebase if your goal is longevity and not just throw-away prototyping. Yours, Taj |
Hi, I’m Taj Pelc. Building for the web and leading engineering teams for 15+ years.