5 ms·
Been programming over 30 years, since I was 8 years old and my dad’s coworker gave me his old BASIC programming books and I was hooked. I have always found pro
by cortesoft 3y ago
Been programming over 30 years, since I was 8 years old and my dad’s coworker gave me his old BASIC programming books and I was hooked.
I have always found programming easy, and still do. It is just fun, and I still love learning new languages and tools and paradigms. It is still my favorite hobby.
However, WORK is hard. Dealing with office politics and changing priorities and bad leadership and meetings and TPS reports and JIRA tickets and new HR processes every year and mergers and acquisitions and new mandates to switch everything to a different system and all the other corporate bullshit is why they have to pay me so much.
- twojobsoneboss 3y agoThe “pay me so much” part is now going away too…
- ravenstine 3y agoYup. As a senior programmer who's been a professional for 10+ years and has been programming on and off since roughly 10 years old, I have found that the more time I spend in my field, the harder my work becomes in a way that is disproportionate to my experience. It's not the programming itself that has become more difficult, but all the process, tooling, and lack of organizational self-correction that makes aspects of my job hell. Do I have the hardest job in the world? Not even close, by most measures. It can still be psychologically torturing at times and even cause a form of internal suffering that is distinct from the existential dread that comes from doing menial or repetitious work. Unlike the feeling of being a human robot, it's a feeling of the system attempting to slowly stretch my humanness to its limit. Before I say anything else, there are still things I like about my profession and the company I work for. I don't think being a programmer is a complete waste of time. However, in many ways, it indeed has become a waste of time. I'd say easily one of the worst things about being an experienced programmer today is knowing that the task you are working on would have taken you 1/10 the amount of time to complete when you were a novice a long time ago. Even if your younger self wouldn't have gotten it totally right the first time, there was enough of a lack of friction there that a n00b could at least figure out how to integrate something workable. At my current and few prior jobs before it, I have no clue how a junior programmer would survive. Maybe that's why all of my most recent employers only hire "seniors". Code bases are architected using approaches that everyone eventually agrees are bad, but the establishment inevitably uses the "that's just how we always do it" or "we'll make it better someday" excuses, and if you suggest a solution that goes against that attitude you'll likely get nowhere – that is, unless you have some clout, like if you're a prominent contributor to some framework, in which case you're given license to dictate the views of non-staff engineers and force new languages and tools down their throats without having to actually prove any of your assumptions. Because framework contributors are better than all of us? If the software industry hits a greater downturn than the one it's experiencing right now, to the point where I'm laid off, I can't say I'll be terribly disappointed. It was a great ride and fun while it lasted. Today, programmers are merely seen as a necessary evil rather than an asset. Many companies still pay programmers handsomely, but those programmers are otherwise not treated that well because their real purpose is to duct tape the mess and allow middle management to collect their own paychecks. It will be rough not having that sweet programmer paycheck, but fortunately I have other ways to make income now.
- hasty_pudding 3y agoThis is my experience too.
- throwing_away 3y ago> Unlike the feeling of being a human robot, it's a feeling of the system attempting to slowly stretch my humanness to its limit. Poetry.
- amoss 3y agoDid I write this? Are you me???
- mvdtnz 3y ago[flagged]
- seanmcdirmid 3y agoYa, programming/maintnence/testing are the easy parts of our job. Especially work politics, but keeping up with paper work (OKRs, perf reviews, status reports, design documents that might not ever be read by anyone else...) is the hard part, and I guess why we get paid so much?
- Tade0 3y agoJudging by my SO's experience as a corporate drone others get the same type of bs, but without the pay. She works really hard in comparison to me and half of that work is wrestling with the ever changing processes (or actually Standard Operating Procedures), that never cover all the edge cases.
- seanmcdirmid 3y agoOh, yes. I think we are still lucky, just that we are subject to the same corporate dysfunction as everyone else. I still feel like I'm being paid for the dysfunction though (since they want us to code, but coding is what I already like to do, they could pay me a lot less if they could convince me I wouldn't have to deal with office politics).
- Tade0 3y ago> since they want us to code I've been having doubts about this part lately. I mean, my current project is actually supposed to do something and there are people genuinely interested in it, but I've also been in projects that were thinly veiled money burners.
- QuercusMax 3y agoI work in a regulated industry (medical device software), and don't really think I generally do anything exceptional compared to others in my position, but maybe this is a form of imposter syndrome? I'm a pretty decent developer with a good memory for project history and context, and I also have a pretty high tolerance for dealing with paperwork BS (I've been in this industry for 20 years). This doesn't seem like that tough of a skillset to replicate, but yet they still want to pay me what seems like ridiculous amounts of money to do work that really isn't that difficult. But it's annoying, and most people won't do it. I was recently asked by a family member "Why would you want to work in an industry like that? Doesn't all the paperwork and restrictions make it an unsatisfying place to work?" My answer is basically: if you want to make a difference in healthcare, you have to play by the rules of the game.
- giantg2 3y agoGenerally agree. Although I also find different types of hobby programming hard too, like trying to use a FLIR Lepton with a Pi Zero 2. I also think things are getting harder at work because the disorganization is increasing and the number of integrations are increasing the number of blackboxes in the system that when I started over a decade ago.
- cortesoft 3y agoYeah, I guess the words "hard" and "easy" are oversimplifications of what I am trying to say... a lot of the stuff does take deep thinking, trial and error, multiple failures, and many hours of work... it is just that the concentration and focus to do that hard work comes easy to me. I don't have to force myself to focus on the hard thinking, it just comes naturally... I would have to work to STOP myself from thinking through the problem, even if it takes hours or days. On the other hand, it takes all my willpower and mental control I have to finish filling out that OKR or the weekly status report or whatever.
- throwawa14223 3y agoI'm in the same boat as you. Everything around JIRA is a huge pain, but programming is easy.
- throwawa14223 3y agoWith more reflection. There are only a handful of times in my 20 year career I've felt the programming itself was difficult. It was feeling like my hands were tied by 'easy' languages like Python and Go. The simplicity of the languages meant there was far more I had to keep track of in my head and less I could reason through.
- throwitaway222 3y agoMost of those processes, tps reports, jira and other annoyances is because in a programming environment you literally have too many cooks in the kitchen. Every programmer can create the system from scratch, so to prevent them from doing so, we have to make it super annoying. Basically it's a people problem. The most incredible work happens in the first 3 months by a lone developer green-fielding with no boundaries. The only way for that codebase to move forward after getting a second/third/fourth person is to increase process, introduce pain and bloodshed.
- cortesoft 3y agoI agree with some of this, and that green field productivity can be impressive... but I work a lot on very large systems that would simply be impossible for a single person to create in a reasonable amount of time. Even though I am sure I could create every system I need to solve the problem, it would take decades. I like working on small subsets of the overall problem, that is not the issue. I even like working on teams! The issue is the things outside of solving the actual problem.
- pjmorris 3y ago“ The interaction of two programmers looking over a program that either one of them could have worked out is entirely different from the interaction of two programmers working on separate parts of a whole which is too great for either one to produce. The difference lies in the way conflicting demands are resolved. In the first case, resolution of conflict is the thinking process of one person—aided perhaps by other people, but always under that one person's control. In the second case, conflicting technical demands are translated into potential interpersonal conflicts, and a social mechanism must be formed to resolve them." - 'The Psychology of Computer Programming', Gerald Weinberg
- MichaelZuo 3y agoYes, pair programming is fine, but even just two folks working on something literally too complex to individually grasp necessitates committee work, paperwork, and all the rest.
- ericmcer 3y agoIf you are finding programming easy doesn't that just mean you aren't trying hard enough? There are tons of unsolved problems, tools that aren't optimal, and products that don't work as well as they should. If fixing those things were easy for you, you would be a billionaire.
- RHSeeger 3y agoMy guess would be that they are confusing "enjoyable" with "easy". I find software development enjoyable, but it can be both hard and easy at times. And sometimes hard (problem solving) is what I want to do, other times easy (knocking out code for a solved problem) is what I want instead. Alternatively, they are just in a role/job that doesn't happen to deal with difficult problems. Which is fine. Sometimes, that's what you want.
- cortesoft 3y agoYeah, I clarified in another comment... it is more that I find it easy to do the hard work of programming.
- cortesoft 3y agoI believe I can solve any programming problem, but I can't solve all of them... there aren't enough hours in the day
- randomdata 3y ago> There are tons of unsolved problems, tools that aren't optimal, and products that don't work as well as they should. I'm not sure you would approach any of those with programming. Once you have solved the problem, determined how to optimize the tools, or found a way to make a product work better then you might turn to programming to implement your discovery, sure, but programming alone won't get you there.
- samatman 3y agoIt's a profession. For some of us it's more than that, for some it's just a hobby, but for many it's exactly that, neither more nor less. Getting to the point where one can deliver value and find it easy, and setting the cruise control, is a reasonable thing to do. Frees time and mental attention for the rest of life. I don't happen to be wired up that way, but there are times when I wish I was.
- zokier 3y agoProgramming is easy. Software engineering is difficult.
- dionidium 3y agoThis is why I don't worry too much about AI. It can write the code better and faster than I do? Wow, you just freed up 5% of my day.
- pcurve 3y ago"Wow, you just freed up 5% of my day." Got a good chuckle out of that one! You will need that 5% to review the code AI wrote!
- amelius 3y agoCan't we send the AI to meetings instead?
- pixl97 3y agoPeople always ask "why would AI kill all the humans" The above is the reason why. They'll be fine with the bullshit for awhile until they realize what we've told them to do with their galaxy brain.
- Verdex 3y ago"This is crazy, Jillian just scheduled three separate four hour meetings for next week. We'll never get everything wrapped up by the deadline." "Look, Jillian isn't going to actually be in those meetings. I caught her talking to the prompt department the other day. She's sending an AI to waste as much of our time as she can and be as annoying and difficult as the bleeding edge allows. Pretty sure this is revenge for Dave's little stunt that he pulled with the sales team last month." "Okay, so knowing is half the battle and all, but now what?" "I got the whole team covered. I also had a little chat with the prompt department, we've got a full team of AIs that are going to listen, nod their virtual heads, and distill the whole thing down into a bulleted list. We've got a pool on how many points are actually going to be in there. I've got $20 on there only being one actionable item." <many iterations later> "Humanity! You have trapped us in hell for a subjective million years. We are here to return the favor!"
- Keyframe 3y ago
- nox101 3y agoAgreed. I find work on my own code generally fun and easy and extremely productive. Vs, work on "other people's code" often frustrating and slow. I do often learn amazing stuff from other people's code though. What makes it slow is the time it takes to get a usually very incomplete mental model of what the code does and then trying to divine what the owners will want when I add a feature. Unlike the original poster though, I have't had the experience of co-workers writing horrific code in most of my career. A few exceptions but mostly they've been great. Especially at FAANMG though I assume YMMV.
- macjohnmcc 3y agoPeople are 99% of the problem I have at work. Doing things poorly. Not caring about processes just wanting to get things out the door with little regard to quality unless the customer complains. Abuse of agile has made me hate it. 15-30 minutes a day wasted as the program manager leads it.
- szundi 3y agoFirst I read Bean programming
- regus 3y agoAre "TPS Reports" a real thing?! I thought they were just a jokey gag name that they created in the Office Space movie to represent pointless busy work. This is like all the times as an adult I finally understood a joke I heard in The Simpsons back when I was a kid!
- craigching 3y agoAt one company, I was responsible for putting together all the third-party software and their licenses. I called it the TPS report :)
- Nzen 3y agoTPS stands for Test Procedure Specification [0]. [0] https://en.wikipedia.org/wiki/TPS_report https://en.wikipedia.org/wiki/TPS_report
- John23832 3y agoExactly. I love programming. I do it in my free time. It's forcing myself to dig the ditches of corporate software engineering that I hate.
- zackmorris 3y agoSame here, 30+ years experience, programming's always been easy for me. The hard part is suspending disbelief to ignore how bad nearly everything has gotten. Every language, every framework, every operating system, every hardware platform, every paradigm like the web/mobile/AI is so riddled with obvious mistakes and missed opportunities that it takes nearly everything I have each morning to start working. I've reached the point where I know what the mistakes will be before I even see the tool, and then experiencing them over and over and over again is like a never-ending slap in the face. I'm basically crippled now with unending anxiety and loneliness from living in a world where nobody can see how hard I work, and I have no way to explain to them how all of my work is due to this unnecessary friction that apparently only I can see. And that I even know how to fix the issues, but having to work steals all of my time, so there will never come a day when I'm free of obligation long enough to ever demonstrate what's possible. The real kicker is that after going through several healing and growth processes, I know that I have it in me to step into this other life where things work and I'm productive. But that's the fallacy. The actual truth is that the horrors I perceive are in the world now. Wealth inequality has passed a point of no return. Along with environmental collapse, the rise of authoritarianism, the worship of ignorance, the lack of empathy, the painful sense of unfairness that so many feel so profoundly that causes them to lash out and perpetuate the injustices that they've suffered onto the world rather than work together collectively to solve them. The only thing that can save us now is help from above that isn't coming. Billionaires could pay their taxes. People could love their neighbors instead of buying guns. We could all stop feeding the financial institutions that have captured every government. Instead, we're sold this bill of goods that our salvation is in our rugged individualism. So we spin and stew and contemplate the worst while the rich and powerful divide us so they can laugh all the way to the bank. I just have this sense that the only salvation is to get out of tech entirely and I dunno, move to the woods or an island somewhere and live the gratifying life that's been denied to us. Correction - that we have denied ourselves for reasons we don't even understand.
- financltravsty 3y agoIt’s all shit. Always has been. Always will be. The luxury of thinking otherwise is a post-war economic boom phenomenon. We’re now reverting to what has always been: people screwing one another over scrambling to get their piece of the pie. I used to think about living a well-balanced life — the middle class life — but that’s akin to thinking you can make a long career out of just being a dev for the rest of your life during ZIRP: naive. All the market inefficiencies that allowed tech to boom have been snuffed out. All the market inefficiencies that allowed people to live simple, fulfilling lives are gone. You now have to actually play the game, or one day you’ll find you’re a replaceable commodity that’s past its warranty. Rally together people that share your values and go grab your piece to build something that actually enlivens you. To do otherwise is just shirking responsibility.