So, this hit my newswires today:
Let the panic begin! Programmer jobs are dead! Cheap programmer labour! All our software dreams are about to come true, for free, and as fast as the supercomputer can deliver them!
On the surface, this seems pretty reasonable. These days, many programmers will start by googling their problem and then reading what they see on sites like Stack Overflow. Programmers of all levels of experience.
So what are they thinking when they search?
Sometimes I think, “How do I solve this?” I see “answers” presented, pick the one at the top, and effectively copy it.
Sometimes I think, “How have others solved this?” I see “options” presented, check how recently it was discussed, and how well it aligns with my goals, and if it’s a fit, effectively copy it.
Sometimes I think, “How have others solved this?” I see “options” presented, check how recently they were discussed, wonder how the differences in the answers came about. I look at different ways the question has been asked, and wonder how the differences in those questions came about. I journey through the humanity of how these things came about. I laugh, I cry, and then finally settle on how I will approach the problem.
You see, the more experience you gain in this field, the more you understand that software development is for the time being a very human endeavour. It requires things like empathy, delight, things we’ve traditionally characterized as human.
Now, don’t get me wrong, I have a lot of experience but when I’m googling how to get some arcane portion of iOS to do something I’ve never done before, I’m very much a beginner, and I end up doing things that are very trusting of the folks who contribute to Stack Overflow. This is a normal thing, as a beginner I have little ability to reason about that particular corner of the technology landscape. Everybody’s a beginner about most things (for large values of most).
What makes people good software developers is more their ability to learn new and different things, because this field is nothing but chaotic change. Accelerating.
So back to AI. How many years will it be before a computer has the pattern matching capacity of the human brain? How many years before we draw that distinction between having empathy and simulating empathy?
That’s how long we have before I fear the obliteration of the software development profession. Heck, it’s still in its larval stage, we haven’t even seen it’s most interesting advancements yet.
And by then, we may well have found that our extraterrestrial search for new life is less interesting than life that evolved in a different way here on earth.