Live data from Hacker News

The Tower Keeps Rising

lucumr.pocoo.org

261–270 of 280 posts

Re: The Tower Keeps Rising

#261
post #240

Earlier quoted context omitted.

> I can guarantee you that most of these simply didn't go far enough; And I can guarantee that I knew, when I wrote my comment, that I was summoning this very "No true Scotsman" argument. > they couldn't work out how far a canon ball will land fired at a 45 degree angle with a certain velocity, though they can crack jokes about Schrödinger's cat. It always superciliously starts with how true lisp people are the most…

Ha! For a second it looked like there was a debate here.

What's the point? There's nobody here but you and me.

Re: The Tower Keeps Rising

#262
post #214

Earlier quoted context omitted.

I see that point differently. Typing code and using AI well are distinctly different things. I've dealt with Chinese subcontracting managers before. But managing people is different from doing code reviews and writing code. I think these two are fundamentally similar but different. Of course, it's undeniable that you need a certain level of skill to verify the output, which is why I practice typing for an hour every…

You sound like you’re young and you don’t have a ton of experience programming yet. Id be cautious about outsourcing your knowledge and skill development to LLMs at this time. There is a massive gap between what a beginner and expert can achieve with LLMs - in fact I’ve seen plenty of people who’s use of AI results in a net negative! You need to develop your skills and knowledge in order to best make use of LLMs. You…

Thank you for your kindness. If we're just counting years, I've been programming since college, so that's about 15 years, but my professional experience is around 7 to 8 years. It's a short career, and if that makes me young, then I'm young. I agree with you that offloading knowledge and skill development to LLMs is a real problem, and I also agree that there's a huge gap between what a beginner and an expert can achieve using LLMs. (I was born in 1992.)

I agree with most of what you're saying, and I think you're giving me thoughtful advice out of genuine concern. I agree with nearly all of it.

I think of the phenomenon you're describing as "layering of input." Everything you've cautiously advised me on, I believe you're right. The atrophy of coding muscle from using AI is happening to me too. That's why I make myself type for at least an hour a day, just to maintain the coding muscle I need to actually read what the AI generates.

The problem is, I'm a freelancer, and I have to accept the reality that the market itself has already shifted around AI. Open source developers can show off the aesthetic beauty of their code to others and attract sponsors. But I'm a freelance developer, and I usually get paid per project. These days, with AI vibe coding, not only are companies handling more things in house, but deadlines have become drastically shorter compared to before. What used to be a two month project is now a one month project. And the trouble is, I charge by the month. So the workload has gone up, but my pay has effectively gone down.

I also think, as you said, that people should be more careful about how they use LLMs. But the landscape has shifted so much, and in this environment, I think the people who use it more will end up using it more adeptly. In other words, I've changed from a programmer who models with typing and UML into a programmer who models by using an LLM. I don't know which direction is the better one.

That said, I admit there's probably some self rationalization going on, because I don't really have a choice. The moment I stop working, I can't make rent. The open source world isn't really open to someone like me, an Asian guy. I upvoted you because I'm not taking your advice in bad faith. I understand where your heart is, but there's a part of me that just feels like I don't have much of a choice. Have a good day.

Re: The Tower Keeps Rising

#263
post #109

Earlier quoted context omitted.

I think part of the problem is the context windows for humans are actually much smaller than what an LLM can keep track of today. The small context window of humans is a feature that forces modularity and abstraction in software engineering so that you can decompose what you're working on into something that can fit into your head. But since LLMs can fit so much more in their head, so to speak, they don't have this s…

Also a human has to explain the code. There is a social contract and producing slop gets you fired. Especially as you produce it much slower than an LLM.

And the human has to explain it at 2 tokens/sec (average speaking speed ~130-150 wpm). That's another constraint against slop - humans need to be able to explain their code succinctly.

Re: The Tower Keeps Rising

#264

Earlier quoted context omitted.

Conversely, Rexx scripting on the desktop was glorious in 1995.

