The other reason is that web developers are all day long on the web and spamming the web with discussion about what “the” best framework is.
To a certain extend you cannot just close the door and escape from these sphere because you have to constantly educate yourself and keep track of trends.
The downside is that you get constantly hypes to no end by childish web developers which dancing around their Macs with their Starbucks coffees in their hands.
The important thing is that you have to trust you own judgement to distinguish between short lived hypes and persistent trends.
But the pure amount of stuff that get’s into your view makes it more and more difficult to reliably make predictions about the durability of frameworks or any other software or technology.
However I tried to rewrite it entirely in Ember.js which was a big mistake. Because the project it relatively new, the api wasn’t really stable and the documentation was for my standards way too shallow and didn’t go really in depth in terms of practicality showing reasonably complex real world examples. Additionally the framework was just too big and somehow intransparent. It pretty much dismissed itself naturally with these factors.
Due to this experience I jumped over to Backbone.js and rewrote the code again. At some point when I was almost done I got pretty angry while I was using the framework because the abstractions were too weak and shallow that it was pretty much pointless to use this framework. It neither had any elegance nor the elaborateness of any good framework. So I wasted another full two days to learn this framework.
I took these frameworks because my judgement let me alone. I took the one which were the most hyped frameworks without actually making a judgement. At the other side I could argue that I only lost probably a week before I dismissed these framework where others spend years before seeing their mistakes, if the see what they’ve done wrong at all.
After this sobering experience I took a look at a very less hyped – but at this point more mature – framework. I won’t tell you which one because it’s not important. The important thing is that this framework had either a very light abstraction but it had the right abstraction. You just need to hit the nail on the spot.
I don’t say that the time I spent on those frameworks was wasted. I think it only will be wasted in the future – if I’m going to make the same mistakes again.
Be always careful with hypes. Especially within the short lived web developer community. Things in this area are exciting because they are very dynamic but it’s requires a huge amount of experience to judge what is important and what’s not.