Model View Controller isn't
From the conclusion:<p>&gt; If you design a system, it is not helpful to consider options like MVC vs MVVM vs MVP. Instead, identify potential problems and if necessary solve them.<p>I think that&#x27;s a pretty good take on it. There&#x27;s an annoying tendency for most conversations including the notion of MVC to devolve into nitpicking about which variant is actually being discussed and whether some architecture is &#x27;really&#x27; MVC or something else that looks like it.<p>Its main value is in an abstract principle that it references: when modeling something, it&#x27;s useful to separate a thing&#x27;s essence from <i>representations</i> of that essence (the Model in MVC would be the essence and Views representations). This is an idea that shows up all over the place; it&#x27;s almost certainly related to human cognitive structure in some way. (The Controller component is more arbitrary; you can see it pointed out in the article also that it was more related to implementation than the more general Model&#x2F;View concepts.)<p>One way I&#x27;ve found useful for thinking about the principle is in terms of causality within a system. When you&#x27;re separating out the model&#x2F;essence from the view&#x2F;representation portions of a system, the most important distinction is: the essence carries all the information necessary to <i>determine</i> (a configuration of) the representation. In this case, you can set up a mapping from the essence to the representation once; after that, you can stop thinking about the view&#x2F;representation because changes to the model&#x2F;essence already cover everything.<p>It&#x27;s a very general kind of information compression that helps us manage system complexity by creating causal hierarchies.<p>(An example of another kind of &#x27;causal hierarchy&#x27; I was thinking about recently: the decomposition of changes in position in Newtonian mechanics ultimately to forces (rather than working with e.g. velocity directly). If you know about the forces (and mass), they imply everything you need to know about acceleration, from which you may deduce, velocity, and then position. Once you have that mapping from force-&gt;acceleration-&gt;velocity-&gt;position your mind is freed up to only thinking about forces.)