lol I was actually kidding. The past was way better, almost always (it isn't just nostalgia). I think my enjoyment of tech actually used to sort follow a wavelike pattern. Then, it sort of became a straight line a few years before COVID, and I worry that AI is cementing people into an always-forward mindset that removes the enjoyment from just about everything. I mean, yeah, hobby coding is not going away, but the fe…

There's nothing quite like the empowerment of discoverable user interfaces devoid of dark patterns.

Re: The Tower Keeps Rising

#265
post #262

Earlier quoted context omitted.

You sound like you’re young and you don’t have a ton of experience programming yet. Id be cautious about outsourcing your knowledge and skill development to LLMs at this time. There is a massive gap between what a beginner and expert can achieve with LLMs - in fact I’ve seen plenty of people who’s use of AI results in a net negative! You need to develop your skills and knowledge in order to best make use of LLMs. You…

Thank you for your kindness. If we're just counting years, I've been programming since college, so that's about 15 years, but my professional experience is around 7 to 8 years. It's a short career, and if that makes me young, then I'm young. I agree with you that offloading knowledge and skill development to LLMs is a real problem, and I also agree that there's a huge gap between what a beginner and an expert can ach…

People gotta do what they gotta do to make money, no issues with that. Best of luck brother.

Re: The Tower Keeps Rising

#266
post #14

Earlier quoted context omitted.

The biggest obstacle to huge refactoring has always been minimizing the risk of bugs, not losing any features, and ensuring compatibility with the existing ecosystem. The reason it's become easier in the age of AI is because we stopped caring about these things.

Actually now we care even more. The reason people didn't write extensive test suites was was because it's super fucking boring to do so. AIs don't care, they'll happily write 50 unit tests with slight variations and pair them with a full dockerized end to end test suite. Now we have at least SOME tests. Are they good? Maybe, maybe not - but we have them. If one of them fails later on, we can check if it's an actual i…

People didn't write tests not because it was boring, but because they didn't have time to do it because implementation is more important. That problem didn't go away - it's just instead of not having time to do tests, now we don't have time to review whether the AI wrote tests that make sense. And most of the time it doesn't. They're running the code but not asserting anything. Or they're asserting test inputs instead of implementation outputs. Or outright swallowing errors to make tests pass.

Having such tests is, in fact, worse than not having tests at all. Non-existent tests are just as useful as bad tests, and are much cheaper to maintain.

Re: The Tower Keeps Rising

#267
post #13
post #6

I've said for a long time that composability in software is a bit like playing Tetris: the lines have to clear. I feel like that gives an even more literal tower-rising metaphor, and that's what it feels like people using agents naively (and software engineers of lower skill or earlier-career), end up violating. Agents are getting better at folding things into themselves, especially if you direct them to... but unfor…

The upper bound on program complexity used to be the power of the human mind. "Vibe coding" can break through that barrier. But not because the problem being solved needs that complexity. Because the process does not drive itself towards compact abstractions. It's the AI-powered version of the scaling problem Brooks described back in "The Mythical Man-Month". The combinatoric problems get worse with scale. Concretely…

>We need some way to make AI-driven coding strive for parsimony.

This is the single reason why my experience with agentic development honestly kind of sucks, and wastes so much of my time.

The simplest prompt can result in the most verbose garbage ever produced, and scope-creep nobody's every seen before.

AI has a huge cognitive load problem right now. It's no wonder why so many devs say they're completely exhausted after a few hours, and not in ways they were before they picked up agentic dev.

Re: The Tower Keeps Rising

#268

Earlier quoted context omitted.

I believe similar. Maybe not exactly the same thing, but I think one related representation of this in any good codebase is documentations in the code: Good documentation always focuses on the why and not the what. i.e. things that are not represented by or representable in code. It may describe not only why a certain choice was made, but also why not something else. In general, the whole point of these documentation…

I can't really explain it but when I am working with a system in my head it's not represented as text. It has an almost physical dimension to it similar to imagining how an engine works or what have you. This is obviously beyond the grasp of an LLM.

Interesting! Makes me curious what you do for work.

Re: The Tower Keeps Rising

#270

Earlier quoted context omitted.

Yes, of course it does. It's strange to me that this can be asked.

Why? How far do you take this, do you inspect the inside of every single thing and program you use? Your microwave promises to heat your food at 800W for 1 minute, do you open it up and measure the magnetometer strength? Do you double-check the timer that it's accurate? You want a program that takes in A and returns B within X milliseconds, I deliver it to you. Do you spend the time going through the whole program li…

>You want a program that takes in A and returns B within X milliseconds

No, I actually want a lot more than that. I just didn't communicate all of it, because I'm accustomed to you understanding what good software is. (Or I didn't hire you in the first place, because I don't trust others to care like I do.)

If the microwave doesn't cook my food well, I can probably adjust for it; and anyway the objective power metric isn't the thing that matters to me, but the temperature and taste of the food I pull out. The code is an entirely different story, assuming I'm actually asking for code and not a finished program. Because I'm going to have to integrate it into something else.

And yeah, like the sibling comment said, the currently existing tests aren't actually the full interface. And they, too, are code, which can be wrong.

Post reply on HN