Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

> There is the appealing idea that AI-assisted programming means better tools which lets us build more ambitious software. That is certainly true at the level of the individual and without doubt a developer with an agent will be dramatically more capable of changing a codebase. But large software projects have never been limited only by how quickly an individual can produce code. They are limited by how well people can coordinate their understanding of the system they are changing.

So true.

Since Nov 30, 2022 everything has become… more complex.



I feel like with software, things have gotten way too complicated (just layer's upon layers upon layers). But to deal with that complexity, now we're using something that just creates WAY more complexity. I've been coding for a while, and I remember the 90s and early 00s where people could make pretty powerful applications with like visual basic or php with essentially no formal training. Those technologies weren't great, but they were really simple and easy to pick up. In contrast, if you try to pick up web development or desktop app development today, it's absolutely overwhelming. Like, something like React is useful but the amount of things you need to know to use it properly is pretty high.

I think introducing AI to deal with this is overall a mistake though. We're just adding more complexity on top of the existing complexity. At best, it's a massive waste of hardware. At worst, we'll probably have agents introducing as many bugs as they fix as they also drown in complexity, and a lot of stuff built using these techniques are going to be fragile garbage while the overall skillset of humanity diminishes because people aren't learning the skills anymore.

Fundamentally, software does not need to be this complicated and it's a solvable problem, but it does require people that care about craftsmanship.


I had a discussion with folks at work about what information is worth retaining in the face of AI doing everything for us. A lot of what we have in our heads to qualify as "domain experts" is pretty esoteric. How to invoke command line tools, gotchas because library A uses one convention over library B, AWS vs GCP; so much is specific to a tool rather than a method. There are also a lot of entrenched tools that are effectively unfixable due to the risk of breaking changes, so you have to shrug and accept + learn that's how it works.

Catch-22 is it's still important to know the fundamentals so you know what to ask for, but if you don't know the esoterica, the model is eventually going to make an assumption and screw things up. And the models don't have much taste either in prose, or in coding/comment style.


Yes I think the problem is not that AI "has all the answers". It is that we don't have "all the questions". If we don't understand the whole of what AI produces for us, we can't ask it to make parts of it different. We are not in control any more of what exactly is produced, and we don't want to give AI all the control, because then it would not be doing what we want it to do.

Therefore it is critical that whatever AI produces is understandable to us humans. That is why we must demand that AI tools and agents produce "well designed" well-structured software. That's the bottlenexk to progress I think. Even AI can't deal with exponential complexity explosion.


Amen.

Drowning in complexity. Paralysis of choice.

I read a comment (joke) that if you want to follow all LLM development you should have to be unemployed.


And what's ironic is that a lot of those layers and complexity were added with the stated goal of making it easier for average developers to build applications.


That is the nominal motive, but I think that the real motive is that it makes it easier for average developers to pile on more complexity.

Back in the day we just accepted technical constraints that didn’t prevent us from doing anything mission critical. So the UIs weren’t paragons of personal expression, probably there was only one database which didn’t have any scale out features at all, and nothing scrolled infinitely. And I do think that tended to make things easier to fit into your head, because the number of distinct APIs and module interactions you needed to understand was much smaller.

But also none of it was integrated with Alexsirtanapilot, so everyday life was an endless misery.


Yeah, I think a lot of what web tech makes possible/standard in a UI is actually frequently things that add a lot of complexity with little actual value. Animations, a widget that looks different from the thousands of other widgets you use daily that do the same thing, non-standard behavior, etc. Computers are ironically much harder to use now than they were in like 2000, and it's not that they're doing things that are fundamentally way more complicated, it's just a lot of bullshit that isn't entirely neccessary


Yes. Just this evening I had to help my mom. She was convinced a web form she needed to fill out was broken.

The problem was a required input control was so heavily styled that it was genuinely difficult to recognize it as interactive. Possibly impossible for my mom, whose eyes aren’t what they used to be.

And, in place of traditional validation design language, they decided to just make the submit button invisible until the input validated.

The worst part is, someone is probably quite proud of the extra day or two they spent making sure that UI was broken.


Yes. The computer software trend now is heading to the trend of 'more and more easy', but it cause it more and more complex. Due to the vast money poring in to the software industry for the past 10 years, bosses want fast to market, so easier to produce software. But in the same time it makes it more complex to debug and understand.

We should advocate hard but simple instead, but that will take more time to market, which the current trend of hot money driven market would not want, sigh. There are some good article discussing about this: https://tomauger.gitlab.io/posts/2021-06-08-simple-vs-easy/ https://samwho.dev/blog/simple-complex-easy-hard/


> They are limited by how well people can coordinate their understanding of the system they are changing.

It's not really news, though. Programming as Theory Building (Peter Naur) was published in the 80s, I think?

Maybe the younger entrants to this field never came across it, but even if you never came across it, it was common knowledge amongst experienced devs that understanding of the system you are about to change is crucial.


The complexity of coordinating a project involving more than one entity is, of course, an issue across all industrial sectors—just look at the construction industry.

Thanks for mentioning Peter Naur’s Programming as Theory Building (1985).

I would add Fred Brooks and his The Mythical Man-Month.


> It's not really news, though. Programming as Theory Building (Peter Naur) was published in the 80s, I think?

The news is that Agentic Programming has made this always challenging task even more challenging.


Challenging. Adventurous. And tiring.

It’s global madness fired up by continuous stream of news from LLM providers. It’s like The Verge that is almost about FAANG only, but multiplied as it is “magic” for most people, as vibe coding is “so easy” and dopamine-producing activity that it is similar to runners that don’t want to stop as it stimulates them (and in this case ofc it is healthy :)


I knew a runner that was wearing his body down. His joints where giving up. I predicted he would become a cripple. He wouldn’t stop running despite knowing. He was addicted. Some stories about prompting agents feel like that to me.


I don't know. some stuff has gotten less. Major databases now ship effective HA tooling, microservices seem on their way out, structured databases seem to be back in instead of NoSQL.

HTML and pre-rendering are back in, HTMx, liveview

The degaussing of CSS and the hacks we did, hell i was trying to explain how we debugged web pages in IE6 to a younger staff member today.

Some things are more complex, some things got good enough to make them less complex.


> Major databases now ship effective HA tooling

Which ones? PostgreSQL doesn't have HA in core.


MySQL 8, but upon review that was 2018. 5.7 had some but it's certainly improved overall since then as well


A database with built-in HA is a significantly more complex system than one without it.


And one built without it and not coordinating with it is often much harder to reason about when you bolt it on later.


>Since Nov 30, 2022 BC everything has become… more complex.

FTFY

Increasing complexity is the story of mankind. It's the story of civilization.

Someone from 20,000 BC would wander around the earth trying to find food, trying not to freeze, and trying not to get eaten. Someone from 5,000 BC would be trying to grow food, hoping it rains, and hoping disease didn't wipe out the village. The second one increases the complexity from all the systems required to manage people and keep the land growing. Today the vast majority of people on earth don't grow their own food at all, and instead are busy in some way managing the complexity of a large society.

Someone from 1970-80 would think our software from pre-llm days was vastly more complex. They'd just code directly to the hardware with no abstraction layer. Now almost no one does that. We abstracted the hardware away in most cases. With cryptography libraries for the vast majority of people it's complexity is abstracted away and mostly people are told "don't try to write your own crypto because you will fuck it up".

The question now becomes, how quickly will LLMs be able to coordinate their understanding of the system they are changing?


>LLMs be able to coordinate their understanding

I think the next time I see "LLMs" and "Understanding" in the same sentence, I am going to lose it....


You should be less upset over semantics that everyone else has usefully settled on. LLMs understand things fine.


Right and my math textbook understands integration.


At least your math textbook was written by somebody who understood integration


Saying an LLM understands something is like saying my biology textbook understands biology. It's a complete category error.


[flagged]


I'll meet you in the middle: an LLM "understands" words in the same way a toddler understands the phrases they say. "My want cookie!" The toddler has zero comprehension of what any of those words mean, but they know that saying them in that order might result in something desirable.

An LLM has zero understanding of "my", "want", or "cookie" because an LLM has no id/ego, has never felt desire, and has never eaten a cookie.


I believe you've made a category error in understanding, um, understanding. You've tied emotion into it. This to me are entirely different concepts where both happen to be wrapped up in meaty flesh that drives us humans. Now, these concepts are very important in sociology and human understanding of how we behave, but they also may have zero importance for the domain that encompases all understanding.

HN would commonly recommend reading the book Blindsight here.

Moreso, all you've done is recreate the Searle Chinese Room thought experiment which gets bounced around with no means of deciding if it reflects reality or not.


No I didn’t. You just don’t like the analogy so you rejected it with a lot of empty words.


the shy one of my shelter cats that figured out how to open and close the cabinet below the one with wet food at 3am without meowing has infinite more understanding than any LLM of how the world works


How'd your cat do at IMO last year?


I'll meet you in the middle: an LLM "understands" words in the same way a toddler understands the phrases they say.

How'd your toddler do at IMO last year?


Ask an LLM for the difference between a definite and indefinite article, and then pronouns. Maybe just a whole run down of basic grammar. And then read the comment again.


Why don't you do that, since you're the one who has no idea what will happen?


I was referring to you referencing “my toddler” but I suppose if reading is not your forte suggesting you use an LLM isn’t helpful. My mistake.


If that's what you consider a reasonable argument for a rationally-held position, then other sites beckon.

But then it's hardly a rationally-held position, unless you have had no exposure to LLMs in the past year or two.


I run them locally. You never addressed personally attacking a toddler you assume I have. As you put it, other sites beckon. Take care


For what it's worth, nomadism and agricultural systems are not necessarily more complex - that is, the complexity of a nomadic lifestyle can be quite high. Randomization, varied food sources, hybrid lifestyles, etc.

The hierarchy is certainly higher in agriculture societies it seems, but the complexity is up for some debate





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: