Despite the potential developer productivity costs associated with custom frameworks, I've decided not to use some of the bigger frameworks for the following reasons:<p>- Performance is a feature. I like less magic, more clarity on how data flows through my system. $digest cycles, ng-repeat will keep me up at night. I sleep better when I know what code is doing exactly what.
- Hiring becomes easier, i.e. do not have to screen for certain framework experience. Know JS? Good, that's all you need!<p>Of course, writing your own custom application framework is no walk in the park, but like the article said, you'll have ultimate flexibility. In my experience, writing your own custom app framework, you have to ensure:<p>- Proper dependency management, use AMD or CommonJS. The alternative: Spaghetti jquery code.<p>- Enforcing class responsiblities, e.g. ViewModels are for data transformation and validation only. Views are for DOM management. HTML is for layout only. CSS for styles.<p>- Proper risk/reward evaluation of third party libraries. Usually, the leaner the library the better imo.