>I briefly try to think of which chucklefuck I could blame this design on, but truth be told I rubber-stamped enough questionable pull requests in my time here that a fair amount of this situation is a mess of my own damn making.
This one really rings true. Every individual change you don’t push back on makes things slowly, incrementally worse until you end up with a pile of garbage. But do you really want to block someone’s change because they wrote some awkward, hacky code? After all, they’ve solved some problem for the business and it might only take an hour to clean up later.
Later never comes. Hacks get built on top of other hacks and that one hour improvement would now be a week long refactor. No one can justify that.
After few rounds of this you start to become the type of person who blocks changes for code clarity and things others view as nitpicks. Now you’re the asshole stopping people from getting work done. You ask yourself if it’s really so bad to let it slide this one time.
>This one really rings true. Every individual change you don’t push back on makes things slowly, incrementally worse until you end up with a pile of garbage. But do you really want to block someone’s change because they wrote some awkward, hacky code? After all, they’ve solved some problem for the business and it might only take an hour to clean up later.
That depends on whether hacky code is nicely contained or spreads it's bad influence all over the place.
I would totally ask to add a reference to the tech debt ticket right there to the code so it's clear it's not a good practice to follow and to make sure that the ticket is actually created and not scheduled to be created by adding an async job into a memory hole.
Half the time, just asking for that is enough for stuff to be straightened out right there, as it's easier than creating a ticket.
>Later never comes. Hacks get built on top of other hacks and that one hour improvement would now be a week long refactor. No one can justify that.
But that's sometimes okay, it's a lifecycle of software. If business doesn't schedule maintenance, then maintenance schedules itself. The job of a good engineer is to make business types in the know about and let them decide.
> But that's sometimes okay, it's a lifecycle of software. If business doesn't schedule maintenance, then maintenance schedules itself. The job of a good engineer is to make business types in the know about and let them decide.
It's complicated. I've worked on a product that had accumulated 15 years of tech debt. This all happened for very good reasons. The previous leadership often needed to ship features to get contracts signed and to make payroll.
However, paying that debt off had become very expensive and getting meaningful returns from these improvements took a long time. The most direct value came out of making tests more comprehensive and faster. However, beyond that benefits were only tangible over months to years and only if you worked on the right code area. In a large corporation leadership tenure in a role is often shorter than that. So the personal incentives for much of leadership was to just ignore the tech debt.
It's an extreme example but it's where you can get yourself.
Edit: I am honestly not sure I have a strong recommendation from this, other than "watch the tech debt and pay it off when you get breathing room". But then original company leadership AFAIK never paid most of the cost (if any?) of the accumulated debt and had AFAIK two(!) nice exits from it.
> But that's sometimes okay, it's a lifecycle of software. If business doesn't schedule maintenance, then maintenance schedules itself. The job of a good engineer is to make business types in the know about and let them decide.
Or sometimes the code continues to encrust itself, like a pearl - or more likely, like a kidney stone - not fatally, but causing pain all the goddamned time.
> I would totally ask to add a reference to the tech debt ticket right there to the code
99 times out of 100, they create the tech debt ticket, they add the comment, and multiple years later no follow up was ever scheduled in and the ticket eventually just gets resolved out as "wont fix" or is otherwise never looked at again.
> But do you really want to block someone’s change because they wrote some awkward, hacky code? After all, they’ve solved some problem for the business and it might only take an hour to clean up later.
Isn't this precisely the time to do it? You reject with a note that says the idea is good, but code needs to be improved. "Doesn't fit the style" type of response. Make the contributor make the update so that it doesn't need an hour later. Take the hour now.
In my experience these hacky changes are usually a consequence of some impedance mismatch in the codebase. Something is poorly factored, the interface (whether technical or personal) isn't suitable for purpose.
It's easy to push back on a hacky change if there's an elegant solution close at hand. But often the business needs and the architecture of the codebase are at odds with each other.
It might take me an hour, but communicating the idea to the engineer, convincing them it’s better, guiding them to the solution, and then having them build it will take far longer wall clock time.
And devs that have this line of thinking is precisely why there's a back log when it can only be done by one person. Instead, create style guides or other structured documentation that can be referenced in the rejection so you don't have to do it would be time much better spent. It helps contributors to be better contributors. It makes contributors want to continue contributing. Having every submit rejected gets to the point of not wanting to contribute.
The biggest cause of these issues isn’t style-related or something that can be easily documented ahead of time.
A recent example: an engineer wrote a custom caching layer for a service call, then called the service wrapper every time the data was needed, relying on caching to avoid hitting our dependency too often. I suggested fetching the data once and passing it around, but the engineer pushed back, citing the feature’s launch deadline and the effort required to update multiple interfaces. Their solution ultimately has more failure modes and is harder to test (requiring mocking of the service wrapper in several places), but it isn’t terrible and we probably won’t encounter cache overflow issues.
Another persistent example is function parameter length. Inevitably, there’s always “just one more argument” needed until we hit our configured linter limit. About 70% of the time, engineers add a suppression and push the change through as-is. Refactoring to reduce parameters can require significant work (and simply stuffing them into a parameter object doesn’t solve the underlying problem).
I could respond to these patterns by expanding our coding standards guide. It could document that caching shouldn’t be relied upon within a single request’s scope, or reinforce that functions should have fewer than 7 parameters (already enforced by our linter). But in my experience, these guidelines are rarely consulted before contributing. As the parameter example shows, people often push for exceptions rather than follow standards rigidly.
I do think standards guides can work well for open source projects, where contributions should never block someone from delivering value. Contributors always have the option to fork and use their changes as-is, which undermines arguments for “just getting something in.” Internal service codebases don’t have that luxury. When you’re changing a service to launch your feature before a major sales event, delays have real costs, and there’s no “I’ll fork this and maintain it myself” alternative.
Ahh man I just dealt with this, reviewed some code, approved, another one comes in the same code from before is moved around. So much diff. I'm like "why was this moved?" Then I just stop caring, stuff is not indented right. So many things to point out (yes use a linter/formatter). It's tough other people just give me the LGTM treatment, I'm the annoying one doing actual reviews. This one is less reviewed since it's a vibe-coded POC but yeah.
This doesn’t just apply to code - it applies to organisations just as easily.
I ate a lot of cat turds as a kid. Ate a whole bunch through university, and then I signed up to work for a cat turd factory in London.
Sucked. Decided to stop eating cat turds and go start a candy factory instead.
For the first few years, we made candy. Good candy. Then, slowly, gradually, over the course of a decade, we realised that our clients wanted cat turds, so little by little we started putting more turd and less candy in the product, and as part of that we of course had to start eating cat turds again. I would distribute them to my staff, our investors would check in to ensure everyone was still eating their turds, and I would eat as many of them as I could to save the staff from indigestion.
Fast forward a decade and we had a full scale cat turd factory going. I’d get up every day, ram thousands of the things down my throat, spent my nights vomiting them up, for it turns out you really can only eat so many, and then repeat.
Eventually, my body started failing. It turns out you can’t live on cat turds alone.
So I quit, and only snack on a cat turd occasionally these days, when the state mandates it.
The factory is still going strong. After my departure they got rid of the staff who didn’t realise how many turds they’d have to eat after I left, hired coprophages, and switched over to producing a successful line of cat diarrhoea.
> There’s this very real sense that I don’t… I don’t want to solve this problem. There is no intellectual reward at the end of this journey. It’s not interesting to me. This isn’t something that needs to be fixed, because it’s not a situation that ever should’ve been permitted to happen in the first place. This is just a bunch of contrived nonsense that I must work through because the broader situation dictates it. It doesn’t matter if the solution is good or elegant. It doesn’t matter if it barely works. It doesn’t matter if it causes another problem that I stub my toe on in three weeks. It’s just… what I have to do.
As a tech person, this is the essence. All we want to do is make an amazing fast/efficient/performant/cheap/insightful/optimized/smart/something-else thing.
But then we have to deal with organizations like governments, businesses, customers, and people like managers, co-workers, and clients. And ultimately, human irrationality of preferences.
It's why RMS and Edsger are so appealing to so many. The above makes one want to say screw this, I'm gonna do it my way and damn the consequences.
> It feels like I am performing surgery using a scalpel held by a boardwalk arcade claw machine, complete with the constant squawking and shitting of project management seagulls.
Haha, this is a great way to describe the feeling of writing code you can't test locally, instead needing to wait while it makes its way through numerous pipelines before pooping out for an error that might not even be related to your code itself, but sometimes as simple as an intermittent infrastructure issue.
I feel bad for the people who worked on teams where Younger Self was the senior engineer. I was full of ideals and convictions back then. “No, we’re not doing that. We’re going to Do It Right instead.” I was full of piss and vinegar. “Here, give me that; I’ll just do it myself.” I was full of shit.
Ouch, right to the heart. I do wish I could say that being an asshole was restricted to Younger Self, as I carried some of that way later in my career than I should have.
Great read, putting into some beautiful prose undigested feelings that have been stewing in my stomach for a while. Maybe I should find a cabinet that's worth painting the back of to me
There’s a reason a ton of software engineers (let’s be real that’s 2000 pounds so I only need to find ten or twelve) do woodworking on the side.
If you take it diligently and treat it as fun, you can make amazing pieces in only ten times the time it would take a factory - but you do it your way with your attention to detail.
And you can make the back out of good wood and paint it, too. Nobody will ever know; it’s your secret between you and God.
And if you do hand-tool woodworking it's cheap. More time consuming, but also harder to screw up.
I prefer metalworking, but the equipment is larger & more expensive. And you still need a workbench for a bunch of the finishing steps (hand filing, polishing, engraving, etc.) so some basic woodworking is very handy for making said workbench.
Fun fact, Altoids tend to be one of the better treatment for dismotility, meaning folks who have esophagus's that don't operate correctly to help swallow down food.
In The Long Kiss Goodnight, Samuel L Jackson says at one point, "When you make an ASSUMPTION, you make an ass out of you and... <realizes the mistake> ... and UMPTION!"
I'm glad I got past the opening section instead of just wondering how it had anything to do with HN. I extended the charity that it had to be setting up something, and it was. And I relate to that something so, so much.
It’s nice to know that other people out there are as grumpy as I am (or can be), but I don’t think it’s particularly healthy.
Something I think about sometimes: the abstractions in math can be awfully elegant. Learning about them is probably 60% of the fun of studying math. But they took hundreds of years (or thousands in some cases) to conceive and refine. All that time was spent writing weird—often awkward and often wrong—proofs and trying every other idea that doesn’t work as well, and throwing them out (and still getting stuck with some of them, like pi instead of tau).
Software is less than a hundred years old. Eventually software will be quite elegant and make a lot of sense. Until then, we’re trying every idea we can think of (yaml templates) to see what’s good. Once AI can invent a programming language and reproduce decades of software development in it to test its design ideas, we can skip to the end.
I find it difficult to imagine that an AI would ever invent a programming language targeting anything other but permanent damage to the language faculty of its handlers.
Enjoyed reading the crude observation that we eat cat turds for work. I like the author who watches the graffiti on the train ride rather than a phone screen. Was the “Spirograph butthole”meant to be a reference to a React app default favicon?
Honestly, if we're speaking of most graffiti (generally just tags in the same boring fashion) visible from a train, I'd rather to be looking at a phone screen.
At least the phone screen could be displaying something interesting but most graffitis are pseudo-artistic "I was here" tags. I wish more of that paint was used to actually make a place nicer rather than worse. And don't get me wrong, I'm totally ok with guerilla, technically illegal actions taken by citizens to improve their surroundings but most graffiti are far from that.
The graffiti on the MTA from CT to NY is pretty nice, a lot of puffy colored tags, I think it's best not to have too many tags, keeps the good ones front-of-mind. Don't get me wrong, the less-is-more ones are nice too, VEO, anyone?
what a resonant piece. incredibly constructed. issues ive grappled with and, like the author, kept to myself because ive learned most people in my life dont care about the same things as i do. rare piece of writing that changed my perspective a bit
this is glib but i couldnt keep myself from intentionally misinterpreting the end:
"and on top of these existential crises he has covid now!"
I could be mistaken, but my read is that years of dealing with cat turds day in day out has numbed the author to their stench. His once prized chocolates now have become themselves cat turds, and he lacks the senses to even realize it. Note how dusty the container was - the author didn't care to maintain his chocolates, and now here he is. The forgotten side projects, the tech we wanted to learn... things we lost the motivation for or now execute with the same cat turd quality as we've grown accustomed to.
"[C]ursed is the ground because of you;
in pain you shall eat of it all the days of your life;
thorns and thistles it shall bring forth for you;
and you shall eat the plants of the field.
By the sweat of your face
you shall eat bread,
till you return to the ground,
for out of it you were taken;
for you are dust,
and to dust you shall return."
- Genesis 3:17-19
EDIT: Whether you believe this particular explanation or not, the fact that it's here is evidence that people have long felt that how unnecessarily hard work is is something that needs an explanation.
Years ago I worked in the hospitality industry with a great group of people. Almost none of the days/nights felt like work. Even when it was crazy busy. The morale was excellent.
I "blame" it mostly on the two owners who also worked there. They were exemplary people and managers. Of course you need a nice group of people too, but I think a misfit wouldn't have stuck around for long.
From what I've noticed, white-collar work is mostly the cat turd dispenser feeling, retail is more an errand-boy feeling, and blue-collar work is more of a long-steady-single-turd-chew
I consider myself extremely lucky, but for large swaths of my professional career I've actually really enjoyed what I was doing. There have definitely been grindy projects where I'm not working on a project that interests me on a technology stack I don't care for, but especially at the start I always looked forward to going to work in my programming job. It might as well have been the best videogame I'd ever played before. Every day was full of learning new things and I was finally getting paid a wage for something I'd been doing for fun for years. It was a small office a short drive or bike ride away with people I got along with really well. It was a short walk to a few cheap restaurants and a grocery store. I rarely had extremely tight deadlines.
I read to the end desperately hoping for the comforting reveal that the coworker’s meal was just a metaphor, but it never came. For those who haven’t read the article… it’s wonderful, but make sure to finish what you’re eating before you begin reading it. The imagery of that sugary altoid flavor is a bit of bait and switch.
As to the topic… the slop washing and compounding effort it creates is awful. At work we use Gemini as part of Google Workspace. I wish Google would have an enterprise option “share all prompts” for full prompt transparency between everyone in the organization. I believe this will go a long way toward solving the root problem, which is one of disrespect and laziness. If I can see your prompt history, maybe you’ll think twice before asking me to review the slop it produced.
People hated s-expressions in Lisp, so instead of parentheses we ended up with angle brackets. Now there are programming languages built with XML syntax. There are at least a few things with YAML syntax that’s tied to implicit semantics, including the YAMLScript language.
I kind of have to wonder what was so bad about s expressions after all.
the complaint I recall is that people don't like the way they nest, but I've had to write regex for xml and lisp, and I must say the lisp is much more pleasant. Perhaps the only difference on the post-parsing end is that in xml, there is a special place to nest children, that's really the only benefit I can think of even though you have to go through more trouble.
> I’m no closer to anything resembling inner peace. I find I’ve grown to despise large swaths of the only thing I’ve ever been able to earn reliable income from. I tire of walking a path that has seemingly shifted beneath my feet to point toward a destination I no longer recognize. I’m embarrassed by the jerk my Younger Self used to be, and simultaneously ashamed of the energy I lost as I matured. I don’t really want to do most of what I have to do, while feeling a deep unsated need to achieve something that I have neither the stamina nor the freedom to pursue. At some point I’m going to reach down deep into the well of ambition to discover there ain’t nothing there to pull out anymore. And then?
What advice does one give when confronted with this?
The path didn't shift beneath your feet. You finally learned how to see in the dark, and realized you'd been walking in circles around a grave you dug for someone who was never real to begin with. What you're really mourning is the death of who you thought you had to be, and what feels like emptiness is actually the first honest space you've ever had to discover what you might want to become.
Evidently that's known to psychoanalysis as the "idealized image". That's another way to refer to what I'd call "the sum of one's conditioning", i.e. the interplay of automatic reactions to outside stimuli that usually takes up so much of your waking hours, that begin to habitually mistake it for yourself. Moreover that's how everyone else does it, innit?
Calling it "idealized image" downplays the mechanistic and implies the inauthentic - these judgments differ, see below. Nonetheless the resulting state of mind is the same: you're stuck somewhere being someone you don't truly know how to be - and it's been so taxing for so long that you've started to forget why exactly you're there in the first place.
It's a relatable sentiment. Funny how this surfaced today, after a few other materials inducing delusion of reference on HN frontpage. (I don't remember anyone ever saying how personalized HN's recommender is, but if there's places on the Net where it pays for the recommender to be subtle, here's one.)
As this sort of habituation is commonplace, it seems like not long after the stage where different authors introduced varying ontologies of the same alienatory phenomenon, the 20th century psychology community might've suffered something of a schism on the matter of whether it's right for the state of dedicating 100%+ of one's life energies to the "idealized image" to be considered "normal".
As a result, the currents in psychological/philosophical/humanistic inquiry most able to produce "technical" insights, i.e. ones which can be genuinely and reliably useful to an introspective person without necessitating the services of a care facilitator, remain underdeveloped and walled off. (You're in for a ride if you look into those, it's no coincidence you find em piecemeal in the oeuvre of a certain sort of literary carny barker.)
Anyway, some of them say that as you find ways to let go of conditioned reactive patterns, that results in something like more headspace freed up for your actual volition. Let's see how that one goes then. What I can add is that unconditioning oneself is done by experiencing unhabitual stimuli. If you're even a moderately routine-based sort of person you can drill yourself into a sort of "RNG watchdog" habit. At a random minute of every hour begin to breate manually, and proceed from there.
I reallllllly wanted to finish that article. Then i realized after 10 minutes I was only 1/10 through it. I'm a slow reader, sorry. I'm guessing he wasn't saying "cat turds" and probably had an accent saying "carrots" or something
After the a couple of paragraphs that weren't really making any kind of point I started skimming; came to this conclusion before I got bored of even just skimming:
A jaded Grey-Beard rant; overall negative.
Perhaps there was some deeper message I missed due to the boredom.
People are looking for meaning in the wrong places - it’s not a huge surprise, it’s something secularism has largely failed at.
There are places you can work that are more meaningful or where there is a culture of cutting down on bullshit. Elon Musk is famously good at running places that do both.
More people would benefit from getting married and having kids - a lot of (Judeo-Christian) religion’s cultural ideas were good even if its empirical claims are wrong. Religion is in some ways a battle tested cultural technology, throwing it away will have unintended consequences for most people.
Alex Karp touches on some of these ideas indirectly in The Technological Republic which is worth reading anyway for other reasons. A lot of people in the west today grow up without a cultural core and end up aloof believing in nothing, or worse substituting some bullshit political ideology as a poor substitute religion.
>More people would benefit from getting married and having kids - a lot of (Judeo-Christian) religion’s cultural ideas were good even if its empirical claims are wrong.
That's a good way to find yourself with a job you hate by the way.
This guy’s entire post is about riding a sad Caltrain to some Palo Alto job and being disappointed his memorization of obscure computer trivia or generic software job didn’t provide meaning in his life.
My point is that marriage and kids provide a deep sense of purpose and fulfillment and a certain kind of narrowing clarity and that ideas of what leads to a fulfilling life are well established in old cultural communities for a reason. He’d no longer be looking for the meaning in obscure trivia - which was never the correct place to find it anyway.
The other bit is a lot of jobs are bullshit (probably most) with enormous amounts of waste building stuff that doesn’t matter. You can fix that by working at Tesla, spacex, etc.
I don’t know why I spend time on HN anymore - it used to be a place to learn things and interact with interesting people. Now it’s just a crappy subreddit. The interesting people mostly fled to private channels (or X) long ago.
With PG’s retarded “Free Palestine” arch, it’s probably best to just leave.
Elon Musk, Alex Karp, and the tradlife, in one post. Please touch some grass.
If you’re complaining about secularism and committed to Judeo-Christian religion, how do you reconcile Elon and Karp being the embodiment of everything that Jesus condemns?
I suspect nothing you believe about either of them is remotely true.
I didn’t say I was committed to the religions - I said they’re a battle tested adaptive cultural technology we should be careful about throwing away because there will be unintended consequences. They are very effective at helping people live meaningful lives and have community.
You can choose to be obstinate and read what I wrote through a political lens with no charity - that’s kind of the political religious substitute I’m talking about.
I commend your effort in eating the cat turd of trying to provide them a different perspective into life. Their resistance to even considering that you’re not saying something insane + inappropriate is a mark on them, not you.
For what it’s worth- I’ve been on a similar journey recently and it’s brought me to similar conclusions. I got there through learning more about Eastern Philosophy and trying to map it to modern Western life.
It’s not so much my belief but plain established fact that they’re both very very rich. What’d Jesus have to say about the rich getting into heaven? Camels, eyes of needles…?
The rich have access to industrial-scale blenders & can commission a hydraulic syringe. Pretty sure they can blend the camel into a fine liquid & squeeze it through the eye of a needle. Heaven awaits!
Anyone who read that: How do you justify the life spend once you see the scroll bar turning that small?
Like rolling a dice on wasting 30 minutes, but maybe maybe it’ll be interesting or mildly amusing, best case.
There’s just no way that use of time could be worth the squeeze when your takehome is $500/hr. 8% of your waking day spent reading an article. Come on?
It's easy. I just remind myself that, in about 5 billion years, the Sun will have sufficiently run out of fuel to begin its transition to a Red Giant. At that point, all remnants of biologic life that ever lived on the crust of the earth will be incinerated and it won't have mattered whether anyone carefully conserved the precious time remaining in their lives or not. I have so thoroughly incorporated this understanding into my psyche that I can merely blink now and all of that context is immediately present to me.
Do you determine the worthiness of all your activities by how much money you could make in the time they took?
I read the full article and found it well worth the time. A somewhat sobering essay, prompting some self-reflection, while also being beautifully written. I appreciated the art displayed.
How can you put a price tag on something like that?
Weird flex about the income, but the answer is: You don't have to read the whole thing. You can just dip in and if the first 2, 5, 10 minutes hook you, you read the rest.
You could also skim, that's a practice that has really done a lot for me when it comes to not-so-information-dense literature that might still have worthwhile nuggets in it, like a good chunk of nonfiction.
After first page I guessed it's obvious where it goes and stopped reading. The discussion confirmed it.
If it was not obvious to anyone, then they needed to read it all perhaps. Not having any big feelings for people who do or don't anymore, I have been avoiding all kinds of cat turds most of my life, not bad decision but it's very lonely.
It actually doesn't go where you'd expect after the first page. The discussion confirms it because nearly everyone only read the first page, and mostly people are commenting on the article they think it is, rather than what it actually is.
I'm sorry, eating cat turds as a metaphor for coding isn't bad, but that article was WAY, WAY too long. OP needs to learn how to edit and cut at least half that nonsense out.
One object level suggestion is you shouldn't be doing string formatting manipulation to construct valid YAML objects as part of your ops pipeline; instead, do it all with actual data structures and then just render the result. Yes, I know that Helm directly encourages text templating — it's bad and wrong.
Beyond that, this a too-long essay about a deeply poisonous and discouraging worldview. I regret having read it. At least it wasn't written by AI!
And, as with so many blatantly bad and wrong things in modern development, someone will show up just to scream at you confusedly if you as much as think of solving it somehow better (e.g. how you describe) because they have mastered the officially endorsed badwrong way (and even that with great difficulty) thus you'd be stealing their cat turds
>I briefly try to think of which chucklefuck I could blame this design on, but truth be told I rubber-stamped enough questionable pull requests in my time here that a fair amount of this situation is a mess of my own damn making.
This one really rings true. Every individual change you don’t push back on makes things slowly, incrementally worse until you end up with a pile of garbage. But do you really want to block someone’s change because they wrote some awkward, hacky code? After all, they’ve solved some problem for the business and it might only take an hour to clean up later.
Later never comes. Hacks get built on top of other hacks and that one hour improvement would now be a week long refactor. No one can justify that.
After few rounds of this you start to become the type of person who blocks changes for code clarity and things others view as nitpicks. Now you’re the asshole stopping people from getting work done. You ask yourself if it’s really so bad to let it slide this one time.
Repeat.
>This one really rings true. Every individual change you don’t push back on makes things slowly, incrementally worse until you end up with a pile of garbage. But do you really want to block someone’s change because they wrote some awkward, hacky code? After all, they’ve solved some problem for the business and it might only take an hour to clean up later.
That depends on whether hacky code is nicely contained or spreads it's bad influence all over the place.
I would totally ask to add a reference to the tech debt ticket right there to the code so it's clear it's not a good practice to follow and to make sure that the ticket is actually created and not scheduled to be created by adding an async job into a memory hole.
Half the time, just asking for that is enough for stuff to be straightened out right there, as it's easier than creating a ticket.
>Later never comes. Hacks get built on top of other hacks and that one hour improvement would now be a week long refactor. No one can justify that.
But that's sometimes okay, it's a lifecycle of software. If business doesn't schedule maintenance, then maintenance schedules itself. The job of a good engineer is to make business types in the know about and let them decide.
> But that's sometimes okay, it's a lifecycle of software. If business doesn't schedule maintenance, then maintenance schedules itself. The job of a good engineer is to make business types in the know about and let them decide.
It's complicated. I've worked on a product that had accumulated 15 years of tech debt. This all happened for very good reasons. The previous leadership often needed to ship features to get contracts signed and to make payroll.
However, paying that debt off had become very expensive and getting meaningful returns from these improvements took a long time. The most direct value came out of making tests more comprehensive and faster. However, beyond that benefits were only tangible over months to years and only if you worked on the right code area. In a large corporation leadership tenure in a role is often shorter than that. So the personal incentives for much of leadership was to just ignore the tech debt.
It's an extreme example but it's where you can get yourself.
Edit: I am honestly not sure I have a strong recommendation from this, other than "watch the tech debt and pay it off when you get breathing room". But then original company leadership AFAIK never paid most of the cost (if any?) of the accumulated debt and had AFAIK two(!) nice exits from it.
> But that's sometimes okay, it's a lifecycle of software. If business doesn't schedule maintenance, then maintenance schedules itself. The job of a good engineer is to make business types in the know about and let them decide.
Or sometimes the code continues to encrust itself, like a pearl - or more likely, like a kidney stone - not fatally, but causing pain all the goddamned time.
> I would totally ask to add a reference to the tech debt ticket right there to the code
99 times out of 100, they create the tech debt ticket, they add the comment, and multiple years later no follow up was ever scheduled in and the ticket eventually just gets resolved out as "wont fix" or is otherwise never looked at again.
> But do you really want to block someone’s change because they wrote some awkward, hacky code? After all, they’ve solved some problem for the business and it might only take an hour to clean up later.
Isn't this precisely the time to do it? You reject with a note that says the idea is good, but code needs to be improved. "Doesn't fit the style" type of response. Make the contributor make the update so that it doesn't need an hour later. Take the hour now.
In my experience these hacky changes are usually a consequence of some impedance mismatch in the codebase. Something is poorly factored, the interface (whether technical or personal) isn't suitable for purpose.
It's easy to push back on a hacky change if there's an elegant solution close at hand. But often the business needs and the architecture of the codebase are at odds with each other.
It might take me an hour, but communicating the idea to the engineer, convincing them it’s better, guiding them to the solution, and then having them build it will take far longer wall clock time.
And devs that have this line of thinking is precisely why there's a back log when it can only be done by one person. Instead, create style guides or other structured documentation that can be referenced in the rejection so you don't have to do it would be time much better spent. It helps contributors to be better contributors. It makes contributors want to continue contributing. Having every submit rejected gets to the point of not wanting to contribute.
The biggest cause of these issues isn’t style-related or something that can be easily documented ahead of time.
A recent example: an engineer wrote a custom caching layer for a service call, then called the service wrapper every time the data was needed, relying on caching to avoid hitting our dependency too often. I suggested fetching the data once and passing it around, but the engineer pushed back, citing the feature’s launch deadline and the effort required to update multiple interfaces. Their solution ultimately has more failure modes and is harder to test (requiring mocking of the service wrapper in several places), but it isn’t terrible and we probably won’t encounter cache overflow issues.
Another persistent example is function parameter length. Inevitably, there’s always “just one more argument” needed until we hit our configured linter limit. About 70% of the time, engineers add a suppression and push the change through as-is. Refactoring to reduce parameters can require significant work (and simply stuffing them into a parameter object doesn’t solve the underlying problem).
I could respond to these patterns by expanding our coding standards guide. It could document that caching shouldn’t be relied upon within a single request’s scope, or reinforce that functions should have fewer than 7 parameters (already enforced by our linter). But in my experience, these guidelines are rarely consulted before contributing. As the parameter example shows, people often push for exceptions rather than follow standards rigidly.
I do think standards guides can work well for open source projects, where contributions should never block someone from delivering value. Contributors always have the option to fork and use their changes as-is, which undermines arguments for “just getting something in.” Internal service codebases don’t have that luxury. When you’re changing a service to launch your feature before a major sales event, delays have real costs, and there’s no “I’ll fork this and maintain it myself” alternative.
Ahh man I just dealt with this, reviewed some code, approved, another one comes in the same code from before is moved around. So much diff. I'm like "why was this moved?" Then I just stop caring, stuff is not indented right. So many things to point out (yes use a linter/formatter). It's tough other people just give me the LGTM treatment, I'm the annoying one doing actual reviews. This one is less reviewed since it's a vibe-coded POC but yeah.
I think about this a lot, 'normalization of deviance'. https://en.wikipedia.org/wiki/Normalization_of_deviance
Paid to, supposedly. Utterly frustrating to be hired for Reliability and told endlessly to lower quality. 'Controlled opposition' it is, then.
This doesn’t just apply to code - it applies to organisations just as easily.
I ate a lot of cat turds as a kid. Ate a whole bunch through university, and then I signed up to work for a cat turd factory in London.
Sucked. Decided to stop eating cat turds and go start a candy factory instead.
For the first few years, we made candy. Good candy. Then, slowly, gradually, over the course of a decade, we realised that our clients wanted cat turds, so little by little we started putting more turd and less candy in the product, and as part of that we of course had to start eating cat turds again. I would distribute them to my staff, our investors would check in to ensure everyone was still eating their turds, and I would eat as many of them as I could to save the staff from indigestion.
Fast forward a decade and we had a full scale cat turd factory going. I’d get up every day, ram thousands of the things down my throat, spent my nights vomiting them up, for it turns out you really can only eat so many, and then repeat.
Eventually, my body started failing. It turns out you can’t live on cat turds alone.
So I quit, and only snack on a cat turd occasionally these days, when the state mandates it.
The factory is still going strong. After my departure they got rid of the staff who didn’t realise how many turds they’d have to eat after I left, hired coprophages, and switched over to producing a successful line of cat diarrhoea.
> There’s this very real sense that I don’t… I don’t want to solve this problem. There is no intellectual reward at the end of this journey. It’s not interesting to me. This isn’t something that needs to be fixed, because it’s not a situation that ever should’ve been permitted to happen in the first place. This is just a bunch of contrived nonsense that I must work through because the broader situation dictates it. It doesn’t matter if the solution is good or elegant. It doesn’t matter if it barely works. It doesn’t matter if it causes another problem that I stub my toe on in three weeks. It’s just… what I have to do.
As a tech person, this is the essence. All we want to do is make an amazing fast/efficient/performant/cheap/insightful/optimized/smart/something-else thing.
But then we have to deal with organizations like governments, businesses, customers, and people like managers, co-workers, and clients. And ultimately, human irrationality of preferences.
It's why RMS and Edsger are so appealing to so many. The above makes one want to say screw this, I'm gonna do it my way and damn the consequences.
> It feels like I am performing surgery using a scalpel held by a boardwalk arcade claw machine, complete with the constant squawking and shitting of project management seagulls.
Haha, this is a great way to describe the feeling of writing code you can't test locally, instead needing to wait while it makes its way through numerous pipelines before pooping out for an error that might not even be related to your code itself, but sometimes as simple as an intermittent infrastructure issue.
I feel bad for the people who worked on teams where Younger Self was the senior engineer. I was full of ideals and convictions back then. “No, we’re not doing that. We’re going to Do It Right instead.” I was full of piss and vinegar. “Here, give me that; I’ll just do it myself.” I was full of shit.
Ouch, right to the heart. I do wish I could say that being an asshole was restricted to Younger Self, as I carried some of that way later in my career than I should have.
Great read, putting into some beautiful prose undigested feelings that have been stewing in my stomach for a while. Maybe I should find a cabinet that's worth painting the back of to me
There’s a reason a ton of software engineers (let’s be real that’s 2000 pounds so I only need to find ten or twelve) do woodworking on the side.
If you take it diligently and treat it as fun, you can make amazing pieces in only ten times the time it would take a factory - but you do it your way with your attention to detail.
And you can make the back out of good wood and paint it, too. Nobody will ever know; it’s your secret between you and God.
It's a great point. If you are interested, the book "why we make things, and why it matters" really resonated with me for this exact reason.
And if you do hand-tool woodworking it's cheap. More time consuming, but also harder to screw up.
I prefer metalworking, but the equipment is larger & more expensive. And you still need a workbench for a bunch of the finishing steps (hand filing, polishing, engraving, etc.) so some basic woodworking is very handy for making said workbench.
Fun fact, Altoids tend to be one of the better treatment for dismotility, meaning folks who have esophagus's that don't operate correctly to help swallow down food.
peppermint altoids, to be specific (sorry). they use a good quality peppermint, as opposed to other cheap peppermint candy (typically).
This was some of the most viscerally relatable reading I've experienced in years. It's like Stand By Me for 'computer' people.
> Well. When you presume, you make a pres out of u and me.
My type of humor, cathartic read
In The Long Kiss Goodnight, Samuel L Jackson says at one point, "When you make an ASSUMPTION, you make an ass out of you and... <realizes the mistake> ... and UMPTION!"
Fool me once, shame..shame on..you. Fool me twice.......a fooled me can't get fooled again.
That was a smart one; an American president must never produce the soundbite "shame on me" or the spell will be broken.
I was sceptical but this is amazing!
>Look at me now, having to Google how to read a text file line-by-line in Python despite having done it a hundred times at this point
I love this hahaha!
I'm glad I got past the opening section instead of just wondering how it had anything to do with HN. I extended the charity that it had to be setting up something, and it was. And I relate to that something so, so much.
"Perfection of means and confusion of ends seems to characterize our age." -Albert Einstein
One of the best, most thought-provoking things I've read in a long time. It near-perfectly describes what I've been struggling with myself.
Thank you for sharing.
It’s nice to know that other people out there are as grumpy as I am (or can be), but I don’t think it’s particularly healthy.
Something I think about sometimes: the abstractions in math can be awfully elegant. Learning about them is probably 60% of the fun of studying math. But they took hundreds of years (or thousands in some cases) to conceive and refine. All that time was spent writing weird—often awkward and often wrong—proofs and trying every other idea that doesn’t work as well, and throwing them out (and still getting stuck with some of them, like pi instead of tau).
Software is less than a hundred years old. Eventually software will be quite elegant and make a lot of sense. Until then, we’re trying every idea we can think of (yaml templates) to see what’s good. Once AI can invent a programming language and reproduce decades of software development in it to test its design ideas, we can skip to the end.
If AI invents a programming language it will probably be targeted at AI, not humans ...
I find it difficult to imagine that an AI would ever invent a programming language targeting anything other but permanent damage to the language faculty of its handlers.
Enjoyed reading the crude observation that we eat cat turds for work. I like the author who watches the graffiti on the train ride rather than a phone screen. Was the “Spirograph butthole”meant to be a reference to a React app default favicon?
The "spirograph" is the ChatGPT logo. The "butthole" is Anthropic Claude, I think. The "color blob" is probably Gemini?
given the age of the other person from the description, it's likely MS copilot
> “Spirograph butthole”
Sounds like the Open AI logo
It isn't a spirograph, but to me the most butthole-looking AI logo is Claude's throbbing asterisk.
There were two in the text, one spirograph (ChatGPT), one butthole (Claude).
Gotcha. I misinterpreted that, and I’m glad to know I’m not the only one who sees that as a butthole.
AI apps I believe.
Yeah it sounds more like a reference to the OpenAI logo to me
Honestly, if we're speaking of most graffiti (generally just tags in the same boring fashion) visible from a train, I'd rather to be looking at a phone screen.
At least the phone screen could be displaying something interesting but most graffitis are pseudo-artistic "I was here" tags. I wish more of that paint was used to actually make a place nicer rather than worse. And don't get me wrong, I'm totally ok with guerilla, technically illegal actions taken by citizens to improve their surroundings but most graffiti are far from that.
The graffiti on the MTA from CT to NY is pretty nice, a lot of puffy colored tags, I think it's best not to have too many tags, keeps the good ones front-of-mind. Don't get me wrong, the less-is-more ones are nice too, VEO, anyone?
what a resonant piece. incredibly constructed. issues ive grappled with and, like the author, kept to myself because ive learned most people in my life dont care about the same things as i do. rare piece of writing that changed my perspective a bit
this is glib but i couldnt keep myself from intentionally misinterpreting the end: "and on top of these existential crises he has covid now!"
Can you explain the correct interpretation? Asking for a friend.
I could be mistaken, but my read is that years of dealing with cat turds day in day out has numbed the author to their stench. His once prized chocolates now have become themselves cat turds, and he lacks the senses to even realize it. Note how dusty the container was - the author didn't care to maintain his chocolates, and now here he is. The forgotten side projects, the tech we wanted to learn... things we lost the motivation for or now execute with the same cat turd quality as we've grown accustomed to.
He had a cat turd in his box of chocolates.
A saddening block of prose well worth the read, thanks for sharing.
Hasn't work always been cat turds?
EDIT: Whether you believe this particular explanation or not, the fact that it's here is evidence that people have long felt that how unnecessarily hard work is is something that needs an explanation.
Years ago I worked in the hospitality industry with a great group of people. Almost none of the days/nights felt like work. Even when it was crazy busy. The morale was excellent.
I "blame" it mostly on the two owners who also worked there. They were exemplary people and managers. Of course you need a nice group of people too, but I think a misfit wouldn't have stuck around for long.
From what I've noticed, white-collar work is mostly the cat turd dispenser feeling, retail is more an errand-boy feeling, and blue-collar work is more of a long-steady-single-turd-chew
I consider myself extremely lucky, but for large swaths of my professional career I've actually really enjoyed what I was doing. There have definitely been grindy projects where I'm not working on a project that interests me on a technology stack I don't care for, but especially at the start I always looked forward to going to work in my programming job. It might as well have been the best videogame I'd ever played before. Every day was full of learning new things and I was finally getting paid a wage for something I'd been doing for fun for years. It was a small office a short drive or bike ride away with people I got along with really well. It was a short walk to a few cheap restaurants and a grocery store. I rarely had extremely tight deadlines.
Beautifully written.
My litter box is filled with turds from my cat scrum (sometimes we call him agile).
I read to the end desperately hoping for the comforting reveal that the coworker’s meal was just a metaphor, but it never came. For those who haven’t read the article… it’s wonderful, but make sure to finish what you’re eating before you begin reading it. The imagery of that sugary altoid flavor is a bit of bait and switch.
As to the topic… the slop washing and compounding effort it creates is awful. At work we use Gemini as part of Google Workspace. I wish Google would have an enterprise option “share all prompts” for full prompt transparency between everyone in the organization. I believe this will go a long way toward solving the root problem, which is one of disrespect and laziness. If I can see your prompt history, maybe you’ll think twice before asking me to review the slop it produced.
Ah, the 2020s. Back when they thought delimiting code sections with whitespace indentation was a good idea.
and we thought XML was bad?
People hated s-expressions in Lisp, so instead of parentheses we ended up with angle brackets. Now there are programming languages built with XML syntax. There are at least a few things with YAML syntax that’s tied to implicit semantics, including the YAMLScript language.
I kind of have to wonder what was so bad about s expressions after all.
the complaint I recall is that people don't like the way they nest, but I've had to write regex for xml and lisp, and I must say the lisp is much more pleasant. Perhaps the only difference on the post-parsing end is that in xml, there is a special place to nest children, that's really the only benefit I can think of even though you have to go through more trouble.
> I’m no closer to anything resembling inner peace. I find I’ve grown to despise large swaths of the only thing I’ve ever been able to earn reliable income from. I tire of walking a path that has seemingly shifted beneath my feet to point toward a destination I no longer recognize. I’m embarrassed by the jerk my Younger Self used to be, and simultaneously ashamed of the energy I lost as I matured. I don’t really want to do most of what I have to do, while feeling a deep unsated need to achieve something that I have neither the stamina nor the freedom to pursue. At some point I’m going to reach down deep into the well of ambition to discover there ain’t nothing there to pull out anymore. And then?
What advice does one give when confronted with this?
To answer in his style:
The path didn't shift beneath your feet. You finally learned how to see in the dark, and realized you'd been walking in circles around a grave you dug for someone who was never real to begin with. What you're really mourning is the death of who you thought you had to be, and what feels like emptiness is actually the first honest space you've ever had to discover what you might want to become.
Oof. Nicely put, but you cut me!
Evidently that's known to psychoanalysis as the "idealized image". That's another way to refer to what I'd call "the sum of one's conditioning", i.e. the interplay of automatic reactions to outside stimuli that usually takes up so much of your waking hours, that begin to habitually mistake it for yourself. Moreover that's how everyone else does it, innit?
Calling it "idealized image" downplays the mechanistic and implies the inauthentic - these judgments differ, see below. Nonetheless the resulting state of mind is the same: you're stuck somewhere being someone you don't truly know how to be - and it's been so taxing for so long that you've started to forget why exactly you're there in the first place.
It's a relatable sentiment. Funny how this surfaced today, after a few other materials inducing delusion of reference on HN frontpage. (I don't remember anyone ever saying how personalized HN's recommender is, but if there's places on the Net where it pays for the recommender to be subtle, here's one.)
As this sort of habituation is commonplace, it seems like not long after the stage where different authors introduced varying ontologies of the same alienatory phenomenon, the 20th century psychology community might've suffered something of a schism on the matter of whether it's right for the state of dedicating 100%+ of one's life energies to the "idealized image" to be considered "normal".
As a result, the currents in psychological/philosophical/humanistic inquiry most able to produce "technical" insights, i.e. ones which can be genuinely and reliably useful to an introspective person without necessitating the services of a care facilitator, remain underdeveloped and walled off. (You're in for a ride if you look into those, it's no coincidence you find em piecemeal in the oeuvre of a certain sort of literary carny barker.)
Anyway, some of them say that as you find ways to let go of conditioned reactive patterns, that results in something like more headspace freed up for your actual volition. Let's see how that one goes then. What I can add is that unconditioning oneself is done by experiencing unhabitual stimuli. If you're even a moderately routine-based sort of person you can drill yourself into a sort of "RNG watchdog" habit. At a random minute of every hour begin to breate manually, and proceed from there.
It looked like it was going to be a real downer to the end, but.... and then it was.
Rare mix of writes really well and codes. So enjoyable!
I reallllllly wanted to finish that article. Then i realized after 10 minutes I was only 1/10 through it. I'm a slow reader, sorry. I'm guessing he wasn't saying "cat turds" and probably had an accent saying "carrots" or something
After reading through this long piece, I am going to assume that Jim is not real or he is that he does not in fact eat cat turds.
Jim is as real as Tyler Durden.
jim is real and eats cat turds. i eat cat turds and you eat cat turds
the airmchair psychologist in me says: don’t model your life after what your father did, whether he cared at work or not doesn’t solve your problems.
the rest of me says wow, this was a well written story
My dad worked with containers at the terminal. Now I work with containers at the terminal. Destiny.
Cat turds imply the existence of a cat.
Is that the same one they're looking for, in the dark room?
it might still be there, if nothing's changed since the last time we looked in its box..
We can infer the liveliness of the cat based on the volume - and persistence - of shit
We're even able to infer the cats' names and addresses!
Wonderful
> I’ve grown to despise large swaths of the only thing I’ve ever been able to earn reliable income from
Shout out to fellow frontend devs. Rough times.
[flagged]
Romeo and Juliet die at the end.
There you go, now there's no need to waste two hours of your life watching Shakespeare.
With no spoiler alert? How uncouth.
Or just skip it instead. Such a text is meant to share a feeling.
I find this comment quite ironic and can't tell if it's a commentary on the themes from the piece.
If it's not, once you've read the summary, take a moment to decide whether you think the original might be worth reading for yourself.
I, for one, liked the narrative style and found the story enjoyable. I did not read it only for the information.
I really don't understand why you would deliberately condense a story crafted with intent into a lifeless AI summary.
[flagged]
You spend it carefully by arguing with people in the comment section about your inappropriate use of AI?
You could write a hundred comments and it would still be quicker than this story.
And yet even the hundred comments would leave you less satisfied.
After the a couple of paragraphs that weren't really making any kind of point I started skimming; came to this conclusion before I got bored of even just skimming:
A jaded Grey-Beard rant; overall negative.
Perhaps there was some deeper message I missed due to the boredom.
By reading slop based summaries of random drivel on the internet? Is that a win?
People are looking for meaning in the wrong places - it’s not a huge surprise, it’s something secularism has largely failed at.
There are places you can work that are more meaningful or where there is a culture of cutting down on bullshit. Elon Musk is famously good at running places that do both.
More people would benefit from getting married and having kids - a lot of (Judeo-Christian) religion’s cultural ideas were good even if its empirical claims are wrong. Religion is in some ways a battle tested cultural technology, throwing it away will have unintended consequences for most people.
Alex Karp touches on some of these ideas indirectly in The Technological Republic which is worth reading anyway for other reasons. A lot of people in the west today grow up without a cultural core and end up aloof believing in nothing, or worse substituting some bullshit political ideology as a poor substitute religion.
>More people would benefit from getting married and having kids - a lot of (Judeo-Christian) religion’s cultural ideas were good even if its empirical claims are wrong.
That's a good way to find yourself with a job you hate by the way.
This guy’s entire post is about riding a sad Caltrain to some Palo Alto job and being disappointed his memorization of obscure computer trivia or generic software job didn’t provide meaning in his life.
My point is that marriage and kids provide a deep sense of purpose and fulfillment and a certain kind of narrowing clarity and that ideas of what leads to a fulfilling life are well established in old cultural communities for a reason. He’d no longer be looking for the meaning in obscure trivia - which was never the correct place to find it anyway.
The other bit is a lot of jobs are bullshit (probably most) with enormous amounts of waste building stuff that doesn’t matter. You can fix that by working at Tesla, spacex, etc.
Yeah, this guy's Christian cultural ideas include a dependence on misogynistic domestic slavery.
If having a partner and kids means mandatory "misogynistic domestic slavery" then every human society is irredeemably evil.
Anyone saying “misogynistic domestic slavery” has bought into a much dumber political religion, maybe without even realizing it.
I don’t know why I spend time on HN anymore - it used to be a place to learn things and interact with interesting people. Now it’s just a crappy subreddit. The interesting people mostly fled to private channels (or X) long ago.
With PG’s retarded “Free Palestine” arch, it’s probably best to just leave.
so the job you hate and a wife that hates you? now that's how you do a boomer humor I guess.
Elon Musk, Alex Karp, and the tradlife, in one post. Please touch some grass.
If you’re complaining about secularism and committed to Judeo-Christian religion, how do you reconcile Elon and Karp being the embodiment of everything that Jesus condemns?
I suspect nothing you believe about either of them is remotely true.
I didn’t say I was committed to the religions - I said they’re a battle tested adaptive cultural technology we should be careful about throwing away because there will be unintended consequences. They are very effective at helping people live meaningful lives and have community.
You can choose to be obstinate and read what I wrote through a political lens with no charity - that’s kind of the political religious substitute I’m talking about.
I commend your effort in eating the cat turd of trying to provide them a different perspective into life. Their resistance to even considering that you’re not saying something insane + inappropriate is a mark on them, not you.
For what it’s worth- I’ve been on a similar journey recently and it’s brought me to similar conclusions. I got there through learning more about Eastern Philosophy and trying to map it to modern Western life.
It’s not so much my belief but plain established fact that they’re both very very rich. What’d Jesus have to say about the rich getting into heaven? Camels, eyes of needles…?
The rich have access to industrial-scale blenders & can commission a hydraulic syringe. Pretty sure they can blend the camel into a fine liquid & squeeze it through the eye of a needle. Heaven awaits!
[flagged]
[dead]
Great
Article written by a fan of The Office, no doubt
Anyone who read that: How do you justify the life spend once you see the scroll bar turning that small?
Like rolling a dice on wasting 30 minutes, but maybe maybe it’ll be interesting or mildly amusing, best case.
There’s just no way that use of time could be worth the squeeze when your takehome is $500/hr. 8% of your waking day spent reading an article. Come on?
> How do you justify...
It's easy. I just remind myself that, in about 5 billion years, the Sun will have sufficiently run out of fuel to begin its transition to a Red Giant. At that point, all remnants of biologic life that ever lived on the crust of the earth will be incinerated and it won't have mattered whether anyone carefully conserved the precious time remaining in their lives or not. I have so thoroughly incorporated this understanding into my psyche that I can merely blink now and all of that context is immediately present to me.
Do you determine the worthiness of all your activities by how much money you could make in the time they took?
I read the full article and found it well worth the time. A somewhat sobering essay, prompting some self-reflection, while also being beautifully written. I appreciated the art displayed.
How can you put a price tag on something like that?
Weird flex about the income, but the answer is: You don't have to read the whole thing. You can just dip in and if the first 2, 5, 10 minutes hook you, you read the rest.
You could also skim, that's a practice that has really done a lot for me when it comes to not-so-information-dense literature that might still have worthwhile nuggets in it, like a good chunk of nonfiction.
If the thing you value most in life is earning money, then anything that doesn't earn you money must feel like a huge sacrifice.
That's a great mentality to have if you want to die with a high score.
I don't justify the time spent in my life on a $/hr basis.
That's absurd. The point of my life isn't to maximise my $/hr return to some faceless corporation.
I started reading it, I liked the writing style, it resonated with me. I kept reading till I had finished it.
There, that's the entire justification, I need no more justification than that.
Work lost 5-10 minutes of productivity so I could indulge in reading something ? Sure. That's fine. I'm sure they will survive.
If not, then maybe they should just go out and hire a team of soulless robots.
Books must be very expensive for you to read.
I don't think that's a problem for him.
i recognize how each line is well crafted and engaging and it pulls me along
the old adage for discarding a book is read 100 pages - your age
if its good i keep reading. this was fantastic
Come on, HN. Let's not pretend brador is reading our replies. Who could justify the time at $500/hr?
if it's somewhere that someone like you wouldn't be, that's justification in of itself.
After first page I guessed it's obvious where it goes and stopped reading. The discussion confirmed it.
If it was not obvious to anyone, then they needed to read it all perhaps. Not having any big feelings for people who do or don't anymore, I have been avoiding all kinds of cat turds most of my life, not bad decision but it's very lonely.
It actually doesn't go where you'd expect after the first page. The discussion confirms it because nearly everyone only read the first page, and mostly people are commenting on the article they think it is, rather than what it actually is.
You piqued my curiosity so read it all but did not surprise me. Wondering what do you see in it?
Because of all of the other pointless nonsense I do throughout the day.
The interesting-sounding articles here I open, skim, and close. Or leave as an open tab to come back to because I "really should read it".
And yet, this one captured me. The writing was engaging, and it left me hanging as I went along. I _enjoyed_ it.
That's why. Maybe I should read more things I _enjoy_ and fewer things I "should" read.
you understand the concept of skimming?
I'm sorry, eating cat turds as a metaphor for coding isn't bad, but that article was WAY, WAY too long. OP needs to learn how to edit and cut at least half that nonsense out.
you understand the concept of creative writing, yes?
One object level suggestion is you shouldn't be doing string formatting manipulation to construct valid YAML objects as part of your ops pipeline; instead, do it all with actual data structures and then just render the result. Yes, I know that Helm directly encourages text templating — it's bad and wrong.
Beyond that, this a too-long essay about a deeply poisonous and discouraging worldview. I regret having read it. At least it wasn't written by AI!
> Deeply poisonous and discouraging worldview
That used to be called "honest" back in the days
Have you tried rubbing some altoids on your eyeballs first, to make it go down easier?
>it's bad and wrong
And, as with so many blatantly bad and wrong things in modern development, someone will show up just to scream at you confusedly if you as much as think of solving it somehow better (e.g. how you describe) because they have mastered the officially endorsed badwrong way (and even that with great difficulty) thus you'd be stealing their cat turds
>I regret having read it.
It makes me happy that you do!