• 1 Post
  • 1.14K Comments
Joined 3 years ago
cake
Cake day: June 12th, 2023

help-circle


  • Let me say this how it sounds to me:

    I couldn’t build weapons of mass destruction my whole life, I tried to build nukes several times but couldn’t. Now I have a robot that just does the nuking for me, while I can build other things. My other friends don’t seem to have a problem with the nuking, because they get to shoot their guns faster.

    I’m sorry, but just because you can do something doesn’t mean you should. I could do a lot of immoral, unethical, horrible to humanity and nature things and yet I don’t.



  • If coding is easy, how come programmers were in high demand, and have demanded large salaries for years (even before ZIRP)?

    Because programmers seemed magical, mythical, able to create insane amount of value by typing a few words onto a screen. You will see this if you just go and look at how any other industries work. Even just using basic shortcuts puts you into like the top 1% of computer users, that’s how inefficient most people are at working.

    Why was there so much stress, overwork and burnout even before AI started churning out 5000-line PRs? Why did companies seek 10x ninja rockstar coders and subject them to leetcode interviews—surely, a junior fresh out of college could churn out something if it’s so easy?

    Because developers are asked to do more work than any other office job. The value you create as a developer is 10x what a product manager does. You can do a product manager’s job, they cannot do yours.

    If coding is easy, why do we have doorstoppers like Clean Code and The Pragmatic Programmer?

    Once again, because programmers are obsessed with efficiency and productivity. Having a book about something doesn’t mean jack though. There are books on how to walk better, that doesn’t mean walking is hard.

    Why do we have bootcamps or even whole college degrees dedicated to it?

    These are dumb questions, there are degrees for everything.

    If coding is easy, why are people angry at AI (or anyone else) copying their code? Why do they act like they’ve poured their sweat, soul, and copious amounts of time into something so trivial?

    People are angry that AI isn’t “following the rules” while simultaneously destroying the planet. People believe the bullshit that LLMs make up and then say “oh, your job was easy the whole time”. No, coding is easy. The rest of it wasn’t. Coding is meaningless without good architecture, good requirements, good UI/UX.

    If coding is easy, why do many now feel like their identity and professional purpose are being stripped away from them?

    … because the jobs are being taken away and distilled down into just “coding”. How is this hard to understand?

    If coding is easy, why is software so damn buggy?

    Because business doesn’t (didn’t) care about writing code, they cared about making money. Also the number of bugs has nothing to do with how easy something is. Walking is easy, that doesn’t mean you don’t ever roll your ankle.

    If deciding what to build is the hard part, why do so many product managers seem clueless? Why aren’t there rigorous 10-step interviews for them? Why aren’t they getting paid more than the developers?

    Yay! Good questions now! Yeah why do programmers have the only job where they’re quizzed over and over again? Huh, maybe it’s because every other industry thinks the hard part is coding (hence why this focus on coding)!

    If deciding what to build is the hard part, why aren’t market researchers, usability experts and—hell, customer success—considered rockstars in a software company?

    The output of a programmer is directly visible, the output of pretty much every single other job in software development is not. What, are they going to start measuring how many tickets and meetings your scrum master makes?

    If implementation is easy and finding demand is harder, why are programmers upset when the salespeople promise a new feature to a customer to close the sale? They’ve found a genuine demand, something people will pay for!

    Who the fuck ever said implementation is easy. Coding is easy. That’s not implementation. The code has to fucking do something. That thing has to be tested. The sales person probably didn’t gather actual requirements before promising the feature, so whatever the customer thinks they’re getting is definitely not what they’re getting.

    You can literally see that actual coding is easy when you understand the requirements by looking at tiny development companies that have made a single product where they give customers enormous power to choose new features. The new features come out incredibly quickly.

    If coding is easy, why doesn’t everyone just build ten variations of a thing and see which pans out?

    Dumb question. It’s hard enough to sell one product, much less 10. Think about any normal software user finding out there are ten ways to do something. Even some programmers hate it, Python claims there’s only one right way to do any given thing.

    Some software developers do say “I don’t write code, I solve customer’s problems”. But then they turn around and start to opine on monads, memory safety, and DRY principles, while their understanding of the customer is a made-up “user persona”, and they think “affordance” is the money your parents used to give you on weekends so you could go out and have a good time.

    Yes, they like to talk about the fun part of the job, not the non-fun part. Big surprise. Also turns out they like to optimize that part to make it more and more fun, because it’s become too easy.

    What is important?

    You’ve switched the topic. It was about what is hard, not what is important.

    But do recognize we’re in the middle of an industry-wide tectonic change. We need to figure out how to adapt. We need to understand what is likely to change and what never changes.

    No we don’t. This is like saying we need to learn how to adapt when every country has nukes and has started to bomb every country constantly. We need to stop bombing, not learn how to live with it.

    Users will always want more and be prepared to spend less

    So then we definitely should stop using LLMs.

    Programmers have been in the business of disrupting our own industry since the beginning. Nobody uses punch-cards any more. Very few people need to code in assembly, or COBOL. Those decades spent fighting memory bugs in C or C++, with the scars to prove it, are worthless in the age of Rust, Go, Python and JavaScript.

    Difference is, those things were an improvement. LLMs are a step backwards.

    Accept that change happens. Be equal parts curious and critical about the new stuff.

    I love change. I don’t like destroying the planet. It’s even worse when it’s of absolutely no benefit to anyone but billionaires. This isn’t change. This is destruction of the planet.






  • Completely disagree. The difficult part of software development was never writing code OR speed of delivery. It was understanding requirements and problem solving. LLMs still can not do either of those things and there is no evidence they ever will be able to.

    An example of how harmful LLMs actually are to development can succinctly be described with an issue I had a few weeks ago. I found an issue in an open source project, code was fine if a bit hard to understand. I came up with a PR to fix the problem.

    In the time from me checking out the code to submitting the PR, a little less than 24 hours, the maintainer had completely rewritten the entire project with Claude. It was complete nonsense. Incredibly difficult to understand. Abstracting things that didn’t need abstracting. My PR was useless, because the entire project was new. The maintainer definitely didn’t understand the changes either. If a bug came up there’s no way AI would be able to solve it (the bug was still there even though the code was entirely new).

    LLMs don’t understand the code. They just make things that look like they will work. And then a human has to maintain it (or keep paying billions of dollars for Claude to try to fix it).