News for hackers. Stuff that matters.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by ryandrake on Thursday October 12, 2023 @12:42PM (#37859582)
Not a huge Steve Jobs fanboy, but I always liked his quote[1] about craftsmanship, sweating the details, and giving a fuck:

“When you’re a carpenter making a beautiful chest of drawers, you’re not going to use a piece of plywood on the back, even though it faces the wall and nobody will ever see it. You’ll know it’s there, so you’re going to use a beautiful piece of wood on the back. For you to sleep well at night, the aesthetic, the quality, has to be carried all the way through.”

I think software as a whole suffers greatly from this "well, I got it barely done, technically fulfilling the requirements, so my work is over" attitude.

1: https://www.goodreads.com/quotes/445621-when-you-re-a-carpen...

Re:Can't Be Fucked: Underrated Cause of Tech Debt by quacked on Thursday October 12, 2023 @12:45PM (#37859620)
I appreciate this analogy, but Jobs made this work by creating a leadership culture that was obsessed with quality and craftsmanship. By all accounts he would regularly refuse to ship hardware and software that wasn't up to his standards and fired people for not building things to the right specifications. In contrast, most of us work in organizations with the exact opposite leadership mentality, namely "get your work done as quickly as possible so we can sell more product, and fudge whatever you have to to make it through quality testing unscathed".
Re:Can't Be Fucked: Underrated Cause of Tech Debt by mattgreenrocks on Thursday October 12, 2023 @01:58PM (#37860592)
The best reason to do great work as much as you can is intrinsic satisfaction you get from that.

Also, think longer-term: if you can program well enough, then you can write great software quickly which is a huge asset when making your own thing and selling it.

It is quite rational to optimize for your own wellbeing in these ways even in orgs that are not fully conducive to long term careers.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by toss1 on Thursday October 12, 2023 @03:53PM (#37862318)
Yup.

For so many reasons, from a mentor of mine:

Quality Is It's Own Excuse.

If you can do it better, do it better.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by bradlys on Thursday October 12, 2023 @04:22PM (#37862694)
Unfortunately we live in a stack ranked world and with incentives like not being deported - people will choose whatever pleases management over any idea of craftsmanship or quality.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by nraford on Friday October 13, 2023 @07:18AM (#37869322)
A bitter pill, indeed.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by mrguyorama on Thursday October 12, 2023 @04:37PM (#37862858)
>if you can program well enough, then you can write great software quickly

No? Doing things the right, robust way regularly takes more time and effort than doing it the quick and dirty way, which means your lazy coworker gets the management attention and raise instead of you.

For the vast majority of software developers, the correct career choice is just to always be making your manager's life easier, and they rarely care about "doing things the right way", especially when whatever you write will be replaced in five years because someone somewhere is too lazy to understand the current codebase.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by munificent on Thursday October 12, 2023 @04:55PM (#37863058)
The correct career choice is to seek organizations whose values align with yours as much as possible.

Life is too short to spend most of your waking hours surrounded by people whose beliefs go against yours.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by swatcoder on Thursday October 12, 2023 @05:41PM (#37863528)
[delayed]
Re:Can't Be Fucked: Underrated Cause of Tech Debt by yongjik on Thursday October 12, 2023 @06:38PM (#37864058)
> The best reason to do great work as much as you can is intrinsic satisfaction you get from that.

Be careful: it can be dangerous to tie your inner satisfaction with your work, which is not under your full control and also what you need to get paid. You can get burnt out.

Sometimes you have to take a step back and say "It is what it is, we all need money, fuck it and let's move ahead."

Re:Can't Be Fucked: Underrated Cause of Tech Debt by kyleee on Friday October 13, 2023 @11:10AM (#37871509)
I think you’ve made a good point but I’d also note that one can have satisfaction and happiness from small(er) bits of work done well in the context of a larger undesirable/burnout/failure situation. And maybe even such outlook can help stave off burnout during difficulty stretches when paired with a somewhat stoic perspective that one is not entirely responsible for the fate of the larger company/team
Re:Can't Be Fucked: Underrated Cause of Tech Debt by teaearlgraycold on Thursday October 12, 2023 @04:27PM (#37862754)
Jobs sounds like an asshole to work for and I wouldn't want to be held to his standard. That being said, I want to work with people that at least regularly attempt to employ true craftsmanship. Your product can have its warts but it needs to fundamentally be built with love.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by doctorpangloss on Thursday October 12, 2023 @05:15PM (#37863238)
> In contrast, most of us work in organizations with the exact opposite leadership mentality, namely "get your work done as quickly as possible so we can sell more product, and fudge whatever you have to to make it through quality testing unscathed".

When I was in leadership and advocated for getting things done as quickly as possible, the principle reason is that it didn't matter: the company already failed by the time I had subordinates. My reward was that I got 4 extra years of my life back by leaving 1 year in rather than at the bitter end, compared to my colleagues.

It's my opinion that most companies are 90% operating failures / doing stuff that doesn't make sense, while there is 10% that does make sense and subsidizes all the failure. Some people call this taking risks, and indeed the worst places to work take the fewest risks, but I don't think the two are related.

Also the Lisa was a disaster. I don't think there is generalized advice here, even if you have all the conditions where craftsmanship and aesthetics are literally the #1 values your product has.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by johnnyanmac on Friday October 13, 2023 @12:01AM (#37866496)
>It's my opinion that most companies are 90% operating failures / doing stuff that doesn't make sense, while there is 10% that does make sense and subsidizes all the failure. Some people call this taking risks, and indeed the worst places to work take the fewest risks, but I don't think the two are related.

so, is the metaphor of drawer useless in software? Is there no point taking pride in the craft because it's all going to fail anyway?

I don't mean this rhetorically. I just genuinely wonder what and how different people's mindsets are with respect to work in the field. I work in games so success is rarely guaranteed, and shorcuts often taken. There's very few times I can say that better code would have saved a game financially.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by wredue on Thursday October 12, 2023 @05:16PM (#37863249)
Jobs uniquely understood that promoting exclusively sales people is the primary cause of legendary product degradation.

It’s a little absurd to state “uniquely” there, because obviously, “everyone” understands this except the people that need to understand it.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by wolverine876 on Thursday October 12, 2023 @05:22PM (#37863326)
I'll bet Jobs' company sells more than the companies most of us work for.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by speleding on Thursday October 12, 2023 @05:33PM (#37863445)
The culture hasn't persisted. Take a look at the output of the console app on your Mac: They are using the software equivalent of plywood in Mac OS nowadays.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by kibwen on Thursday October 12, 2023 @05:46PM (#37863588)
How could it persist? Companies optimize for profit, quality be damned. In contrast, craftsmen take pride in their work, and pride is what creates quality.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by stavros on Thursday October 12, 2023 @06:21PM (#37863927)
Fun fact, there's a word in Greek for "pride in your work": Meraki.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by worthless-trash on Friday October 13, 2023 @01:22AM (#37867003)
Thanks! If anyone else has a word for this in their native tongue, I'd love to know them.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by spacemanspiffii on Friday October 13, 2023 @03:47AM (#37867930)
Let me ChatGPT that for you ;)

* Sisu (Finnish): Though not a direct equivalent, "sisu" refers to a blend of determination, resilience, and courage in the face of adversity. It's doing something against the odds, putting extra effort, and not giving up.

* Gaman (Japanese): A term that loosely relates to enduring the seemingly unbearable with patience and dignity. It can apply to doing meticulous, quality work even when situations are challenging.

* Jugaad (Hindi): Jugaad speaks to a creative or innovative fix; essentially finding a low-cost solution to a problem in an intelligent way. It reflects a spirit of resourceful improvisation and can indicate a pride or savvy in being able to solve problems with limited resources.

* Arbejdsglæde (Danish): This word directly translates to "work happiness" and denotes finding joy and satisfaction in the work you do.

* Mānawa (Maori): This is used to describe patience and perseverance, particularly in working toward a goal or mastering a skill.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by worthless-trash on Friday October 13, 2023 @09:33AM (#37870412)
I really should get to know chatgpt a little better, thanks for the reminder.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by nrclark on Friday October 13, 2023 @12:56PM (#37872769)
I can't speak for all of them, but "jugaad" maybe isn't a good translation of "meraki".

For me, meraki has kind of a "craftsmanship" meaning - you're building something carefully, like a sculptor. The result reflects your soul.

Jugaad is more of an ingenuity/re-purpose/get-it-working-fast kind of thing, kind of like a "hack" but with a more positive meaning.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by nraford on Friday October 13, 2023 @07:17AM (#37869313)
Meraki also means "done with love", which gives it a slightly different spin than just pride. You're proud of it because it comes from the heart!
Re:Can't Be Fucked: Underrated Cause of Tech Debt by stavros on Friday October 13, 2023 @09:30AM (#37870384)
Yes, but also "done with love" isn't exactly it either. It's very hard to translate precisely.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by HappyDaoDude on Thursday October 12, 2023 @10:41PM (#37865926)
I said it on here before. I used to be the king of macaroni code. Tiny pieces of spaghetti code - fast running that barely made sense. The technical debt stacked up really quickly but it ran damn fast and got the job done. Kind of stuff that would make people say "How the heck does that work? That is fast though!".

It is a problem of being self taught on projects that only I would use, you would learn some very bad habits. Would also mean making code that you would look back on a few months later and have no idea what you were doing.

If it was for anything other than video games pre-online era, I fear the kind of damage it could have done. It was putting pixels on screen, not running online data bases or via monetary systems.

To that I say, I like the Ps2's/Gamecube memory systems that kind of didn't give a damn how many pointers you threw at it. I would also like to say I learned not to do this, I did not. I just don't code any more.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by digging on Thursday October 12, 2023 @12:51PM (#37859696)
Huh. I look behind me and the nice dresser I've been using since I was a child almost 30 years ago has a piece of plywood for the back. It actually could stand to be replaced by now, though.

> I think software as a whole suffers greatly from this "well, I got it barely done, technically fulfilling the requirements, so my work is over" attitude.

I disagree. I think employees suffer from an incentive problem. I love doing good work and writing good software, but there's only so much time in the day and I don't love it so much that I'm going to give up my personal interests for business gains I'll never benefit from.

On top of that, mismanagement is the other biggest factor. Any time I start some refactoring, I can reasonably expect that I'll wake up one day to a brand new must-have feature that I need to complete by EOD if possible. No matter how much management agrees that tech debt needs to be addressed, it will only ever be addressed if I pad my estimates and do the refactoring instead of my assigned work.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by CharlieDigital on Thursday October 12, 2023 @02:13PM (#37860785)
It's a terrible analogy because most cabinet boxes are made out of plywood not because it's cheaper, but because it has better structural qualities versus -- what -- solid planks for the back of a dresser?

The plywood starts flatter, is less resistant to warping, is just straight up more dimensionally stable, and as strong if not stronger than some species of wood that are used in carpentry.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by darzu on Thursday October 12, 2023 @04:03PM (#37862443)
Yeah, definitely a sloppy analogy ironically enough. But as a woodworker I’ve realize most people when they hear plywood they’re really thinking OSB or cheap particle board. Quality high-ply with a hardwood outer layer isn’t in their vocabulary. So the analogy sorta works.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by smolder on Thursday October 12, 2023 @04:03PM (#37862451)
I don't think Mr. Jobs actually knew carpentry and may have meant a different kind of material when he said plywood.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by Spooky23 on Thursday October 12, 2023 @02:17PM (#37860844)
The dresser matters as a craftsman producing a fine quality product. A good mass market product should have a plywood back, because pushing up the cost takes away from it's utility.

Generally speaking, modern management doesn't respect the business, they look at maximizing current P&L before all else. I worked at a place where the entire business was dependent on a true legacy system where 75% of the staff responsible for this core system retired years ago, and the rest literally died at their desks. They considered it their life's work and documented everything and advocated for a variety of sane plans to migrate.

What was the result? They're all dead. The last one was 74. The system remains, and they are paying the legacy vendor 50x and getting minimum viable support and zero enhancement, further increasing complexity. It's a shitshow for the company, but they still haven't moved to fix it. The lesson is, don't get emotionally invested in the company. That dude should have been watching his grandkids grow instead of slinging COBOL and JCL and hoping that someone would wake up and give a shit.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by smolder on Thursday October 12, 2023 @03:56PM (#37862353)
Plywood is actually pretty nice. I'm confused. Are people talking about particle board?
Re:Can't Be Fucked: Underrated Cause of Tech Debt by yetihehe on Thursday October 12, 2023 @12:45PM (#37859622)
Typically this is because programmers are treated as workers on assembly line instead of carpenters making beatiful chest of drawers.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by ReactiveJelly on Thursday October 12, 2023 @12:47PM (#37859643)
One might also note, pound for pound, most chests of drawers are probably bought from Wal-Mart or Ikea.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by mikeyouse on Thursday October 12, 2023 @12:54PM (#37859747)
And unfortunately, since I enjoy woodworking, the Walmart chest of drawers is just as functional and often much better value than the finely crafted one. There’s virtue in building something accessible that improves things even if it doesn’t have “fine joinery” so to speak.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by riversflow on Thursday October 12, 2023 @06:27PM (#37863955)
Much better value? I disagree. High quality products built by artisans mean you aren’t participating(as much) in globalist, race-to-the-bottom corporate behavior. You know where your dollars are going and mostly what was involved in making it. Not to mention, handcrafted, high quality furniture lasts so much longer too, like multiple lifetimes.

All it takes is placing ethics (physical resource use, living standards of those who make your stuff) higher in your value approximation. I hate spending money on disposable goods with a passion, as a result I value the walmart chest of drawers negatively because owning and using it will make me unhappy.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by danjac on Friday October 13, 2023 @01:42AM (#37867112)
That's all very well, but the average person does not have the money to spend on well-crafted furniture. At the end of the day, they need somewhere to store their stuff and a cheap chest of drawers does the job. Ethics about buying choices are for people with money and will make zero difference in the grand scheme of things. Maybe that chest of drawers falls apart after 5 years instead of 20, but that's not going to sway a person who just gets by financially.

If you hate globalisation, then maybe that can be tackled with better legislation, improvements in working conditions and standards of living, and other systematic changes. It's not going to be changed by lecturing poor people on the ethics of buying cheap stuff.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by mikeyouse on Friday October 13, 2023 @01:15PM (#37872991)
Exactly. A relative of mine works for a fine furniture company in the Midwest, they have a production line making high-quality items with traditional joinery and actual hardwood and hardwood veneers. We were shopping for furniture for our house and needed a big dresser, I reached out and their version cost $8,000. That would support American jobs and my relative directly, but $8,000! We ended up with a West Elm one in a similar style for $1,800. A Walmart one with cheap particle board could be had for $800. Even if the Walmart one only lasted 5-years, you could buy 50-years worth for the same price as the US-made one.

Weighing "Value" means you need to consider many dimensions and people have different weights, priorities and abilities to service those dimensions.

At some level, a dresser is just a box for my t-shirts and socks. Similarly a link-shortening website probably doesn't need a typesafe, fully commented code base.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by c7DJTLrn on Thursday October 12, 2023 @01:42PM (#37860370)
There is also a huge portion of programmers who want to be on an assembly line. They don't care about their profession, they don't strive to improve at their craft, they don't read stuff on HN. They're simply there for the money. Since quality requires active effort in software, I think this group has an oversized responsibility for tech debt.

Case in point: frontend and the shit show that's become.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by wredue on Thursday October 12, 2023 @05:38PM (#37863492)
The real part about front end being garbage that pissing me off is that people I have to speak on the phone with go on to patronize me about how “you know you can just use the online form, right?”

I COULD use the online form if the fucking thing ever worked!

Most recently was unable to book service for my vehicle online cause the selection lists always cleared themselves the moment I selected something. I click the year of my vehicle. It populates for an instant. Then clears.

Then had a guy on the phone audibly upset at me for making him take the phone call to book service.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by esafak on Thursday October 12, 2023 @01:13PM (#37860015)
Apple notably sold upmarket consumer products; the segment best placed to pay for quality. If you are downmarket, or if you sell to businesses (where the buyer is not the user), you will find it harder to pull this off. It is the ideal, though!
Re:Can't Be Fucked: Underrated Cause of Tech Debt by mattgreenrocks on Thursday October 12, 2023 @01:41PM (#37860355)
It’s kind of sad Apple is still sort of the outlier in this multiple decades later.

Every adjacent company ever: “we can beat Apple!!” then actively self-sabotages quality via processes, lax quality control, and a pervasive low level of CBF.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by kypro on Thursday October 12, 2023 @01:16PM (#37860037)
> When you’re a carpenter making a beautiful chest of drawers
Re:Can't Be Fucked: Underrated Cause of Tech Debt by Mc91 on Thursday October 12, 2023 @12:52PM (#37859708)
> I think software as a whole suffers greatly from this "well, I got it barely done, technically fulfilling the requirements, so my work is over" attitude.

I get it barely done, technically fulfilling the requirements. How much more I clean up depends how much more time my PM has left me in the sprint. Since I'm constantly bombarded by questions, appeals for help, requests to approve pull requests, last minute changes, various meetings etc., that usually is not much, if any, time.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by Leherenn on Thursday October 12, 2023 @02:16PM (#37860823)
Have you tried taking the time instead of asking for it? It works surprisingly well in my experience, with very little pushback (and when there's pushback, it's important to understand why and address it). The first few months you focus on delivering value without rocking the boat. You probably don't have enough context to make any meaningful changes anyway. Then when it's time to groom stories, you select the time it takes to do a proper job, to make I improvements, and as long as it's not ridiculous, who's going to challenge you on it, and based on what?

Of course, you need to pick the right battles. Sometimes that hack to fix a production issue will stay like that for ages, and the proper fix will never be done, and that's the way it is.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by cvoss on Thursday October 12, 2023 @12:54PM (#37859757)
Strongly object to the assessment that developers have this half checked-out mindset. Now, of course, this would differ from workplace to workplace, so YMMV, but at my workplace, so many developers have the craftsmanship attitude. They'd love to solve hard problems and solve them well, not because the solutions are worth money in a marketplace, but because they are intrinsically valuable, interesting, meaningful, delightful, etc. to the developers.

The problem is the business doesn't care about anything except how much money can be gotten out it, often with a short-term horizon.

So the developers and the business people walk shoulder to shoulder for a little ways, where the two interests are aligned, but then we part ways at the point of introducing technical debt. As a developer, I'm not free to take the time I need to pay down this debt, because of business constraints.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by ryandrake on Thursday October 12, 2023 @02:02PM (#37860647)
You'll notice I never blamed developers in particular. This attitude is shared across "software as a whole" including developers, their managers, their PMs, their exec leadership. Everyone is part of the machine that is prioritizing money and a short-term horizon over craftsmanship and quality, including but not limited to the developers. We all have agency.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by ChrisMarshallNY on Thursday October 12, 2023 @12:54PM (#37859740)
I made this post[0], some time ago, and I think it dovetails nicely, here:

>

Exactly.

I read a book, where one of the characters is a smith. It has this exchange, between him, and another character:

    "Always do the very best job you can," he said on another occasion as he put a last few finishing touches with a file on the metal parts of a wagon tongue he was repairing.
    "But that piece goes underneath," Garion said. "No one will ever see it."
    "But I know it's there," Durnik said, still smoothing the metal. "If it isn't done as well as I can do it, I'll be ashamed every time I see this wagon go by -and I'll see the wagon every day.”
[0] https://news.ycombinator.com/item?id=28086786
Re:Can't Be Fucked: Underrated Cause of Tech Debt by TheIronMark on Thursday October 12, 2023 @02:54PM (#37861420)
This was the quote that came to mind. I read that book many times as a kid and that quote really stuck with me.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by inglor_cz on Thursday October 12, 2023 @04:30PM (#37862781)
Ah, Belgariad. I like David Eddings.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by ChrisMarshallNY on Thursday October 12, 2023 @05:26PM (#37863367)
I liked the Belgariad, Mallorean, Elenium, and Tamuli series. The Redemption of Althalus was ... bearable.

I suggest avoiding The Elder Gods series.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by thrwy_918 on Thursday October 12, 2023 @12:51PM (#37859700)
I think an important difference, for me, is that at a certain point the chest of drawers is finished.

Software - or at least, the kind of software I have worked on in my career - is never finished. It is a neverending ship of theseus.

I can muster motivation to try really hard on something that has an end point. But the idea of maintaining that kind of motivation and focus on a project that just goes on and on and on is, for me, near-unimaginable. You could pay me a million dollars a year and I think I would still really struggle with it. It's something I think about a lot and struggle with, because I have certainly had colleagues who seem to be able to maintain that level of craft on software projects.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by ryandrake on Thursday October 12, 2023 @01:53PM (#37860513)
> I think an important difference, for me, is that at a certain point the chest of drawers is finished.

> Software - or at least, the kind of software I have worked on in my career - is never finished. It is a neverending ship of theseus.

Totally agree. I've done several rants on HN about the software industry's inability to declare their products "done" and moving on. Every product that we complain about becoming "enshittified" should have been declared "done" and developers pencils-down years ago.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by Xophmeister on Thursday October 12, 2023 @12:56PM (#37859789)
There are, of course, alternative metrics for "quality". Furniture with non-visible components made of plywood is more ecologically sustainable, for example (lighter and cheaper, too); one could even push this to using veneer everywhere. The furniture's beauty, form or utility is not affected, while being less of a burden on the world.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by hvs on Thursday October 12, 2023 @01:07PM (#37859951)
You want craftsmanship? Pay for it and make time for it. Too many companies claim to want that but are both unwilling to pay top dollar and then don't provide enough time to actually do it.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by MattPalmer1086 on Thursday October 12, 2023 @12:47PM (#37859642)
It's not necessarily the developers fault here. One of the reasons I stopped being a professional developer is I like writing beautiful or well crafted code. Very few businesses will afford you that luxury. I enjoy the code I write in my own time.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by nullfield on Thursday October 12, 2023 @02:22PM (#37860915)
For my own curiosity, what did you move to that (as a person who cares about craftsmanship) is fulfilling enough, etc.?
Re:Can't Be Fucked: Underrated Cause of Tech Debt by MattPalmer1086 on Friday October 13, 2023 @03:19AM (#37867751)
Infosec. That isn't about craftsmanship either, but does bring together technical and people skills.

I get my craftsmanship fix writing code at home. Just couldn't bear doing it at work the way I had to.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by theptip on Thursday October 12, 2023 @12:55PM (#37859781)
If that is you, then all good. I’m sure there are hobby carpenters getting joy from building wonky cabinets, and that is fine too.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by WJW on Thursday October 12, 2023 @03:54PM (#37862329)
I made a cabinet for my wife and it was both significantly more wonky AND more expensive than the IKEA equivalent, even if you counted my labor as being worth zero euro per hour. It also took several months instead of just ordering one. Still had fun though, which is what a hobby is all about.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by heisnotanalien on Thursday October 12, 2023 @12:47PM (#37859646)
Then the PM comes and asks you to change the wood used on the back of the chest of drawers because they have some brain fart.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by mschuster91 on Thursday October 12, 2023 @12:48PM (#37859654)
> I think software as a whole suffers greatly from this "well, I got it barely done, technically fulfilling the requirements, so my work is over" attitude.

The core issue is that going above and beyond that isn't rewarded in most cases - to the contrary: if you take the time to do it right (write proper unit/integration/end-to-end tests, refactor when you see a steaming pile of poo instead of just taking another dump straight on the pile), you'll end up "less" productive on paper than your colleagues "solving" ticket after ticket - and most organizations run that way, particularly those where the business model doesn't allow for good code. The worst cases tend to be "fully agile" shops that don't account for refactoring / code quality cleanups at all.

Apple is the unicorn in that regard (or at least it was up until the last years, their software quality definitely declined...): their products cost a ton of money for the customers, so the customers expect good quality, Apple as a company has the profit margin to actually make that happen, and most importantly: at the helm they had Steve Jobs who actually "had an eye" for experience instead of some run-off-the-mill MBA beancounter.

(Do note that there is also the other extreme: just look at Juicero. A machine built to squeeze out juice packs, with engineering practices like it would be used in spaceflight)

Re:Can't Be Fucked: Underrated Cause of Tech Debt by shadowgovt on Thursday October 12, 2023 @12:56PM (#37859795)
I rarely meet a carpenter IRL who won't single-ply that backboard.

It's a feature, not a bug; the chest of drawers is heavy enough already and someone's gonna have to move it someday. Making the back as thin as possible is doing a kindness to a future owner when they have to relocate the damn thing.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by mvdtnz on Thursday October 12, 2023 @01:51PM (#37860475)
> I rarely meet a carpenter IRL who won't single-ply that backboard.

Yeah, that's the point. Do you want to be one of the millions of craftspeople who doesn't sweat the details? Or do you want to be exceptional?

Re:Can't Be Fucked: Underrated Cause of Tech Debt by shadowgovt on Thursday October 12, 2023 @02:29PM (#37861017)
The point is when one sweats the details, one concludes that making the backboard full-thickness varnished board is an exercise in ego, not focusing on the user. It makes the user's experience worse for no other reason than some arbitrary artist's definition of simplified aesthetic.

... definitely a lesson I think many software engineers should internalize.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by johnnyanmac on Friday October 13, 2023 @03:25AM (#37867782)
>It makes the user's experience worse for no other reason than some arbitrary artist's definition of simplified aesthetic.

sure, no other reason than "less stability". You may or may not need the stability, but sacrificing it so that is 2% easier to carry into a house (which happens maybe, once per 2 years for an especially nomadic person) seems to be the exact kinds of corners management likes to take.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by shadowgovt on Friday October 13, 2023 @12:03PM (#37872090)
My classic Macs still have handles on their tops, and they were designed to be desktop machines.

A toast to the hardware manufacturer that considers the fact that tangible objects get moved.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by WJW on Thursday October 12, 2023 @03:58PM (#37862375)
That depends. What is the price of exceptionality?

In other words, which percentage of your lifetime earnings would you be willing to give up to not add a plywood backboard (or the software equivalent)? 10%? 50%?

Re:Can't Be Fucked: Underrated Cause of Tech Debt by johnnyanmac on Friday October 13, 2023 @03:22AM (#37867766)
well, in my field, the software equivalent of cutting corners these days are adding skinner box mechanics to a game. in a darker timeline, it would involve making cryptocurrency fronts masqurading as artistic expression.

I'd happily give up 50% to not encourage that. But I am also fortunate in that 50% of a very senior SWE is still a very liveable wage.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by barrysteve on Thursday October 12, 2023 @12:56PM (#37859794)
Jons also said you have to start with the customer experience and work from there.

He said that trying to build the best tech ever and trying to market it, does not work, and he had the scar tissue to prove it. His NEXT experience echoes the truth.

Making a high-quality product requires an Entire Agreement, you cant buy from a supplier who only sells plywood for your chest of drawers.

Apple controls it's tech from top to bottom and that's the only way to effect serious change and uphold quality standards.

It is spirit-draining to pick up some off the shelf tech and find a million things with it that should be structured differently..... but we all do it and that's how it is.

We don't have top-to-bottom control and easy ways to change product designs, that Apple has, until we all get that ability, high quality is a failable target.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by j7ake on Thursday October 12, 2023 @01:43PM (#37860376)
I don’t know what fictional carpenters Jobs was talking about. Real carpenters need to be pragmatic and cost effective to stay competitive in the market.

Using expensive wood or spending time doing things nobody will see will lower your throughout and raise your costs unnecessarily for the customer.

Even a master carpenter has finite time and money. Every morcel of time spent doing things nobody can see is time not spent doing other things with more visibility. The masters are still competing with other masters in a globally competitive market.

So Job’s fictional carpenter would get outcompeted by the hypothetical free market where carpenters of equal skill are producing more at lower cost.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by JohnFen on Thursday October 12, 2023 @01:55PM (#37860547)
It depends on the target market. If I were making furniture aimed at the wealthy, you better believe that every piece of wood in it will be high quality -- and the price I charge would reflect that. If I were making furniture for normal people, price is a greater concern and appropriate tradeoffs must be made.

Apple, during the Jobs days anyway, produced luxury goods for a luxury price. Given the market they were addressing, Job's comments make complete sense.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by j7ake on Thursday October 12, 2023 @02:11PM (#37860760)
I think every carpenter wishes they could make furniture exclusively for the wealthy and famous. But they have to compete with all the other carpenters at similar skill level for their business.

Making furniture with features that no one can see except the carpenter is a disadvantage compared to the same carpenter who focuses their time making more their furniture more visually appealing to their customers.

Everyone seems to forget that Apple was nearly bankrupt in the 90s because no one was willing to pay so much for their product when Microsoft did it cheaper and similar quality (from the users perspective).

Re:Can't Be Fucked: Underrated Cause of Tech Debt by JohnFen on Thursday October 12, 2023 @05:58PM (#37863709)
> I think every carpenter wishes they could make furniture exclusively for the wealthy and famous.

Sure. It's a rather tiny market that can't support a lot of furniture makers. But it can support at least a couple, and I'll bet you that those ones aren't going cheap on materials.

> Everyone seems to forget that Apple was nearly bankrupt in the 90s

I certainly haven't forgotten, but that's orthogonal to my point. My point is that in many industries, there are high-quality, very expensive versions of the products. One of the things that makes them high quality and expensive is that they don't cut corners. In electronics, I've seen the same effect, where extra care and expense was placed into things that technically don't need it and are unlikely to ever be seen by the customer. That extra care and expense matters to that demographic, though.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by sgarland on Thursday October 12, 2023 @06:48PM (#37864140)
Look at automakers: there are varying levels of luxury / craftsmanship. There’s a video on YouTube [0] about Rolls-Royce wherein among other things, they’re shown checking a dashboard insert to sub-mm precision for the even height of embedded diamonds, and rejecting the first attempt. Weeks of work gone, thanks but try again.

While Apple is certainly not on the same level as that, the point is true craftsmanship and meticulous attention to detail does still exist in consumer goods, and can be handsomely profitable.

[0]: https://youtu.be/ZcFrFjl-RQs

Re:Can't Be Fucked: Underrated Cause of Tech Debt by johnnyanmac on Friday October 13, 2023 @12:56AM (#37866859)
>I think every carpenter wishes they could make furniture exclusively for the wealthy and famous. But they have to compete with all the other carpenters at similar skill level for their business.

I guess the metaphor applies here too. Some will take that pride and rise up. Some will take that pride and fall behind despite being equally qualified as the ones who rose. Others will coast along and make stable business.

I think where the metaphor breaks down is visibility. Sure, that cheap plywood isn't normally visible, but a customer who looks will find it. very few iphone consumers have the skills to find bad code and fewer care as long as it does what it is intended. It's probably more akin to selling hot dogs than selling a chair.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by ryandrake on Thursday October 12, 2023 @01:57PM (#37860570)
> So Job’s fictional carpenter would get outcompeted by the hypothetical free market where carpenters of equal skill are producing more at lower cost.

I think the point of the story is that Jobs's carpenter is not even trying to compete with Walmart trash products. He is deliberately avoiding the market that is sensitive to higher costs.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by j7ake on Thursday October 12, 2023 @02:03PM (#37860663)
The point is that the world is large and there are many master carpenters.

This hypothetical carpenter would be competing with other carpenters at the same skill level.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by kridsdale3 on Thursday October 12, 2023 @04:01PM (#37862414)
Thank god the world of Software and Hardware engineers competing with Apple is quite small.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by mattgreenrocks on Thursday October 12, 2023 @02:01PM (#37860637)
This is not wisdom, this is someone venting.

The truth is way more nuanced than “the master carpenter would get outcompeted.”

Re:Can't Be Fucked: Underrated Cause of Tech Debt by j7ake on Thursday October 12, 2023 @02:07PM (#37860711)
The truth is also way more nuanced than what Jobs is describing. I was just showing how ridiculous his argument is.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by mattgreenrocks on Thursday October 12, 2023 @02:16PM (#37860824)
I advocate for a non-naive optimism here because one’s views on this greatly influence one’s mental climate.

If you believe the race to the bottom prevents you from doing great work, then you will not do great work.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by j7ake on Thursday October 12, 2023 @02:43PM (#37861211)
If one takes a craft to be their profession, then one must be pragmatic because time and resources are finite. Otherwise one should take the craft as a hobby instead.

Spending all your time polishing details that nobody cares about is not doing great work, it is wasting time. Time that could have been spent experimenting on new techniques, trying new ideas, taking on new projects.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by johnnyanmac on Friday October 13, 2023 @01:05AM (#37866913)
>Time that could have been spent experimenting on new techniques, trying new ideas, taking on new projects.

this mindset seems to be the exact ones that coporate companies sinking in tech debt has. The absurd extreme of this is that carpentry is a waste of time when you could be making more money as a doctor.

Fact is you don't need to be 100% optimal on time and resources and you don't need infinite money to live. I'm sure carpenters work on thin margins but a few pieces of plywood won't bankrupt them and leave theif families on the streets.

If someone sacrifices a little time and money for personal satisfaction and pride, that's fine. If they want to maximize profits that's also fine (as long as they aren't abusing their labor to do so). C'est la vie.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by wolverine876 on Thursday October 12, 2023 @05:27PM (#37863377)
> Job’s fictional carpenter would get outcompeted by the hypothetical free market where carpenters of equal skill are producing more at lower cost.

Maybe someone should have explained to Jobs how to compete in the marketplace. Another approach is to try to understand why Jobs said those things given the obvious economic costs that you mention, and how it led to the most valuable company in the history of the world.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by kibwen on Thursday October 12, 2023 @05:48PM (#37863619)
Jobs was fired after making this quote, because his approach nearly ruined the company. The modern Apple has learned the lesson that you don't need to actually create quality products, you just need to fool people into thinking your products are quality (and it sure helps if all your competitors are even worse).
Re:Can't Be Fucked: Underrated Cause of Tech Debt by wolverine876 on Thursday October 12, 2023 @05:56PM (#37863700)
My point was, instead of dimissing people whose ideas conflict with ours, we can expand our ideas by understanding them. Also, if you reduce it to a choice between listening to Jobs or you ...
Re:Can't Be Fucked: Underrated Cause of Tech Debt by mattgreenrocks on Thursday October 12, 2023 @01:51PM (#37860479)
Absolutely. Tech as a whole has almost zero sense of collective aesthetic. And that harms the work we do, makes it harder for people to get into the field, and promotes very shallow, formulaic approaches.

You just got it barely working? Great, now make it beautiful while you have the context. It’s done when it is tight, fielded, and you can forget about it.

On tech “culture”: My worst-rated comment on HN was when I suggested devs should spend 15m less on Twitter/HN and put them toward writing more unit tests so they’d understand and enjoy their work more.

To me, that sums up where we are now.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by yetihehe on Thursday October 12, 2023 @02:03PM (#37860662)
> My worst-rated comment on HN was when I suggested devs should spend 15m less on Twitter/HN

Because everybody knows that spending 15m less on HN will not give you better anything. It's like saying "working more hours a day you will have more code". It just leads to burn-out. Most programmers need some idle time between thinking. Or like saying "Want to have house? Eat less avocado toast and skip that starbucks coffee."

Re:Can't Be Fucked: Underrated Cause of Tech Debt by mattgreenrocks on Thursday October 12, 2023 @03:50PM (#37862264)
And people tune out even faster if you say to put more time in.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by hanspeter on Thursday October 12, 2023 @02:36PM (#37861117)
I've been giving a lot of thought to how engineers are different in this way. Assuming everyone has similar motivation and work ethic, I think it boils down to what satisfies you — or more precisely, what irks you the least.

For some engineers, the thought of leaving some things undone gives them the icky feeeling, while the thought of not completing a challenge in an expected timeline doesn't bother them. For others, it's the opposite.

I think this holds true even for personal projects, where there's no manager or sprint to impose a time constraint.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by subarctic on Thursday October 12, 2023 @05:16PM (#37863250)
That's an interesting idea to think about: if the thought of not completing a challenge in an expected timeline bothered me so much that I took every step to meet the timeline, and leaving something undone didn't give me a very strong icky feeling, what would I do differently when things inevitably turn out to be more complicated than I originally thought? Turn in my code in a non-working state and say it's done?
Re:Can't Be Fucked: Underrated Cause of Tech Debt by hanspeter on Friday October 13, 2023 @06:16PM (#37876222)
In the extreme case, I guess so. The other extreme is the person that will never complete a task as there's always some detail to refine.

But it's a spectrum where most people are somewhere between the extremes.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by d-lisp on Thursday October 12, 2023 @02:58PM (#37861479)
Well, if you are the type of carpenter that afford doing the best drawers and dominate your market, you can probably work slower. e.g. Some luthiers sell their instruments 5 years before their completion.

If you're the middle-end drawer maker, then you probably will put plywood on the back so that you can build more in less time and call it a day.

And in the end no one will ever see it.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by thih9 on Thursday October 12, 2023 @04:10PM (#37862547)
It happens. E.g.:

> In a way I would have loved to ship with that hack in there, but once we found the cause of the error message I couldn't in good conscience leave the hack in there. Besides which hand editing it added time to completing the build, which was inefficient.

Source: https://www.wcnews.com/news/2023/09/18/mythbusters-wing-comm...

The link is about investigating the origin of the “thank you for playing wing commander” error message, which seems fitting too.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by eweise on Thursday October 12, 2023 @04:30PM (#37862790)
Steve Jobs got to decide when it was done. Engineers don't usually have that luxury. Its usually done when the business wants it done and then there's another feature waiting to be done.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by willsmith72 on Thursday October 12, 2023 @04:48PM (#37862982)
Eh there are certainly places for that mentality, but I prefer working with engineers and in places that do the opposite. Sure you can use the finest wood on the back, and polish the underside beautifully, but your beautiful chest is probably either never going to be bought or ripped apart and the wood reused for a chair. A lot of times, the fancy back of the chest is a complete and utter waste of time and effort.

Good engineers have to know when they're building a beautiful chest for public display for 20 years, and when their customer doesn't even know if they want a chest yet. It's a matter of context and being aware enough of the business circumstances to make the right decision.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by crgwbr on Thursday October 12, 2023 @09:17PM (#37865350)
As a kid, my dad (a mechanical engineer) explained this to me in a really memorable way. He was planning a model bridge building contest for my friends and me, and I complained that he was making too many rules. Allowed building materials, maximum qty of various things, etc. He pointed out that without these rules, it’d be perfectly acceptable to just fill the simulated valley with concrete—there’s no way that would lose the load bearing test. But it’s also not fun and defeats the purpose of the contest. _The constraints were important._ It’s the constraints that make it engineering. So you could use a beautiful piece of solid wood on the back of your dresser. But most likely that breaks the constraint of cost. Knowing where to save money on material without it getting noticed is where the engineering is.
Re:Can't Be Fucked: Underrated Cause of Tech Debt by willsmith72 on Friday October 13, 2023 @11:00AM (#37871402)
very well said
Re:Can't Be Fucked: Underrated Cause of Tech Debt by MrPatan on Thursday October 12, 2023 @04:49PM (#37862995)
Precisely the exact opposite is true.

There are countless software projects that have never seen the light of day because the developers spent all the time polishing the back of the cabinet (and the product managers designing the door handles), and nobody did anything about the actual drawers.

You've seen the survivors of the process which have ugly backs of the cabinets because the developers started on the actual drawers and, because more likely than not it was somebody elses money paying for back-of-the-cabinet-polishing, and they got stopped at the end.

Also, if I have to delay the building of my kitchen because the cabinets are late, and I call the shop and they cheerfully tell me that they were ready yesterday but they haven't finished polishing the backs, oh man, I don't know how happy am I going to be about their excellent craftsmanship, you know?

Re:Can't Be Fucked: Underrated Cause of Tech Debt by johnnyanmac on Friday October 13, 2023 @03:18AM (#37867742)
>There are countless software projects that have never seen the light of day because the developers spent all the time polishing the back of the cabinet (and the product managers designing the door handles), and nobody did anything about the actual drawers.

maybe some hobby projects. I can't name a product that failed due to too much polishing. It's almost always due to overscoping or underfunding or political reasons. Sometimes first to market is important, but it's not the difference between success or failure simply due to timing.

>you've seen the survivors of the process which have ugly backs of the cabinets because the developers started on the actual drawers

And I've also seen "survivors" that died because the drawers weren't actually bolted on but got plenty of funding on the show floor with "no touching allowed" signs. Absolutes, sith, etc.

> if I have to delay the building of my kitchen because the cabinets are late, and I call the shop and they cheerfully tell me that they were ready yesterday but they haven't finished polishing the backs, oh man

And that's a classic miscommunication. Some managers see unnecesary polish when in reality they were still bolting the drawer in but they think "it's good enough".

Re:Can't Be Fucked: Underrated Cause of Tech Debt by MrPatan on Friday October 13, 2023 @09:50AM (#37870592)
This may be one of the only known instances where the plane-with-bullet-holes meme is applicable:

Some people see all those (planes) software projects (coming back from war) being live ridden with (bullet holes) technical debt, and the first thing that comes to their mind is ("better reinforce the places with most bullet holes!") "Better make sure to deal with that technical debt!"

Fascinating!

Re:Can't Be Fucked: Underrated Cause of Tech Debt by nonameiguess on Thursday October 12, 2023 @08:49PM (#37865120)
Seeing a lot of people missing the point in response to this. Jobs' comment here makes me think of the Lord of the Rings appendices that came out when the trilogy was first released on DVD. The behind scenes on the set building showed their artists had carved all of these intricate detailed horses onto parts of the furniture in Edoras that would never show on screen, even knowing they would never show on screen.

Lord of the Rings didn't fail to ship or lose money because of this. They made money, but more than that, they created something that will be remembered forever for quality and craftsmanship. Not every carpenter has to care that much and the same is certainly true of people shipping computing equipment. Just like Peter Jackson, Steve Jobs got rich, but he won't be remembered for being rich. He's remembered for quality and craftsmanship. I can't sit here and say everyone who builds anything should build for maximum quality, but I have trouble believing we'd be worse off as a world if we had more Notre Dames and Parthenons and fewer pothole-riddled main streets with falling apart boarded up storefronts.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by johnnyanmac on Friday October 13, 2023 @03:29AM (#37867808)
Lot of burned out or CBF devs in the discussion, I suppose. It is a bit of a shame how tech in some ways more or less became the modern version of entrepreneurship, a way to hopefully work on the Next big thing(tm) and then cash out of life.

I get it but as an aspiring artisan it also makes me question how I even can get to that point. Your environment determines a lot of your growth and COVID has thrown a tempest into that equation.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by mbrochh on Thursday October 12, 2023 @10:37PM (#37865896)
I take it, Steve Jobs must have absolutely fucking hated IKEA furniture? :)
Re:Can't Be Fucked: Underrated Cause of Tech Debt by raincole on Friday October 13, 2023 @12:57AM (#37866866)
It's basiscally saying that you should put your requirements before the customers'.

All the respect to Steve Jobs, but I know I'm not him, someone who is probably top 0.1% in intelligence and luck. I'll put customers' requirements before mine.

Re:Can't Be Fucked: Underrated Cause of Tech Debt by ChatGTP on Friday October 13, 2023 @05:50AM (#37868756)
I just feel like doing nice wood work is a lot easier than building shit on top of shit. Mostly I mean, an organization is full of shit, shit process, software and unfortunately, people. It takes a high level of mastery and maturity to know when to bust out the scalpel and start cutting the cancer out and know how to do it effectively without re-occurrence.

The first thing a good carpenter will do is make sure the house they're about to renovate is square and true. If it's not, they will have tricks to make the walls square and true, they're not just going to polish the turd or put glitter on it.

Jobs at Apple probably had a lot of opportunity to work on a lot of greenfield things, which I'd say 99% of people don't have the luxury or doing.

I also like his quote and attitude btw, just realistically, most of us won't ever get live in that world.