Beta

Slashdot: News for Nerds

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

When 'can never happen' nearly kills

Peter (Professor) Fo (956906) writes | about 3 years ago

Software 1

Peter (Professor) Fo writes "An piece of earth-moving machinery was being transferred from road mode to rail mode. This involves bringing a set of hinged flanged idler wheels down onto the rails so the machine rides on them. To power and brake the machine when on the track the idlers are squashed up against the road tyres. The system logic is designed so that either the front or back wheels must be in either fully 'road' or fully 'rail' position to provide braking. That is you can't move one end through the on/off motion which leaves the idler wheel on the rail without braking from the tyre. This interlocking seems a good idea by forcing the unsafe state to happen one end at a time only. But somehow, possibly contamination of a potentiometer, the vehicle found itself in two half complete operations which left if free to run away and crash into a stationary train. (See page 36 for sequence of events.) Neither end could be moved to a safe position because each was interlocking the other. The operator was seriously hurt. The moral of the story is "Can never happen" does happen and you better have a way to deal with it safely."
Link to Original Source

cancel ×

1 comment

This is a good lesson for software engineers (1)

Jah-Wren Ryel (80510) | about 3 years ago | (#36731156)

Designing software defensively - having contingencies in place for all potential states regardless of how "possible" it is for the system to get into such a state is good software engineering. But rarely done, especially by engineers fresh out of college. Sometimes all it takes is one seemingly minor change to the source to make the impossible now possible.

So, I'd like to vote this story up. But, in an ironic twist, the recent slashdot redesign seems to have made it impossible to vote stories up or down anymore as the old +/- buttons are no longer present. At least for me. So, can anyone tell me how the hell to get out of this "impossible" state?

Check for New Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...