Don't quit your day job: Generative AI and the end of programming - VentureBeat

1 year ago
74

🥇 Bonuses, Promotions, and the Best Online Casino Reviews you can trust: https://bit.ly/BigFunCasinoGame

Don't quit your day job: Generative AI and the end of programming - VentureBeat

August 6, 2023 10:10 AM Image Credit: VentureBeat made with Midjourney Head over to our on-demand library to view sessions from VB Transform 2023. Register Here There’s a lot of angst about software developers “losing their jobs” to AI, being replaced by a more intelligent version of ChatGPT, GitHub’s Copilot, Google’s foundation model Codey, or something similar. AI startup founder Matt Welsh has been talking and writing about the end of programming. He’s asking whether large language models (LLMs) eliminate programming as we know it, and he’s excited that the answer is “yes”: Eventually, if not in the immediate future. But what does this mean in practice?  What does this mean for people who earn their living from writing software? The value in new programming skills Some companies will certainly value AI as a tool for replacing human effort rather than for augmenting human capabilities. Programmers who work for those companies risk losing their jobs to AI. If you work for one of those organizations, I’m sorry for you, but it’s really an opportunity. Event VB Transform 2023 On-Demand Did you miss a session from VB Transform 2023? Register to access the on-demand library for all of our featured sessions. Register Now Despite the well-publicized layoffs, the job market for programmers is great, it’s likely to remain great, and you’re probably better off finding an employer who doesn’t see you as an expense to be minimized. It’s time to learn some new skills and find an employer who really values you. But the number of programmers who are “replaced by AI” will be small. Here’s why, and here’s how the use of AI will change the discipline as a whole. I did a very non-scientific study of the amount of time programmers actually spend writing code. OK, I just typed “How much of a software developer’s time is spent coding” into the search bar and looked at the top few articles, which gave percentages ranging from 10% to 40%. My own sense, from talking to and observing many people over the years, falls into the lower end of that range: 15% to 20%.  Time for “the rest of the job” ChatGPT won’t make the 20% of time programmers spend writing code disappear completely. You still have to write prompts, and we’re all in the process of learning that if you want ChatGPT to do a good job, the prompts have to be very detailed. How much time and effort does that save? I’ve seen estimates as high as 80%, but I don’t believe them; I think 25% to 50% is more reasonable. If 20% of your time is spent coding, and AI-based code generation makes you 50% more efficient, then you’re really only getting about 10% of your time back. You can use it to produce more code — I’ve yet to see a programmer who was underworked, or who wasn’t up against an impossible delivery date. Or you can spend more time on the “rest of the job,” the 80% of your time that wasn’t spent writing code. Some of that time is spent in pointless meetings, but much of “the rest of the job” is understanding the user’s needs, designing, testing, debugging, reviewing code, finding out what the user really needs (that they didn’t tell you the first time), refining the design, building an effective user interface, auditing for security and so on. It’s a lengthy list. Programmers needed: AI lacks design skills That “rest of the job” (particularly the “user’s needs” part) is something our industry has never been particularly good at. Design — of the software itself, the user interfaces and the data representation — is certainly not going away and isn’t something the current generation of AI is very good at. We’ve come a long way, but I don’t know anyone who hasn’t had to rescue code that was best described as a “seething mass of bits.” Testing and debugging — well, if you’ve played with ChatGPT much, you know that testing and debugging won’t disappear. AIs generate incorrect code, and that’s not going to end soon. Security auditing will only become more important, not less; it’s very hard for a programmer to understand the security implications of code they didn’t write. Spending more time on these things — and leaving the details of pushing out lines of code to an AI — will surely improve the quality of the products we deliver. Prompting a different form of programming Now, let’s take a really long...

Loading comments...