Live data from Hacker News

Is management pressuring you to deliver unfinished code? (2020)

iism.org

1–10 of 78 posts

Re: Is management pressuring you to deliver unfinished code? (2020)

#3
This reads a lot like a lean/MVP manifesto. I would say that there is always a pressure to deliver working code, but that “unfinished” should always be in terms of project scope and not in terms of either functionality or reliability. “Code” is the wrong terminology here.

It’s OK to not have every feature implemented. But it’s not OK to ship half-baked, untested functionality, no matter what the “code” looks like.

Re: Is management pressuring you to deliver unfinished code? (2020)

#4
One of the problems I have found is that we don't talk the same language when communicating with the business, we use terms like "Technical Debt", "Test Coverage", even "Minimal Viable Product".

In my opinion the universal variable across all these is risk, and it's easy for all to grasp what we mean when we say the word "Risk".

There is delivery risk, will be get this out in a timely fashion for the market.

There is operational risk, will this fall over if we get 10x users or if someone looks at it funny.

There is market fit risk, are we building the right thing for the customer.

Framing these conversation with the business as functions of risk analysis and management is a fundamental part of leadership in my opinion.

Re: Is management pressuring you to deliver unfinished code? (2020)

#5
post #4

One of the problems I have found is that we don't talk the same language when communicating with the business, we use terms like "Technical Debt", "Test Coverage", even "Minimal Viable Product". In my opinion the universal variable across all these is risk, and it's easy for all to grasp what we mean when we say the word "Risk". There is delivery risk, will be get this out in a timely fashion for the market. There is…

I am not versed enough in car things, but it seems to me this would be something maintenance shops nailed down decades ago. How would they convey that your car is lacking maintenance even if you can still drive it to work ?

Perhaps we should go with "needs repair" or something like that ?

"Risk" feels like insurance territory (which goes along with "there is always some risk"), and a lot of people beautify the notion of taking risks to get higher gains.

Re: Is management pressuring you to deliver unfinished code? (2020)

#6
> Unfinished code that is full of race conditions, performance problems, outright bugs and worst of all, poor to non-existent product/market fit.

The last one is so different than the rest. Bugs shouldn't even "ship" internally in that they shouldn't really be making it out of feature branches often for some reasonable value of often.

But back to the last one, that's something that should be decided with high confidence before the first line of code is written!

Re: Is management pressuring you to deliver unfinished code? (2020)

#7
post #4

One of the problems I have found is that we don't talk the same language when communicating with the business, we use terms like "Technical Debt", "Test Coverage", even "Minimal Viable Product". In my opinion the universal variable across all these is risk, and it's easy for all to grasp what we mean when we say the word "Risk". There is delivery risk, will be get this out in a timely fashion for the market. There is…

I am not versed enough in car things, but it seems to me this would be something maintenance shops nailed down decades ago. How would they convey that your car is lacking maintenance even if you can still drive it to work ? Perhaps we should go with "needs repair" or something like that ? "Risk" feels like insurance territory (which goes along with "there is always some risk"), and a lot of people beautify the notion…

Risk-taking is very cultural dependent, in some contexts people would avoid taking risks as their default option.

That said, I feel that car shops just work because, well, it's the law, especially in some countries.

In the end "needs repair" is the same as saying "mitigating accident risk".

Re: Is management pressuring you to deliver unfinished code? (2020)

#8
post #6

> Unfinished code that is full of race conditions, performance problems, outright bugs and worst of all, poor to non-existent product/market fit. The last one is so different than the rest. Bugs shouldn't even "ship" internally in that they shouldn't really be making it out of feature branches often for some reasonable value of often. But back to the last one, that's something that should be decided with high confide…

The last one is the hardest to get right in my experience. Sometimes you just won’t know until you start asking people to put their hand in their pocket.

Re: Is management pressuring you to deliver unfinished code? (2020)

#9
post #4

One of the problems I have found is that we don't talk the same language when communicating with the business, we use terms like "Technical Debt", "Test Coverage", even "Minimal Viable Product". In my opinion the universal variable across all these is risk, and it's easy for all to grasp what we mean when we say the word "Risk". There is delivery risk, will be get this out in a timely fashion for the market. There is…

I'd like to second this line of thinking.

I've built a software business over the last 15 years using this exact communications theme, and whilst my little business is a sample size of 1, we've certainly found that framing conversations with customers in terms of "risk" has kept us all on the same page.

I'd also add that by adopting this communication style, one can then look at opportunities in a new light as well. On that note, I was lucky to read a book called "IT Risk" (by Westerman & Hunter, HBS Press [0]) back when I first started the company, and it gave me an interesting perspective on risk.

In a nutshell, once you identify and minimise/eliminate all the usual risks (many of which you identified in your list), you can then reorient your business in such as way so as to start actively taking risks which stand to improve your overall offering.

This in turn allows you to build a strategic moat of sorts, because whilst your competitors are still scrambling to address the usual risks, you're actively taking on opportunistic risks which at times reap tremendous rewards.

[0] https://www.amazon.com/Risk-Turning-Business-Competitive-Adv...

Re: Is management pressuring you to deliver unfinished code? (2020)

#10
post #4

One of the problems I have found is that we don't talk the same language when communicating with the business, we use terms like "Technical Debt", "Test Coverage", even "Minimal Viable Product". In my opinion the universal variable across all these is risk, and it's easy for all to grasp what we mean when we say the word "Risk". There is delivery risk, will be get this out in a timely fashion for the market. There is…

There is another thread on the front page about every engineer having to try out consulting.

This is one of the ways to learn how to use language that business gets the point across.

Post reply on HN