Mike, are you having déjà vu again? I'm planning to write a blog post (when I get spare time) on what I discovered during recent research into writing a new browser app as an SPA, probably using Angular. There were two stunning revelations that shocked me so much that I feel confident to report them now.
*1. The "library" codebase* I did mention this months ago, but it's worth repeating. I generated two "hello world" Angular projects using different commands, and each contained ~1.2 millions lines of JavaScript in ~20,000 files. For me this was a jaw-dropping shock, hinting that something's rotten on the starting blocks. *2. Complexity vs results* I watched 5 hours of a 10 hour long Pluralsight Angular course. How can a JavaScript course be that long? Now I know... conventions, components, templates, services, navigation, forms, validation, pipes, DI, observables, and so on. After 5 hours I realised something was rotting again. I stopped and realised that Angular is a monstrously over-engineered, overly complex behemoth which looks like some IT science student's graduation project. And just what is this beast for ... to write a friggin' app in a browser. Sure you can, but it's like building a palace out of sticky tape and matchsticks. So after all my research, I was expecting to find something alluring about JS development, but it's left me more shocked than before. I'm even disappointed by my disappointment! As an experiment, I used ASP.NET Web Forms with Bootstrap styles to write the basic demo app that we were planning to have done in Angular. It was completely working in 2 hours, and the boss likes it so much he's actually considering showing it to customers. The resulting project is familiar, simple, well-behaved, based on robust frameworks, and it only has about 25 files in the whole solution. I think there's a lesson in that. *Greg K*