>>I forgot automata theory. You really need to have a good grasp of >>the whole state machine idea to solve many problems successfully. > >Can you give an example of this?
Most recent example for me was a web site implemented as a set of non-identical processes distributed across multiple machines. A monitor ran on each machine, with one machine designated "master". The monitor(s) needed to handle bringing the system up and down in an orderly fashion, and automatically doing a distributed "reboot" in the event of a serious failure. First cut of implementing the monitor logic was just ad hoc code. This quickly became unmanageable as the number of classes of processes evolved; it was a whack-a-mole game with each bug fix causing unintended consequences. Second (and current to-date) cut was to transform this mess into a state machine. The state machine approach helps give me confidence that I know what the monitors will do in each and every possible situation; the state machine requires me to detail every possible event and every possible response. My dilettante reading of the literature on distributed algorithms seemed to indicate that most of them are implemented as state machines to have any hope of getting them correct. 2nd place after automata techniques for me would probably be hashing, in all its various forms and purposes. Not much of an underlying theory there, but having a visceral feel for a variety of hash algorithms and their uses is something I seem to reach for on a regular basis. If I were going to devote time to learning something in the area of mathematics independent of any real-life need, I would probably pick graph theory. A line between two nodes can represent a relationship between two entities, so I suspect that having a good understanding of a variety of graph proofs might come in handy proving many things that, on the surface, do not appear to have any relation to graph theory. Too bad graph theory appears so deadly dull every time I pick up the book :-). - Automatic footer for [EMAIL PROTECTED] ---------------------------------- To unsubscribe from this list, mail [EMAIL PROTECTED] unsubscribe discuss To join the announcements list, mail [EMAIL PROTECTED] subscribe announce To receive a help file, mail [EMAIL PROTECTED] help This list is archived at http://www.mail-archive.com/discuss%40ppig.org/ If you have any problems or questions, please mail [EMAIL PROTECTED]
