In the article “The end of programming”, Matt Welsh reasons, that my computer science studies at university (very long time ago 😉 are obsolete. Or in other words: who still remembers quicksort and hours of lectures about optimizing sorting code?
But not just that “writing a program” is headed for extinction, but also the fact that most topics don’t apply the today’s world of machine learning. Does this mean, that programmers are in danger of extinction? Two aspects I invite you to think about: Who trains the models and who ensures problem understanding and the interfaces between algorithm and real world?
Not AI will not replace you. A person using AI will.
“Not AI will not replace you. A person using AI will.” With regards to my topic, I would reformulate the tweet from Santiago Valdarrama to something like “Not people writing code, but people who train computers to write code”. For sure, many repetitive coding jobs will be obsolete, but in addition new challenges around trustworthiness and reliability of AI arise. Soon, and for obvious reasons, there will be jobs like AI psychiatrist and AI ethicists.
But more relevant to me is the second aspect: The interfaces between algorithm and real world. Let’s have a look at the following layer cake.
The interfaces between algorithm and real world
Thinking about what a programmer’s job is, most people think about “writing code”. But already today, this only a fraction of the task to accomplish. The first step is understanding the problem and to define it a (precise) way to do the right thing. Then it’s about managing the interface between “our” world and the machine on the input and on the output side, plus the validation of results produced before putting them to use. All these challenges remain in an AI world.
Do I sort Jürg before or after Jurg (or was it Juerg)?
Coming back to my lectures about sorting algorithms. Do I sort Jürg before or after Jurg (or was it Juerg) and how to I treat characters like – or ‘ in names? The quality of the data input, it’s encoding, how to make the sorted output to use for humans (with no digital interface 😉 and did the algorithm sort correctly according to how I understood the problem?
Competences need to change. Many new topics will come up and most of the subjects of my CS studies consisted of are already sitting in the trash. But times are exciting and being a person that teaches AI and makes it work for us is exciting. The person formerly known as programmer.