Live data from Hacker News

Professional Corner-Cutting (2016)

blog.ometer.com

11–20 of 142 posts

Re: Professional Corner-Cutting (2016)

#11
Found this particularly tricky with hobby projects around cost. I can spend a bit more time on clever engineering to fit it into free tier but that saves me what. Price of a coffee? For loads of extra complexity and time

Re: Professional Corner-Cutting (2016)

#12

Am I hallucinating, or does anyone remember the Steve Jobs story as the exact opposite? He used backs of a cabinet as an example of when it’s okay to cut corners, since nobody would ever see it. I don’t remember where I heard it or what the context was, but it was something along the lines of him trying to get one of the early Mac engineers to ship faster. There was a lot of corner cutting to get the original iPhone…

I think that's two very different things - a complete set of features done poorly vs. an incomplete set of features done well. In general it's best to err on the side of the latter, it's going to give the customer a better UX.

What exactly was the original iPhone missing? The only thing in the OS I recall was copy/paste. The other things we'd take for granted today likely weren't conceived then, including the App Store. The main issues was that it was a frustratingly slow experience, so OS/proc performance, and EDGE which was the best widely available at the time was insufficient.

Re: Professional Corner-Cutting (2016)

#13
post #9
post #6

Earlier quoted context omitted.

“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.”

Not only would a professional carpenter use plywood, it may be a sounder choice because of its stability/weight ratio.

A plywood back would be prone to water damage, however

Re: Professional Corner-Cutting (2016)

#14
post #9
post #6

Earlier quoted context omitted.

“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.”

Not only would a professional carpenter use plywood, it may be a sounder choice because of its stability/weight ratio.

Yeah, it's a weird metaphor, especially since plywood is a premium, structural material. I wish my Ikea furniture used plywood. Instead, you get fiberboard.

It's also a good example of how the metaphor this blog post is predicated on can fall apart. Your customers care about durability, but they make purchasing decisions based on cost and outward appearance. In a world like that, where you can't satisfy all requirements at once, you inevitably end up cutting corners on the things the customer cares about but can't measure. But is that right? That's how you end up with $200 furniture that lasts a year or two in a home with children or pets.

It's also easy to neglect cumulative costs. Back to software: does it matter if your app uses 100 MB of memory when it could be using 1 MB? On an individual basis, no, because RAM is cheap. Cumulatively, when every other app developer thinks the same, and when you multiply it by billions of devices, your decision might have actually cost lives if you consider the increased emissions and countless other distant externalities.

A milder version of the blog's claim is definitely true. You should pick your battles. But it's all about trade-offs, there are few problems that truly don't matter to anyone.

Re: Professional Corner-Cutting (2016)

#16
post #9
post #6

Earlier quoted context omitted.

“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.”

Not only would a professional carpenter use plywood, it may be a sounder choice because of its stability/weight ratio.

The point isn't about utility, it's about aesthetics - it's about how the product is finished. What you use in the back should be the same as elsewhere.

Re: Professional Corner-Cutting (2016)

#17
post #9

Earlier quoted context omitted.

Not only would a professional carpenter use plywood, it may be a sounder choice because of its stability/weight ratio.

A plywood back would be prone to water damage, however

The best option is plywood for the dimensional stability, varnish for waterproofing, and solid wood edge trim to give some resilience against mechanical damage that would otherwise risk delamination. This also hides the ugly part of the plywood.

Re: Professional Corner-Cutting (2016)

#18
Oftentimes managers will make demands that interfere with ownership of the code. Such as requiring something to be finished in half the time it would take to do it without technical debt. Over and over and over again.

I have had a lot of clients like this. It's very common especially for lower budget projects. You can literally cut corners you don't really want to or just get replaced by someone who does.

They will often also insist on certain technical decisions like choice of programming language or framework.

Re: Professional Corner-Cutting (2016)

#19

Am I hallucinating, or does anyone remember the Steve Jobs story as the exact opposite? He used backs of a cabinet as an example of when it’s okay to cut corners, since nobody would ever see it. I don’t remember where I heard it or what the context was, but it was something along the lines of him trying to get one of the early Mac engineers to ship faster. There was a lot of corner cutting to get the original iPhone…

You are correct. Steve definitely believed in doing things properly because you know they're there, regardless of who can see it: https://folklore.org/Signing_Party.html

> Steve came up with the awesome idea of having each team member's signature engraved on the hard tool that molded the plastic case, so our signatures would appear inside the case of every Mac that rolled off the production line. Most customers would never see them, since you needed a special tool to look inside, but we would take pride in knowing that our names were in there, even if no one else knew.

Re: Professional Corner-Cutting (2016)

#20
> If the technical debt is a problem, 1) we shouldn’t have put it in there, and 2) we should include it in our estimates and address it.

Yes. Don't tell your boss that you'll need to take time to address technical debt. The boss will always say "No don't do that, just add the feature". Sometimes they add "We'll fix that later."

Later never happens and eliminating related technical debt is part of implementing the feature.

Don't ask your boss about this stuff. It's part of your job and it's something you understand that your boss probably doesn't.

Post reply on HN