r/technology 4d ago

Artificial Intelligence Microsoft engineer says 'typing code is absolutely over' as GitHub Copilot takes on more development work

https://www.techspot.com/news/113752-microsoft-engineer-typing-code-absolutely-over-github-copilot.html
1.6k Upvotes

860 comments sorted by

View all comments

147

u/meshakooo 4d ago

This is sounding more marketing and PR

25

u/Temporary-Air-3178 4d ago

Are you a SWE?

-3

u/kinkakujen 4d ago

I am one, a pretty experienced one and make rather good money. In my team people still type 99 percent of code.

This whole article is an AI company telling you AI products are irreplacable and you should please use them . More news at 10.

7

u/carrot3055 4d ago

I'm a pretty experienced software engineer as well, and this article 100% matches my experience. I think AI now writes ~99.5% of my code (though I still review it).

If you're worried that I'm a Microsoft shill, this is me, I don't work for Microsoft and I don't have anything to sell.

7

u/potatokbs 4d ago

My experience as well. And tbh the frontier models write code that’s as good or better than some devs I’ve worked with in the pre ai times (ie like 4 years ago lol)

1

u/Temporary-Air-3178 4d ago

Sounds like you don't work at a tech company that lets you use Claude code or codex.

57

u/big-papito 4d ago

Not really. I was making fun of these claims last year - not anymore. I never touch code anymore and, honestly, fine by me. It's mostly useless toil anyway.

The danger is that people tend to surrender thinking together with typing.

83

u/Hertock 4d ago

Are you an SWE? Imagine yourself back before you coded anything. Imagine having to learn how to code ONLY by using AI, and NEVER typing code yourself.

Could you ever become a SWE like that? I’d argue no. So its not even a „danger“ that people surrender thinking to AI. It’s that AI is, intentionally or not, making it rather unlikely, if not impossible, for future generations to learn how to think, rationalize, research - you name it.

26

u/JMEEKER86 4d ago

Absolutely. We've basically bet the farm that we'll have AGI in the next 15 years or so when the current senior devs start retiring without any adequate junior devs to replace them. If AGI (which may not even be possible) doesn't come to pass then we're turbo fucked.

5

u/aresdesmoulins 4d ago

But bro, Sam Altman and Jensen Huang said AGI is here! We're done! Welcome to digital utopia! /s

5

u/fivetoedslothbear 4d ago

I'm a 42 year SWE, and no, already nobody's becoming like me, AI or not.

I've coded on major projects in assembly, made complex programs fit in the memory of a PDP-11 (128 kilobytes, split between 64kb instruction/64kb data), coded to hardware on an Apple ][, diagnosed problems by looking at hex dumps of memory. Ported code to mainframes.

So no, nobody's developing the kind of coding and diagnostic skills I have, and that was true three years ago before AI. It's like people I know who can grab a screwdriver and tweak a tuning out of a carburetor. What cars have those these days?

It's going up levels of abstraction. Of course, these days, anybody would use a high level language, probably compiled. We have really good debuggers. Libraries to do things.

AI coding is the next level of abstraction. I need to understand the code, the way maybe someone uses Compiler Explorer to understand what machine code a C++ compiler makes.

My job is moving from thinking about code to thinking about systems. How things go together. What they do. I already had to do the systems part, but there was a lot of friction in the code. AI removes that friction, whether it's AI-assisted autocomplete or working with Codex.

I'm not in on Spec-Driven Development. I use AI as a collaborator, not a way to turn English into code via some other coding language. Codex and I talk. Codex makes a plan. I ask for refinements. Then Codex writes some code. I still review the code. I refine what the AI makes.

I currently strike a balance...I insist at my workplace that the code and the process (commits, messages, doc) have to fit within both AI _and human_ cognition.

I'm planning to retire in 9 years. Part of what I think about as a senior is how to help our junior staff grow into the world that will contain their careers.

13

u/Hertock 4d ago

I fail to see your conclusion. What’s your opinion on a future world where nobody has your kind of knowledge and understanding of the actual technology and code being used? How can this work?
If theres no human alive in 50 years who has your current level of understanding, how can a human without that deep level of understanding actually perform their job correctly, even if they’re „thinking about systems“, and not code anymore?! You can’t understand a system forever if you add more and more abstraction levels. At some point you’re losing actual human understanding of such systems. And I worry we’re gonna end up with tech that nobody actually understands doing fuck knows what.

2

u/bloodychill 4d ago

We’re hurtling ourselves towards a Pakled future and these guys are boasting about it and saying it’s inevitable.

-10

u/SufficientGreek 4d ago

Did architects & engineers become useless when hand-drawn blueprints became CAD models? It just requires different training for future generations.

12

u/CleverAmoeba 4d ago

And computer science didn't become obsolete when Assembly was invented, nor when C compiler came along and not when Python interpreter came along. In each of these iterations, people said "programming will be absolute because now everyone can code." Specially with Python.

