Learning to code is our current mantra. That's great, because we have to ramp up our supply of developers to meet the high demand in many sectors of our economy.
However, is learning to code really beneficial for the individual?
While developers are increasingly rewarded with higher compensation, they undertake the large risk of their skills becoming obsolete in this rapidly changing technology field.
Programming languages can change at any time. Imagine the developer who mastered Objective-C to create Apple applications just before Apple's Worldwide Developers Conference event, where a new language, Swift, was announced.
Technology platforms shift quickly too. Just a few years ago, we were all excited about the App Store, and how we could access various functionalities from different apps we downloaded. Apps displaced websites as the main way for us to collect and interact with data.
Today, due to our attention being divided among the many apps we have, apps are being replaced by bots, which allow us to access the same amount of information, but with less effort.
Further uncertainty is around the corner, as bots might not be the main way we can aggregate data.
"Keyboard as a service" can perform similar functions as bots.
Apart from language and platform shifts, coding itself might become increasingly irrelevant. Today, an increasing number of tools are built for non-developers to create templates without knowing coding.
The advancement of artificial intelligence (AI) is also displacing the need for coding. A start-up, The Grid, simply takes your pictures and text to automatically generate personalised sites, without a single line of code.
Viv, Siri's creator's next AI project, goes even further, and uses "dynamic program generation" to write its own program on the fly.
Artificial intelligence is code too. However, not many developers are at the frontier of technology to advance AI. AI might displace many developers from their jobs.
Given the vagaries of a coding career, are we doing enough in cautioning the aspiring developer about the challenges that lie ahead?
Before even promoting coding, we have to promote the skills of adaptability. Developers have to learn how to pick up new programming principles quickly, and not be afraid to feel like a beginner most of the time.
We also have to promote pathways to specialisation, be it through graduate studies, or on-the-job training. That way, AI will not easily displace developers' job functions.
Leonard Loo Kok Swee