When I see a Lifehacker article about a weather-aware alarm clock app that wakes you up early if the weather is bad (and hence the traffic to work is likely to be bad) I wonder whether we really need more apps at all. After all, this is not a complex task. If [local weather] is rain, set alarm minus 20 minutes. We don't need that app, we need better ways of using apps together. We need an excellent meta-tool that lets people use their apps in new and interesting ways, no matter what those ways are.
We need to rethink what apps are and what they are for, on mobile and on the desktop.
What if all our apps were either event triggers or event responses? Instead of every app needing its own alert system (I'm looking squarely at Windows here) it could just send out an alert event and let Windows handle it? Instead of needing a smart weather alarm clock to adjust itself in case of rain, your weather alerts could be channelled into an action to modify your alarm, no special app necessary.
We need IFTTT and general compatible APIs so that events (weather, location, Wi-Fi access, time) can trigger app actions (adjust alarm, remind me about my actions, turn down my volume, download my podcasts). We do still need some apps in the form of those triggers, and we need preconfigured recipes connecting those triggers to actions, but most of the time, this "event triggers response" pattern is all we need.
Mokalus of Borg
PS - There are some apps on mobiles that do some of this.
PPS - They don't generally have access to all the other apps that could be useful to them.