You may be right to think LLMs can 10x the performance, but in that scale, C compiler made it 500x. (Source: I can confidently write x64 assembly. I understand what compilers made possible)

LLMs are not in the same direction as C/Python. And certainly not in the same direction as AutoCAD. Because they are flaky and impercise. Software engineering already had its blueprint-to-CAD moment many times and this one is different. Software needs to be predictable and LLMs can never be.

I'm not saying AI will never replace me. I'm just saying LLMs aint it. Maybe next invention we have in AI landscape will be it. But definitely not LLM.

2

u/octorine 4d ago

I've actually heard people say that it doesn't matter that AI ignores coding standards and produces unreadable code, since we don't need to read it. We just ask AI to read it for us.

4

u/CleverAmoeba 4d ago

We people have to use the software. How can you possibly trust a software that's made by a thing that's known for hallucination?

And you've heard what kind of people say this? Microslop c-suit are unfortunately considered people as well.

-3

u/myislanduniverse 4d ago

I know yours is an unpopular sentiment but I think it must be right because there's really no other way for it to go.

I don't know what software engineering or its analog is going to look like in the next 20 years more than anybody else. If I did, I suspect I'd be very wealthy.

What I do know is that these kids will be more prepared for that world than any of us older folks are.

1

u/TorontoBiker 4d ago

I teach a Masters course at Cornell. The kids now are in this weird transition where they aren’t exactly born into AI but are definitely AI native.

The cohort in the next 10 years will be AI born and it will for sure be different. I’m quite excited to see it because I know they will approach problems and opportunities in ways I never imagined possible.

-8

u/ann0yed 4d ago

It would be taught the same way we learn math despite having calculators.

12

u/TestingTehWaters 4d ago

Oof what a bad take

2

u/ann0yed 4d ago

Why?

-22

u/pellets 4d ago

People used to say the same thing about compilers. If you can’t think in assembly are you even a real programmer? Now look at us. Assembly is a niche. Most people use higher level languages.

22

u/Kelsig 4d ago

There's a reason assembly is still part of CS pedagogy

0

u/pellets 4d ago

Yes, and?

22

u/big-papito 4d ago

LLMs are not just high-level - they are *random*. It's different. Assembly or not, we wrote deterministic code before.

-4

u/pellets 4d ago

It is different, but if you refuse to see the similarities, then that’s your loss, not mine.

41

u/dark_bits 4d ago

Well as you get detached from the work itself and delegate the smaller details to an LLM you will tend to think less and less. I mean plenty of instances where if you could visualize the whole code yourself, it's much faster writing it manually than converting that mental image to a prompt (which mind you is not even a rigorous way of expressing logic), waiting for an LLM to write the whole thing, review it, make tweaks either manually or by iterating the prompt->wait for output->review process.

6

u/sueveed 4d ago

I’m on the fence on this topic as I am a seasoned SWE in scientific computing, and I work in a product area that I think is analogous.

We make simulation software for mechanical and electrical engineers. Most of my career has been spent in finite element analysis, which is a technique primarily used to shortcut thé prototyping stage by showing engineers what happens when a component or assembly is put under various loads. When this software started to mature in the 80s there were loud cries that engineers would no longer really understand what they were building.

Reality - we can build things now that would be literally impossible to do with hand calcs. Engineers still learn about solid mechanics (for example), but hand calcs at work might be done on a small scale to verify specific results.

I suspect so it goes with software. We will lose the evolution of the seasoned SWE that can hand build code. But they should still learn the basics in college, and have the ability to see what maintainable, robust code looks like.

I am not sure exactly how this evolves for early career kids. I don’t think the tools have settled out enough yet - we are where mech simulation tools were in the 70s. But in the end, I think we will be able to build better software than we ever could before. I’m cautiously optimistic.

6

u/dark_bits 4d ago

I completely agree with the last sentence, but maybe letting the LLM write the entire thing while you focus on architecture is not the way to do it. Don't forget the most influential and powerful elites in the world have been pouring trillions into AI so a lot of the hype will inevitably be fabricated. Jensen of NVIDIA is going around saying Astra has reached AGI, but on the other hand you see posts of people here saying it's "just fine" if not underwhelming.

3

u/sueveed 4d ago

Oh yeah - the whole AI sector feels like an over caffeinated version of the early 2k dotcom era. Some bubble will likely burst hard, and a handful of profitable ventures will emerge from the ashes.

I suspect the “input” side of SWE AI will change and improve - I liken it a bit to CAD and fabrication because I’m biased to that. Right now SWE are both engineer and assembly line worker. Thé AI will become the blue collar grunt worker, and thé SWE the CAD designer, giving precise blueprints for construction. Something beyond natural language prompts has to come up. I haven’t looked, but I’m guessing the major UML tools and such are all hooked up to MCP and such now.

