I thought this was a very interesting and thoughtful article. I appreciated that the article linked to Trygve Reenskaug's earliest article about MVC, since the real MVC vision and history is unfortunately not well-known today. But the article also seems to take the idea of separation of concerns a bit farther than Reenskaug himself did: the article "The Model-View-Controller (MVC): Its Past and Present" points out that "in simple cases, the Model, View and Controller roles may be played by the same object. Example: A scroll bar." (
http://folk.uio.no/trygver/2003/javazone-jaoo/MVC_pattern.pd...)
However, I definitely agree that a framework that steers programmers toward always combining M,V, and C behaviors in a single component (as React arguably does) is highly problematic.
I highly recommend the link to the MVC pattern article above that explains some of the lost history and greater significance of MVC beyond just "separation of concerns". The core of MVC is much more human-focused: it's about better bridging the gap between the user's mind and the computer, so that the Model feels like an extension of the user's mind as they're using the system.
Note: Somebody posted a link to this article in a comment in an earlier thread (https://news.ycombinator.com/item?id=10606482) but I thought I'd create a new thread about it because although it was written last year, I think it deserves further discussion.