Live data from Hacker News

Throwing away 18 months of code and starting over

tompiagg.io

41–50 of 89 posts

Re: Throwing away 18 months of code and starting over

#42
post #34

Earlier quoted context omitted.

Again - that's a business decision that needs to be made in the context of that business. The fact that testing was forbidden isn't in itself good or bad. It depends on that business context. THe post says nothing about how that decision was made, whether it was discussed, or if it was just his absolutist ideal he imposed without consideration of the broader cost-benefit. And I still feel the original comment doesn't…

Forbidding tests is not a business decision, it's a software engineering decision, and it's a remarkably poor one at that.

Hard disagree. It's both. Choosing one way or the other comes with potential risks and rewards to the business and it's up to business leadership to choose what risks they want to take. Your job as an engineer - if you are not part of leadership is to explain those risks / rewards, and then let them make the call.

Re: Throwing away 18 months of code and starting over

#43
post #2

Having a culture of not ever writing tests and actively disallowing them is so insane I can't even imagine why there's anything else in this post

[flagged]

> After we started hiring, it became a disaster.

When it stopped being two people he still forbade tests. In this decade. That is fucking nuts.

Fun fact: the guy I worked a 2 man project with and I had a rock solid build cycle, and when we got cancelled to put more wood behind fewer arrows, he and I built the entire CI pipeline. On cruisecontrol. And if you don’t know what that is, that is Stone Age CI. Literal sticks and rocks. Was I ahead of a very big curve? You bet your sweet bippy. But that was more than twenty years ago.

Re: Throwing away 18 months of code and starting over

#44
post #36

"For the longest time, I would NOT allow people to write tests because I thought that culturally, we need to have a culture of shipping fast" Tests are how you ship fast. If you have good tests in place you can ship a new feature without fear that it will break some other feature that you haven't manually tested yet.

I think the more specific description would be that "not writing tests allows shipping fast today, writing tests allows shipping fast tomorrow and afterwards".

It wasn't too long ago that I wrote tests for something that was shipped years ago without any automated tests. Figured it was easier doing that than hoping we won't break it.

Re: Throwing away 18 months of code and starting over

#45

Earlier quoted context omitted.

"The general tendency is to over-design the second system, using all the ideas and frills that were cautiously sidetracked on the first one. The result, as Ovid says, is a "big pile." - Fred Brooks, 'The Mythical Man Month' (1975)

Oh wow, it's from Mythical Man Month? I've been meaning to read that for years and still never have.

That and Brooks’ underrated “The Design of Design” are notable for having an almost impossible density of quotable aphorisms on every page. They’re all so relevant today that it’s hard to believe that he’s talking about problems he faced half a century ago.

Re: Throwing away 18 months of code and starting over

#47

I wouldn’t admit to this level of frankly incompetence. Wildly swinging dogmatism on how to do software development that’s so wrong you have to throw it all away - then repeating this failure loop multiple times. Doesn’t inspire any confidence in the person I wouldn’t get them to lead a project. Why would you be so loud and proud about all this.

Same. Admitting to it is one thing, but still it takes a certain kind of attitude to outright forbid people to write tests.

Re: Throwing away 18 months of code and starting over

#48
post #36

"For the longest time, I would NOT allow people to write tests because I thought that culturally, we need to have a culture of shipping fast" Tests are how you ship fast. If you have good tests in place you can ship a new feature without fear that it will break some other feature that you haven't manually tested yet.

Exactly. OP seems to have very limited understanding of software development if that fact has eluded him.

Re: Throwing away 18 months of code and starting over

#49

Earlier quoted context omitted.

He did not edit, and you're misunderstanding the meaning behind his post. Not everything needs to be pedantic and accurate, language is flexible, this is about communicating, not being right. What we really don't need is paragraphs of someone arguing because their own definitions differ slightly from the OP

>He did not edit He edited his reply to me multiple times... which is what made me suspect an edit to the original comment. But whatever, I'm happy to acknowledge his original intent even if he did state it more harshly. >What we really don't need is paragraphs of someone arguing because their own definitions differ slightly from the OP This is unnecessary. OP came out with "AUTHOR IS INSANE" even on the most generou…

> He edited his reply to me multiple times...

I got the sense from your reply that some extra clarity would be beneficial.

> This is unnecessary. OP came out with "AUTHOR IS INSANE" even on the most generous of interpretations.

I did not actually call the author insane, I called their decision to explicitly disallow testing insane. It's an insane decision. I am not _literally_ calling the author insane.

Re: Throwing away 18 months of code and starting over

#50
post #43

Earlier quoted context omitted.

[flagged]

> After we started hiring, it became a disaster. When it stopped being two people he still forbade tests. In this decade. That is fucking nuts. Fun fact: the guy I worked a 2 man project with and I had a rock solid build cycle, and when we got cancelled to put more wood behind fewer arrows, he and I built the entire CI pipeline. On cruisecontrol. And if you don’t know what that is, that is Stone Age CI. Literal stick…

Did anyone here actually look at the product they were actually building? It's an AI agent bug discovery product. Their whole culture is probably driven at a fundamental philosophical level about the problems of bug discovery. As he says: he wanted to rely on dogfooding - using their product as the way of spotting bugs.

That may have been spectactular naivete but it's not insanity.

The point I keep coming back to here that everyone is fighting me so hard on is that these blanket statements of: NO TESTS IS NUTS... absent of an understanding of the business context... is harmful.

Post reply on HN