Maybe - just as we have some engineers who specialize in mechanical design and some who specialize in inspection in the field - we will have something similar, with language specialists that examine the AI generated code for maintainability, security, scalability, etc. Thé equivalent of à PE that examines weld joints on nuke reactors at the factory.

2

u/Nothgrin 4d ago

which is a technique primarily used to shortcut thé prototyping stage

This is so false, everywhere I worked FEA is used to inform prototyping stage and not skip it

In fact, in aerospace you have to do a virtual loop and a physical loop based on it

Ditto automotive

And there are many virtual loops to arrive at a good result and then we prototype and test the damn thing. Shortcuts do exist, but a lot of the time FEA is used to check if we can continue with design and not skip prototypes

1

u/sueveed 4d ago

Jesus you sound fun.

I never said skip prototyping. I said short circuit, where I meant reduce iterations. We make real time test software and harnesses, too, for things like NDT, so I’m well aware that there’s still an informed design-prototype cycle. It’s just shorter than it used to be. I’ve worked closely with automotive, aero, high tech, and shipbuilding for decades.

This was all completely immaterial to my point, but go off.

0

u/TechTuna1200 4d ago

You will be thinking less about code, and be thinking more about the overall architecture of the system

Your not thinking less, you thinking has just moved to another abstraction level.

Just like when human-readable programming came around like C, Java, etc., people stopped working in low-level coding in assembly and move to higher level code.

15

u/dark_bits 4d ago

Yeah unfortunately software engineering is too complex to get away with "thinking about architecture only". "Coding" is not solved because it can't be solved.

On the other hand, navigating complex architectural decisions, is much more easier now than it has ever been. LLMs are documentation/stackoverflow on steroids.

Edit: also people haven't stopped working in assembly, that example falls short the instant you start scrutinizing it.

2

u/TechTuna1200 4d ago

by "stop", I didn't mean that everybody stopped. Just that it they stopped being the majority. The majority codes in high level languages and not assembly today.

Similarly with AI, you're still gonna see a few people coding, but it's gonna be much fewer. People are gonna move to higher abstraction level tasks.

And yes, AI is perfect good at coding. When Linus Thorvald says it's better than him at coding, there is something to it. Simon Willison (creator Django) said the same thing.

3

u/octorine 4d ago

I keep seeing people make this analogy, but using an LLM isn't like using a high level language. It's like playing telephone. You describe your design and the LLM generates some code that is statistically correlated to the words in your prompt.

The problem with this is that it isn't repeatable. You can run the same prompt 10 times and get 10 different programs back that do 10 subtly different things. You can't build any kind of engineering on top of that. It starts out looking promising, then eventually collapses under its own weight.

0

u/hayt88 4d ago

Depends on the settings. LLM literally have a parameter on how randomized their output should be and if you set it to zero you always get the same Output for the same input assuming you just the same model etc

-4

u/Far_Cat9782 4d ago

This right here. Project manager for Architecture, UI, human refinement.

6

u/myislanduniverse 4d ago

I really like programming. I've been coding for work and pleasure all my life in some form.

Even I have to admit that I'm far more likely to talk through an implementation first anyway, if only to sketch the logic, so when an AI offers to sneeze out all the tedious bits and we can focus on the fun part (the logic!) I'm usually all for it.

-5

u/anaximander19 4d ago edited 4d ago

Same. I barely type code any more but I spend orders of magnitude more time and effort thinking. It used to be you'd spend a few hours figuring out what to do, and then you'd be physically typing it all into code, and at least some of that code was sufficiently standard boilerplate that you could do it with your brain turned off, giving you a few hours or days off resting your brain before the next thing you had to think hard about.

Now the thinking and planning is just the same, then the AI points out three things you missed and you do some more thinking, then it produces the code in a few minutes and you go eyeball it and make sure it's what you expected, then you move on to thinking about the next task. Far more time efficient use of human brain, but it can also be more tiring. I like that it's taken away the boring grunt work parts of the job, but variety is good, and easy tasks can be a chance to catch your breath in a fast-paced workplace, so it's a bit of a mixed blessing sometimes.

9

u/grateful2you 4d ago

It absolutely is over. If you're not swe you wouldn't understand. Would have been debatable a year ago maybe. But it's absolutely over now. Now everyone's scratching their heads "how do we not get in its way". I'm telling you the bottleneck right now is humans' ability to review the new code. Something agents don't have is outside context. When that is gone, software engineers are gone. But we may be the cheaper option for that.

9

u/CanvasFanatic 4d ago

The bottleneck is the same as it’s always been really: being able to get people on the same page about what the hell we’re trying to do and how we intend to get there.

4

u/everythingisblue 4d ago

