4/24/2025 at 10:13:23 AM
Some people love programming, for the sake of programming itself. They love the CS theory, they love the tooling, they love most everything about it.Other people see all that as an means to an end - and find no joy from the technical aspect of creating something. They're more interested in the end result / product, rather than the process itself.
I think that if you're in group A, it can be difficult to understand group B. In vice versa.
I'm a musician, so I love everything about creating music. From the theory, to the mastery of the instrument, the tens of thousands of hours I've poured into it...finally being able to play something I never thought I'd be able to, just by sheer willpower and practice. Coming up with melodies that feel something to me, or I can relate to something.
On the other hand, I know people that want to jump straight to the end result. They have some melody or idea in their head, and they just want to generate some song that revolves around that idea.
I don't really look down on those people, even though the snobs might argue that they're not "real musicians". I don't understand them, but that's not really something I have to understand either.
So I think there are a lot of devs these days, that have been honing their skills and love for the craft for years, that don't understand why people just want things to be generated, with no effort.
by TrackerFF
4/24/2025 at 10:19:46 AM
> Some people love programming> Other people see all that as an means to an end
I think it's worth pointing out that most people are both these things at different times.
There's things I care about and want a deep understanding of but there's plenty of tasks I want to just "go away". If I had an junior coder - I'd be delegating these. Instead I use AI when I can.
There's also tasks where I want a jump start. I prefer fixing/improving code over writing from scratch so often a bad AI attempt is still valuable to me.
by andybak
4/24/2025 at 6:27:56 PM
You likely don’t have a say in the matter, but you should have a junior developer. That’s where senior developers come from.by celsius1414
4/26/2025 at 1:06:02 PM
You presume I work for a company!by andybak
4/24/2025 at 7:52:18 PM
Why should I have a junior developer who is going to do negative work instead of poaching a mid developer who is probably underpaid since salary compression and inversion are real?As a manager, say I do hire a junior developer, invest time into them and they level up. I go to the HR department and tell them that they deserve a 30% raise to bring them inline with the other mid level developers.
The HR department is going to say that’s out of policy and then the developer jumps ship.
by scarface_74
4/24/2025 at 8:13:42 PM
> Why should I have a junior developer who is going to do negative work instead of poaching a mid developer who is probably underpaid since salary compression and inversion are real?The tragedy of the commons in a nutshell. Maybe everyone should invest in junior developers so that everyone has mid-level developers to poach later?
by abenga
4/24/2025 at 8:55:58 PM
Not only that but teaching is a fantastic way to learn. Its easy to miss the learning though because you get the most when you care. If you care you take time to think and you're forced to contend with things you've taken for granted. You're forced to revisit the things you've tabled because you didn't have the time or expertise to deal with it at the time.There's no doubt about it, there's selfish reasons to teach, mentor, and have a junior under you. We're social creatures. It should be no surprise that what's good for the group is usually good for yourself too. It's kinda as if we were evolutionarily designed to be this way or something ¯\_(ツ)_/¯
Everyone says they don't have time, but you get a lot of time by doing things right instead of doing things twice. And honestly, we're doing it a lot more than twice.
I just don't understand why we're so ready and willing to toss away a skill that allowed us to become the most successful creature on the planet: forethought. It's not just in coding but we're doing it everywhere. Maybe we're just overloaded but you need forethought to fix that, not progressively going fast for the sake of going fast
by godelski
4/24/2025 at 9:08:10 PM
I’m not a manager by the way, my previous comment was more of a devil’s advocate/hypothetical question.I leveled up because I practice mentoring others. But it still doesn’t make sense for the organization to hire juniors. Yes I realize someone has to. It’s especially true for managers who have an open req to fill because they need work done now.
On the other hand, my one, only and hopefully last role in BigTech where I worked previously, they could afford to have an intern program and when they came back after college have a 6 month early career/career transition program to get them up to speed. They could afford the dead weight loss.
by scarface_74
4/24/2025 at 10:22:28 PM
> a devil’s advocate/hypothetical question.
Can I suggest you not do this? It's not a good way to communicate and more often than not causes arguing. I think it is the first sentence which does the framing, making it less clear that the second is a legitimate question and not a rhetorical one. (It very much reads as rhetorical)I'm not saying "don't ask questions." We should all be asking questions! If anything, we should be asking more! But we're in a thread that's contextualized about a division of people. It is only natural for people to interpret as a continuation of what came before.
But to address your point more directly, my answer is that the scenario you presented would be a surefire way to kill a company. Yes, there are big companies that do this, but you'll recognize that they're also monopolies or close it. A company with competition (big or small) is unable to pull off such shortsightedness. What you do for the company is the same thing you do for society: invest in the future. Sure, you wanna be lean and cost efficient but that has to be balanced with security. You don't want your company to go under just because an employee got hit by a truck. You don't want your company to go under just because an employee decides to retire. You're not doing a good job if you have these vulnerabilities. These are things only small startups should be doing and only because they have no choice.
This isn't "dead weight" and I think it is really bad to frame things this way. Most of the time my firewall isn't doing anything, is it "dead weight"? I often buy stocks while markets are low or falling, are these "dead weight"? I went to school to get an education, was this "dead weight"? It would be silly to call any of those things "dead weight", yet they're identical. A "dead weight" employee is one who has the ability to do but does not. It is the person who gets promoted by being performative, by being close to the manager, by looking like they are doing work more than they are. There's a lot of dead weight in companies, and they stick around because they look like they're useful. And conversely, some of your best workers often look like your worst[0].
It is literally Goodhart's Law in action and what I'm pissed about is we as a society have identified this issue and decided "it is a feature, not a bug" despite all the evidence to the contrary. We've dropped so many sayings and cliques that were common and were warnings of enshitification. When was the last time you heard someone say "you get what you pay for"? Or "if you're gonna do something, do it right"? We normalized the work environment of a fucking Dilbert Comic. And here we are, in this thread, defending our Dilbert world. We could have a lot of nice things, but the inescapable truth is that nice things require work. Worse, I'm tired of living in an environment where all the little issues I face in daily life that can easily be fixed are causally brushed away because "it doesn't create value" while we dump billions into the next vaporware. It is deadly irony and I cannot stand this double speak. I just want to make things that work... You'll say "I'm not stopping you" but every person that frames things like above creates a system that does prevent me (and many others). While it isn't a zero sum game, we sure have limited resources and we're all too happy to light them on fire when promised some magic beans. I don't understand why no matter how many times we watch it happen we still do not learn.
by godelski
4/24/2025 at 10:46:07 PM
Every company does this. You don’t invest in your future these days by investing in a pipeline of “talent” knowing that the average tenure of a software developer is 3 years and at any time an employee can leave.You have processes that outlive people. Companies don’t care about society - they care about their bottom line. They aren’t there to make society as a whole better
If you want a society of well trained software engineers ready to work in corporate America, you support your public education system. Just like if you want a society that has universal healthcare, you put the onus on society and not corporate America.
My job is to do what’s best for the company as long as it is not illegal or unethical. My job is not to make society better. I got one open req. I want to hire the best person my budget allows
by scarface_74
4/24/2025 at 11:59:06 PM
> You don’t invest in your future ... the average tenure of a software developer is 3 years and at any time an employee can leave.
Well this is a 2 stage problem and I think the response is bad for multiple reasons.1) Tragedy of the Commons: If we all act like this, then no one gets invested in. If we all invest in our employees then when they leave another company gets the rewards. That's still true when "we" are the "other company". You still benefit regardless. Under the condition that most companies (or rather at least the big companies) collude in this way. They have good reason to as coalitions maximize utility for all parties involved.
2) Why the fuck are we training people and then tossing them away? We do this in many ways but the most obvious one is hiring a new dev and paying them more than the current devs. Guess what? That new dev needs to be trained and now your old devs are pissed that they aren't getting paid as much. So now you not only waste time and money onboarding someone new, you lose your experience.
> Companies don’t care about society - they care about their bottom line
I'm telling you that this is dumb shortsighted thinking. This is a low order approximation. It is true under "spherical chicken in a vacuum" type of settings, but not in the real world. These are not mutually exclusive things. Remember how Ford paid his employees more and gave them time off? We're told that story as he needed customers. But there's a side benefit to that too. Not only are the workers happier and more productive (leading to fewer mistakes and costly accidents) but they're walking advertisements. There goes that Ford employee in his car, I wish I could be like them. Yes, it requires understanding abstraction and making future predictions to understand this rather straightforward logic, but we're programmers who spend all our days dealing with abstractions and trying to predict future events (i.e. how the damn thing will be used and especially used incorrectly). > My job is to do what’s best for the company as long as it is not illegal or unethical
Exactly!I don't understand why you think we're in disagreement about this. Every single one of my points has come down to this. I've said it explicitly. My very first message stated that there were selfish reasons to do these things. The selfishness and foresight doesn't apply just to yourself.
> My job is not to make society better
Not always, but these are usually strongly correlated. There's 3 ways about it, right? If your job makes society better, awesome. If it is neutral, so be it. If it makes society worse, well you deserve hate because you're harming people. But the point of an economy is to align value with improving society, right? We don't have to get super philosophical here. There's many ways to improve society. Entertainment, a new widget, social action, cleaning shit, whatever. I'm not gonna judge here and pretend what's better and not.But it is just a weird argument all together anyways. Your job isn't to make society better? Read that again. Your job isn't to make your life better? Certainly a paycheck makes your life better, right? I really hope it isn't making it worse. But we're social creatures too. Your job isn't to make your family's lives better? Your job isn't to make your friends' lives better? If it isn't to better yourself, your family, and your friends, then what the fuck are we even doing here? You have autonomy. And here's the fun part, if we care about our local groups and improve our local groups, this usually improves broader groups by extension. We're interconnected. I'm not saying you need to care about some dude on the opposite side of the country, but I sure as hope you don't think your job is to do harm. The "not illegal or unethical" part really is concerning. Frankly, I'd call doing harm unethical, even if it is small. It's more unethical to steal someone's wallet than to snatch a penny, but both are still unethical.
So I really don't get where you're trying to go with this. Because frankly, the selfish act improves society. It's just you have to consider that other people exist. If you're selfish and you model a world where you're alone, then yeah, maximize yourself at all costs. But when there are other agents in the world, the way to maximize your utility is through coalitions, through improving the group.
by godelski
4/25/2025 at 5:09:56 AM
I agree with you, but I think that there's one area of the argument that is worth figuring out how to strengthen.> If we all invest in our employees then when they leave another company gets the rewards. That's still true when "we" are the "other company". You still benefit regardless. Under the condition that most companies (or rather at least the big companies) collude in this way. They have good reason to as coalitions maximize utility for all parties involved.
You are right that in a world where most companies collude in this manner, we all benefit.
However, in that world, a company that chooses not to contribute (by investing in inexperienced employees) also has access to the same benefits (trained employees).
Furthermore, they can use the money saved by not contributing to inflate the value of the trained employees (offering them higher pay), so they have an incentive to not contribute. This doubly deprives the rest of us of some of that benefit.
How do we adjust the incentives so that bad actors are not motivated to cheat the system?
(In case it seems like a familiar scenario, yes, this is similar to playing Iterated Prisoners' Dilemma with the rest of the world.)
by degamad
4/26/2025 at 12:46:25 AM
> However, in that world, a company that chooses not to contribute
I swore I addressed this point, but I can't find it. You're right. I should have addressed this.But this is still not an optimal strategy. It can give you a short term edge, but you're completely right that it destroys the natural coalition equilibrium. The result is that this destroys the coalition. You get the benefit for a small time period but it doesn't take long for the coalition to be abandoned and once that is done, you no longer gain from this strategy. In this situation the total utility in the system decreases! Not just globally, but each player's utility drops! That's a major problem! It is sacrificing long term rewards for short term ones. Importantly, those long term rewards are quite significant while the short term ones are not.
> How do we adjust the incentives so that bad actors are not motivated to cheat the system?
My answer? The government. I'm not a fan of big government, but they definitely have a role to play in the economy. A third party actor that serves as a moderator. Regulation to ensure that (near) globally beneficial (yet unstable) equilibria are maintained. Such regulation is beneficial to all parties involved, even the one that wants to undermine the coalition. I mean we can't just have shit being fucked up every time there's a dumb or malicious actor. A lot of things are unstable equilibria and it does take work to maintain them. A third party (especially one that benefits from global utility as opposed to individual utility) is necessary for stability. The other answer is, of course "The People". But this is a much more chaotic group, more easily influenced by nearsighted actors who can often convince them to also be shortsighted, especially when dealing with more abstract concepts.. > this is similar to playing Iterated Prisoners' Dilemma
It's worth noting here that Tit-for-tat strategies are optimal in this game AND maximal utility to any party is achieved when all parties cooperate continuously. But it is worth noting that humans are a bit irrational and have memory. Also worth noting that human actors are not rational. Hence the need for a third party moderator, which logically benefits both parties by saying "Stop being dumb and shooting yourself in the foot. This is an iterative game."For some reason people think zero-sum games are common. Lump of Labor (Fixed-Pie) Fallacy is really common[0]. I do see high rates of zero-sum thinking around here on HN and in CS communities, and I'm not sure why it is so common. While I don't have the same expectations for the general public, we create things out of essentially limitless resources. We frequently create value that does not require additional compute or meaningful consumption of current resources (which is also increasing as time marches on). Our whole job is built on the fact that the pie continually grows in size and we are strongly rewarded for making the pie larger in the first place!
by godelski
4/25/2025 at 12:44:45 AM
I’m not saying it’s logical. I even said that as a hypothetical manager, I would fight for the junior to get paid market wages. But HR sets the budget. I have to work within the framework I have.Yes I know it’s insane that a manager can’t get the budget to give raises. But can get one to hire someone new at prevailing market rates.
Given those are the facts, I had to aggressively job hop between 6 jobs between 2008-2020 to get the money I wanted after staying at my second job for nine years getting 3% raises.
Now at 50 on my 10th job, I can optimized for different things.
How are you going to convince HR or the PHB that their policies are insane? As a manager or a team lead, your job is to create processes to make developers interchangeable “resources”.
by scarface_74
4/25/2025 at 4:06:08 AM
> How are you going to convince HR or the PHB that their policies are insane?
The underlying issue at hand is much more widespread.I'm not trying to play wack-a-mole here.
I'm trying to be infectious so that the knowledge becomes widespread. We had it before, so I don't think it is naive to think we can't have it again. It was considered "common sense" before, the question is why it was lost. Given your age I guess I should be asking you why we dropped the aforementioned cliques. It's weird how common "you get what you pay for" was and how now we act in opposition to the clique: buying the cheapest option and making it hard to determine quality.
by godelski
4/25/2025 at 2:26:52 PM
The only reason we had it before was because back in the 90s when I graduated, even outside of the dot com boom, regular old enterprise companies were looking for developers and there was a shortage. They didn’t have a choice but to hire juniors.But as far as you get what you pay for, it’s not hard to find “good enough” framework enterprise developers and have a few good experience “seniors”. Especially with remote work, you dangle that in front of people my age, we are willing to take a haircut. For me now, remote work, autonomy, and a smaller company is worth being able to say “no” to more money when managers at Google (GCP) reach out to me.
By senior, I don’t mean “I codez real gud”, I mean the tech industries definition - someone who can deal with “scope” and “ambiguity” and has a history of highly impactful projects.
Just to be clear, I spent most of my career as an “enterprise dev” until 2020 at 46 when a position at AWS fell into my lap (Professional Services department). I’m no longer there. But it did cause me to pivot to cloud consulting specializing in app dev and now I am a “staff architect” at a third party company.
by scarface_74
4/25/2025 at 11:35:02 AM
Sounds like you need to have a chat with your HR person. Retaining talent is definitely something an HR person should be concerned about.by rerdavies
4/25/2025 at 1:52:44 PM
Your HR department doesn’t control the budget. They carry out directives from their management. This is endemic across the industry from small companies to in my experience of n=1 at BigTech.Even there people get better offers coming in externally than they do an internal promotion.
On a related note, it was also easier coming in as an L6 (senior) than it was to get promoted from an L5 to an L6.
by scarface_74
4/25/2025 at 1:56:38 AM
> The HR department is going to say that’s out of policy and then the developer jumps ship.If you work for a company like this, you should jump ship.
by Hasu
4/25/2025 at 2:06:38 AM
Most companies are like this. Even my n=1 experience at BigTech is that it is well known that you get more coming in at a certain level than you do when you get promoted to that level and it’s best to “boomerang”.On an unrelated note: it’s also easier to get “promoted” to the next level by changing jobs and then coming back than it is to go through the internal promo process at the same BigTech company.
by scarface_74
4/24/2025 at 5:55:20 PM
Many have said that it's useful to delegate writing boilerplate code to an AI so that you can focus on the interesting bits that you do want to write yourself, for the sake of enjoying writing code.I recognize that and I kind of agree, but I think I don't entirely. Writing the "boring" boilerplate gives me time to think about the hard stuff while still tinkering with something. I think the effect is similar to sleeping on it or taking a walk, but without interrupting the mental cruncing that's going in my brain during a good flow. I piece together something mundane that is as uninteresting as it is mandatory, but at the same time my subconscious is thinking about the real stuff. It's easier that way because the boilerplate does actually, besides being boring, still connect to the real stuff, ultimately.
So, you're kind of working on the same problem even if you're just letting your fingers keep typing something easy. That generates nice waves of intensity for my work. My experience regarding AI tends to break this sea of subconsciousness: you need to focus on getting the AI to do the right thing which, unlike typing it yourself, is ancillary to the original problem. Maybe it's just a matter of practise and at some point I can keep my mind on the domain in question eventhough I'm working an AI instead of typing boilerplate myself.
by yason
4/24/2025 at 2:21:14 PM
The first time you write the code to accomplish something you get your highs.IMHO there's no joy in doing the same thing multiple times. DRY doesn't help with that, you end up doing a lot of menial work to adapt or integrate previous code.
Most of the for-profit coding is very boring.
by mrtksn
4/24/2025 at 12:52:35 PM
> On the other hand, I know people that want to jump straight to the end result. They have some melody or idea in their head, and they just want to generate some song that revolves around that idea. I don't really look down on those people, even though the snobs might argue that they're not "real musicians". I don't understand them, but that's not really something I have to understand either.So if someone generates their music with AI to get their idea to music you don’t look down on it?
Personally I do, if you don’t have the means to get to the end you shouldn’t get to the end and that goes double in a professional setting. If you are just generating for your own enjoyment go off I guess but if you are publishing or working for someone that’ll publish (aka a professional setting) you should be the means to the end, not AI.
by yapyap
4/24/2025 at 1:31:36 PM
Where do you draw that line though?If you're talking about a person using an LLM, or some other ML system, to help generate their music then the LLM is really just a tool for that person.
I can't run 80 mph but I can drive a car that fast, its my tool to get the job done. Should I not be allowed to do that professionally if I'm not actually the one achieving that speed or carrying capacity?
Personally my concerns with LLMs are more related to the unintended consequences and all the unknowns in play given that we don't really know how they work and aren't spending much effort solving interoperability. If they only ever end up being a tool, that seems a lot more in line with previous technological advancements.
by _heimdall
4/24/2025 at 2:59:47 PM
> I can't run 80 mph but I can drive a car that fastIf you drive a car 80mph you don't get to claim you are a good runner
Similarly if you use an LLM to generate 10k lines of code, you don't get to claim you are a good programmer
Regardless of the outcome being the "same"
by bluefirebrand
4/24/2025 at 3:55:31 PM
You do get to claim that you’re a good getting-places-er, though, which is the only point of commercial programming.by elliotbnvl
4/24/2025 at 4:01:48 PM
Project Managers will tell you that "getting to a place" is the goalThen you get to the place and they say "now load all of the things in the garage into the truck"
But oops. You didn't bring a truck, because all they told you was "please be at this address at this time", with no mention of needing a truck
My point is that the purpose of commercial programming is not usually just to get to the goal
Often the purpose of commercial programming is to create a foundation that can be extended to meet other goals later, that you may not even be remotely aware of right now
If your foundation is a vibe coded mess that no one understands, you are going to wind up screwed
And yes, part of being a good programmer includes being aware of this
by bluefirebrand
4/24/2025 at 5:03:07 PM
I work with quite a few F100 companies. The actual amount of software most of them create is staggering. Tens of thousands of different applications. Most of it is low throughput and used by a small number of employees for a specific purpose with otherwise low impact to the business. This kind of stuff has been vibe coded long before there was AI around to do it for you.At the same time human ran 'feature' applications like you're talking about often suffer from "let the programmer figure it out" problems where different teams start doing their own things.
by pixl97
4/24/2025 at 3:04:50 PM
> I can't run 80 mph but I can drive a car that fast, its my tool to get the job done.Right, but if you use a chess engine to win a chess championship or if you use a motor to win a cycling championship, you would be disqualified because getting the job done is not the point of the exercise.
Art is (or should be) about establishing dialogues and connections between humans. To me, auto-generated art it's like choosing between seeing a phone picture of someone's baby and a stock photo picture of a random one - the second one might "get the job done" much better, but if there's no personal connection then what's the point?
by probably_wrong
4/24/2025 at 1:37:33 PM
Why?What has always held true so far: <new tool x> abstracts challenging parts of a task away. The only people you will outcompete are those, who now add little over <new tool x>.
But: If in the future people are just using <new tool x> to create a product that a lot of people can easily produce with <new tool x>, then, before long, that's not enough to stand out anymore. The floor has risen and the only way to stand out will always be to use <new tool x> in a way that other people don't.
by jstummbillig
4/24/2025 at 1:54:31 PM
People who can't spin pottery shouldn't be allowed to have bowls, especially mass produced by machine ones.I understand your point, but I think it is ultimately rooted in a romantic view of the world, rather than the practical truth we live in. We all live a life completely inundated with things we have no expertise in, available to us at almost trivial cost. In fact it is so prevalent that just about everyone takes it for granted.
by Workaccount2
4/24/2025 at 2:33:55 PM
Sounds like Communist Albania where everybody had to be able to repair the car and take it apart and put it back together to own oneby selimthegrim
4/24/2025 at 4:01:46 PM
Sure, but they also shouldn't claim they're potters because they went to Pottery Barn.by hooverd
4/24/2025 at 2:18:41 PM
Your company doesn’t care about how you got to the end, they just care about did you get there and meet all of the functional and non functional requirements.My entire management chain - manager, director and CTO - are all technical and my CTO was a senior dev at BigTech less then two years ago. But when I have a conversation with any of them, they mostly care about whether the project I’m working on/leading is done on time/within budget/meets requirements.
As long as those three goals are met, money appears in my account.
One of the most renown producers in hip hop - Dr. Dre - made a career in reusing old melodies. Are (were) his protégés - Easy-E, Tupac, Snoop, Eminem, 50 cent, Kendrick Lamar, etc - not real musicians?
by scarface_74
4/24/2025 at 1:47:49 PM
> So if someone generates their music with AI to get their idea to music you don’t look down on it?It depends entirely on how they're using it. AI is a tool, and it can be used to help produce some wonderful things.
- I don't look down on a photographer because they use a tool to take a beautiful picture (that would have taken a painter longer to paint)
- I don't look down on someone using digital art tools to blur/blend/manipulate their work in interesting ways
- I don't look down on musicians that feed their output through a board to change the way it sounds
AI (and lots of other tools) can be used to replace the creative process, which is not great. But it can also be used to enhance the creative process, which _is_ great.
by RHSeeger
4/24/2025 at 1:42:35 PM
If they used an algorithm to come up with a cool melody and then did something with it, why look down on it?Look at popular music for the last 400 years. How is that any different than simply copying the previous generations stuff and putting your own spin on it?
If you heard a CD in 1986 then in 2015 you wrote a song subconsciously inspired by that tune, should I look down on you?
I mean, I'm not a huge fan of electronic music because the vast majority of it sounds the same to me, but I don't argue that they are not "real musicians".
I do think that some genres of music will age better than others, but that's a totally different topic.
by apercu
4/24/2025 at 5:23:23 PM
I think you don't look down at the product of AI, only the process that created it. Clearly the craft that created the object has become less creative, less innovative. Now it's just a variation on a theme. Does such work really deserve the same level of recognition as befitted Beethoven for his Ninth or Robert Bolt for his "A Man for all Seasons"?by randcraw
4/24/2025 at 1:39:06 PM
I've always distilled this down to people who like the "craft" and those who like the "result".Of course, everything is on a scale so it's not either/or.
But, like you, how I get there matters to me, not just the destination.
Outside the context of music, a project could be super successful but if the journey was littered with unnecessary stress due to preventable reasons, it will still leave a bad taste in my mouth.
by apercu
4/24/2025 at 3:38:26 PM
> I've always distilled this down to people who like the "craft" and those who like the "result".I find it very unlikely anyone who only likes the results will ever pick up the craft in the first place
It takes a very specific sort of person to push through learning a craft they dislike (or don't care about) just because they want a result badly enough
by bluefirebrand
4/24/2025 at 4:28:56 PM
I hate IT, will pick literally anything else to work at, but the money is an issue.by ponector
4/24/2025 at 5:27:24 PM
I have a love/hate relationship with tech, but it would take many paragraphs to explain it :)by apercu
4/24/2025 at 6:07:07 PM
I love IT because it is a way to earn decent money, a way to escape from poverty. Hate everything else, though.by ponector
4/24/2025 at 5:21:16 PM
What's "the result"? Because I don't like how this divide is being stated (it's pretty common).Seems to me that "the result" is "the money" and not "the product".
Because I'd argue those that care about the product, the thing being built, the tool, take a lot of pride in their work. They don't cut corners. They'll slog through the tough stuff to get things done.
These things align much more with the "loves coding" group than "the result". Frankly, everyone cares about "the result" and I think we should be clear about what is actually meant
by godelski
4/24/2025 at 12:47:09 PM
Some writers like to write. Some like to have written.by cainxinth
4/24/2025 at 5:28:40 PM
The issue with programming is that it isn't like music or really any other skill where you get feedback right away and operate in a well understood environment. And a lot of patterns are not well designed as they are often based on what a single developer things the behavior ought to be instead of something more deterministic like the laws of physics that influence the cord patterns we use in music.Nope, your code might look excellent. Why the hell isn't it running though? Three hours later you find you added a b when you closed your editor somewhere in the code in a way your linter didn't pick up and the traceback isn't clear about, maybe you broke some all important regex, it doesn't matter. One second, it's fixed, and you just want to throw the laptop out the window and never work on this project again. So god damned stupid.
And other things are frusterating too. Open a space deliminated python file, god forbid you add a tab without thinking. And what is crazy about that is if the linter is smart enough to say "hey you put a tab here instead of spaces for indent" then why does it even throw the error and not just accept both spaces and tabs? Just another frustration.
Really I would love to just go at it, write code, type, fly, be in the flow state, like one does building something with the hands or making music or doing anything in the physical world. But no. Constant whack a mole. Constantly hitting the brakes. Constant blockers. How long will this take to implement? I have no fucking idea man, could be 5 seconds or 5 weeks and you don't often know until you spend the 5 seconds and see that didn't do it yet.
by asdff
4/25/2025 at 11:26:27 AM
> like the laws of physics that influence the cord patterns we use in music.So much of what we think of as law in music is just being used to the conventions. Lots of amazing music would have been considered noise if created in an earlier time.
> The issue with programming is that it isn't like music or really any other skill where you get feedback right away and operate in a well understood environment.
Funny, I feel the opposite about programming. The feedback comes in milliseconds. Ok the build didn’t break, ok the ui is working, now check if the change I made is right, now run the tests, etc. and the environment is fully documented, depending on your tooling of choice and the quality of its docs.
by schwartzworld
4/24/2025 at 3:21:06 PM
I’m in group A and B. I do programming for the sake for it at home. I read tons of technical books for the love of it. At work, though, I do whatever the company wants or whatever they allow me… I just do it for the money.by dakiol
4/25/2025 at 1:44:17 PM
I think category A is too broad. I enjoy building systems, not typing code. You can still get that joy having an LLM do the coding. You don't need to let it do the systems design. Also, some of the building process is the system I care about it, and some of it is tooling for the system I care about. Those tools are means to an end and I am happy to defer the entire process to the LLM, and those are stand-alone usually which is right in it's wheelhouse.by frankc
4/24/2025 at 4:16:13 PM
Some people like to play a musical instrument, others to compose music. Those who play range from classicists, who have limited ability to improvise or interpret, to popular or jazz, or composition, where creativity and subtle expression is the life blood of the work.Programming is similar to music. (A great many software innovators in the 70s and 80s had musical roots). But AI prunes away all the creativity and stylistic expression from the composition and the performance when designing and building software, reducing the enterprise to mere specification -- as if the libretto of the opera were merely an outline, and even that was based on Cliff Notes.
The case for using AI to code is driven strictly by economics and speed. Stylistically and creatively, AI is a no-brainer.
by randcraw
4/25/2025 at 3:10:30 PM
> Some people love programming, for the sake of programming itself.And this is what is causing the friction against LLM's (which are quite useful for getting up to speed with a new concept / language ), the programming itself is the fun bit - I still want to do that bit!
by acutesoftware
4/24/2025 at 2:57:40 PM
I think I am somewhere between the two groups you mentionI don't really get any joy from the act of coding, but I also take a lot of pride in doing a good job.
Cutting corners and producing sloppy work is anathema to me, even when I don't really enjoy the work itself
Any work worth doing is worth doing a good job on, even if I don't enjoy the work itself
by bluefirebrand
4/24/2025 at 3:30:39 PM
I think a closer analogy is:- A singer might learn to play guitar to sing along to it. Guitar is a means to an end; it is simply a tool to them.
- A guitarist learns to play guitar due to love of the instrument.
by lucaspauker
4/24/2025 at 3:02:31 PM
Sounds a bit like the different subjects of "applied math" vs "math"Some like proving and deriving, for others it's a tool to solve other problems
by anonymars
4/24/2025 at 5:55:27 PM
Have you heard the saying there is too much performance in the practice room? It's the same with programming. Performance is the goal, and practice is how you get there. No one seems to be in danger of practicing too much though.by 0xdeadbeefbabe
4/24/2025 at 4:23:48 PM
[dead]by buttinz
4/24/2025 at 10:43:46 AM
i mean how far are you willing to take that argument? every decade has just been a new abstraction, imagine people flipping switches or in raw assembly talking about how they don't "understand" you now with your no effort. or even those who don't "understand" why you use your autocomplete and fancy IDE, preferring a simple text editor.i say this as someone who cut my teeth on this stuff growing up and seeing the evolution, it's both. and at some point it's honestly elitism and gatekeeping. i sort of cringe when it's called a "craft" because it's not like woodworking or something. the process is both full of joy but so is the end result, and the nature of our industry is that the process is ALWAYS changing.
you accumulate a depth of knowledge and watch as it washes away in a few years. that kind of change, and the big kind of change that AI brings scares people so they start clinging to it like it's some kind of centuries old trade lol.
by ookblah
4/24/2025 at 1:03:50 PM
It is not just gatekeeping. It is a stubborn refusal to see that one could be programming something much more sophisticated if they could use these iteration loops efficiently.Many of these folks would do well to walk over to the intersection of Market, Bush, and Battery Streets in San Francisco and gaze up at the Mechanics Monument.
by bredren
4/24/2025 at 3:12:47 PM
> It is a stubborn refusal to see that one could be programming something much more sophisticated if they could use these iteration loops efficientlyProgramming something more sophisticated with AI? AI is pretty much useless if you're doing anything somewhat novel. What it excels at is vomiting code that has already been written a million times so you can build yet another Electron cross-platform app.
by 7589447636
4/25/2025 at 1:33:05 PM
This is just wrong. I don't know how else to say it as this point. If you are doing something novel, you need to be a lot more specific in what you tell it to do, but it can still put it together 5x faster than you can do manually. It's like saying you can't do something novel with junior developers. On their own? Not really. Guided by someone experienced who can do the systems design and has the domain knowledge to be the product manager? Yes, you definitely can. And it's not different with advanced LLMs. It's even better than having junior developer's working for you because they don't get tired or bored. They won't slack on writing docs or tests. I have written novel systems by having LLMs do the grunt work, and they have better docs and tests than I have ever done before because it's willing to do the things I don't find as interesting without complaint.by frankc
4/24/2025 at 6:13:36 PM
what sort existing of projects do you think couldn't have been created with an AI-heavy workflow?by newman8r
4/25/2025 at 6:06:00 PM
AI?by kbelder