Live data from Hacker News

Greybeard Stories: The Jamming Gyro

penzba.co.uk

1–10 of 47 posts

Re: Greybeard Stories: The Jamming Gyro

#2
This will be the last of these stories for a while. The previous two stories pretty much sank without trace, so I thought I'd finish and submit this one, then stop writing them up and re-think the effort.

In case you're interested:

http://news.ycombinator.com/item?id=996250

http://news.ycombinator.com/item?id=994358

Re: Greybeard Stories: The Jamming Gyro

#3

This will be the last of these stories for a while. The previous two stories pretty much sank without trace, so I thought I'd finish and submit this one, then stop writing them up and re-think the effort. In case you're interested: http://news.ycombinator.com/item?id=996250 http://news.ycombinator.com/item?id=994358

It's a pity people don't seem to be reading these. As a young coder, I find tales of the earlier ages of computing and electronics fascinating, and they serve as a good reminder that even today there are areas of computing where the philosophy is completely different from the release early/release often nature of the web development sector I work in.

Re: Greybeard Stories: The Jamming Gyro

#5

This will be the last of these stories for a while. The previous two stories pretty much sank without trace, so I thought I'd finish and submit this one, then stop writing them up and re-think the effort. In case you're interested: http://news.ycombinator.com/item?id=996250 http://news.ycombinator.com/item?id=994358

For what its worth I just read all three and really dug them! It might help to use a more regular blog format so people can post comments?

Re: Greybeard Stories: The Jamming Gyro

#6
post #4

They should've written unit tests obviously ;-)

I know it's a joke, but the truth is that this is exactly the kind of bug that unit tests won't find. The unit tests would have simulated a bunch of gyro settings, with and without a single gyro failure (but not two gyro failures, as that was an accepted design limitation).

Running the gyros with the torpedo still on the boat, however, would not have been tested because the designers didn't think of it. If they had thought of it, the failure wouldn't have happened in the first place.

Testing can verify that your software works within the space of behavior that you already know about. It can't make up for your failure to understand the problem fully.

Re: Greybeard Stories: The Jamming Gyro

#7

This will be the last of these stories for a while. The previous two stories pretty much sank without trace, so I thought I'd finish and submit this one, then stop writing them up and re-think the effort. In case you're interested: http://news.ycombinator.com/item?id=996250 http://news.ycombinator.com/item?id=994358

I hadn't seen the other two, but I've now read (and enjoyed) all three. Thanks!

Re: Greybeard Stories: The Jamming Gyro

#8
post #6
post #4

They should've written unit tests obviously ;-)

I know it's a joke, but the truth is that this is exactly the kind of bug that unit tests won't find. The unit tests would have simulated a bunch of gyro settings, with and without a single gyro failure (but not two gyro failures, as that was an accepted design limitation). Running the gyros with the torpedo still on the boat, however, would not have been tested because the designers didn't think of it. If they had t…

Same problem here:

http://news.ycombinator.com/item?id=994358

It's the unknown and unanticipated failure modes that cause the worst problems. Predicted failure modes at least have code to deal with them, even if it's buggy. Unit tests reduce the bugs, but non-existant code for unanticipated failures, while it doesn't have bugs, doesn't solve the problem.

Re: Greybeard Stories: The Jamming Gyro

#9
post #6
post #4

They should've written unit tests obviously ;-)

I know it's a joke, but the truth is that this is exactly the kind of bug that unit tests won't find. The unit tests would have simulated a bunch of gyro settings, with and without a single gyro failure (but not two gyro failures, as that was an accepted design limitation). Running the gyros with the torpedo still on the boat, however, would not have been tested because the designers didn't think of it. If they had t…

Testing can verify that your software works within the space of behavior that you already know about. It can't make up for your failure to understand the problem fully.

Thinking about correctly testing software is generally one of the best ways to improve your understanding of the problem.

I quite often find bugs during unit testing simply because I'm forced to think about how the software will break, rather than thinking about how it will (or should) work.

I think of it as being quite similar to waiting overnight to proof-read your own paper. You need to be in the context of the reader, not the writer, or your brain will skim over most mistakes.

Re: Greybeard Stories: The Jamming Gyro

#10

This will be the last of these stories for a while. The previous two stories pretty much sank without trace, so I thought I'd finish and submit this one, then stop writing them up and re-think the effort. In case you're interested: http://news.ycombinator.com/item?id=996250 http://news.ycombinator.com/item?id=994358

For what its worth I just read all three and really dug them! It might help to use a more regular blog format so people can post comments?

When I get back from my meeting I'll put links on them back to here - thanks for the idea. I should've thought of that.
Post reply on HN