A Programmer's Loss of Identity
ratfactor.com
ratfactor.com
I guess when you get to a certain age (I'm 45) I stop caring whether something like this has social value. I enjoy it anyways.
Wanting to know how things work always brings me back. I don't care if an AI coded small or big parts of it, I still want to know how it works, how to make it better - what's holding the AI itself back from being a more effective programmer.
I feel like I got into programming when it was seen as low-status profession in the late 80s. And it went through levels of hype and collapse. Maybe this is the ultimate collapse. But I still want to take apart the watch to see how it ticks.
If society collapses because 80% of white collar jobs disappear, I guess I'll just be in my basement wanting to know how a linux kernel driver works.
So those of us that fight against becoming managers, it was for love of programming and the related technical details, as it usually comes with a payment and career ceiling.
And being unemployed beyond 50 years old in many countries that see being a programmer as yet another office job, means too old for employment, and too young for retirement.
I think quite a lot of these programmers don't fight against becoming a manager, but it's rather that they don't have traits (character traits, demeanour, low on dark triad traits (it is known that the selection process and work reality for managers actively selects for these), ...) that are necessary to get "selected" to become a manager.
Doesn't matter what traits they have, the only way up, to get that raise, additional benefits, or not being thrown into some improvement program is to accept becoming a manager in one of its various forms, or go elsewhere where hopefully there is a more sane career path.
You did not get my point: it is not about non-acceptance of becoming a manager, but rather about having traits that commonly imply that "those in power" won't select you for becoming a manager.
People aren't selected, they are dragged into their Peter principle role.
The only thing is, we’re all managers now. We’ve been given a fleet of robots to support a set of outcomes. We have to set expectations, monitor outputs, coach, intervene, step back, onboard new team members, train regularly, make sure they have the tools they need, etc and so on. Are those “soft skills” or just engineering? I’m curious if and how people are lacking in these areas when it’s just text.
"low on dark triad traits" -> "high on dark triad traits"
Sure they might make my work life hell, but i've always considering my programming hobby to be completely separate from work.
If you enjoy it for the sake of it, do more of it. You don’t need society with you.
If, however, your job is to build value for a user, then you or the man or the system are to naturally optimize for what’s productive to that end. Arguing about generics doesn’t create any/enough value. It doesn’t build a product.
These are two different sides of the profession and serve different ends.
/rant
On the other hand there are lots of companies hiring still, so you could also keep working as a software engineer, if that's what you're good at.
The job has changed a lot though, it's not about writing code by hand anymore.
I would take a interview premised on a know, learnable challenge (even if silly) over one that exclusively relied on what college you went to.
Lets us evaluate people in real conditions and visa versa.
In Germany for example, that isn't allowed, and there is the whole insurance discussion if something happens to someone that shouldn't be there as employee in first place.
I'm laughing a bit at Germany, but Europe in general has lost the plot when it comes to innovation.
If I had to go do that again, the main problem would for me would be that I don't think I could stand in one place for that long anymore, my thigh and lower back start stinging and want me to sit down (at least they do when I cook at home).
I interacted with way more people at a fast food restaurant than I do now, and got to interact with customers as well. Which wasn't always positive, but it was at least interesting to see all the various people that came in.
Also it was a lot more laid back and less serious than what I do now (which is work on web apps for large corporations).
Also at least I knew what I worked on was going to get used. I've been on too many projects that end up getting cancelled, or only used by a small handful of (high paying) clients, etc. Or specific features that end up getting cancelled or delayed indefinitely, etc.
Too bad it pays so little, or I'd actually consider it for a change of pace (well, more likely I'd want to try being a barista instead, that seems more enjoyable and a lot less walking on greasy floors).
https://www.eatfaceplant.com/menu
They even have a working shake machine.
A vegan sandwich would be right.
Do you also call a caesar salad a salad cheeseburger?
At least I am not tied by family so I can be relatively mobile, I moved to Singapore from my European country since the market was not great and I managed to get hired here.
Anyway in my current company the bottlenecks are completely different than AI so it will take a fair amount of time to even apply AI properly to development here.
i promise you this is not true
understand the chemistry of fats an denaturing of proteins, understand myoglobin; it is not much different than understanding anything.
nothing stops you from trying to make the best burgers in the world
be curious, ignorant and kind
You are competing with people 20 years younger. It's like watching professional athletes vs school soccer
to be amazing however requires food and roof and a bit of luck
i honestly dont know what i would do without a job, its hard to break into trades i hear, and also seems to be hard in mcdonalds
i will probably start a tool and die shop or something, or a burger joint, smash burgers only (those the only ones i love to make)
I really have no idea what I'm going to do, but I can probably still sit in the basement hacking kernels when I'm done with my whatever day job.
This kind of feeling is mostly just our old minds that cannot stop identifying this situation as social rejection or being shunned off; both things amongst the most terrible events that can happen to social primates like us.
I don't remember this at all. I became a professional programmer in 1987, but perhaps it was the fact that I went directly to Unix, did not pass go, did not collect $200 and worked entirely on systems programming that helped skip any of the "low-status" of people doing RDBMS/forms work ?
I started my CS degree in '94, and my junior year was... weird. Suddenly a quarter of the faces in the lab were not the types you would ever expect to see there.
No, you didn't! If you are 45, then you were 5-10 years old in the late 80s. You might have started playing around with programming at that time, but you didn't "get into" it in any professional sense. I am willing to bet anything that you had no knowledge, let alone concept, of the professional status of programming at that time.
When I eventually went to college in the late 90s / early 2000s that attitude seemed to switch. Add to that today's coding bootcamps for kids. It seems like quite a different world.
I'll probably do the same (actually doing this), camping in the woods or something, using a camper van.
Programming is not going to disappear, neither AI coding assistants. But if anything I fear more a future backslash against those useful tools than being replace by them. Overly excited people using those tools without any controls are what is going to give us sooner or later a lot of high impact incidents, lik e Therac 25, but in a massive scale, and my fear is that the companies will err in overcorrecting once this inevitably happens.
Also, cheap assistants are not going to last forever, real inference costs, despite all the hand-weaving will inevitably rear their ugly heads, and investor s will tire of subsidizing inference.
> I was so naïve that I thought progress could only go one direction, because that’s all I’d ever known.
As kids growing up in Eastern Europe in the 80s and 90s the world felt like its getting better every year. More peace, fewer borders, more opportunities, better technology.
Everything was getting better every year and we took it for granted that this is a law of nature.
Or a more recent time. I think how mechanical engineers felt in silicon valley over the last 40 years as basically 'making and shipping" was all exported to china. I have some mechanical engineer friends whose life got smaller and smaller.
Thus I went directly to Informatics Engineering and 300 km away.
Now were the ones into the line of sight of late capitalism.
The catch is that the path there are occasional local minima, and very deep local minima, like the world wars
But some of the worst experiences I’ve had with coworkers were with those who made programming part of their identity. Every technical disagreement on a PR became a threat to identity or principles, and ceased being about making the right decision in that moment. Identity means: there’s us, and them, and they don’t get it.
‘Programmer’ is much better off as a description of one who does an activity. Not an identity.
It can mean a category flag someone waves, an identifier we ask others to respect, a group we choose to belong to, a way of understanding what it is we like about ourselves, or something we quietly aspire to.
To clarify/nuance. Even if there was no economic nor social incentive for me to program; I'd still tinker with it, AI coding agent enhanced or not.
it suddenly struck me that there has never, AFAIK, a single-word noun for a C++ programmer. not sure what, if anything, this implies.
NullPointerException is the Java world. In C++, dereferencing a null pointer is rather undefined behaviour.
I hope AI liberates us from that dumb facade of pretend innovation. In some ways, us programmers got way too full of ourselves and filled our lives with pretend work porting apps from one thing to the next thing with no actual change in end-user value
Elegant, well-written and technically sound projects will continue to exist, but I’ve seen too many “well crafted” implementations of such technically vexing features as “fetching data and returning it” that were so overengineered that it should have been considered theft of company money.
This judgement has merit. However, over the years I got to perceive that over-engineering tendency to be the manifestation of exploratory spirit in one's craft. This is how the Unix got to be created at Bell Labs. To their managers, Ken Thompson and Dennis Ritchie worked on programs like the "ed" editor, thus they cared about "value being provided to the user (or the business)". What was later officially named Unix was not pitched as an operating system, but instead framed mostly just a needed way to organize the growing set of utilities, among other things (i.e. as a footnote). What are the over-engineered bits (and the related gained experience) in a given project may become useful for something else. People (tend to) do this kind of stuff. But should they be blamed, considering the enticing promise of growth and development of new technologies, practiced by employers themselves, as part of recruitment game?
I feel like it's important to align team/org goals once in a while -- there's nothing wrong with a refactor or a port, but what's the ROI, etc etc. Yes I agree this framework is better but what do we gain, do we really need it etc
At the end of the day, I like the mental model of programming, and I am somewhat uninterested in shaving every millimeter of friction off of every surface I touch on my computer. Does that make me a worse programmer? Maybe? I still delivered plenty of high quality code.
In every pursuit there are secretly 3 different communities. Those who love doing the thing, those who love tinkering with the gear, those who love talking about it.
HackerNews and the internet in general are dominated by people who like to nerd out about the gear of programming (IDEs, text editors, languages, agent setups, …) and the people who like to talk about programming. The people doing most of the work are off on the side too busy doing the thing to be noticed.
Yeah, screw those people. I count myself as lucky that I've only worked with 1 person who was seriously CRITICAL of the way other's worked... beyond just code quality. However, I always enjoyed a good discussion about the various differences in how people worked, as long as they could accept there's no "right" way. That's what the article brought up for me, and I wonder how much that happens these days.
One of my fondest memories was sitting around with a few other devs after work, and one had started learning Go pretty soon after its public release... and he would show us some new, cool thing he was playing around with. Of course those kind of organic things stopped with remote work, and I wonder how much THAT has played into the loss of identity?
Yes. Verb not noun.
I am friendly with my coworkers and might occasionally spend time with them outside of work, but, for the most part, all my closest friendships are not from work and not in the same profession (outside of the few I picked up in school).
To contrast, I have some philosopher friends and they discuss about food (they, unlike me, love cooking shows), travelling, but also philosophy. There is never any feeling of "this is work, we don't talk about this". It's very refereshing. And I imagine writers talk a bit about writing too.
This does not fit my experience. It's rather that many passionate programmers are rather eager to talk about what they do at work (at least if they are allowed to), but the common situation is that what they do at work is barely interesting to people who are not at least somewhat interested in programming topics.
However, my best advice as someone with many distinct interests is to avoid tying any one of these external things to your identity. Not a Buddhist, but I think that's the correct approach.
He sort of comes to this conclusion in the final "So then, who am I?" section. The answer is you are many things and you are nothing. You can live deeply in many groups and circles without making your identity dependent on them.
If you're a programmer, what happens when programming isn't needed anymore?
If you're a runner, what happens if you get injured?
It's always been helpful personally to remind myself that
I am not a programmer. I am a person who programs.
I am not a runner. I am a person who runs.
> AI hasn't eliminated programmers or programming, and it never will.
It might not fully eliminate them tomorrow, but this technology is being pitched as at least displacing a lot of them and probably putting downwards pressure on their wages, which is really just as harmful to the profession. AI as it's being pushed is a direct attack on white collar CS jobs. There will always be winners and losers, but this is a field that will change in many ways in the not so distant future because of this technology - and most current CS prospects will probably not be happy with the direction the overall field goes.
Even if you do not personally believe this, you should be concerned all the same because this is the narrative major CEOs are pushing and we know that they can remain crazy longer than we can remain solvent, so to speak.
By that metaphor, AI-controlled code-generation is more like large-scale automated manufacturing: the sort of thing that produces Ikea flat packs. I'm not knocking that; I own my share of Billy bookcases. But it's not what I do. It's not what I'm going to do in the future. There's a place for large-scale manufacturing and there's a place for hand-crafting, and this is even more true for software than it is for physical goods.
Final note: throughout my career I've know a few people with an outlook similar to mine. I'm always delighted to run into them, but they've never been common.
I've been a programmer for 15+ years, now running engineering teams. The transition forced me to confront this exact identity crisis - am I still "a programmer" if I spend more time reviewing PRs, designing systems at the whiteboard, and coaching junior engineers than writing code?
What I've realized: the craft I fell in love with - understanding systems deeply, reasoning about tradeoffs, building elegant solutions - that doesn't require typing code. It's a way of thinking.
The social identity issue is real though. When I was actively coding, I had opinions on frameworks, war stories from production fires, and the satisfaction of shipped features. Now my "war stories" are about organizational design and hiring. Different tribe.
Maybe the healthier framing is: programming is something I do (and love), not something I am. That way, when the activity changes - whether due to AI, career evolution, or burnout - the core identity remains intact.
That said, I still sneak in side projects on weekends. The joy of making something work is irreplaceable.
Maybe the social group the author is referring to has split up (forked)? For example, I wouldn't call anyone producing vibe coded AI stuff a "programmer". That noun will be reserved for the original group.
How about "software developer"?
> How about "software developer"?
Rather: AI prompter. :-)
All this to say, no, software developer probably not. Script kiddie?
Why do I even want this identity? I have to wear this hat simply because we living in a modern feudal world.
Now come back to the "social identity" defined in the article -- "computer programmers". I do care about this identity, but as all identities, like tags, you gotta beautify it a bit -- you have to attach some meaning to it. Without the personal meaning, you handle the power of definition to other people, who naturally don't care about you.
The tag I created for myself is "Kernel Programmer", initials in capital letters. My motto is "There are programmers, and there are system programmers, and ultimately there are kernel programmers" and I want to put it on my table in print. Don't get me wrong though, my work has nothing to do with kernel programming. It is not system programming either. It is even more abstract (and boring) than your usual FE/BE programming. But I do kernel programming as a hobby, and as a hobby I'm my own master and I'm willing to apply the most stringent standard to myself, which I'll never do the same to my work BTW.
And who can say that I'm not a kernel programmer even when it is just the XV6 kernel? Who can say that I'm not serious about kernel programming when I'm ready to write as many tests as I can imagine for a very early Linux kernel?
Life is meaningless and I have to create meanings out of the void. That's it.
... and "ultimore" there are assembly programmers, machine code programmers, ASIC microcode programmers, ... :-)
BTW definitely would love to do more professional assembly or microcode, if possible! I'm planning to migrate a very old kernel to different architectures and there is tons of assembly code, or, to be more precisely, more cursed GCC inline assembly code in the kernel. E.g. everything in string.h is in asm.
I think it's reasonable to have the act of programming be a big part of your identity—it certainly is mine—without necessarily hanging your sense of self on any one particular job.
Unfortunately, most of the jobs (and the industry as a whole) evolved into something else that was all about money and growth and image, and not at all about the craft of programming or the creative nature it provided.
I feel like this happened long before LLMs became a thing
As someone who was inspired by people like Steve Jobs, Steve Wozniak, Dennis Ritchie, Ken Thompson, Alan Kay, and other major figures of computing, I’m not inspired by Elon Musk, Sam Altman, Mark Zuckerberg, and other current tech leaders. But the current leadership is the current leadership, and they have set the tone not only for our industry, but society as a whole.
While I am not opposed to LLMs per se, LLMs in software development, in my opinion, have made the relationship between the employer and the employee crystal clear: employers own the means of production and can dictate how they want their employees to work. Despite the limitations of LLMs, if employers want them to be used because they feel they could ship faster, then employees at those companies have no choice but to use them if they want to keep their jobs. Some employees might not even have the option of using LLMs since they may get outright replaced by them.
The employer has always dictated the terms of employment, but software engineers have enjoyed many decades of relative freedom and negotiating power due to their in-demand, hard-to-replace skills. Indeed, there are many companies where engineers had significant influence regarding the company’s software.
LLMs, combined with other economic factors (the end of ZIRP, the software industry being dominated by a tiny handful of powerful players), are threatening to change this by reasserting the power of business owners and managers to set the agenda.
Even before LLMs, I felt the software industry has moved away from craftsmanship, quality, and creativity. LLMs in software development may accelerate this, since there may be fewer opportunities for engineers to push back.
I think software craftsmanship is going to end up becoming just like art. Unfortunately it will be paid for accordingly, and that’s the unsettling thing that many of us need to adjust to.
I think this is a great take. Culture is not a monolith in space or time. Write for the rebels far away or the ones yet to come.
I work for a very big tech company and I have no one to share this with.
Curious: Now that AI programming is getting good, is anyone using AI to chop away at boilerplate and/or simplify it? For example, is anyone skipping the ORM and just having AI write SQL and build objects from a datareader?
ORMs would be my next battle, but SQL injection could become an issue if not treated carefully, so I would still consider libraries like SQLDelight or other SQL first libraries
People talk about stripping away the ORM, or just writing object code, but the limited context windows in my experience make AI require even more, rather than fewer, abstractions for the AI to function well.
I now enjoy going between software and hardware/EE/mech, between writing code and CAD, between bits and metal working, between creating structures both virtual and physical, and bringing an engineering mindset to it all. There's still a lot of creative outlets out there, and a lot of community.
Aim high and grow your identity!
I'm a recent CS grad and have zero experience in anything physical or on the engineering side but I think I would enjoy it. I'm a bit intimidated by it, is there a path you'd recommend taking in learning?
From there you can explore automation like pick n place machines, engraving, CNC plasma/routers, CNC subtractive machines (lathes/mills/etc). Or you can come back towards programming with PCB design and custom firmware.
If none of that sounds interesting, you can pick up an old project car from an MG to a Jeep XJ and everything in between.
The world is huge and getting your hands dirty is a really nice balance to time on the keyboard. The only downside is there's no ctrl+z or ^[u but sometimes that's where you learn the most.
I think the pleasure and the identity is still there. It's just that we need to amp up the game. How many times one can really enjoy writing a binary search or a service that essentially transforms data from one JSON format to another. Fortunately or unfortunately, the huge wave of Internet+Big Data+Cloud+Mobile+Social has been part of our daily life, and what we do day in and day out has become increasingly mundane. As a result, what we implement day in and day out is getting increasingly repetitive -- I think to a certain degree the repetitiveness, when crossing certain threshold, will take away the pleasure of programming and will destroy our identity.
Unfortunately, I’m convinced this is where the industry is heading. my job pays me to solve problems efficiently, not to have opinions on idiomatic Java
My very hot take is that I do more of this now that I have access to Claude code than I did before. The above is the fun part of programming. You know how they say wood working is 90% sanding? Well Claude automates the sanding. You could use it to automate the fun parts too, but you probably shouldn't, for 2 reasons: Claude knows sanding, he's great at sanding. Other stuff? Not so much! He's happy to try, but he's just not great at it!
And secondly, while you could have Claude do the fun parts, where's the fun in that?
And that 11x will turn to 0.5x once the code is fit for serving in an Italian restaurant. Which at 11x speed will be like the second week or something.
10x speed is sustainable. I think. If not, then 9x speed probably is. Or 8x. The trick is finding the highest sustainable speed multiplier, and it's not entirely obvious to be yet what it is, but it's in that ballpark somewhere, I'm pretty sure.
And if your boss does not listen to the advise of the senior engineers? That's a bad boss, We've had those since forever. The way to deal with those is typically to find a new one.
I can finally put into words my frustration with NixOS. The most elegant solution to the ultimate problem already exists, yet no one is actually interested in solving the problem! In the end, we just got another convoluted system of incomprehensible boilerplate to wrap the existing boilerplate with, and incompatibilities are resolved just-in-time with more boilerplate.
It's limiting and dangerous. Limiting because you're relying on a relatively small network in the brain, governed almost entirely by your conscious ideas to provide a set of features of who you are. And dangerous because if something else comes up, if you discover something new about yourself, you change, or your circumstances, or the world around you changes and it affects one of your "identities" - that alteration can leave you lost. As the author seems to be saying.
Instead of these quips of, "you need to know who you are", "who are you?", "know yourself" - we should rather be trying, continually, in a never ending process, to discover ourselves.
Anyone questioning this methodology gets a 'enjoy being left behind' mantra akin to the 'have fun staying poor' of the crypto bro 5 years ago.
What's been happening to software development from the 2010s onwards is closer to what happened to manual craftsmanship as the industrial revolution took off, than to the effects high-level programming languages and abstractions had on the field. Many attempts have been made to turn software development teams into assembly lines; between ultra high-level frameworks and AI, we've had all those "new-new" formal methodologies and extreme offshoring, for example. Another factor that contributed to the status quo is the fact that programming has become well-paid, which inevitably attracted people who are in it for the money and made it an attractive target for "cost optimization".
Not all hope is lost, however. There are two significant differences that set programming apart from traditional crafts: performance and security. There's no universal recipe for either—LLMs and large bloated orgs suck equally at both. Smaller players still can largely outperform behemoths if they have the right idea, similar to what WhatsApp did to Microsoft's Skype or to what Anthropic is now doing to OpenAI, Google and Microsoft. And as for security, just look at Apple's and Google's bug bounties.
At its core, software development is still a meritocracy. This hasn't changed despite the trillions of dollars that have been poured into making it a quantifiable problem. Organizations that refuse to accept this have their projects fail. As for the influx of money-oriented programmers, it might have skewed the proportions, but it definitely did not drive out all of the passionate ones. Keep your head up.
Also, I must say I like the irony of this post making it to the front page of a website that's usually full of headlines of the likes of "How I used Claude to code a revolutionary JavaScript framework running 100% on Amazon Lambda" :)
Do you know many plumbers or doctors who are so connected to their work that they do plumbing or doctoring as a hobby?
I personally try to avoid such Programmers when possible, they usually overengineer everything they touch just for the sake of engineering. Without even realizing there is a problem.
In my experience it’s quite opposite. Majority of both hobbyists and professionals have strong tendency to engineer as the main mode and a goal of itself vs shipping the value.
Compare to jobs like writers, scientists, carpenters, mechanics, etc that are much closer to programmers in spirit and do have a lot of people doing them in their free time.
Exactly!
> Compare to jobs like writers, scientists, carpenters, mechanics, etc that are much closer to programmers in spirit and do have a lot of people doing them in their free time.
This is your bias of equating programming to an art form. And that's the core of the problem.
If there is prestige in the profession, it seems to often become an identity.
They burn out, or worse become toxic, because their shallow identity led them down the path to being a “Real” engineer and at the end of the day we’re not actually participating in any sort of real value creation beyond attention monetization.
The mystique wears off quickly and they don’t have real hobbies or interests, they basically talk about RSU packages at lunch and the latest tweets etc. I used to joke privately because almost every time we had lunch they spent most of the time discussing the optimal path to walk.
It’s unique in some way- you can’t be a good doctor or lawyer in middle school and the value system is geared towards maximizing paychecks and working in big tech. Once the reality sets in that you’re going to be doing sprint planning + standups for the next 20-30 years it can be a weird shock.
My first job was at a FANG and I lasted about 2 years- I remember riding the escalator in and seeing how miserable everyone looked on my first day. As an eager junior I reached out to the principal engineer in my org for mentoring, asking him what I could do to be better, faster. He told me: “go find a wife and don’t worry about work- you’ve got a long time left”.
At one point I looked at the senior guy running sprint planning and realized I didn’t want to be him. I bought a 1 way ticket and put in my 2 weeks. Went on to backpack around for a year then ended up at a startup where I made a bunch of friends working on real problems.
But then it's like the software architect role got phased out completely soon after I graduated. The radical ideology that software architecture doesn't matter started becoming mainstream... And code quality got really bad. I swear, I thought this industry had become a pure "job creation factory" just churning out unnecessary complexity to create jobs. Is still think it is the case.
Byt anyway now with AI, a lot of people are finally acknowledging that architecture is important, that coding is the easy part... Yada yada... Now everyone is finally saying what I'd been saying for over a decade... And it's like I'm finally able to shed this coder /code monkey identify which was shoved upon me and I can now start to use words like "software engineering" and "software architecture" again...
I don't think that's true. What I do think is there's not historically been space for junior software architects. It's long been seen as the senior role you graduate to, not a position for a new grad who knows lots of theory but has little practical exposure.
We didn't feel the same impact moving from assembly to high level languages probably because there was a smaller programmer population perhaps? And computers weren't underpinning the lives of all people.
IMHO, the danger with the current trend isn't necessarily the change to the day job of a "programmer". It is that this leads to a concentration of power in a small group of people. Then again, computer hardware were always the produce of a very small number of players and we managed to live through that without too much of a catastrophe. In aggregate, the world got better. Like with any new technological development, there are pros and cons. It is up to us as a society to amplify the pros and attenuate the cons.
Yes, writing a beautiful piece of code by hand is fun - and yes, the days of doing purely that for a living are probably disappearing soon, but there is no going back. Make peace with it and evolve.
What is he talking about? AI?
I can't relate. Maybe it's because his identity vaguely repulses me. Although in some ways I'm part of it, I never liked the programmer subculture that he's mourning.
I find AI exciting because I don't know where it's headed. If it can do my job better than me, that's even more exciting. Maybe I'll have to find a new job or just learn to use new, diffeent tools but either way, change is interesting.
The world of tech is experiencing schisms and reformations all at a pace unseen in history. But tech is still not worth making one's religion or identity.
Delight in whatever you do and find ways to be in service of others. I am certain many of the brilliant people here reading this will not be doing the same thing a decade from today, but many of those who we consider good people, will be doing new things with the same heart of generosity. Perhaps from that is where we should build our identity.
Is it that large corporations ruined being a programmer? Don't work for one.
Is it that silicon valley culture ruined being a programmer? Don't live on the west coast.
Is it that LLMs ruined being a programmer? Don't use them.
Or is it just that you're getting older, and it's not so much about programming as it is about the world not being the same one you grew up in. The inevitable alienation of aging.
Personally, I think programming is just as rad as it always was. More so even. It's never been easier to learn, there's more cool languages than ever, hardware is cheap, we just invented alien technology, basically every person has a computer in their pocket, basically every company needs programmers function, etc, etc.
Everybody is so down about the current moment in time, and no doubt there's plenty to be down about, but a quick read of history will tell you that it's always like this. Nothing to be down about. It's just business as usual. Social and news media have wormed their way into everyone's vibes and feeling bad is addictive.
The only thing we can do is have a good attitude, roll up our sleeves, try to fix what's broken, and keep on keeping on. The responsibility of every age.
I never wanted to "grow out" of programming, but it feels like that's what I'm doing. I'm leaning into activism and real-life stuff, and programming is only a tool, which is sometimes useful and sometimes not.
I was always a "Love of the game" programmer. I went to a business incubator recently and saw two guys vibe-coding with Claude. One was using speech dictation. That's crazy to me. Programming should happen at a keyboard.
I have my excuses - Claude will eventually cost more. AI that runs on Someone Else's Computer is not free software, and it will never respect you. The keyboard is an elegant weapon from a more civilized age. These excuses are sort-of true and sort-of pointless.
Programming is a means to an end. I guess when the chips are down, most people program to make money, which means working for disgusting people who have so much money that they can change the course of history for the worse.
I programmed for fun, and that meant lots of programming. Now I want to program for justice, and that will mean less programming and more grass-touching.
A programmer is someone telling machines what to do - we will be doing more of that than ever in human history. That said, "coders" not so much - maybe its better to identify as a "person trying to help and care for others" than a profession, since the former will always have a place in society.
> Being able to code doesn't make you better than the "plebs" who are creating massive value with a vibe coded tool.
> [...] I noticed AI could really code better than me [...]
AI code output is generally considered mediocre (in the sense of "on the median"). If it codes better than you, it might be that your code output is generally below average.Might it be the case that you don't grasp how good one can get with computers and thus not realize that one could be much better than you are at programming them? Did you consider for a moment the possibility that you were missing something?
If that is so, then your whole comment is inconsistent and akin to "I do all my poetry with LLMs now and I don't see what people have against it: it's often better than me at punctuation!"
If you think software quality isn't tied to readable (clean) code...
Point is, this isn't trivial, it is the kind of thing that ends up saving work over the long haul.
Or include this in my agent 'rules' files.
GOOD EXAMPLE
query=f""" SELECT foo FROM {sometable} WHERE {condition} """ answer=spark.sql(query).toPandas()
BAD EXAMPLE
answer=spark.sql(f""" SELECT foo FROM {sometable} WHERE {condition} """).toPandas()
We've been seeing this claim for months and yet I don't know any vibe-coded ventures worth a lot of money.
it's about enjoyment
someone else on here analogized this perfectly: coding with AI is like solving a solved puzzle. you engage other neural pathways to get the result you want, but "the thing" that made me love doing this for work is completely removed.
It was always this, for everyone other than programmers.
This reminds me a little of the Go champion (the game, not the language) who announced he was giving up the game after a computer beat him. It's a bit like giving up running because cars are faster.
This isn't the first industry mandated madness. Software engineers have supported any fad that their overlords dictated for a long time. It is always the mediocre 100 IQ people who act as mouthpieces for the industry and temporarily get ahead of their more intelligent colleagues.
It is no different now. You can see who is a paid shill and who is not. Python projects like NumPy, members of which are on the take from PyTorch, go to great lengths to rationalize AI usage. Anaconda people who take AI money join in.
Projects like Zig, which are much more interesting, move away from Slophub.
What concerns me is the silence of academics. There are enough tenured professors who could speak up, but they have been intimidated by various speech restrictions from different political parties over the last decade. Or they want that next industry grant.
I've been vibe coding for a few months now and have gone through the grieving process. I may never manually code again.
It's bittersweet though. I had grown to loathe computers and the direction that tech has headed for so many years and decades that I had internalized the feeling of living in bizarro world, a kind of purgatory or living hell. One where the harder we worked, the more of ourselves that we put into our work, the more likely we were to fail.
Not because of what we did, but because of what we didn't do. That there is an opportunity cost with coding, that it requires such an existential sacrifice of time and life itself to accomplish even the smallest result, that it may as well be wizardry or akin to living as a monk.
Meaning that we simply didn't have the time to see markets appear, to promote our work or network with other entrepreneurs. We failed due to our own singlemindedness and determination. We failed because others intentionally unburdened themselves of the timesuck that is our way, to focus on the business side and get rich.
Think about what I just said. That the more we grew and honed our craft, the more we were punished for it by the status quo - society itself. That is the ultimate betrayal of a belief system. The ultimate internalization of failure. The ultimate low-vibration thought around guilt and shame.
Meanwhile tech bros went around the problem by using us to achieve their ends. They patted themselves on the back as they pulled the ladder up behind them. They called empathy the ultimate weakness, and they weren't wrong. We're the living proof of that weakness. Having to watch as they do the opposite of everything that is good and holy in our names, feeling powerless to stop them. If there are enemies foreign and domestic, a clear and present danger to all we hold dear as human beings, it is they, it is them.
The identity I once held as the one who can solve any problem - not just the problem itself but the problem of solving problems by codifying automations - is now forfeit.
AI already does that better and faster than I ever could, and it's improving so rapidly that it will transcend all human ability in just a decade. It's over.
Now, some of you reading this are already scoffing at what I'm saying, already fuming with rage at the implications, the ramifications of living in a world where novices run circles around experts, where the sacred becomes a plaything for the rich and powerful. But the cat's out of the bag. We're looking at a future so dystopian that it could unravel all progress ever achieved by humanity. We're staring the end in the face.
I'm reminded of Neo in The Matrix when the Architect told him that he wasn't the first version of The One, and that he must choose between love and the survival of all humankind.
So I've been transmuting my grief into acceptance on the road to peace. I reject their zero-sum game. We are more than what we do, or what we have.
I see a future in which the more they tighten their grip, the more we slip through their fingers. A future where they get everything they wish for, where their karma catches up with them. A future where their own notion of self-important grandeur makes them look insignificant against the glory of just being alive. My deepest wish for them is that they lose it all to find themselves back at square one like the rest of us, so that they can start living again.
When viewed in that light, loss of identity might be seen as the ultimate gift, a kind of reincarnation. A way to start over. A rebirth.
AI happens to work in the same direction as the one the author is worried about but none of their theses would be much different without AI.
This does not imply that you cannot use the AI "badly". Call it "malicious compliance" if you want ... :-)