Thank you for writing! I understand where you’re coming from, and, before I continue, should point out there is no real disagreement between your and my respective viewpoints. At their heart, that is.
However your response may take my point a bit out of context. The point of my article was not that we shouldn’t make comparisons, but rather that we should make more focused comparisons: “Which tool is best suited for Z: Xjs or Yjs?” instead of “Which tool is better: X or Y?”. We don’t question whether a saw is objectively better than a hammer, because that question shows an inherently flawed approach to woodworking.
At the time I learned Angular, my options were between that, Knockout, and Backbone, so I did some reading on all three. Angular supplied the most robust set of features for me, so I went with it. I stress that this wouldn’t have been possible without a proper comparison of all three frameworks.
I always remember the article summary that helped make my decision: Backbone was portrayed as a surfboard; Knockout was a jet ski, and Angular was a yacht. That article’s author took the approach I’m ultimately advocating: they introduced all frameworks to the reader, presenting what features, benefits, and drawbacks, to expect from each tool.
Just like saws and hammers, JS frameworks are tools attempting to solve specific problems in development. If we must compare them, it is important to have a specific problem in context.
Otherwise, we should ask ourselves, as woodworking developers: do we really need a bluetooth-connected, mp3-streaming hammer?
Hope this clarifies my thoughts a bit; cheers!