However, this vision remains clear, with client-side applications becoming "rich" by adapting a server-side Model-View-Controller framework, they edge closer and closer to becoming servers. Backbone, Angular, Can, Ember, all resemble mini-servers. And when the Chrome Browser becomes more like a server - think back on this article.
The logic is simple.
Why have a redundant MVC pattern on both the client and the server?
All it takes from a software developer standpoint is the keyword "Private" to represent Server-Side code, and "Public" to represent Client-Side code.
Why not have a single "Smart" browser that you can extend with server-side plugins?
People tend to think of Client and Server as programs. But, really they are environments of distributed programs (plugins). A "Smart" browser should manage both the client and server environments.
The future of software, is a system where these Client/Server Browsers communicate with each other. This goes even further, the "Smart Browser" is not just a browser, it's a web operating system. And finally, the web operating system is not just an operating system - it's a representation of you!
Your personal avatar in the form of a Browser.
And Public means stuff you share with others, and Private means stuff you don't share.