This article was written in 2013. It might or it might not be outdated. And it could be that the layout breaks. If that’s the case please let me know.
From a developer’s perspective this is a very clever solution: the back-end is only concerned with the design of a clever, solid API, and the whole application, with its logic, is created only once, in the browser. There is a very clear separation of concerns here: if the application breaks, it’s either the API, or the application, and not one of the several layers that are involved.
The idea is that this kind of development can be much cheaper. And cheaper is a business thing. If a client has the choice between a good, cheap solution, and a good expensive solution that both look the same, the choice is easy.
Now, these are some very convincing arguments to some. If we want to keep developing web sites and apps with our ‘classic’ approach, we need some very convincing, and very solid arguments, from more than one prespective. We need arguments from a user’s perspective. For instance: how do both architectures affect usability, can people link to stuff, can they easily search for stuff, and can they share a URL with their friends? And we need arguments from a developer’s perspective, where we care about things like productivity, the ability to test our stuff and the performance of the site we’re making.
UPDATE: You should definitely read the comments. There are some very interesting arguments in there.