I would, of course, guess that about 10 percent of the things I now know about Finite-state machines are wrong. But finding that out doesn't cost me anything, really.
@fastfinge I actually learned about finite state machines, pushdown automata, and the like as part of my degree. A deterministic FSM is pretty simple. I personally implement them as an enum and a function which is called repeatedly with a switch/case statement on a continuously changing state variable. About the most direct form of such a thing.