While in Xbox I had the pleasure of working with Paul Tidwell, married to now-famous Seattle fiber artist Suzanne Tidwell . Paul was one of the chickens’ greatest fans (for which he did receive some eggs) but he was ingenious enough to see an opportunity in Shawn Hargreaves “Chicken State Machine” diagram. That is, he put the below image into a technical spec. 🙂
A state diagram is a useful design document that records the various states an object can be in, within a software system. Ideally it accounts for all states possible so the system won’t be throwing any errors because an object just got into a state it should not have.
- Clockwise from the right
- “Killed by fox and all you have are feathers”
- “Too old and tough for anything but soup”
- “Got nasty disease so must be buried in lime pit”
- “Dead but deliciously tasty”
The chicken state machine comes from a pithy comment by Shawn (as I recall) in an email thread on the XNA Chat alias. People were commenting on Betsy’s new chickens, and Shawn, having grown up around chickens, summarized the various states in which you typically find a chicken. I was updating a technical spec at the time and included the chicken state machine, just to liven things up a bit. The double ring (“Egg”) is the starting state. The dark rings denote terminal states.