A few thoughts on the future (and present) of coding.
The pace of AI-assisted coding is incredible. I tend to rely on historical analogies to understand the moment we are in, but even those fail to capture how rapidly things are changing. The expert practitioners are thinking very deeply about the nature of coding, how intention is expressed and transformed, what workflows work now, and more.
One historical analogy holds though: you have to be professional to build something that scales. (Maybe this will change, but for now it seems true). In the early internet era, it was relatively easy to put an app up - some HTML, a copy of Apache, and MySql, and you could be serving something. Lots of people who didn’t really understand the engineering built things that fell over as soon as they got just a little attention. But to really build something that scaled to millions or billions of users, you still had to do real engineering, had to really understand the technology, and sometimes invent some new tech too!
I hear similar things happening with vibe coding - people making changes to OSS projects that look good but don’t actually work, tests that aren’t really tests even though they have good coverage, etc. It’s true that it’s really easy to get something that looks ok quickly, just like it was easy to get a good-looking web site up, but there is still a need for professionalism, at least in projects that need to scale.
Interestingly, I can also argue a bit of the other side of this, but in a different context - if what you want to do is small, one-off, and doesn’t need to scale, just like with the web analogy above, it’s fine to just vibe it. I hear programmers talking about the lack of precision and repeatability in AI created code, and they’re both right and wrong. Users will just bang on the machine until it does what they want. If they’re building for themselves, it doesn’t matter that it’s funky or inelegant or even broken - as long as there are enough safeguards on the supporting systems so that data isn’t lost or leaked, it’s actually a very good thing to let lots of people create for themselves - that’s actually the larger lesson of the internet.
So - we have to not forget that we are professionals and need to do real engineering, when it comes to scaled, complex projects that AI can’t fully handle today, while at the same time remembering that letting lots of people make code that we absolutely hate is actually a good thing.
The media professionals that were displaced by the internet hated all of the slop that us normal folks made. But movies and books and high-quality media still get made, even as more and more “amateur” content is produced. And the amateurs are informing the professionals, showing both what can be done, and what is really valued.
Don’t lose sight of your professionalism but also, learn from and appreciate the new entrants who don’t need us as gatekeepers any more!