It doesn't have to. I've said this in a few other threads lately: I'm using intercooler.js which is basically HTML++ for a lot of my work now, and I barely ever write javascript unless I need a front-end plugin of some sort.
You get 90% of the functionality at 10% of the complexity, and your back end looks essentially the same as it always has, in whatever language you want.
You get 90% of the functionality at 10% of the complexity, and your back end looks essentially the same as it always has, in whatever language you want.