I have been planning to write an introductory article about statecharts for a good while. This intention stems from the professional experience that developers (and designers) often possess superficial knowledge of some kinds of state machines, but few really know statecharts, and even fewer realize their great practical potential in the toolbox but dismiss them simply as theoretical constructs.
This is my attempt to dive into statecharts head on, and in the process, maybe prove some of their value. I am being intentionally light on the theoretical side, but will perhaps expand on that in a separate article.