Those apps aren't hard to develop because libraries or the environment or whatever; they're hard to develop because their developers want them to be closed, so recompilation and putting them into the real package management system is impossible. Starting with such a handicap makes things complicated :)
> If you think there are better paradigms that should be explored, then jump in and show the world how right you are
The better paradigms have been known and used for 20 years (such as the Unix paradigm of connecting multiple programs, the CLI, and so on). That it doesn't appeal to some end users is not our problem.
(also username post combo, but just kidding :)