I agree completely with your comment about Typescript. This was written by programmers who just can’t stand working with a dynamic language. Apparently the programmers they hire need 50% extra code to make sure they don’t screw up the simple things. It’s backed up by C++, C# and Java programmers who want to use their language in a browser. What they should be working on is Webassembly and leave JS alone!
Also, in regards to React and combining HTML with JS I also agree. It is ugly but an even better reason is Vue allows me to give the HTML to a designer and let them have at it without having to change the code AT ALL. I’m not a designer and they’re not programmers. There’s the separation of concerns you were talking about!
BTW, if you look at the delta for stars on GitHub you’ll see the increase is greater for Vue than React!
Thank you for an excellent article.