Live data from Hacker News

I started programming when I was 7. I'm 50 now and the thing I loved has changed

jamesdrandall.com

651–660 of 697 posts

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#651
post #288

Earlier quoted context omitted.

I agree with this, I put myself in the "glorious hacks to bend the machine into doing things it was never really intended to do" camp, so the end game is somthing cool, now I can do 3 cool things before lunch instead of 3 cool things a year

But, almost by definition of how LLMs work, if it’s that easy then someone else did it before and the AI is just copying their work for you. This doesn’t fit well with my idea of glorious hacks to bend the machine, personally. I don’t know, maybe it just breaks my self-delusion that I am special and make unique things. At least I get to discover for myself what is possible and how, and hold a sliver of hope that I di…

Essentially nothing we do as programmers is special or unique. Whatever we're doing, there's a 99.999% chance that somebody, somewhere did it first, just in a different context. The key point is, now we can avoid duplicating that person's effort. I don't see the downside.

Put another way: all of the code that needed to be written has now been written. Now we can move on to more interesting things.

What will really bake peoples' noodles is when it becomes apparent that the same is true for literature. I won't mind if I'm not around to witness that... but it will happen.

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#652

Earlier quoted context omitted.

And that's exactly what the person I was replying to seems to be complaining about. So many people on "Hacker" News could benefit from reading the canonical text on the subject by Steven Levy. A true hacker wants to bring the fire down the mountain. People around here just want to piss on it.

No, he's complaining about changes. Everyone can do it and that's not a change. Everyone could always do it.

No, that's not what he's complaining about. He doesn't feel like a special '1337 hax0r anymore, and that's a problem for him.

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#653

Earlier quoted context omitted.

> It’s copium to think that LLM code is more buggy than your median to slightly above median developer or that’s all that most companies need - median developers. You are not understanding the point. AI has to be properly supervised because it makes mistakes. Now if you are making more or as many mistakes as the AI, then you should look for a new career. You should understand the code better than the AI, because the…

> You are not understanding the point. AI has to be properly supervised because it makes mistakes. It been well over a decade (ironically until AI) that I have been responsible for an implementation small enough that I could do with my own two hands within the allotted time by myself. People also require supervision. Now if you are making more or as many mistakes as the AI, then you should look for a new career. Righ…

> Are you really saying that you can keep more of the code in your head than AI with a one million token context window or that you can read and understand various markdown files in a repo faster?

Of course. A million tokens is 50,000 lines of code. That's nothing.

It's not that you memorize a million lines of code. It's that you develop a solid mental model of how those lines of code are organized, how they work together, what the important gotchas are, what hurt performance in the past. You know the system well. Then when you are interacting with something, you can generally make predictions about the best way to make a change to that system, and you know in which modules to look when diagnosing a problem, so you can work your way around the codebase efficiently.

Most large mature projects are millions of lines of code. Chrome, Photoshop, databases like oracle or postgres.

But the LLM with that million token context window has that 50,000 line memory and then its general training data. That's it.

So your "value" as a developer who is using AI is to bring that mental model with you so you can supervise the AI and guide it to do surgery on that million line codebase with it's puny 50,000 line knowledge of your codebase.

But when you stop coding, you begin to lose your mental model. So, yes, there is a short term burst of productivity as your mental model fades but you are still good enough to guide the LLM. But after a while -- and depending on how deeply that code has been burned into your mind, it could be 6 months or a couple of years -- you will no longer be able to effectively supervise the LLM. You'll be like that noob that wanders into a big codebase they don't understand anymore. Then you wont be able to supervise the LLM.

You have to keep coding in a codebase to maintain your understanding of it. It really is just like having the LLM do your homework for you. Use the LLM to help you learn, to help you do your work, but keep doing the exercises yourself, so that your mental model remains fresh.

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#654
post #580

Earlier quoted context omitted.

Having bad coworkers who write sloppy code isn't a new problem, and it's always been a social problem rather than a technical one. There was probably a lot less garbage code back when it all only ran on mainframes because fewer people having access meant that only the best would get the chance, but I still think that opening that up has been a net benefit for the craft as a whole.

Before there was some understanding that at least they wrote and understood their own garbage code Now it is not true. Someone can spend a few minutes generating a non-sense change and push for review. I will have to spend a non-trivial amount of time to even know it’s non-sense. This problem is already impacting projects like curl who just recently closed their bug bounty because of low-effort AI generated PRs

> Before there was some understanding that at least they wrote and understood their own garbage code

> Now it is not true. Someone can spend a few minutes generating a non-sense change and push for review. I will have to spend a non-trivial amount of time to even know it’s non-sense.

