&gt; It&#x27;s all about managing state and dependencies. Doesn&#x27;t matter much for small apps but does when you have tons of people trying to work on the same thing.<p>That literally applies to any program though. A compiler has to manage a lot of state too, but I&#x27;ve yet to hear compiler makers trying to figure out why they have so much logic in their controllers, and why their views are too big (because nobody would write an MVC compiler).<p>&gt; Besides, it&#x27;s not like MVVM is a huge thing. It can be explained in a paragraph<p>And yet there&#x27;s like 500 blog posts about why you&#x27;re doing it wrong, and how to do it better, etc. Of course, in truth it&#x27;s not complicated, what makes it complicated is when it&#x27;s applied in contexts that make little sense.