15

Will Coding Be Useless After Artificial Intelligence Can Write Flawless Code?

 3 years ago
source link: https://towardsdatascience.com/will-coding-be-useless-after-artificial-intelligence-can-write-flawless-code-e2187c151a3d?gi=ca281276e59a
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Opinion

Will Coding Be Useless After Artificial Intelligence Can Write Flawless Code?

Human coding will survive, but the work we do as software engineers and data scientists may change

Jul 26 ·4min read

vMbaAr7.jpg!web

iStock

Disclaimer: This is an opinion piece. I’d love to hear your thoughts in the comments.

Rather than ask if GPT-3 will make coders obsolete .

Let’s assume that at some point, AI can write flawless code.

Will there still be a place for humans writing code? Yes.

Coding is the most efficient way to communicate with AI

Code is designed to be as high-level and unambiguous as possible.

While considered a dark art to non-developers, most coding languages are more concise than spoken languages.

I’ll say that again.Writing out the logic of an application using English would take more words than writing it in Ruby or Python.

For this reason, telling AI what to build (while navigating edge cases and domain knowledge) may be more work than writing the code.

For example.A simple command to an AI assistant, “Buy me toilet paper” has a lot of assumptions baked in. These could be interpreted disastrously wrong if not coded as constraints in advance. How important is price? Softness? Delivery date? Quantity?

Coding forces an intelligent developer to consider these.

So while coding may become even higher level than it is now, it might be the most efficient way to talk to AIs.

AI-written code will need to be tested (with code)

Given that AI could be writing code pertaining to anything, the output space is potentially infinite.

So while you can monitor a self-driving car for 100 million miles to verify it’s safety, you can’t write tests covering an infinite space and number of domains.

This leaves us with having to test the AI-outputted code, rather than the coding mechanism itself.

As this should be approached in a logical manner, and allow retesting as applications change, it makes a lot of sense to write tests in code (at least in the beginning of AI’s development career).

Though at a further point in the future I can imaging another AI-layer that assists in writing tests alongside a human domain expert.

AI-coders may not be cost effective

OpenAI gave prohibitive cost a reason they’ve offered GPT-3 as an API rather than an open source package.

We’re hopeful that the API will make powerful AI systems more accessible to smaller businesses and organizations.

- OpenAi

Given this, I don’t expect to see it as a $20/hour service on AWS anytime soon. Humans will be writing code until the price comes down.

At the current moment, we don’t really know what the price is, only that OpenAI has received about $1 billion in funding.

And while it could make sense for large dev shops to automate writing repetitive code (even at a high cost), software engineers in startups do a lot more than write code.

Daily activities include:

  • writing and reviewing tickets and code
  • discussing user experience
  • interviewing potential hires
  • discussing constraints on hypothetical features…

So a software engineer’s generalist skill set could still make them a good deal compared to an AI that can only code.

That said, it’s also possible that developers become product managers, using their technical/product skills in helping manage AI’s who do the coding.

We may not trust AI with mission critical systems

We’ll trust AI to build static Wordpress pages and “yet-another-social-media-app” applications, but will we trust it writing code for the military?

What is the downside of the AI being hacked, or writing faulty code?

Writing flawless code within a single function is easy. Across a whole app, it’s much harder. But when it gets to the infrastructure level, it’s no longer about right and wrong, it’s about financial/business constraints and desires.

We can imagine that in situations of layered complexity, a required understanding of the outside world, or significant downside, we may not want AI writing code.

There is joy in building technology yourself

Long live the coding hobbyist.

This is anecdotal, but I became a developer because it’s the only job I’d do for free if it wasn’t my day job.

There’s a subgroup of people who enjoy building things with code for their own pleasure. It’s why people build an AI-assistant on a $100 RaspberryPi when they could just buy an Amazon Echo for $50.

Humans are craftspersons by nature and gain satisfaction from making things. This won’t be a huge group but I expect it to continue existing.

Deep experience and a knowledge of fundamentals are a prerequisite to innovation

Humans need to keep coding if they hope to keep innovating in the space.

AI is great at copying what has been done. But not at combining existing concepts in new ways to create something new. We’re not talking about painting a better picture here, but developing a new type of art, or a new data transfer protocol.

Most of our modern technology arose like this. From experts and dreamers frustrated with the status quo, and who knew their tools well.

In software development, GraphQL was invented to deal with the limitations of the existing REST . The former makes frontend development easier, but didn’t “need” to build.

Will AI learn to invent, or just do existing actions more efficiently?

Conclusion

This post was a thought experiment and based on my experience in software development, ML, and startups.

While I may seem anti-AI, I am not. On the contrary, AI’s that can code would be the biggest opportunity for small entrepreneurs in the history of civilization because it would allow them to focus on problems instead of on the tech.

That said, we’re not close to that point. Despite fear mongering, we’re a long way from the rise of the robots. So while you should upgrade your skills, I wouldn’t lose sleep over GPT-3 taking your coding job.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK