Building complex apps is hard. User-facing, feature-rich apps--especially so. It takes a lot of engineering effort, but also management (which implies some kind of a corporate structure). Coincidentally, it also doesn't align well with open (or any) standards.