The big problem is stupid guides talking about modes instead of calling it a command interpreter, which it is. Modes are an irrelevant implementation detail.