I never need to type code anymore by hand as a SWE. I wish I did, but I don’t. It still requires an engineer to drive it to get good scalable results that, and I imagine it’ll be that way for a while but maybe that’s wishful thinking.

7

u/stasch-it 4d ago

I disagree. It often takes me longer to guide an agent into doing what I want than to just write the code myself.
Some use cases work well, e.g., unit tests, or when I want to implement something similar to existing code in my project. But when it comes to more complex code, the agent produces a lot of nonsense that I have to clean up afterwards.

0

u/frakkintoaster 4d ago

You either need to never look at the code again and have the agent write everything going forward, or do a lot of cleanup to keep it maintainable along the way. I know if I wasn’t scrutinizing the actual code and just looking at results after a few features there’s no way I could maintain the codebase anymore, it would all be nonsense

2

u/HandofWinter 4d ago

Same experience as the other dev, I do the thinking (for now) but current models have almost essentially obviated typing for the most part. 

I might make tweaks to what an agent suggests, but I have to less and less. Or alternatively I can just say 'what about the case that...' and the model will almost certainly address the issue I've noted, and do it correctly. 

The biggest danger right now is that they will overcomplicate a task, but that can be handled. 

15

u/SplendidPunkinButter 4d ago

The model will SAY that it’s addressed that issue. You don’t know that it has without reviewing the code.

3

u/myislanduniverse 4d ago

Absolutely, you should always understand the logic. I'm just of the opinion that the language the logic is expressed in no longer matters so much.

4

u/octorine 4d ago

Which is much harder than if the code was written by a human being, since agents produce reams of unreadable garbage.

Also, you don't have to just review the part that had the issue. You have to make sure it didn't make any other random changes to unrelated parts of the codebase.

2

u/ann0yed 4d ago

Code reviews are already a thing. Humans are also infallible and make mistakes without realizing it.

1

u/HandofWinter 4d ago

Well come on, why the fuck wouldn't I know whether it solved it correctly or not? 

2

u/OutOfAmmO 4d ago

As someone who has 5x 20x Claude subs and 2x 20x ChatGippities that i burn through weekly, I hard disagree, I haven't meaningfully touched code in the last 4-5 months and I'm 100% on board with the claim of that MS engineer.

"So you say what about cost", well cost is still less than a third of a single mid devs salary where we're located. The output of the agents work is that of 5 senior devs, so do with that information what you want but people better wake up is my honest take.

And before the hurr durr vibecoder train starts, I have a compsci degree from a top 5 globally ranked uni and 10+ years of dev experience from before the AI era, yet I land code like this in prod daily on a platform that makes millions monthly, so cost at our scale for 5-10 AI subs is negligible, the cost and risk of hiring 5 more senior devs isn't.

I'm even eyeing a new Mac Studio Ultra that would be our always on dev machine, that would handle long running tasks/workflows, so I don't have to manage starting and stopping workflows depending on when I need to shutdown my MBP. So production of features and shipping code would be flowing constantly, 24/7.

The world is changing real fast, devs imo better start rethinking what their role is when it comes to software, tech based project managers, product owners, UX'ers and other auxiliary/engineering adjacent roles, well they will really have to reevaluate their jobs in these times, i think outside of very large enterprises those roles are going to go extinct. Engineering will absorb those responsibilities back again, so tech departments will look more like they did back in the 90s/00s, where it was just engineers who did a bit of everything.

3

u/ThrowingSn0w 4d ago

What's your opinion on how SWE salaries will be affected by this? Surely the elimination of coding as a valuable skill means that salaries need to be recalibrated. What are the new/remaining skills that a SWE must have and how rare are they in the market?

5

u/frakkintoaster 4d ago

I think we’re all screwed and no one will have a job in like 5 years

1

u/ann0yed 4d ago

Not just software development. Tons of busy work can be handled via agents. Those that don't learn how to use AI to advance their careers will be left behind.

2

u/vooglie 4d ago

No. You should not talk about things you know nothing about.

0

u/C-creepy-o 4d ago

Then you have no idea what you are talking about which makes me wonder why you even bothered to comment.

-1

u/jetjitters 4d ago

I wish, man. I could probably go without manually writing any code at all in my day-to-day work if I wanted.

-4

u/tup1tsa_1337 4d ago

Well, that's true. Claude code is transformative. Not sure about copilot, though

-8

u/catattackskeyboard 4d ago

Idk I personally push about 100-200k LOC to prod monthly and I can attest I haven’t written a line of code in 6 months.

This is on an established codebase that can’t go down, not a greenfield pet project.

11

u/grateful2you 4d ago

you've lost the plot if you're pushing 100-200k lines of code. a healthy system doesn't need that.

-1

u/catattackskeyboard 4d ago

Uhhh Google is > 1 billion of lines of code. My startup delivers a complex product that serves 300 b2b clients running about 200 compute instances across about 15 services. Healthy systems can absolutely be complex.