In Six tips on front-end framework selection I talked a bit about how to go about choosing a front-end framework for a new project.
So, what is the bigger picture here. What are frameworks all about?
I think that frameworks are solidified artefacts from an ongoing conversation we are all having about how to develop products more effectively, easily, cheaply, or whateverly.
Artefacts from a ongoing conversation.
Over time, we develop stuff, and aim to improve the how of the development. In this process, people solidify ideas into frameworks at various points. They meet some shared pain or add an exciting capability and a frameworks becomes popular. People try it out. Their learning feeds the minds of those building the next framework: introducing new metaphors, tools, style and syntax as they go.
These artefacty frameworks also contain reactions to the environment around — available browser performance or particular browser features lead to new ideas being tested in a framework.
That is all I wanted to say: Using, testing, moaning, exclaiming about a framework are all part of the conversation we have to have. New frameworks follow old ones. The are built from previous experiments and ideas.
Why does this matter? Perspective helps make good decisions.
You could deny it, but every front-end framework is thus made of jQuery. From the jQuery experience, annoyances and inflexibility we all dealt with, we have the beginnings of the modern browser framework. jQuery informs AngularJS. AngularJS informs React. And so on.