Yes, I know the headline sounds very click-baity but, after reading the recent Deepmind accomplishment over here DeepMind says its new AI coding engine is as good as an average human programmer, and putting the pieces together, you realize the kind of accomplishment does spell the beginning of the end for traditional software development, as a viable long term career. I know this seems like a bold claim, but read below as a I make the case.
What did Deepmind Alphazero accomplish with this?
In a nutshell, the team over at Deepmind, put their AlphaZero genetic AI learning application ,at standardized programming contests, It then scored 54% as good as the average programmer. Not something super amazing, but enough to show the potential which has already been fantastic at solving a whole host of challenging problems, among the notable accomplishments:
- AlphaGo – beats world best Go player
- AlphaFold – protein structure prediction
- AlphaZero – becomes expert in Chess and other games
So What does this all mean?
In a nutshell Deepmind’s generic AI application or some variation of this system when it improves and becomes commercial, the idea of being an expert in Rust or Swift or Golang or <insert new shiniest language here> becomes irrelevant. Since you just need a very specific written contract to have the bot generate the app. If you forget some detail just update the contract and re-generate the code.
Because it’s in plain English that’s a lot bigger pool of “talent” that can do it.. the hard part of programming has always been learning the intricacies of the syntax, and how to tie software, hardware, network etc. all together to meet the end user goals, if I can write that in a two or three paragraphs in English and it generates a running program that full fills my criteria that’s a game changer.
Honestly this idea isn’t that new, the whole 4/5GL trend back in the late 90s was that human readable specs (but very constrained by the 4GL) would generate your business rules and eventually the software.That was a much more primitive system, but software has always been about abstraction that’s why we generally don’t write code in assembler.
So exactly as others pointed out a lot less people and not just less people, but less highly paid technical people. Why would a company need to pay you $250k/year as an “ninja’ coder.. when they can pay a Midwest work from home person $60k because of their skill in writing explicit technical contracts… It’s just English and writing skills most 10 year old’s know.
How does it spell the end?
It’s not just Deepmind, either other companies are working on similar applications. Microsoft and the AI lab OpenAI have adapted the latter’s language-generating program GPT-3 to function as an autocomplete program that finishes strings of code. (Like GPT-3, AlphaCode is also based on an AI architecture known as a transformer, which is particularly adept at parsing sequential text, both natural language and code). For the end user, these systems work just like Gmails’ Smart Compose feature — suggesting ways to finish whatever you’re writing.
Still a lot more progress has to be made developing AI coding systems , these systems are far from ready to just take over the work of human programmers. The code they produce is often buggy, and because the systems are usually trained on libraries of public code, they sometimes reproduce material that is copyrighted, But these are surmountable obstacles and no doubt never versions of these systems will address that.
Between this and SaaS applications. I do see this as the beginning of the end of highly paid software engineering as a career . Not all software engineering, of course, someone still needs to create and tweak the AI but for run of the mill IT coding jobs yeah.. and similar things will happen in other fields. I suspect the more regulated and codified a field is the easier for generic Deepmind type AI to work.