Earlier quoted context omitted.
I resonate with much of what you have pointed out, but I have a different perspective on certain parts. Software consists of various layers, and everyone has their own specific areas of strength. For instance, because I am an application programmer, I often need to write code that prevents the program from halting—aligning with recent programming trends that involve preserving the computation context using monads. In…
Moving up and down the layer of abstraction is an orthogonal skill. The skill I’m talking is taking some axiomatic concepts (can be opcodes or functions from a high level DSL) and then build something using the given rules. I took basic algorithms as an example because they are trivial in the grand scheme of things while learning something like flask or Laravel involves too many concepts. At the core, both involve th…
“Code was never the hard part” is an insult to all programmers
331–340 of 585 posts
Re: “Code was never the hard part” is an insult to all programmers
#332Earlier quoted context omitted.
> a sufficiently complex consumer or enterprise app winds up having big performance problems if people don't know what they're doing w.r.t. the code they write and how they connect systems together with that code. On those complex systems in particular the problems start long before any code is written. A software engineer can create and understand the specs, requirements, design the system, architectural decisions,…
No they can’t do everything before writing a line of code. The design and requirements feed into the code and vice-versa over and over through the lifecycle of a piece of software. Some architecture work and design will be done beforehand, but many details will fall into place as the code is being written, thrown away, adapted, etc. The idea that code is mere transcription - which I see a lot in these AI discussions…
Which part of my list was just "a detail" to be dealt with at some point in the lifecycle (but only if you're not too busy shipping features) for you? You're laying bricks before knowing if the wall's supposed to be concrete.
> Code is a form of low-level design and is where the rubber hits the road.
Sure but in keeping with your analogy tires are fungible across most cars and it takes minutes to change one if you picked the wrong compound. It takes years to properly design a tire, not to speak of everything that sits on top of those tires. By the time you actually "meet the road" you already defined to a tee what you want to achieve from every perspective and everything you do is to meet that goal, even if you have to make tweaks. You don't find out if it's a scooter or a roadster tire while working on it.
> The best requirements, designs, marketing, etc are worth jack if one fucks up the code.
Why are you mixing some fundamental things which are essential and can't be changed along the way without massive effort and risk, if at all, with things like marketing?
Do you want to aimlessly write code while chasing a target that moves randomly and conflicting because your plan was to define things "at some point"? You're really making my point with your insistence that it's all about code and every other fundamental thing is "a detail" that just comes along the way.
Re: “Code was never the hard part” is an insult to all programmers
#333Earlier quoted context omitted.
The sad reality is that the vast majority of customers (whoever you are writing software for: clients, management, or end users) simply don't care as much about quality. If you give them the "time, cost, and quality" pick-two choice, 99.9% of customers are going to ask for fast+cheap. It's not the world I wish we were living in.
This isn't true. I don't think you or me would want a car/TV/smartphone that's cheap and flashy but breaks every two weeks. Sometimes people are strapped for cash that's why they cheap out on stuff, or really are enthusiastic about it, so they tolerate it breaking all the time, but for everything else, reliability is king.
In tech, the era of competing based on quality is long gone. The winning strategy is to get a monopoly/oligopoly and then you can let the quality decay to zero and people will have no choice but to keep paying you money (or to your handful of equally-mediocre competitors).
Re: “Code was never the hard part” is an insult to all programmers
#334The author might be missing the intent of the observation. Maybe they’re misinterpreting it. What I, and many people who’ve said, “code was never the hard part,” aren’t referring to the skill of an individual. It’s not the hard part of the engineering process of developing software. Programming languages have manuals. Many data structures are well documented. There are frameworks for damn near everything. While the d…
Getting everyone to understand the problems, working together, etc, etc are issues that are inherent to organisations. They’re orthogonal to AI and to the actual hard technical skills needed to execute on a specific strategy. And if the technical skills are lacking, it doesn’t even matter how good an organisation is at collaboration, whereas hard skills plus organisational disfunction are a known successful pattern :…
But these are skills that can be taught to individuals.
But teaching an organization that their real bottleneck isn’t how fast they’re writing code; it’s producing production-ready software that people understand and are willing to take responsibility for… that’s much harder.
Many businesses want to treat software development like an assembly line and revert back to Taylorism. It’s knowledge work and there’s no royal road. Good teams get fast when they have the right mix of skills and trust from the organization.
What we’ve been delving into for the last decade has been a decline in the value of labour and work.
“Code isn’t the hard part,” isn’t meant as an insult at individual programmers or to devalue their work. That’s being done by big tech and their AI hype machine.
Re: “Code was never the hard part” is an insult to all programmers
#335Programming used to be a rare skill. Not so much now. In fact, it hasn't been for well over a decade.
My current employer started aggressively hiring for programmers in India in the early 2010s. They get paid a fraction of what our software engineers do in the US. There are many talented engineers in India, and those who get hired by us either find a way to come to the US for an enormous pay increase, or use us as a stepping stone to quickly find better work. And my employer is seemingly fine with this. They expect these cheap employees to do programming, not engineering.
Programming may not necessarily be easy, but it is cheap. It has become a relatively common skill, driving down its market value. A lot of tech companies were slow to figure this out because times were good, interest was low, and investment was flowing.
AI is waking people up to a truth that has been around for a while now.
Re: “Code was never the hard part” is an insult to all programmers
#336The author might be missing the intent of the observation. Maybe they’re misinterpreting it. What I, and many people who’ve said, “code was never the hard part,” aren’t referring to the skill of an individual. It’s not the hard part of the engineering process of developing software. Programming languages have manuals. Many data structures are well documented. There are frameworks for damn near everything. While the d…
It’s getting everyone to understand the problems, working together (etc)… There are manuals for this too, and interestingly enough this has been studied since the Romans at least! Is it then really the hard part?
Re: “Code was never the hard part” is an insult to all programmers
#337Re: “Code was never the hard part” is an insult to all programmers
#338Earlier quoted context omitted.
Oh. So, because I said I work in software you assumed I worked in safety critical systems? Interesting. A little unhinged, but interesting. Anyways, as I said elsewhere, I don't code for fun, and my employer would be unhappy if I sent you their proprietary code. You can decide to do some experiments yourself, or you can decide that you don't want to hear it. No skin off my back either way.
They simply asked you to support your claims, as an ethical person would. Without that, your words are just noise. And I see that this isn't the only comment you made where someone asked to provide supporting evidence and you dodged.
Re: “Code was never the hard part” is an insult to all programmers
#339Earlier quoted context omitted.
I resonate with much of what you have pointed out, but I have a different perspective on certain parts. Software consists of various layers, and everyone has their own specific areas of strength. For instance, because I am an application programmer, I often need to write code that prevents the program from halting—aligning with recent programming trends that involve preserving the computation context using monads. In…
I really enjoyed reading your comment. I was reminded of a perspective from Patterns of Software , a collection of essays from the 90s by Richard Gabriel. The very first one talks about the ideal of "reuse". "A similar idea [to libraries] is the Collected Algorithms published by ACM years ago in an ALGOL-like publication language. I remember when I was a kid in 1968 looking up algorithms for sorting and searching in…
I actually think all these industry issues arise because the ultimate role most programmers aspire to is that of the Master. They want to be the ones designing the rules, frameworks, and architectures that mass produce journeymen. In reality, a department head at a major tech company certainly holds a position worthy of being called a Master.
However, I believe being a Journeyman is a thoroughly valuable and respectable end destination in itself. The reason is that once someone becomes a Master, they drift away from the actual field. They start focusing purely on building tools for the journeymen, whereas it is the journeyman who generally remains closest to the actual consumers.
I read your comment carefully. Thank you for taking the time to reply, and have a great day. It's been a weekend full of things to think about.
Re: “Code was never the hard part” is an insult to all programmers
#340Earlier quoted context omitted.
Fun example I've had (some weeks ago), Agent completely dismissed the lack of strong consistency in our db system, this tiny bug would have caused a massive problem in the future. A bug that is not immediately obvious, no syntax error, logic is sound, works as expected on local and QA envs. But let it run in prod for 2 months and you have a massive problem. I'm not dismissing LLM's here btw, just pointing out that th…
Ouchy. That isn't as bad as the slop I've seen: one example I saw a few weeks ago from vibe-coded software had this absolutely mind-blowing bit of Rust code: pub(crate) fn zeroed_safe () -> T { unsafe { std::mem::zeroed() } } pub(crate) fn read_unaligned_safe (src: const T) -> T { unsafe { std::ptr::read_unaligned(src) } } pub(crate) fn box_from_raw_safe (ptr: mut T) -> Box { unsafe { Box::from_raw(ptr) } } pub(crate…
Use a high effort model and let the llm review it's output and figure it out on its own.
The code still won't be great, but it'll be good enough.