[HN Gopher] How can you not be romantic about programming?
       ___________________________________________________________________
        
       How can you not be romantic about programming?
        
       Author : joubert
       Score  : 277 points
       Date   : 2021-02-20 19:16 UTC (3 hours ago)
        
 (HTM) web link (thorstenball.com)
 (TXT) w3m dump (thorstenball.com)
        
       | forgotmypw17 wrote:
       | This is basically why I quit doing it for money. It felt like
       | taking this amazing, yes, romantic, thing, and perverting it
       | until it is barely recognizable. Writing code that I knew from
       | the onset would never last more than a year or two, would not see
       | the light of day beyond inside its small nook. And in the end, we
       | accomplished little more than moving money around and persuading
       | other humans into doing things which were bad for them.
       | 
       | It took me several years to get over the numbness I developed
       | after years of that crap, but now I'm in love again.
        
       | jrowen wrote:
       | Something I sometimes think about in this vein: how many lines of
       | code, written by how many people, in how many different times and
       | places, are traversed on your computer every second?
       | 
       | It's kind of mind-blowing to me, and I can't think of anything
       | else that works like that. It would be like if, when building a
       | new house, you built it around an existing house, and continued
       | to add layer after layer, and generations later the original
       | house was still in constant use and supporting all the rest.
        
       | celim307 wrote:
       | The highways of tomorrow are being built today.
        
       | Tade0 wrote:
       | I wrote my first lines of code when I was 12, so I had a good few
       | years of working exclusively on stuff I was interested in before
       | I went to college and found employment in this field after
       | graduating.
       | 
       | My current job is nothing like those years and in comparison
       | feels like bricklaying. It pays the bills, but there isn't a lot
       | of room for growth, because we have a streamlined process
       | designed for delivering the product on time and on budget.
       | 
       | In one word - boring.
       | 
       | On one side this is great - you should use boring technology,
       | because it brings the most value. On the other it's as devoid of
       | romanticism as it can be.
       | 
       | The silver lining here is that this job leaves me with enough
       | mental energy to pursue hobby projects. Provided that at the
       | moment I'm not in a situation in which I'm forced to follow
       | rules/directions I consider harmful/stupid.
        
       | 7usueudud wrote:
       | I never know how to answer coworkers when they ask what motivates
       | me because, frankly, I think all the romanticism is just a
       | childish fad that you have to play along with if you want people
       | to assume the best of you. My usual answer is always something
       | vague like "there's just something magical about them. I feel
       | like an artificer." It wouldn't be so annoying but I constantly
       | meet people who insist they just can't work that day because they
       | don't have whatever synonym they've chosen for inspiration and
       | meanwhile all I can think is "Or you could get over it and finish
       | like a god damn professional". As a very mercenary person who's
       | happy to hone a skill simply for the money I can't wait until
       | there's enough people in software that we can start firing the
       | profitable children finally.
       | 
       | I think this is just an American thing though because on the
       | occasions I've met with partners from other countries, especially
       | basically anywhere in SEA, I've noticed people act a lot more
       | like adults. Personally I blame San Fransisco.
        
       | picks_at_nits wrote:
       | I am deeply, deeply romantic about programming. I consider it an
       | act of self-actualization.
       | 
       | But answering the question literally, I am not representative of
       | everyone in the industry, and that's a good thing. It's easy to
       | feel romantic about your vocation when you have a number of
       | reasonable options for achieving modest financial security, and
       | you thus had the privilege of choosing the one that most closely
       | matched your idea of self-actualization and self-identification.
       | 
       | Not everyone in this economy has the same set of choices. For
       | many, programming is the lowest-risk way to put a roof over their
       | head and feed their family. We can make up little myths about how
       | we romantics are obviously more passionate, work harder because
       | it's our dream, are more deeply engaged, and so on.
       | 
       | But in the end, I think we'll find as we look around that those
       | of us who feel romantic about something that is also an excellent
       | way to make money at this particular place in time and space have
       | won a lottery of sorts, and are definitely in the minority.
       | 
       | That's not a bad thing.
        
         | sombremesa wrote:
         | > For many, programming is the lowest-risk way to put a roof
         | over their head and feed their family.
         | 
         | It seems that to some extent the romantics are actually
         | indebted to this cohort for pushing forth the ideas of fair
         | compensation and fighting for workers' rights, because people
         | who are passionate about their work usually end up getting
         | taken advantage of.
        
           | xmprt wrote:
           | Game Development is an example of what can happen when there
           | are too many people passionate about their work. I'm not
           | saying that everyone in that industry is taken advantage of
           | but it's a lot more than the broader tech industry even
           | though there's a lot of overlap between skill sets.
        
           | picks_at_nits wrote:
           | My own writing on the subject of this industry falls into two
           | pretty cleanly divided piles:
           | 
           | The writing about programming itself is "impractical" and
           | "romantic," because that writing is for those who have an
           | affinity with the "romance of programming."
           | 
           | The writing about getting a job, negotiating compensation,
           | shipping products, hiring programmers, &c. is practical,
           | because that writing is for everyone.
        
         | kulig wrote:
         | I learned this the hard way. Thought I was special and
         | passionate and hard working. Then I had a mental breakdown and
         | could barely get anything done. All of a sudden money became
         | the top priority I started seeing the world for what it really
         | is.
        
         | goalieca wrote:
         | > We can make up little myths about how we romantics are
         | obviously more passionate, work harder because it's our dream,
         | are more deeply engaged, and so on.
         | 
         | This comment stuck out for me. There's no shortage of people
         | who "love their job" who aren't actually good at their job.
         | They can be very motivated to do the wrong thing and often have
         | unearned egos.
        
           | rektide wrote:
           | I agree with your caution, I disagree largely with your
           | reasons/the dangers you identify. I've avoided California, so
           | maybe that has an impact, but I almost never have seen ego as
           | a problem. I'm one of the only ones who will do impractical
           | things sometimes (but just as often my crazy ideas are
           | radically simpler).
           | 
           | My gut feel is that romantics have it the hardest. They are
           | way more in touch with the potential & powers of it all, the
           | overwhelming awesomeness that is everywhere, & how un-tapped,
           | un-actualized the world-actual about them is. I don't have
           | particular links, alas, but I think of MrDoob, author of the
           | much loved Three.js library which has the lion's share of 3D
           | on the web. He seems clearly to be engaged, to be interested,
           | but he also has talked to himself not being great employee-
           | material, suffering problems of motivation.
           | 
           | The really romantics have problems of alignment. There are
           | few situations in the world where the passion is allowed to
           | flow. There are few working environments that support the
           | chaotic workflow & passion-driven-development. Agile: we all
           | practice agile. What is agile but a way to insure consistent
           | steady endless sprints, each slowly optimizing productivity?
           | What an evil anethema, a plague upon those of us who work by
           | our muses. The corporation, the industry, wants worker bees.
           | And for many years that's probably a good way to function,
           | probably a valuable personal development, of fitting in,
           | declaring what you are working on, learning how to tackle
           | problems. But in the long game, I think this mode of software
           | development is a joke, is consistently low-ambition,
           | squanders the immense potential we have. And I don't think
           | you need long deep experience & talent to be squandered.
        
         | rektide wrote:
         | > But answering the question literally, I am not representative
         | of everyone in the industry,
         | 
         | I am deeply /deeply/ romantic about programming, but industry
         | is dreck. Unimaginative, low potential, sapping, low-ambition,
         | filled with endless middle- & low-roads & compromises.
         | Countless stakeholders, endless non-technical-personals to
         | "reason" with. Plans & designs & endless corporate aligning &
         | planning. All for middling corporate plans, faint progress,
         | carried forward under the weight of countless legacy systems &
         | terrible decisions.
         | 
         | Programming & open source is this limitless potential, this
         | endless imagineering & exploration. We are unencumbered by
         | anything beyond what we might imagine, what we might want to
         | do, free to think of how we want to represent, structure,
         | develop things.
         | 
         | Not everyone is into programming for the same reasons. But I
         | find increasing distance, increasing inability to articulate to
         | others how amazing being a programmer is, what expressiveness &
         | power we have, how unencumbered & free we are. Even if others
         | don't share the ambition & sense of grandiosity, don't feel the
         | immense pull of the vast humanistic work that we distinctly are
         | the crafters & doers of, there's still such power to create &
         | share & inform that is so rewarding, so immense, so imminent in
         | the craft, & I deeply deeply crave seeing some recognition,
         | somewhere, of some of it- of themselves!- at some level, in my
         | fellow peers. It's ok if we have different reasons, different
         | motivations, different engagements, but there is a might of
         | human potential here that programmers are so uniquely connected
         | to, so immersed in, and I want these fish to realize the water
         | about them, even if they only aspire to be small fish.
         | 
         | I affirm strongly the question: how indeed can you not be
         | romantic about programming?
        
           | DC1350 wrote:
           | > I affirm strongly the question: how indeed can you not be
           | romantic about programming?
           | 
           | It's boring and people only do it because they're too
           | socially unsuccessful to participate in things that are
           | actually fun, so they convince themselves spending hundreds
           | of hours making boring stuff is actually a good use of their
           | time. I understand that some programming is great, but since
           | 99% of all software is not interesting, I don't believe the
           | amount of people who say they love it.
           | 
           | I've met people who try to make me think they're passionate
           | about building file management, customer service, or payroll
           | applications and I just don't believe it.
        
             | mckirk wrote:
             | That seems like a harsh view. A lot of software isn't very
             | glamorous or exciting at first glance, that's true. But if
             | you're sufficiently intrigued by logic puzzles and the
             | challenge of solving things elegantly, my guess is that
             | even the most boring piece of software has some opportunity
             | for fun buried in its architecture.
             | 
             | But since you don't seem to be able to relate that too
             | much, maybe you are just motivated by other things than
             | many programmers. What would be the 'actual fun' things
             | then in your opinion, that you have to be 'socially
             | successful' to participate in?
        
             | vinger wrote:
             | Making a file manager sounds interesting. A customer
             | service platform not so much because I've done it before. A
             | payroll system could be interesting.
             | 
             | Typing a letter and having it show up interests me.
             | What interests you?
        
             | Delk wrote:
             | Some people just have great interest in a narrow area.
             | 
             | I agree that most of those types of applications have a
             | very low interest-to-drudgery ratio just in general, and I
             | personally don't find them interesting at all. But let's
             | not forget that some people just have interest in the
             | details of things that most other people don't really care
             | about. Some of that work might not even be objectively that
             | technically demanding, yet it somehow catches the attention
             | of some people.
        
             | rektide wrote:
             | > It's boring and people only do it because they're too
             | socially unsuccessful to participate in things that are
             | actually fun,
             | 
             | To throw some bombs the other way, I think there's a legit
             | feeling that a lot of the socialization/fun that humanity
             | gets up to is frivolous, pointless, dis-engaged,
             | solipsistic avoidance of how they are spending their lives.
             | We are all engaged in distracting ourselves at some level
             | (Terror Management Theory[1]), and while it is popularly
             | accepted that being popular & social is how one wins, I
             | think there have been a lot of folks who feel other
             | callings, to do, to make, to explore, and often it's less
             | than clear how to do these activities socially. Einstein
             | only found two other people in the world when he made the
             | Olympia Academy[1], but that was enough. Other people
             | wouldn't call that social fun, but it engaged him, and I
             | would judge more earnestly & wholly & to greater joy than
             | most people's social fun.
             | 
             | > so they convince themselves spending hundreds of hours
             | making boring stuff is actually a good use of their time. I
             | understand that some programming is great, but since 99% of
             | all software is not interesting, I don't believe the amount
             | of people who say they love it.
             | 
             | I'm much more sympathetic to this all. So much of my first
             | post was about the split, the difficulty, of doing software
             | development from within the confines of the corporate-
             | industrial environment.
             | 
             | There are endless fun challenges & explorations to get up
             | to (from within those confines). There's so many things
             | that feel good about programming, about feeling like one
             | has gotten on top of these confounding complex problems, &
             | built a secure well structured coherent domain for oneself.
             | I think there is fun here, genuine fun, but I also think
             | it's distracting & shallow. It's the social gossip of
             | software development. Decoupled from what one is doing.
             | 
             | Most software is, alas, built in corporate-industrial
             | manner. Most programmers are merely producers, not
             | imaginators, not true creators, very much by design of the
             | corporate-industrial system, & it's accepted as 99.999%
             | hard fact that programmers need the help of other people or
             | else they will make horrible software that won't help
             | users. Very little software that is written, I would say,
             | is written by software. This wraps up into the whole
             | corporate-industrial software problem, that software is
             | always intent on being product, on consumerization, and I
             | strongly feel it's the lack of trust & lack of exploration
             | that keeps 99% of software in the not-interesting realm,
             | that keeps computers as a whole impervious & uninteresting
             | & uncompelling & unknown (the proverbial kids who know a
             | couple apps really well but nothing more about computing).
             | 
             | Most of the programmers you meet, who you accuse of not
             | being passionate: perhaps you are right. They're having
             | fun, but how engaged are they? Are they avoiding the fear
             | of death, engaging themselves in industrial fun? Or do they
             | really have a passion, see the world truly, have some sense
             | of place of it all, & feel a connection to something? Are
             | they facing the terror of death earnestly, more genuinely;
             | have they advanced beyond the socializing masses? I think
             | your doubts are well founded. I think we ought be critical,
             | try to keep a cosmic brain view & skepticism, of ourselves
             | & our applications.
             | 
             | [1] https://en.wikipedia.org/wiki/Terror_management_theory
             | 
             | [2] https://en.wikipedia.org/wiki/Olympia_Academy
        
             | psyc wrote:
             | I don't understand this. You make it sound as if other
             | trades and professions are about getting invited to
             | parties.
        
               | scsilver wrote:
               | Other professions arent as technical, and focus more on
               | creating human connections rather than abstract
               | connections.
        
           | [deleted]
        
       | andrewflnr wrote:
       | While I don't disagree with the article, this quote better sums
       | up how I feel about programming.
       | 
       | > The programmer, like the poet, works only slightly removed from
       | pure thought-stuff. He builds his castles in the air, from air,
       | creating by exertion of the imagination... Yet the program
       | construct, unlike the poet's words, is real in the sense that it
       | moves and works, producing visible outputs separate from the
       | construct itself... The magic of myth and legend has come true in
       | our time.
       | 
       | -Fred Brooks, in _The Mythical Man-Month_
       | 
       | In deference to the counterpoints in this thread, a lot of the
       | "poetry" we actually encounter seems to have been written by
       | Vogons.
        
         | pjmorris wrote:
         | I was burned out at a programming job and thinking about
         | finding something else to do when I first read this section in
         | 'The Mythical Man Month.' It reminded me of the wonder I'd felt
         | at first, and that was still in there, and it became part of
         | what has kept me hanging around the profession for another 30
         | years or so, so far.
        
         | ljm wrote:
         | let var i be none
         | 
         | while var i is less than j
         | 
         | i is i plus one
        
           | btschaegg wrote:
           | > Oh freddled gruntbuggly,
           | 
           | ;-)
        
         | caust1c wrote:
         | I think that's why so many of my peers (including myself) are
         | keen on removing ambiguity from code. Code itself should be as
         | clear as possible and only able to be interpreted by readers in
         | the way it's meant to convey instructions.
         | 
         | However the solutions are where the elegance, creativity and
         | poetry should lie.
        
         | henrik_w wrote:
         | I love that quoute! The whole "The Joys of the Craft" is well
         | worth reading. It also includes:
         | 
         | - The sheer joy of making things
         | 
         | - The pleasure of making things that are useful to other people
         | 
         | - The fascination of fashioning complex puzzle-like objects of
         | interlocking moving parts, and watching them work in subtle
         | cycles, playing out the consequences of principles built in
         | from the beginning.
         | 
         | - The joy of always learning, which springs from the
         | nonrepeating nature of the task
         | 
         | It really captures what I love about programming:
         | https://henrikwarne.com/2012/06/02/why-i-love-coding/
        
       | Waterluvian wrote:
       | Yesterday I set up a Django server that exposes some tables
       | through an API that's fully queryable and filterable and sortable
       | and paginated. And I wired it right into an antd table component
       | on a Web app. And the whole thing is just so nicely interactive
       | and #%$&ing clean and beautiful and elegant. I felt such joy
       | making it.
       | 
       | Then I had a moment of thinking, "wow the CEO and friends are
       | going to be blown away."
       | 
       | Until I stood back and realised that a data table isn't novel or
       | interesting and they won't even be aware of the underlying
       | beauty.
       | 
       | They're still blown away by a lot of what I do, but it's never
       | the things that I find truly beautiful and romantic.
        
         | ZephyrBlu wrote:
         | I think people in every profession would feel like this
         | sometimes.
        
         | [deleted]
        
       | rmason wrote:
       | If you have multiple startups competing evenly in the same space
       | why does one succeed and the others fail? The founders ability to
       | execute is paramount. But of equal importance is that one product
       | has a little bit of magic. Something that makes the user smile.
       | If it was easy every startup would have it.
       | 
       | You might say they all do the same task why spend extra time so
       | the user has an incredible experience. Because in my opinion
       | that's how you win.
        
         | DC1350 wrote:
         | > Something that makes the user smile.
         | 
         | This is not something that actually happens.
        
       | brmgb wrote:
       | While I somewhat admire the author feelings, as a direct answer
       | to the chosen title, I have to say I don't share them at all. I
       | view programming with a mix of indifference and boredom and the
       | sad few years I had to do it as a job are easily the less
       | fulfilling of my life.
       | 
       | If I had to sum up my feelings regarding programming, I would say
       | it is: - a lot of uninteresting busy work; - intellectually
       | mostly unchallenging. The few parts that are actually interesting
       | are maths and if I wanted to maths I personally find that there
       | are more interesting problems to solve in parts of maths not
       | related to programming. I don't remember ever feeling any joy
       | after completing a piece of software; - extremely isolating; -
       | both boring and infuriating to debug when it's needed.
       | 
       | The only positive part was shipping something useful when it was
       | finished.
        
         | ericd wrote:
         | Maybe the thing you were working on wasn't interesting enough
         | to you? If I'm working on something really hard that I think is
         | cool, the intermediate steps are a joyful rush when they work
         | out. If I'm working on something like pulling data from yet
         | another endpoint, not so much. Might be worth looking around
         | for problems that actually excite you.
        
         | chubot wrote:
         | I felt that way after a few years of programming. I was bad at
         | debugging and several other things that would have made my life
         | a lot easier. After a decade of programming, I got better at
         | it, and started to like it more (even doing it in my spare
         | time)
         | 
         | People like things they are good at. To be provocative: if you
         | only did it for a few years, you probably weren't that good at
         | it. The same can be said for math, playing guitar, etc.
         | 
         | Guitar is a good example. Anyone who has been playing for a
         | year or 3 probably knows the drudgery of practicing some chords
         | that don't sound like what's on the record, hurting your
         | fingers, etc. When you get good at it, the drudgery goes away
         | and you're left with fun.
         | 
         | And that's not to say "good" is a fixed target... The
         | interesting thing is that once you get to a certain point, you
         | can see the infinite world that you haven't explored yet.
         | 
         | If you like math then there is a ton of stuff in programming
         | that's mathematical, but you can't get a job in those areas
         | until you've mastered the basics.
        
           | ZephyrBlu wrote:
           | I agree that people like things they're good at, but a few
           | years is far longer than you need to get good at something.
           | 
           | You can easily get to at least the top 10-20th percentile in
           | a single year if you dedicate yourself to something.
        
         | bitwise-and wrote:
         | Maybe it was what you were working on, maybe it was the act of
         | programming itself, maybe it was the company, etc. etc. etc.,
         | for the sake of your own happiness I'm glad you're not doing
         | that anymore. I for one and becoming more and more fascinated
         | by it, despite its (MANY) quirks & decisions that get made
         | because of previous bad decisions. -\\_(tsu)_/-
        
         | amelius wrote:
         | > a lot of uninteresting busy work; - intellectually mostly
         | unchallenging
         | 
         | My guess is that you should have followed your programmer's
         | instincts and automated the uninteresting work.
        
       | [deleted]
        
       | elliottkember wrote:
       | I think know what happens here. We become disconnected from the
       | real-life output of what we do. It becomes abstract. If you're
       | like me, you started off making stuff for yourself and it was a
       | thrill to put it live and know that people could see it. Now I
       | think we all build stuff for others, because that's where the
       | real money is.
       | 
       | In short, a hobby turns into a job and stops being fun. But I've
       | found ways to bring programming into my hobbies and that's been
       | life-changing!
        
       | Havoc wrote:
       | In part I'm glad I didn't go into programming for this reason.
       | It's a pure hobby pursuit free of the pressures & stress of work.
       | I code what I want when I want.
        
       | tinyprojects wrote:
       | Really enjoyed this, thanks for sharing!
        
       | A12-B wrote:
       | There's a difference between being romantic about solving puzzles
       | and creating new and useful tools, and being romantic about the
       | drudgery and bugs. I wouldn't call the people who pretend there
       | aren't boring parts of programming 'romantics', it's more of a
       | delusion. But those people do exist, and I don't trust them.
        
       | paganel wrote:
       | I used to be romantic about code, even more than that, and then I
       | saw how the code other programmers like me wrote was used for all
       | the wrong reasons and suddenly there was no ounce of romanticism
       | left in the very idea of coding.
       | 
       | There could be some chance of regaining the lost romanticism if
       | we'd throw "collaborative" concoctions like GitHub out of the
       | window, if we'd get rid of the very idea of working for any
       | FAANG-like company ever again (and to hell with those hellish
       | interviews associated with them, too, nobody interviewed Shelley
       | or Goethe before they sat down to write their romantic stuff) and
       | to top it all it would be best if from now on we'd only write
       | code for our own pleasure, maybe add a very short selection of
       | friends, too, no more "software is eating the world" and all that
       | materialistic and definitely non-romantic nonsense.
        
       | abarrak wrote:
       | A friend of mine asked me: "why are taking it seriously and love
       | to code? I do it just as routine job". Then, he didn't complete
       | his career as programmer and switched to be business analyst.
        
       | atoav wrote:
       | This is a good summary of my own feelings on the whole darn
       | thing. I also design circuits and the whole thing is just fucking
       | magic to be honest. The fact that this works at all is constantly
       | baffeling me.
        
       | o_m wrote:
       | I used to love programming, but after doing it for some years
       | professionally I feel like a lot of people (clients, managers,
       | co-workers) look down on it. Like its just a neccessary evil they
       | wish they didn't have to deal with. I feel like it is the lowest
       | status profession you can have in the tech world.
        
         | dragonwriter wrote:
         | > I feel like it is the lowest status profession you can have
         | in the tech world.
         | 
         | QA, Ops, Support, and (in a reversal from a few decades ago)
         | Analysis would like to have words with you.
        
       | DC1350 wrote:
       | > How can you not be romantic about programming?
       | 
       | Get a job doing boring shit you've already worked on 3 times
       | before. Most programming is awful and that's why you get paid so
       | much to do it.
        
       | psyc wrote:
       | As an indie game programmer, I cast magic spells and speak living
       | worlds into existence. Pretty romantic.
       | 
       | As a paid software developer taking tasks and bugs off backlogs,
       | justifying everything I do, no autonomy, forbidden to refactor,
       | documenting everything, filling out dumb little forms in Jira
       | that literally nobody ever sees again, attending meetings, making
       | my boss look good, spinning myself in performance reviews, blah,
       | blah, no I can't say any of that is particularly poetic.
        
       | bor0 wrote:
       | Computation has been and is a huge part of my life, and thanks to
       | it I live a decent life with my family. It also helped with self-
       | esteem and other similar things.
       | 
       | But love? Love taught me things I couldn't imagine (in a positive
       | way).
        
       | dshpala wrote:
       | To paraphrase a thing that I read in a book about Tao:
       | 
       | "How can you not be romantic about making iron hooks?"
       | 
       | And I fully agree. You can find beauty and elegance in anything,
       | including programming (and I certainly do).
        
       | phabora wrote:
       | CRUD.
        
       | drummer wrote:
       | The true wizards of today are the AI engineers and scientists.
        
       | sokoloff wrote:
       | I would happily write code for free (and do so off-hours, with my
       | kids, and for side projects).
       | 
       | I have the luxury of working in a field where my employer pays me
       | not because I hate what I'm doing and would rather not do it all,
       | but just because they need me to focus on solving _puzzles they
       | choose_ instead of puzzles I choose.
        
         | bspammer wrote:
         | This about sums it up for me as well. I feel so absurdly lucky
         | that what I love to do also pays well.
         | 
         | If programming paid like shit, I don't think I would be able to
         | stop myself going down that road anyway, in the same way
         | someone who loves painting can't help but paint.
        
       | FrozenVoid wrote:
       | the only things i find "romantic" is creative design in macros,
       | improving algorithms and low-level bithacks, everything else is
       | mostly boring and mundane code monkeying. Programming big
       | projects where creativity and design space are stifled must feel
       | suffocating and limited: people don't invent new stuff and do
       | everything by the book - implementing something just for it to
       | work, but not daring to break new territory.
        
       | xwdv wrote:
       | How? Writing resource hogging code all day to figure out how to
       | best display obtrusive advertisements is a good start.
        
         | einpoklum wrote:
         | If you're doing that, then quit. It's not worth it and you'll
         | regret having done this. You'll find another job. Hell, you'll
         | find another job as a programmer. Don't do this to yourself,
         | nor to us.
        
           | ColonelPhantom wrote:
           | Sure, OP will find another job as a programmer. But I am sure
           | that their employer will also find another programmer. So
           | saying he is doing it to us sounds kind of disingenuous.
           | "Hate the game, not the player."
           | 
           | For me, the frustrating part is that our society is set up to
           | incentivize value-decreasing behavior like obtrusive
           | advertisements, it doesn't add anything yet still makes
           | money, unlike things that are essential to the world (mundane
           | example: raising children).
        
           | xwdv wrote:
           | Nah, the pay is good and worth it IMO. I see it similar to
           | being a roughneck on an oil rig or even a coal miner. I make
           | no illusions or romanticize the nature of my work.
        
           | DC1350 wrote:
           | Most jobs are terrible but they also pay less. I think he's
           | making the right choice. If you don't believe in trade offs
           | then you're probably being taken advantage of.
        
       | pdimitar wrote:
       | Responding to the title, it's easy: get jaded by constantly
       | having to fix somebody else's broken stuff and as a bonus never
       | get enough time to express your own creativity and implement your
       | good ideas.
       | 
       | Rinse and repeat for ~10 years and you'll see how can you not be
       | romantic about programming. (I am in the profession for 19
       | years.)
       | 
       | I am now looking for ways to retire early. I will hit 41 in a few
       | short weeks and I am still the hard-working guy that has zero
       | savings but that has been 100% my fault and I am not blaming
       | anyone -- I have treated life as yet another lousy job that I can
       | half-ass (reference to my younger years). I came to my senses,
       | finally, about two years ago, after I received a series of cold
       | showers during several interviewing campaigns and have seen how
       | capricious the job market is and how completely _RANDOM_ tech
       | hiring is.
       | 
       | Since then I am working on investing in relations more than
       | anything else, taking some pay cuts for supposed sustained income
       | down the line (people who would call me for temporary contracts
       | on a regular basis, people calling me to fix their stuff just for
       | a few days and for generous one-time fees, people needing the
       | occasional technical writing etc.) but if that doesn't work --
       | and it likely will not work because I don't seem to be in the
       | right circles -- I'll just start applying exclusively to USA
       | companies due to the bigger compensation and will just hoard
       | money for a few years.
       | 
       | I'll also likely start 3-4 small IT businesses after I fix my
       | health; my skills as a programmer and a sysadmin are quite broad
       | and I can pull it off alone.
       | 
       | ---
       | 
       | Back on topic, programming is romantic when you are not doing it
       | as a paid job, plain and simple. There are people who absolutely
       | love their programming work plus the compensation plus their team
       | but if they are reading this they should probably start praying
       | to whatever gods they believe in that it will last because for at
       | least 80% of us it didn't.
       | 
       | I am looking forward to having more free time after I gather some
       | savings. I still love programming but the commercial aspect is
       | absolutely destroying it for me.
        
       | rufus_foreman wrote:
       | "After a while, more and more, you'll find yourself in moments of
       | awe, stunned by the size and fragility of it all; the mountains
       | of work and talent and creativity and foresight and intelligence
       | and luck that went into it. And you'll reach for the word "magic"
       | because you won't know how else to describe it and then you lean
       | back and smile, wondering how someone could not."
       | 
       | I guess I wish I felt like that about programming. But more and
       | more, I feel like this:
       | 
       | "You are an expert in all these technologies, and that's a good
       | thing, because that expertise let you spend only six hours
       | figuring out what went wrong, as opposed to losing your job. You
       | now have one extra little fact to tuck away in the millions of
       | little facts you have to memorize because so many of the programs
       | you depend on are written by dicks and idiots."
       | 
       | -- https://www.stilldrinking.org/programming-sucks
        
         | beaconstudios wrote:
         | Awe and contempt are basically the same feeling, but with the
         | charge flipped. The author is amazed that it works to the
         | degree that it does, you're amazed a how things don't work the
         | way you want them to.
         | 
         | Such is the power of framing, I guess.
        
           | throwawayboise wrote:
           | I used to get emotional like this about programming, both the
           | awe and the contempt depending on circumstances. Now, after
           | 30 years, it's just work. I don't really feel anything about
           | it. And that's kind of the way everything is. Nothing is new
           | or exciting. I wake up, work, do household stuff, eat, go to
           | bed. That's life. Not interesting, not depressing, just
           | neutral.
        
             | carlmr wrote:
             | >Not interesting, not depressing, just neutral.
             | 
             | The absence of feelings sounds exactly like depression.
        
               | beaconstudios wrote:
               | Depression is a bit more complex than that though. You
               | can be emotionally neutral if you're just not strongly
               | affected by what you're doing, it's probably the default
               | state if you've done something for a while. I'm
               | emotionally neutral when I brush my teeth.
        
               | carlmr wrote:
               | True, let me rephrase what I meant then, if everything,
               | day in, day out, feels emotionally neutral, that's very
               | depressive sounding.
        
               | beaconstudios wrote:
               | Yeah for sure. Anhedonia (no longer enjoying things you
               | used to) is a strongly associated symptom. Of course it
               | could just be a rut and you need to shake up your
               | routine, introduce some variety, but that's matter of
               | severity rather than category.
        
               | throwawayboise wrote:
               | But it doesn't seem that way. I'm not unhappy, or
               | suicidal, or gloomy about the future. I just don't find
               | that anything really feels "new" and therefore nothing
               | really seems exciting. It's like if I got that cliche
               | question "what are you passionate about" in an interview,
               | my answer would be "nothing."
        
               | beaconstudios wrote:
               | I think it's fair to not be passionate about programming.
               | As long as you have _some_ sort of creative /passion
               | outlet.
        
               | phabora wrote:
               | Ma, the passion police is at the door again.
        
               | beaconstudios wrote:
               | you have 24h to present evidence of sufficient artistic
               | hobbies to your local station.
        
               | throwawayboise wrote:
               | > As long as you have some sort of creative/passion
               | outlet
               | 
               | I used to feel that I did, when I was younger. Not really
               | these days. But I'm not sad about it.
        
               | carlmr wrote:
               | Don't you have the feeling you want something exciting?
        
               | throwawayboise wrote:
               | I'll put it this way, I have no real burning desire to do
               | anything that I haven't already done.
        
           | fastball wrote:
           | The glass is half full.
        
         | jhauris wrote:
         | I've felt both ways at different times. Both are true. The fact
         | that anything ever works is part of the magic.
        
         | dmingod666 wrote:
         | I don't know about most people but devs should have their own
         | personal knowledge management system ( do it on any tool,
         | notion, evernote..) but it's an absolute must. These facts you
         | talk about are fleeting and in the moment the revelations of
         | the learnings seem so clear, but 4 weeks and all the little
         | details go out the window. Save all your little Linux command
         | pipe chains. Config values that worked and few sentences of
         | caution to your future self of what to do and not to do.
         | Otherwise you're just going to make the same mistakes in an
         | years time...
        
           | rektide wrote:
           | Can I get a raise of hands for folks who think "Dream
           | Machines" is the #1 book on software? How about for those who
           | believe that Engelbart's Augmenting Human Intellect is a
           | driving force for humanity? And that software is a radical
           | embodiment of that all? I think we can get a modest show of
           | hands; I've seen enough confirming points of view from about.
           | (Would that I have a memex to highlight all the mentions I've
           | seen, all the other endorsements!)
           | 
           | Elsewhere I've talked a bit about whether we are romantically
           | engaged in software development. Or whether we are justifying
           | ourselves, merely up to fun.
           | 
           | And I think this comment hones in a lot on what the real
           | chase of this all is, on where we can be radically romantic &
           | hopeful & builders of enduring meaning. It's good advice, for
           | just trying to get better. But this act of enhancing
           | ourselves, learning, cobbling together pools of wisdom: it's
           | the meta-act, it's what software development enables, for
           | software & for other areas. A push for excellence. Software
           | both requires us to improve ourselves, to learn, but it's
           | also a tool for learning, for augmenting ourselves, for
           | becoming more than what limited things we might otherwise be
           | constrained to develop into.
           | 
           | Working not just with but on personal information systems,
           | is, in my view, a nearly sacrosanct act. I see developers
           | like Karli Coss[1] as vanguards of humanity, a bringer about
           | of higher orders & new ranks of human development, via
           | software. Don't merely just use a knowledge management
           | system, develop them! This is the core point, the core
           | enablement of software, and it's not automation or products
           | or ai that has ultimate relevance: it's this human
           | development, this getting better at getting better. Invest
           | yourself into knowledge management systems, build them to
           | further reaches. Pick up really good open source tools like
           | Foam (built as a vscode extension!) & build plugins, expand,
           | grow! Excel! Keep expanding the reach that your mind can
           | travel, by actively engaging yourself in building better
           | bicycles of the mind.
           | 
           | [1] https://github.com/karlicoss
           | 
           | [2] https://github.com/foambubble/foam
        
         | LordHumungous wrote:
         | So all the difficulties in engineering are due to "dicks" and
         | "idiots", unlike like the author who is presumably the only
         | clever person in the entire industry. Here is an example of one
         | thing I actually don't like about this profession: too many
         | emotionally stunted egomaniacs.
        
         | aspaceman wrote:
         | Write more code - solve fewer problems.
         | 
         | Engineers solve problems. We use our expertise to take
         | stressful and difficult problems and reduce them into simpler
         | ones. You cut through bureaucracy and a healthy amount of talky
         | bullshit to solve problems. The better you are at this, the
         | more you're rewarded as an engineer. But this is a taxing
         | process.
         | 
         | Writing code is creative. You find your own problems, and solve
         | the ones you want to solve. If you don't want to solve
         | something, you let it fester - or nurture it - as you wish.
         | 
         | Take a look at Racket. Read a book about Lisp games
         | programming. Find an old C64 and learn some BASIC. Check out
         | PICO-8. Or see Inigo's SDF website and try out some shadertoy.
         | Ignore practicality, or focus only on your individual
         | practicality.
         | 
         | Engineering is a discipline and that makes it tiring over time.
         | You don't always have to be improving something.
        
           | pschw wrote:
           | > Read a book about Lisp games programming
           | 
           | Any recommendations?
        
         | superbcarrot wrote:
         | > because so many of the programs you depend on are written by
         | dicks and idiots
         | 
         | Out of all the problems with programming as a job, this is
         | around the bottom of my list.
        
           | rufus_foreman wrote:
           | I'm working on an app that calls other internal services
           | inside our company, one of them is a call to update an
           | account balance. We were running into this issue where we
           | were getting a 504 Gateway Timeout on the update balance call
           | so I eventually found the Slack room for that team and asked
           | about it.
           | 
           | They ignored me for a couple weeks, but I kept asking and
           | eventually someone answered and said yeah you'll get the 504
           | Gateway Timeout if you try to update the account balance to
           | the same value that it already has.
           | 
           | OK, that makes sense to you? What if there was an actual
           | gateway timeout?
           | 
           | You would also get a 504 Gateway Timeout in that case.
           | 
           | They apparently have no plans to modify this service's
           | behavior.
           | 
           | I let it go, I just moved on with my life. I did not find
           | myself awed or stunned with the mountains of work and talent
           | and creativity and foresight and intelligence and luck that
           | went into it.
        
             | ywei3410 wrote:
             | Oh man, we had a connection with an API recently where if
             | you sent it some incorrect data it would just hang. No
             | errors, no closing of the connection. Just hang. And ofc
             | they don't offer a heartbeat over that channel.
             | 
             | That would still be fine... if the data was static. But
             | it's not - and changes are communicated; but not to the
             | relevant tech teams.
        
             | infogulch wrote:
             | I can guarantee you that 5 other teams rely on that
             | specific behavior and don't have the will/independence
             | ("budget") to implement that change if the api was fixed.
             | Not only that, but if they did make that change, their
             | manager would instantly have a handful of directors down
             | their throat demanding an explanation why they just added
             | work to their teams that are busy with Feature Work (TM).
        
               | reaperducer wrote:
               | _don 't have the will/independence ("budget") to
               | implement that change_
               | 
               | So, dicks and idiot middle managers. I think you made his
               | point.
        
               | philosopher1234 wrote:
               | No. This is such a small issue who honestly cares if it
               | gets fixed? I guarantee you this is not the most
               | important thing anyone involved could be working on. Too
               | many perfectionists on this website.
        
               | sixstringtheory wrote:
               | The person who brought up the story mentioned account
               | balances. Someone will definitely care when a latent
               | combination of bugs is triggered and the company loses
               | money because of it. See Knight capital and the more
               | recent Citi debacles.
        
               | WrtCdEvrydy wrote:
               | This is a total failure to follow any sort of standard.
               | 
               | A 504 is a gateway timeout due to the server failing to
               | complete the action, hell, a 400-level for "you fucked
               | up" would be preferable.
        
               | fastball wrote:
               | 4xx would be what you want anyway, no?
        
               | jholman wrote:
               | What you described:                 let x = 2 // runs
               | x = 3;    // runs       x = 3;    // runtime error, you
               | made a mistake
               | 
               | No, I'd want a balance update to succeed. Even if it's to
               | the same value that it already had.
        
               | mgkimsal wrote:
               | "We were running into this issue where we were getting a
               | 504 Gateway Timeout on the update balance call so I
               | eventually found the Slack room for that team and asked
               | about it. They ignored me for a couple weeks,...."
               | 
               | Someone could have documented this and/or simply answered
               | a damn question instead of wasting _weeks_ of opportunity
               | cost. Too many dicks and idiots on that website, it
               | seems.
               | 
               | "who honestly cares if it gets fixed" - everyone that
               | comes after this and has to deal with it and waste weeks
               | of their life trying to pry some required nugget of info
               | from a passive aggressive group of maintainers of stuff
               | which actively ignores industry standards?
        
               | WrtCdEvrydy wrote:
               | Too real.
        
             | mgkimsal wrote:
             | Similarly a colleague just told me yesterday about a data
             | vendor who is sending data over on a almost nightly basis.
             | They changed the process/format - without notifying anyone
             | - and things broke.
             | 
             | End users of my colleague's application were now saying
             | they were seeing inactive client data coming up in their
             | app, and it was causing confusion.
             | 
             | During the time trying to figure out the new behavior, the
             | main client finally got something in writing about "here's
             | how it works" from the data vendor...
             | 
             | * Rule 1...
             | 
             | * Rule 2...
             | 
             | * Rule 3: If a client record has not had any data updated,
             | we will only send over the client name and header info, but
             | no additional data records will be sent over.
             | 
             | * Rule 4....
             | 
             | * Rule 5: If a client record is no longer active in the
             | system (for example, has been deleted), we will only send
             | over the client name and header info, but no additional
             | data records will be sent over.
             | 
             | Questioning back to the original data provider - if we get
             | a client name and header info, but no additional data
             | records - _what does that mean?_ Does it mean the client is
             | inactive /deleted, or simply that they've had no data
             | change since yesterday?
             | 
             | Absolutely no coherent response, and I doubt there will be
             | one. The defense of "no no, we have to keep stupid
             | behaviour around because people _rely_ on it! " doesn't
             | even stand - this change came about in the last couple
             | weeks, after having worked this way for more than a year.
             | 
             | It's both maddening and frightening how fragile so much
             | daily data exchange is.
        
         | jbob2000 wrote:
         | Or this:
         | 
         | "Find creative ways around standards, limits, laws, processes,
         | morals, etc. so I can make a quick buck and pass you some table
         | scraps"
        
           | xwdv wrote:
           | Or worse than table scraps: pieces of paper that _may_ be
           | worth something someday if _you_ keep working hard enough.
        
             | Bakary wrote:
             | The system and forces that make this table scrap
             | arrangement possible are the same forces that generally
             | drive the salaries and perks of tech workers much higher
             | than the average for other professions. It's healthy to be
             | cynical but it's also important to look at the overall
             | balance of power of the social classes. The 9% versus 90%
             | makes more sense than the 99%
        
             | fiddlerwoaroof wrote:
             | I just treat startup equity as a lottery ticket: but, I
             | find the work itself interesting and would be programming
             | even if it wasn't my career.
        
         | cmrdporcupine wrote:
         | The longer I am in this profession (and it's been over 20
         | years) the less I see my peers as "dicks and idiots" but more
         | as victims of the same broken game. I work with very smart
         | people, to be honest. It's the technology and the employers and
         | the culture of development that's the problem.
         | 
         | Retiring sounds good right about now.
        
           | wwww4all wrote:
           | I've been wrangling software bytes for a while and I am
           | pragmatic about the business.
           | 
           | Software engineering is extremely difficult. High performance
           | engineers are rare and valuable. Some times, they become
           | jaded and burn out.
           | 
           | This is my career and my craft, so I'm inclined to ride the
           | waves and trends in software engineering. Negotiate for above
           | average salary while maintaining my tech stack and producing
           | at above average output.
           | 
           | Most people don't understand what it takes to develop and
           | deploy software solutions. They only see the unicorns like
           | Google, Facebook, and think software engineers are common.
           | They don't see the vast swaths of land of failed software
           | startups and dreams and incompetence in software engineering.
           | 
           | Most people in software engineering doesn't know or
           | comprehend basic data structures and algorithms, which form
           | basis for all software solutions at scale. Yet, they are
           | filled into dev position slots by HR/management and asked to
           | develop complex systems.
           | 
           | To have long term career in software engineering is like any
           | other trade. Observe how the game is played, learn to play
           | the game and play the game right.
           | 
           | A software engineer with basic skill stack and right long
           | term view can ride the software wave for decades, just by
           | understanding basic CS principles and utilizing them to
           | develop solutions. Switch jobs regularly and negotiate hard
           | for salary and levels.
        
           | WalterBright wrote:
           | > Retiring sounds good right about now.
           | 
           | I tried that. After 6 weeks of watching TV I restarted my
           | business and went back to work. Retirement is a living death.
        
             | syndacks wrote:
             | Hey, thanks for sharing this. Mind expanding? I'm curious
             | to hear what you had planned going into retirement and what
             | you seek going back to work. Are you right back to the same
             | as you were right before "retiring"? Knowing how your first
             | round of retirement went, what would you have done
             | differently in the years/decades leading up to it?
        
               | WalterBright wrote:
               | What I discovered is that a life without purpose is not a
               | life. The fun is in having worthwhile goals and striving
               | to reach them.
               | 
               | Being passively entertained, bleh. It's also why I have a
               | very limited appetite for "see the world" traveling. I
               | can only look for so long, then I need to be doing
               | something with a purpose.
               | 
               | I've seen what happens when people retire. They suddenly
               | get old and lose their vitality. They become boring
               | people.
               | 
               | My plan is to work until they carry me out in a box.
        
             | farias0 wrote:
             | Maybe the problem is that you spent it watching TV?
        
               | StavrosK wrote:
               | Seriously, I was between jobs for a while and it was the
               | best time I've had in ages. I could (and would) do random
               | projects that struck my fancy all the time, go out, see
               | friends, write, design things... It was much more
               | productive than a job, and I was constantly doing things
               | with the parts of technology that don't suck.
        
           | PragmaticPulp wrote:
           | How so? The job situation for good developers has never been
           | better. We can make salaries that would have seemed
           | unthinkable two decades ago while working from home and doing
           | something we enjoy.
        
             | Grimm1 wrote:
             | That's true but that is to offset the really negative
             | aspects. How many places never let dev's actually design
             | systems that stand up to scrutiny because the execs don't
             | care if BS is pumped out because as long as the business
             | floats then it doesn't matter.
             | 
             | Then the code base becomes a mass of spaghetti that at this
             | point the revolving door of devs have to both figure out
             | and keep alive in ever increasingly stressful situations
             | until they either burn out or move on for greener pastures
             | perpetuating that cycle.
             | 
             | So far in my career the split is 60:30:10 places who don't
             | care about actual engineering and run their business on
             | crap, those who recognized things are biting them but the
             | amount of inertia you need to counteract things and rebuild
             | is huge and then the very fine percentage of places that
             | actually have a good culture around engineering.
             | 
             | The first is horrible because you're a fungible asset and
             | the job is miserable the second is better but still bad
             | because at this point they do see you as valuable but
             | you're going to be spending your time digging them out of a
             | grave and then the third is just a magical experience where
             | you're valued and the codebase isn't constantly a light
             | breeze away from collapsing.
             | 
             | The majority of the industry is in position 1 and I guess
             | we'll see if it ever makes it to 2 or 3.
             | 
             | Worth noting that I made high salaries and could work from
             | home in every case but it would be correct to say I
             | continue to enjoy programming in spite of the industry.
             | 
             | I also don't think it's a coincidence that companies who
             | are in group 3 are typically leagues ahead of 1 and 2.
        
               | blackrock wrote:
               | How old are you now? Or what age group are you in now?
               | 
               | It seems like businesses want the expertise of a 20+
               | veteran, but want to hire 18 year olds, so they can pay
               | them less, and dangle silly trinkets like free cafeteria
               | food in front of them.
               | 
               | Oh and, why is it taking so long to work on it?
        
               | notriddle wrote:
               | The other problem is that there's factors in a company
               | other than, strictly, its engineering culture. I could
               | get a good job, in a good engineering culture, working in
               | adtech, but as long as I have a choice I'd rather not.
               | 
               | The place I work instead can charitably be described as
               | "a victim of regulatory capture," but at least I'm
               | working in a business that I believe has a legitimate
               | reason to exist.
        
             | ChrisMarshallNY wrote:
             | This has not been my experience. It seems that it's a young
             | person's game, and us older folks are not particularly
             | encouraged to participate. Frankly, I've been stunned by
             | the way in which I was treated, in the short period of time
             | I spent looking for work, after leaving my last company.
             | 
             | Thankfully, I am not required to work, and have been having
             | the best time I could imagine, since giving up on working
             | for others. Instead, I work with people for free, on
             | projects that I think are constructive and give back to
             | society.
             | 
             | I am working from home, doing something that I enjoy
             | tremendously. I'm doing the best work of my life. I just
             | got done refactoring a fairly large backend that I wrote a
             | couple of years ago, and am actually thrilled at the
             | quality (and quantity) of my work. It's driving the
             | application that I'm developing. I wasn't satisfied with
             | some of the popular offerings, and had already written the
             | backend as an exercise, so I used that, instead. It just
             | needed a bit of tweaking to fit the new application.
             | 
             | I love programming and system design. I'm really good at
             | it. I write code every single day of my life (My GH profile
             | is solid green, and it's not "gamed"[0]).
             | 
             | It's just that I found others are not interested in working
             | with me. It hurt, as I had spent my entire career, working
             | on teams, but I rubbed some dirt on it and walked it off.
             | In the aggregate, I'm actually glad that I went through
             | that.
             | 
             | [0] https://github.com/ChrisMarshallNY#github-stuff
        
               | wwww4all wrote:
               | Companies look for expertise in older software engineers.
               | 
               | They want senior level to help them maintain legacy
               | systems or lead the upgrade to latest tech stack.
               | 
               | If backend is your specialty, market oneself as expert in
               | backed solutions using latest stack. The fundamental CS
               | principles never change. Learn the basics of cloud,
               | containers, orchestration, micro services, and inform
               | recruiters about experiences delivering solutions in
               | latest stack.
               | 
               | The recruiters will be rushing to your profile and
               | demanding interview slots.
               | 
               | Good luck.
        
               | ChrisMarshallNY wrote:
               | Actually, frontend is my strength. I've written (and
               | shipped) dozens of apps. I'm quite good at "closing" the
               | app development process. I've been _shipping_ (as opposed
               | to just  "coding") applications for over thirty years.
               | 
               | The backend was just a more challenging project. I won't
               | go into all the reasons that I wrote it, but it works a
               | charm. A dedicated backend engineer could probably do
               | better (actually a dedicated backend _team_. I 'm fairly
               | productive). I'm just glad I have a use for it. I was
               | assuming it would never be used. I wrote it on a lark.
               | Took seven months, but it was fun. I do stuff like that.
               | A number of years ago, I taught myself to program
               | Android, but decided I didn't like it, and never followed
               | through.
               | 
               | As far as recruiters...They do rush to my profile. I have
               | a lot of nice buzzwords.
               | 
               | As soon as they find out how old I am, though, the call
               | suddenly has "connection problems," and I never hear from
               | them again.
               | 
               | I've taken to making sure that my age is clear upfront,
               | just to save time. It's amusing how quickly they start
               | discouraging me. They start by lowballing me, and when I
               | make it clear that I would have no problem working for
               | low wages (I do it for fun, and I don't really need the
               | work), they start trying to find other reasons I wouldn't
               | want the job.
               | 
               | Like I said, I bailed on the rat race. It was just making
               | me grumpy.
        
           | arjun-menon wrote:
           | _> Retiring sounds good right about now._
           | 
           | My personal plan, instead of retiring, is to work on
           | inventing solutions to the issues plaguing large and complex
           | software projects. One of my primary sub-goals under this
           | mission, is to create a new programming language that'll
           | handle complexity excellently, while also making it hard for
           | a programmer to write bugs in it (strong static type system,
           | deep static analysis, thorough linting, some kind of
           | automatic proofing or verification, paradigms that make
           | writing bugs less likely, paradigms that handle
           | modularization and complexity gracefully, etc).
           | 
           | Overall, when there are big problems in the world (poverty,
           | human rights abuses, climate change, _bad software_ ), I want
           | to try to use my skills and abilities toward solving those
           | problems, rather throwing my hands in the air, and giving
           | into hopelessness.
        
             | wffurr wrote:
             | >> create a new programming language
             | 
             | The problems with software engineering aren't technical.
             | They are organizational and political.
        
               | Aqueous wrote:
               | with respect i think it's a combination. business demands
               | value delivery and features on a constant basis, and
               | programmers are constantly layering crap over crap in
               | order to deliver. nobody stops and says "hey, wait a
               | second - let's pause, and figure out how we're going to
               | invest now to make the changes you're asking for easier
               | in the future." programmers need to learn to identify
               | when this is happening (a technical skill) and demand
               | change, and product needs to learn to listen and
               | understand the consequences of not heeding this advice.
               | because after 5 - 10 years of 100 different people
               | working on a given system, the complexity becomes
               | unmanageable, and the business grinds to a halt. and then
               | heads start to roll. and yet the people demanding the new
               | features now are never going to have suffer the
               | consequences, because they'll be off to another venture
               | in 5 - 10 years.
        
             | Aqueous wrote:
             | > programming language that'll handle complexity
             | excellently
             | 
             | this more than anything is the issue plaguing development.
             | none of the paradigms we have - OOO, functional programming
             | - by themselves lend themselves to expressing complex
             | logic. and by complex logic i mean the tangled web of
             | business or application logic that's inherent in many
             | modern software applications, both web and desktop. so you
             | end up with hundreds of interdependent classes nested
             | within one another, connected in some extremely arcane way,
             | and to understand an entire piece of software you have to
             | look into 100 different files. this is not acceptable.
             | 
             | I got sick and tired of it at work and just went ahead and
             | created a DAG-driven workflow engine, that enforces a
             | common interface for individual actions the application may
             | need to take, and allows to express complex business logic
             | - including conditionals - in a single file. you can glue
             | together 10, 20, 30 actions in just 1 file - a description
             | of the actions you need to take, not the actions
             | themselves. many companies have done this, and yet for some
             | reason there is no clear winner in this space.
             | 
             | All of our code instantly become highly testable, self-
             | documenting, and easy to understand. But if I hadn't taken
             | a massive risk doing it myself, we would have just been
             | doing the same garbage in and garbage out process that
             | leads us to have to rewrite an entire business every 10
             | years, once the complexity becomes unmanageable.
             | 
             | why isn't this the standard?
        
           | Delk wrote:
           | > It's the technology and the employers and the culture of
           | development that's the problem.
           | 
           | What is it about those things that you find to be the
           | problem?
           | 
           | Genuinely asking.
        
             | convolvatron wrote:
             | i can take a whack -
             | 
             | no one works as a team anymore. everyone gets their
             | project, and they sometimes chat about it, but the whole
             | group dynamic has been lost. this is huge. it almost
             | guarantees that someone is pissed off because they dont
             | have a voice. and that at least two developers are working
             | at cross purposes. that someone is off diligently working
             | on their piece without a real understanding of where it
             | fits in.
             | 
             | in the absence of group coordination, there generally is
             | little or no technical management to prop up the group.
             | requirements are dumped on engineering without the valuable
             | back and forth about what makes sense (and how or why)
             | 
             | no one tests anymore. we've all decided that those 8 units
             | that the cicd runs on every commit is somehow adequate.
             | alot of places dont even try to triage bugs anymore or even
             | keep information in tickets so that someone down the line
             | might figure it out
             | 
             | no one plans anymore. there is no more grand arc of the
             | project. we just do what we can get done this sprint, and
             | pick up a little work for the next one.
             | 
             | no one reads anymore. technical design discourse used to be
             | the most important thing to do. now if you write up a
             | draft, no one really wants to read or discuss it beyond
             | grammar corrections
             | 
             | same for reviews - i've been at organizations where every
             | PR was a chance to really get into the design choices and
             | the tradoffs. now you're lucky to get some useless style
             | comments
             | 
             | the scope is radically reduced. what used to be a glorious
             | exercise in world building is now reduced to a choice of
             | which large modules to use and the application of just
             | enough glue to stick them together.
             | 
             | no one feels responsible anymore. the project is a mess.
             | i've got my part and I'm doing the best I can.
        
           | reaperducer wrote:
           | _Retiring sounds good right about now._
           | 
           | I'm with you. If I had another skill, I'd give up computers
           | entirely. Maybe have a smartphone, and that's it. But only
           | for limited use.
           | 
           | I wish I could build things with my hands, or play an
           | instrument, or just be good at something else, and let the
           | tech world pass me by. I used to love technology because it
           | was fun and interesting. It's no longer either of those
           | things.
        
             | blackrock wrote:
             | A lot of people seem to just create YouTube videos of their
             | woodworking skills. Building drawers, cabinets, anything.
             | They just drone away at it, but because it's so visual, and
             | you get a cacophony of random noises, that it makes for a
             | good YouTube candidate.
             | 
             | Maybe you can segue into that?
             | 
             | Or maybe you can build and test drones. And the noise from
             | the spinning propellers adds to the mystique of robotics
             | development.
        
             | vlunkr wrote:
             | I know it's the biggest cliche in the world, but the grass
             | isn't always greener on the other side. Lots of musicians
             | wish they had a skill that let them sit at a desk all day
             | and get a stable paycheck.
             | 
             | Not saying you have to keep working in tech forever, but I
             | don't think it's objectively stopped being fun and
             | interesting.
        
               | cjsawyer wrote:
               | I think the "trick" is to find a fulfilling non computer
               | based hobby
        
               | Osiris wrote:
               | I agree. I don't do side projects, I do BJJ and ride
               | motorcycles. Those things keep me from getting burned out
               | on coding.
        
               | frereubu wrote:
               | Absolutely. Every friend I talk to, from central bankers
               | to dramaturgs, has regrets about the career they chose.
               | It generally breaks down into where they are on the
               | spectrum from (a) they wish their job was more creative
               | to (b) they wish they had more money to live comfortably.
               | I know almost no-one who is content that they've found a
               | happy medium, and the few that do have done so through
               | blind luck.
        
               | dmingod666 wrote:
               | An alternate perspective to this is. The great line of
               | thought, that you are meant to 'follow your passion' and
               | discover your true calling. There is a job mean for you
               | and you just need to find it.
               | 
               | I disagree with this and feel this thinking makes peoples
               | lives miserable thinking they're somehow wasting their
               | lives and makes people take plunges in life that they
               | later regret.
               | 
               | I feel there is space for an attitude that, to learn a
               | craft you need to toil and master it with deep dedication
               | and practice. Mastery, will bring with it naturally that
               | joy that we seek.
               | 
               | I think if people consider their craft as bigger than
               | themselves, with an attitude of humility and learning
               | they will get the happiness and satisfaction of building
               | things. Rather than seeking a job that's somehow obliged
               | to give you that happiness juice..
        
               | shagie wrote:
               | There's a blog post from a CS Professor that I stumbled
               | across a bit ago - Find The Hard Work You're Willing To
               | Do - http://www.cs.uni.edu/%7Ewallingf/blog/archives/mont
               | hly/2018...
               | 
               | Its short, only a few short paragraphs - but it has one
               | key piece that I've found myself oft quoting to people:
               | 
               | > Maybe this is what people mean when they tell us to
               | "find our passion", but that phrase seems pretty abstract
               | to me. Maybe instead we should encourage people to find
               | the hard problems they like to work on. Which problems do
               | you want to keep working on, even when they turn out to
               | be harder than you expected? Which kinds of frustration
               | do you enjoy, or at least are willing to endure while you
               | figure things out? Answers to these very practical
               | questions might help you find a place where you can build
               | an interesting and rewarding life.
               | 
               | > I realize that "Find your passion" makes for a more
               | compelling motivational poster than "What hard problems
               | do you enjoy working on?" (and even that's a lot better
               | than "What kind of pain are you willing to endure?"), but
               | it might give some people a more realistic way to
               | approach finding their life's work.
               | 
               | --
               | 
               | I enjoy software development - and I do so because I
               | enjoy solving those problems. To me, software development
               | is like being paid to solve sudoku puzzles all day long
               | (and yes, I watch cracking the cryptic from time to
               | time)... well, at least when I'm not in meetings.
               | 
               | One of the important skills that I now realize that the
               | dreaded math classes that I disliked (integrations and
               | eigenvectors - ugh) was about the skill of continuing to
               | solve the problem rather than giving up (and searching
               | for the answer). Yes, there's a place for people who go
               | to the back of the book or Stack Overflow for the
               | solution - but many haven't learned the hard skill of
               | continuing to solve the problem when its not easy.
        
               | dmingod666 wrote:
               | These ideas are from the book "be so good they can't
               | ignore you" cal newport
        
             | overscore wrote:
             | For almost exactly the same reasons as discussed above, I'm
             | in the process of trying to move from software development
             | to medicine. I'm currently a pre-hospital medical
             | practitioner and work part-time in that field. My pay
             | averages over the last year averages between 1/20th to
             | 1/25th (0.05 to 0.04 times) my hourly pay as a software
             | development consultant.
             | 
             | I'm now trying to decide whether I should attempt a medical
             | degree to become a doctor. It will take ~7 years, a lot of
             | unpaid study and work during that time, and after 10 years,
             | if I'm lucky enough to become a consultant hospital doctor,
             | I'll still be paid less than I am now, both per hour and
             | per annum. As I'm in my late 30's with a mortgage and
             | family who are dependent on me, it's a big, big commitment
             | and risk to take.
             | 
             | Still, I vastly prefer my time spent with my pre-hospital
             | medical colleagues and with patients to that which I spend
             | working in software. I get an incredible amount of "life
             | satisfaction", or whatever you might call the sentiment,
             | for this part of my professional life - the only other time
             | that comes close is my time in the military.
        
               | antoniuschan99 wrote:
               | I'm thinking of going back to school for Biology, but not
               | sure. Have been thinking about it for a few years
               | (getting older, seeing people around falling ill, and now
               | the pandemic). Ultimately in Bioinformatics or Genomics.
               | At least I can still utilize my technology knowledge than
               | start from 0.
               | 
               | Also, the pay is less than a normal software developer.
        
               | overscore wrote:
               | I am extremely empathetic with you on the decision you
               | have to make.
               | 
               | I am well aware that software developers on the whole
               | have much better than average remuneration, so it's
               | understandable that positions in other fields will
               | attract lesser pay. However, another point which I didn't
               | labour above (because I'm not sure if it's universal or
               | in my own country only) is that student and junior
               | doctors are expected to work absurd hours, often double
               | the 48 hour per average week limit set by the EU Working
               | Time Directive.
               | 
               | I'm currently (as in right now taking a break from)
               | studying for the HPAT standardised test in my country in
               | preparation for applying for medicine in the coming
               | academic year. Although it's not particularly complex,
               | I'm aware that if I had spent the time that I dedicated
               | to my EMT qualification and now the HPAT, I probably
               | could have added hundreds of thousands to my annual
               | income as opposed to a decade of ~EUR15 ph labour.
               | 
               | This isn't so much a reply to you at this point as a
               | lament about medical care is undervalued. I'm a competent
               | software developer at best.
        
           | FpUser wrote:
           | I've been programming for about 40 years. Had ups and downs.
           | But I mostly worked on creating new products (not always
           | purely software). Also been on my own for the most part. In
           | the end. I love it and I hate it. I love it because it let me
           | express myself and it is a great feeling when you see others
           | using your products. I hate it because there is always way
           | too much non creative work and general BS around but that's
           | life.
           | 
           | But generally I enjoy it and are not planning retirement.
           | Will just maybe work less.
        
           | [deleted]
        
           | ljm wrote:
           | Peopleware, Mythical Man Month, Five Dysfunctions of a Team,
           | and similar classic texts were all written decades ago.
           | 
           | It's been over forty years and many organisations haven't
           | learned a damn thing from it. I don't blame developers for
           | it, there are no dicks and idiots involved here.
           | 
           | Read one of those books now and it will still feel like an
           | epiphany.
        
             | leetrout wrote:
             | You are very correct.
             | 
             | I think they all have weak spots but any one of those will
             | indeed illuminate one on how broken pretty much every place
             | is. I'd like to try working at bridgewater where there are
             | less games played.
             | 
             | One thing I've noticed is pretty much nowhere wants to
             | acknowledge and act on employees emotions (for better or
             | worse).
             | 
             | I love this comment
             | https://news.ycombinator.com/item?id=16603929
             | 
             | And this article is pretty good:
             | 
             | http://hbswk.hbs.edu/archive/5289.html
        
           | RickS wrote:
           | > victims of the same broken game. I work with very smart
           | people, to be honest.
           | 
           | Couldn't agree more. I'm an SDE1.5 at best, working with a
           | guy that's probably a 3.5. Writes code that's way over my
           | head sometimes, and always well-tested and elegant.
           | 
           | Lately I've been helping him by debugging issues in eg
           | tsconfig and various JS build fuckery, and it's been both a
           | relief and a surprise that even really brilliant people
           | struggle with a lot of the same stuff I do. It's not (just)
           | that I'm stupid and unintuitive - the tools are too, even for
           | experienced engineers.
        
             | amenod wrote:
             | Of course they are. They are written by people and often
             | become standard because of good marketing instead of merit.
             | 
             | However, I still find satisfaction in learning new things,
             | trying to be better each day, overcoming new and more
             | challenging problems and solving riddles in a nicer and
             | more elegant way. I fail in all these things, too, of
             | course - but it does give me a sense of purpose. And I
             | don't appreciate any tool that comes my way, I'm picky that
             | way. I love Python for its stdlib, React for its
             | declarative nature, C for its simplicity... and avoid
             | dealing with the JS build system of the month as much as I
             | can. Enough to understand, but I try not to lose too much
             | time and mental energy on them.
             | 
             | That said, if I didn't enjoy programming, I would be happy
             | to move to management or even leave the industry to become
             | a carpenter. I think that as long as you do something
             | meaningful and also help other people (so that you can live
             | off it), it doesn't matter much what that thing is.
        
           | medium_burrito wrote:
           | Retirement sounds amazing.
           | 
           | What really gets me is my employers hiring engineers for
           | $500k per seat and they can memorize their way through
           | Leetcode interviews but can't even structure small programs
           | in a modular, easy to understand way, and when it comes to
           | larger pieces of software, it's complete chaos.
        
           | taf2 wrote:
           | I'm 20 years in as well... I think it's still fun... it's
           | just a game of fixing things... the other game about how
           | people interact is not as fun but still kinda interesting...
           | game on old friend
        
             | mgkimsal wrote:
             | "it's just a game of fixing things"
             | 
             | 25+ years in, I get little joy/fun from constantly 'fixing
             | things' that shouldn't have needed fixing (or nearly as
             | much fixing) had people planned ahead, or communicated, or
             | tested, or just _listened_ to the people they 'd hired that
             | _do_ these things (plan /communicate/test/etc).
        
         | andrewflnr wrote:
         | I feel both, depending on how my day is going. They're both
         | true.
        
       | ggm wrote:
       | Code which matters is like mathematics. It can be reasoned about,
       | has respect for formalisms, may be subject to proof or inductive
       | reasoning. It heads to things like type checking. I've never
       | written any code like this. I often doubt I can.
       | 
       | Everything else is either ephemeral, or scripting, or should only
       | waiting to be subject to tests against formalisms. Lots of things
       | are broken in code which should not be btw.
        
       | willeh wrote:
       | Truly fantastic stuff. I don't really have anything to add other
       | than to say that this made me feel happy about what I do for a
       | living. So much better than reading flamewars camouflaged as
       | blogposts :)
        
       | NikolaeVarius wrote:
       | I dont really understand the point of this article. Literally any
       | system can be made romantic for the sheer fact that everything
       | has spent hundreds of man-hours building up to it.
       | 
       | The cheapest possible ballpoint pen is made up of years of
       | research into the plastics, the machinery required to create
       | bearings with the tolerances necessary, the exact chemical makeup
       | of the ink etc etc. It just seems to be a waste of brain-space to
       | bother with making everything romantic.
        
         | olav wrote:
         | It becomes rather interesting in my mind the moment you think
         | about when the thing no longer exists.
         | 
         | We loose so many things all the time, the ability to _make_
         | stuff, the ability to repair things, even the use of drills and
         | hammers quickly fades away for the TikTok generation.
         | 
         | I love the notion of the OP and applaud initiatives like the
         | various Smalltalks or https://gpblocks.org/ that try to keep
         | the awe in our craft alive.
        
           | mb7733 wrote:
           | You think that young people don't use hammers?
        
             | ZephyrBlu wrote:
             | I wouldn't be surprised if most Gen Z people had never
             | picked up a hammer in their life (Speaking as a Gen Z
             | myself).
        
         | typest wrote:
         | Yes, the construction of a ballpoint pen could be made
         | romantic. But I mean...it's pretty incredible how many humans
         | collaborate to produce the ballpoint pen, millions of
         | individuals cooperating in countless ways, producing an
         | essential implement which is greater than the sum of its parts.
         | No one involved could tell you exactly how the pen is made, and
         | yet it's sold at a price so low we never think about it. There
         | is a famous essay "I, Pencil" that details, and indeed
         | romanticizes, this exact process.
         | 
         | You could cynically state that all aspects of civilization are
         | incredible, so therefore nothing is. Or you could back up and
         | marvel at the fact that out of nothing came something, out of
         | an unthinking universe came self aware humans that _literally
         | took rocks out of the ground and reconstructed them so that
         | they would think for us_ , and that we then used those
         | thinking-rocks to cure diseases, enable near-instantaneous
         | communication anywhere in the world, and literally launch
         | people off this planet.
         | 
         | I would advise you to try thinking in the latter style, as life
         | is more fun that way.
        
           | eigenhombre wrote:
           | An upside of programming is that you can build something
           | useful, by yourself. Some of my favorite programs are ones I
           | wrote and use every day. They're not amazing programs, but
           | they do the job and they did not exist before I wrote them.
           | 
           | I wonder if a home-created ballpoint pen, that worked well,
           | wouldn't feel a bit more magical or romantic than the one you
           | get for free at the hotel or bank. Having made, for example,
           | my own paint, prior to use, I can attest that doing so feels
           | "magical" in a similar way that programming does.
        
           | ianmcgowan wrote:
           | Sometimes it makes me dizzy - you pick up some ordinary
           | thing, and suddenly marvel at all the people, all the work
           | and effort, that goes into making the most mundane things.
           | Odes to Common Things is a reminder of how amazing the
           | universe is - the natural and the things we create.
           | 
           | "A book, a book full of human touches, of shirts, a book
           | without loneliness, with men and tools, a book is victory."
           | -- Pablo Neruda, Odes to Common Things
        
         | elliottkember wrote:
         | > It just seems to be a waste of brain-space to bother with
         | making everything romantic.
         | 
         | Is dancing is a waste of energy?
        
           | NikolaeVarius wrote:
           | For me, yes complete waste of time and energy
        
         | yesenadam wrote:
         | "There are only two ways to live your life. One is as though
         | nothing is a miracle. The other is as though everything is."
        
       | haskellandchill wrote:
       | Romantic? A relationship can be a metaphor for almost anything.
       | Currently I feel abused not by programming but by other
       | programmers. How can you be romantic about programmers? (more
       | broadly: How can you be romantic about people?) I agree with the
       | title paradoxically.
        
       | grawprog wrote:
       | Seeing as i'm not as jaded yet as many of the other commenters
       | here towards programming, maybe I can give my views.
       | 
       | I understand what the author's getting at pretty simply, it's
       | pretty awesome to write some words...lots and lots of words...and
       | you create 'something'.
       | 
       | It's sort of the same romance that say would surround something
       | like
       | 
       | A carpenter that builds homes from start to finish
       | 
       | Or a mechanic that builds super cars in their garage
       | 
       | I think it's that same thing
       | 
       | The lone programmer hacking away building something awesome
       | 
       | Unfortunately, like the 'romance' of most things, the reality is
       | 
       | That carpenter's working on a crew of 100 people building yet
       | another cooking cutter townhouse
       | 
       | That mechanic works a day job at a shop and spends more time
       | paying bills and dealing with customers
       | 
       | And...that programmer
       | 
       | They're part of a team debugging some server code somewhere that
       | a bank or accounting firm relies on or something
       | 
       | Sometimes though, I find it helps just to stop and think of
       | things romantically from time to time, even if you're
       | disillusioned.
       | 
       | By the time I left my prior job, I was kind of fed up with it.
       | But even then there was two ways I could look at it.
       | 
       | I could be
       | 
       | 'A CNC programmer in a granite shop making countertops and
       | fireplaces for rich people'
       | 
       | Or
       | 
       | 'I turned mountains into high end furniture using large machines
       | in a trade that stretches back to the farthest history of
       | humanity.'
       | 
       | Looking at it the second way helped on those days you just really
       | didn't want to be there.
        
       | airhead969 wrote:
       | Consider it an ephemeral craft to accomplish goals, whether
       | business or otherwise. Code will never be perfect and most of it
       | is a mess. Someone can explore Pony, Idris, or make an Arduino to
       | ring a cowbell on the weekend.
        
       | einpoklum wrote:
       | How? By looking at the codebase I'm working with right now,
       | that's how.
        
       | 3princip wrote:
       | I've found being too attached to code is a recipe for frustration
       | in the workplace. You code something elegant, simple, dare I say
       | beautiful and inevitably it will be butchered by new product
       | requirements, business needs, that quick hack to satisfy a client
       | or more generally uncaring colleagues who are looking to get
       | their job done as quickly as possible.
       | 
       | Perhaps romantic aspects could only be achieved when there are no
       | third parties, just the programmer and their code. Working in or
       | more importantly leading a team mandates a different approach by
       | putting aside aesthetic considerations for more pragmatic ones
       | that will satisfy all parties involved.
       | 
       | It's hard to be romantic in corporate environments.
        
         | psalminen wrote:
         | This reminded me of something that happened last week. I had
         | written some code I found absolutely beautiful, then had to
         | delete an hour later since the customer's requirements had
         | changed. Personally, I find these situations disheartening but
         | it's never frustrated me.
        
           | throwawayboise wrote:
           | Why delete it?
           | 
           | Tuck it away for later use. If somebody wanted it enough to
           | ask for it in a formal way, someone else would probably find
           | it useful.
        
         | GuB-42 wrote:
         | If your code gets butchered it is not that great. That's
         | something I am slowly learning, and by slowly I mean in the
         | scale of decades.
         | 
         | I've seen some of my old code I wrote in the workplace ten
         | years ago, going through the hands of many developers of
         | various skill levels and with different ideas, and then getting
         | back to me. Needless to say, it is pretty ugly.
         | 
         | Analyzing that, I found the real good parts mostly untouched.
         | The parts that I though were great when I wrote them and make
         | me feel ashamed today usually didn't hold up. The most
         | butchered parts tend to be of the overly abstract kind.
         | Interestingly, some of the complicated and clever stuff that
         | most people advise against did well. If it does the job well,
         | people will keep it and put it to good use.
         | 
         | You can code romantically in the workplace. You just have to
         | realize your code will be under attack and it has to be strong
         | enough to defend itself. Weak code is not beautiful anyways, so
         | in the end, all that adversity will help make your code better
         | and more beautiful.
        
           | 3princip wrote:
           | I agree with your points with a couple of caveats. I've
           | written a lot of terrible code. For the good stuff it's
           | usually not the existing lines of code or structure that are
           | butchered rather the additions which do not follow the spirit
           | of the original code. That ranges from trivialities such as
           | code style of another developer or more serious issues of
           | making a mess to fit a completely orthogonal new requirement,
           | not utilizing existing functionality rather just doing
           | similar things in different ways etc. In such cases a small
           | refactor would suffice but that almost never happens due to
           | time constraints.
           | 
           | On the topic of overly complex stuff not being touched, I
           | find that's usually because no one understands it and hence
           | others refrain from touching it lest it break.
        
       | cambalache wrote:
       | > There's a scene in Moneyball in which Brad Pitt's character,
       | the manager of the Oakland A's
       | 
       | This is how you know the article was written by an European.
       | Billy Bean is of course the GM, not the manager, a subtle and
       | pedantic, but very important difference in baseball clubs job
       | titles.
        
       | purple_ferret wrote:
       | Strange. For me, programming is an emotionless endeavor and one
       | of the hardest aspects about doing it day in and day out.
       | 
       | Sometimes it feels like a higher level form of data entry.
        
         | eigenhombre wrote:
         | This interests me. What kind of programming do you do?
         | 
         | Emotion is very important to me as a programmer. Often my
         | emotions know when something isn't right before my "rational"
         | mind does, hinting that it's time to slow down and dig deeper.
         | I've found a number of bugs this way over the years.
         | 
         | In fact, my team has long recorded our emotional state with
         | every commit, with a numerical score: "h:1" through "h:5" at
         | the end of each commit message. If you pair on the commit, the
         | lowest individual score prevails. Anything other than a five is
         | a sign that something deserves a little reflection. (Threes or
         | lower are quite rare, happily.) We always said we were going to
         | use these as metrics for defect analysis, but our defect rate
         | is already pretty low. I suspect the main value is just that
         | short pause for reflection before we commit.
        
           | AlotOfReading wrote:
           | I've never considered using qualitative methods on code like
           | that, but the aesthetics definitely highlight where some of
           | the worst bugs lurk.
        
           | burntoutfire wrote:
           | > Emotion is very important to me as a programmer. Often my
           | emotions know when something isn't right before my "rational"
           | mind does, hinting that it's time to slow down and dig
           | deeper. I've found a number of bugs this way over the years.
           | 
           | Sounds like intuition rather than emotions.
        
             | eigenhombre wrote:
             | Yes, but I rely on my emotions to tell me when my intuition
             | has something to pay attention to.
        
       | dsego wrote:
       | > There are lines of code floating around on our computers that
       | haven't been executed by a machine in years and probably won't be
       | for another lifetime. Others are the golden threads of this
       | world, holding it together at the seams without no more than a
       | dozen people knowing about it. Remove one of these and it all
       | comes crashing down.
       | 
       | Beautifully said, although I find it rather horrifying.
        
         | imbnwa wrote:
         | But this is what Taleb and Zizek have been drawing attention to
         | for years, its just that this predicament is the case at every
         | level of society
        
       | rcgorton wrote:
       | many MANY reasons VPs who insist on micro-managing technical
       | decisions even though they really do ignore technical
       | recommendations of highly skilled engineers. (Tom Hamilton,
       | formerly of Digital Guardian)<br> VPs who refuse to share
       | technical aspects of the business plans/goals (for a small
       | company) with engineering because "well I can't share that with
       | you" Steve Weingart when @ Liant<br> Anything
       | involving/supervised by Ben Bar-Haim formerly AMD. Ben
       | successfully constructed an incredibly monolithic bureaucracy in
       | AMD - with a huge amount of overhead. Software groups not based
       | in Markham Ontario got Trashed. <br> So yes, lots of Manager/VP
       | reasons to hate programming
        
       | fctorial wrote:
       | I like the new theme of programmingcirclejerk. Looks exactly like
       | hacker news.
        
       | mns06 wrote:
       | It's an interesting question: which are the lines of code most
       | frequently executed in the world today?
        
         | ianmcgowan wrote:
         | My wild ass guess would be one of: a) some high frequency
         | trading algo, b) ray tracing/collision detection in popular
         | game engines, c) the inner loop of google's spider, d)
         | something common to mobile devices (maybe something in wifi or
         | cell service?), or (most likely) e) the bitcoin hash algo.
         | 
         | It makes for an interesting "how many manholes in Manhattan"
         | interview question, and how you could possibly quantify your
         | guesses...
         | 
         | Imagine being the author of those lines of code, if it was
         | possible to figure out :-)
        
           | burntoutfire wrote:
           | I'd add TCP stack in Linux (kernel). Should be hammered
           | constantly on servers of the world and also gets lots of
           | usage on smartphones and IoT stuff.
        
             | abc_lisper wrote:
             | Nope. IO would be orders of magnitude less than computation
        
         | rcgorton wrote:
         | strcpy, strlen, strchr, memcpy, and their varients
        
         | panic wrote:
         | My money is on Linux's cpu_idle_loop().
        
           | amelius wrote:
           | Don't forget bitcoin::compute_hash()
        
         | yellowbanana wrote:
         | I would guess that it is something mobile related. Android?
        
       | titzer wrote:
       | I've been programming since my early teens > 25 years ago. The
       | article asks "How can you not be romantic about programming"? And
       | I have to say, that after all these years, I am romantic about
       | programming...only sometimes, now.
       | 
       | For one, programming a lot made me very near-sighted, and my eyes
       | are dry to the point that I can no longer wear contacts. (I had a
       | bad episode and nearly went blind a couple years back.) That
       | really blows, because I used to like surfing and other outdoor
       | activities that are seriously curtailed by thick glasses. Take
       | care of your eyes!
       | 
       | Second, I am mostly not romantic about programming because I feel
       | like I am swimming against the tide most of the time. Stuff
       | changes so fast and so much; there is so much fad and passing
       | fashions, and what's the rage these days is tomorrow's cargo
       | cult. What's today's cargo cult started as an offhand comment
       | with a kernel of truth that far too many people took far too
       | seriously. It's never the right things that change, either. We
       | keep changing syntax and IDEs and environments and frameworks,
       | and yet we're still fighting memory management bugs in 2021. A
       | very stubborn cult of performance worshippers have successfully
       | defended the bottom layers of software from being rewritten in
       | safe languages (putting safety at priority #1 for 4+ decades).
       | I'm willing to pay 15% performance for this layer to just be
       | forever ridden of this, but people treat me like an alien.
       | 
       | Third, people have complained about programmers being lazy and
       | wasteful since the beginning of time, but we've truly jumped the
       | shark. Build times for C++ (and Rust) are just insane. To think,
       | dozens of cores, cranking away for minutes at a time, trillions
       | upon trillions upon trillions of calculations just to output a
       | little binary. Being a compiler person, and knowing some details
       | about what is going on inside those compilers makes me want to
       | cry. It's _insanely_ wasteful.
       | 
       | Fourth, the arguing. There have been tribes and flamewars and a
       | toxic culture since forever, but really, it feels so hard to
       | express how disappointed I am in the whole shit, without adding
       | to the whole shit and making the whole atmosphere even worse. I
       | vacillate between wanting to yell at clouds and being sick of
       | hearing people yelling at clouds! I'm simultaneously sick of
       | being shouted at and on the edge of being shouting mad!
       | 
       | But, there are bright spots. CPUs are insanely fast, and there is
       | memory enough for everything. Stuff crashes less. But yeah,
       | everything is a tangle and huger heap of shit than ever.
        
       | KDJohnBrown wrote:
       | Cash rules everything around me.
       | 
       | After a few decades of relying on coding to feed my family, I
       | miss the way it felt magical, writing in Basic on a ti 99/4a.
       | 
       | I thought I was going to tell computers to do wonderous things.
       | In reality most of us are telling them to serve ads or sell crap
       | to people. Most of the rest of us are telling them to serve data
       | to companies doing the above.
       | 
       | It's just business now, nothing more.
        
       | bumbada wrote:
       | For me programming is all of those but also boring and
       | frustrating and gets on my way to get things done.
       | 
       | Creating things nobody ever have done before is one of the
       | deepest feelings you can feel in this life when you have done
       | that, but also is terrifying emotion while you are doing it.
       | 
       | Like a chemical reaction, for something to be deeply satisfying
       | from an emotional point of view you first need to give the system
       | enough energy for the reaction to happen.
       | 
       | It requires intense focus, that is deciding not to do other
       | things, which is painful. It is slow, which is frustrating. The
       | work that could not be automated is boring. It is very expensive
       | if you hire others to help you, and involve a tremendous risk if
       | after all the work, it doesn't work out.
        
       ___________________________________________________________________
       (page generated 2021-02-20 23:00 UTC)