The problem sounds basically the same to me honestly. If someone submits code that I can't understand and asks me to review it, the onus on them to explain it. In the previous case, maybe they could, but if they can't now, the review is blocked on them figuring out how to deal with that. If that's not what's happening, it sounds more like an process or organizational problem that wouldn't be possible to fix with the presence or absence of tooling.

> This problem is already impacting projects like curl who just recently closed their bug bounty because of low-effort AI generated PRs

External contributions are a bit of a different problem IMO. I'd argue that open source maintainers have never had any obligation to accept or review external PRs though. Low effort PRs can be closed immediately with no explanation, and that's fine. It's also totally possible and acceptable to limit PRs to only people explicitly listed as contributors. I've even seen projects hosted on their own git infrastructure that don't allow signing up through the web UI so that you can only view everything in the browser (and of course clone the repo, which already isn't something that requires credentials for public git servers).

I guess my overall point is that the changes are more social than technical, and that this isn't the first time that there was a large social shift in how development worked (and likely won't be the last one either). I think viewing it through the lens of "before good, after bad" is reductive because of how it implies that the current changes are so large that everything else beforehand was similar enough to gloss over what had been changing over time already. I'm not convinced that the differences in how programming was achieved socially and technically between 43 years ago (when the author says they started programming) and the dawn of LLM coding assistants were obviously smaller than the new changes that having AI coding tools have introduced, but that isn't reflected by the level of cynicism in most of these discussions.

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#655

Earlier quoted context omitted.

For me the problem is simple: we are in an active prisoner's dilemma with AI adoption where the outcome is worse collectively by not asking the right questions for optimal human results, we are defecting and using ai selfishly because we are rewarded by it. There's lots of potential for our use to be turned against us as we train these models for companies that have no commitment to give to the common good or return…

For some of us, our jobs have already been completely disrupted by other factors (e.g., ageism) so there is nothing to lose here after 2 years and 2400+ job applications with nothing to show for it. Clearly society wants me to strike out on my own; and that has been facilitated by the rise of agentic coding. If you've not been paying attention to the news, caring for the common good/welfare is now obsolete and self d…

Ah yes I hear that - I am hearing you share that it has felt society neglected and even discriminated actively against you. I am so sorry and can feel your pain.

One push back I have for you is to inquire about what "society" really means here for you and if its really society thats doing this for/to you or some other force or influence.

IMO it's a selective class of a few who drive things and hold exhorbant influence, the unaccountable leadership class I'll call them. It is they who fund and hold accountable the news organizations to drive their agendas, in a real-life conspiracy scenario it is actively as you say and I feel the constricting onto my own livelihood too as you say. On the other hand I don't believe ever the maxim you said of "everyone for themselves" as that's never true and never really has been. I think part of the messaging and programming of the unaccountable leadership class that they use the "news" to reinforce is this sense of powerlessness and disconnection, isolation from others. It's like we haven't been taught on how to organize and support each other and were made reliant on those systems outside us that they once let give us enough to survive. Now as they are reeling back those support systems we are back to what it always was: organizing with our communities, with strangers online and finding kindness and hope enough to organize ways of living that support us all. Not the select few.

I guess thats my way of saying even if we are defecting against each other to survive, we would do well to never forget what our greater intention and purpose is: to help each other ultimately and not these few rich actors who own the companies.

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#656
post #575

Earlier quoted context omitted.

Good news, AI coding assistants aren't a magic button that give you the final result without having to play the game at all. You'll still need to make plenty of moves on your own at your job, and you're free to use or not use them as much as you want outside them. Your job was never to play chess though in this analogy though, which is where it misses pretty hard; you were being paid to produce software, and the proc…

> you were being paid to produce software, and the process was incidental to it. Yes, the people who write articles like the one in this post understand this. Previously, they could do it and get paid while doing a thing they loved. Now that process is no longer economically viable: they can get paid, or they can do the thing they loved. They lost something, so they mourn the loss. At least they would, but a bunch of…

Responding to a blog post that was linked on an external forum with a different viewpoint isn't interrupting; it's kind of the whole point of having a comment section. They're sad, other people don't think it makes sense for them to be sad. You can respond to that disagreement with an analogy, and I can respond that I don't think the analogy makes sense. There's no obligation for people to only respond to an article with viewpoints that agree with it, and sometimes lots of people will think that the take is out of touch for some reason.

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#657
post #580

Earlier quoted context omitted.

Having bad coworkers who write sloppy code isn't a new problem, and it's always been a social problem rather than a technical one. There was probably a lot less garbage code back when it all only ran on mainframes because fewer people having access meant that only the best would get the chance, but I still think that opening that up has been a net benefit for the craft as a whole.

