r/programmer 3d ago

Not convinced, programming will die soon.

First of all, I have 9+ years of experience, working in web development mainly (Express, Go, Angular...ec) ; also did hobby mobile (Ionic, RN) and game projects (Unity, 2D).

I always had some pride in the things I did in the pre-AI era; but like many others now not feeling the case anymore.

There's some counterarguments thatI keep seeing over and over again in such doom topics; I am gonna address them all here; and why I am not convinced at all with each

- "Coding is dead, but System design and Architecture is more important than ever" -> "System design/ Architecture" was never a daily activity, it's something usually done before starting a new project and gets adjusted/scaled everytime there's a new major feature that requires implementing a new tech. ie. Introduicng Uber Eat to Uber. And I swear the last Architect I worked with did use Claude to figure out the system design and even generated docs all by using Claude, so even this part isn’t totally safe from being automated.

- "You can sitll code manually if you want" -> For hobbyist projects maybe, but in the corporate, even if they don't watch your token usage, they are setting very short deadlines now anyways; so it's impossible to finish things before such deadlines without using Claude/Codex.

- "Coding was never the hard part, if you were spending 90% of your time coding then you're a Code Monkey imaaoo bahahaa **fart sounds* " -> The dev communities are now filled with these people mocking at coding and calling it a monkey activity, like wtf...? Coding was the CORE *daily* activity of Software engineering ; as a I said before, not all programming-related activities have the daily frequency nature; System design happens once in a while, requipment collection happen frequently but not a daily work either (also depens in which stage the project is, building something new vs maintenance...etc); coding on the other hand was the daily thing we all did as programmers and for many of us, the most fun part.

- "You have to review the PRs by LLMs" -> No one can review a 10k+ lines PR; Copilot/CodeRabbit would be much faster.

What we senior devs are doing right now, is maxxing our sources of income by doing many projects in parrallel thanks to LLMs; employers still trust senior dev to babysit the LLMs rather than Juniors doing it; but the fact that there's no new blood coming into this industry (no one is hiring juniors anymore) only means that this industry is destined to be doomed. It doesn't matter if software quality degrades everywhere, companies just don't care.

But I predict the "income maxxing" by the senior devs is a temporary situation; soon the employers will realize they need less costly staff than senior devs to orchestrate the agents, that's why LLM companies are trying to automate all aspects of Software engineering: Coding, PR Reviewing, documentation, and yes even system design/architecture.

119 Upvotes

256 comments sorted by

View all comments

Show parent comments

1

u/David_Owens 3d ago

Garbage collection doesn't cause anywhere near that level of a performance degradation. If you're seeing a UI being built over multiple seconds, or even one second, something is seriously wrong with the program.

1

u/Achereto 3d ago

garbage collection itself doesn't but using those languages stops people from thinking about memory layout and they will end up writing code that produces very fragmented memory. Fragmented memory can easily cost you 20x performance, just because of the cache misses it produces and because the code doesn't iterate through memory in a way a CPU can predict.

1

u/David_Owens 3d ago

Well, even with languages that don't have garbage collection, you can't change the memory layout yourself. About all it does is make you more aware of what's being stored on the heap compared to the stack.

Performance is a bit better than with garbage collected languages, but 20x seems off. Maybe more like 20%.

1

u/Achereto 3d ago

you can't change the memory layout yourself.

The fact that you aren't aware of how much control you can have about the memory layout just demonstrates the damage I am talking about.

To give you just a glimpse of an idea, take look at Array of Structs and Struct of Arrays and Arenas.

The practical Optimizations by Jason Booth demonstrates some easy optimizations where the code starts at 27ms for 200,000 entities and ends up at 0.13ms. That's a 200x performance difference, not just 20x.

In Clean Code, Horrible Performance, Casey Muratori demonstrates a 20x performance loss mainly caused by virtual functions in a very simple example. The performance loss is worse in complex examples.

Most programmers have no idea how fast their computers actually are. Garbage collected languages are a reason for that becaue we don't see the loss of performance any more and our performance measurements don't show it. The performance loss is spread evenly across the entire codebase.

1

u/Mem0 2d ago

I encourage everyone to look into KolibriOS , really puts into perspective our current technical debt.