Before there was some understanding that at least they wrote and understood their own garbage code Now it is not true. Someone can spend a few minutes generating a non-sense change and push for review. I will have to spend a non-trivial amount of time to even know it’s non-sense. This problem is already impacting projects like curl who just recently closed their bug bounty because of low-effort AI generated PRs

I see comments like this a lot. In fact, I've run into it in my own side projects that I work on by myself -- what is this slop and how do i fix it? I only have myself to blame.

I can't speak to open source orgs like curl, but at least at the office, the company should invest time in educating engineers on how to use AI in a way that doesn't waste everyone's time. It could be introducing domain-specific skills, rules that ensure TDD is followed, ADRs are generated, work logs, etc.

I found that when I started implementing workflows like this, slop was less and if anyone wanted to know "why did we do it like X" then we can point to the ADR and show what assumptions were made. If an assumption was fundamentally wrong, we can tell the agent to fix the assumption and fix the issue (and of course leave a paper trail).

Engineers who waste other engineers' time reviewing slop PRs should just be fired. AI is no excuse to start producing bad code. The engineer should still be responsible for the code they ship.

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#658
post #564

Earlier quoted context omitted.

I think you were incredibly lucky to get to write code that you enjoyed writing. Most of the commercial code I've written, over a 30+ year career, has been shite. The mandate was always to write profitable code, not elegant code. I started (much like the OP) back in the 80's writing code as a hobby, and I enjoyed that. But implementing yet another shitty REST CRUD server for a shitty website... not so much. I totally…

^ This. People bemoan the death of coding, but easily 80%+ of the code I've written commercially was just CRUD or ETL shite. I've done a few interesting things (a formula parser, a WYSWIG survey builder for signature pads, a navigation controller for line-guided industrial vehicles, etc.) but yeah, don't miss writing reams of boilerplate. I always tried to take a Kent Beck inspired Smalltalk/TDD inspired approach to…

It's making it less, not more bearable.

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#659

Earlier quoted context omitted.

> But if you didn't make the decision about where to place the function, about which order you want to call them, if you're gonna do error handling deep down as close to the error as possible, I still make all those decisions. I decide what my error handling structure is, and I have it finally exactly the way I like it in python. I usually discover the "right" way for a piece of software while writing it, then it is…

> Yes I dont decide anymore exactly which line number the function is in, but that never mattered did it? What matters is how your objects compose and how you handle edge cases. I still do that. I would say it does matter, and always did. Obviously, not every single line order matters with performance results that you can measure. That's not what I'm saying. But every decision does add up to who deserves the credit f…

Well I'm not a coder so maybe my opinion doesn't count, but I did help build digitalocean so I know a little about them. I think the reason so many people don't feel embarrassed is simpler and less sinister than a lack of integrity... they jsut never had the relationship to craft that you have. You very clearly care about the decisions.. you care where the function goes, errors up and down stream the accumulation of small choices that make something yours!! From what I've seen that's a craftsman's relationship to work. It's valid, it's fair, and it's commendable. That said: most people who work generally, including writing code don't have that. They never did. Before LLMs they were copying from stackoverflow without understanding it, which by your own definition was already the problem. But another thing I learned in art school, at great craftsman never blames their tools, the existence of people who use a tool badly has never been a good argument that the tool is the problem. As i said earlier, film school was full of people passing off purchased presets as their own creative work. They weren't shameless because Final Cut existed. They were shameless because they were shameless!!! lol The dean told me to stop fixating on them but because it was consuming energy I could've spent on my own work. An extreme, but just like I accept gay people are gay when I'm stright, trans people are trans when I'm cisgender, I accept other people are not like me and find joy in very many divergent places, and I am nobody to judge another's joy in life.

Re: I started programming when I was 7. I'm 50 now and the thing I loved has changed

#660

Earlier quoted context omitted.

I'm in the enjoy writing code camp and do see merits of the hybrid approach, but I also worry about the (mental) costs. I feel that for using AI effectively I need to be fully engaged with both the problem itself and an additional problem of communicating with the LLM - which is more taxing than pre-LLM coding. And if I'm not fully engaged those outcomes usually aren't that great and bring frustration. In isolation,…

I think an additional big part of why LLM-aided coding is so draining is that it has you constantly refreshing your mental model of the code. Making sense of new or significantly changed code is very taxing. Writing new code is less taxing as you're incrementally updating the model as you go, at a pretty modest pace. LLMs can produce code at a much higher rate than humans can make sense of it, and assisted coding int…

It rings true. Then we have a question in front of use - when you're doing the changes yourself you are also building and adapting the mental model of the system - which approach needs less effort in total?
Post reply on HN