For the last few years, I've avoided developing applications for the iPhone. I developed for the Mac, I developed for Windows, I developed for Linux and even Android and Windows Mobile. But I steadfastly refused to write a single line of code for the iPhone. Don't get me wrong, it's not because I hate the iPhone. In fact, I think it's a lovely device that offers developers like me an amazing income opportunity. I avoid the App Store for something more fundamental than that: freedom.
Apple is one of the most demanding companies to work with as a software developer. In their quest for the mythical 'perfect' user experience, they define almost where every pixel of your user interface should fall and impose arbitrary restrictions that change from time to time with little to no reasons given.
I can't work with a company like that. I can't develop software for a company that seeks to control its users and developers to that degree. Apple has become the big bad boogyman that Microsoft once was and, unfortunately, it seems to be dragging the industry along with it.
App stores are the future on both the desktop and the mobile device. Users are quickly being trained that 'if it doesn't come from an app store, it's bad'. This is rather unfortunate for those of us who, for moral or philisophical reasons, want to avoid app stores while still offering our users great software. It's unfair to both users and developers.
For my part, I'm writing mostly web applications tailored to devices. Thanks to a plethora of open and (mostly) free tools, I can write web applications that look and perform almost no differently than native ones. Thanks to HTML5, mobile web developers are becoming first class citizens and we can eschew paying our tithes to the app stores. How long will this continue is anyone's guess. Companies want control of their users and the developer communities surrounding their devices. But, for right now, we've got it pretty good and it seems to be getting better.
So what can users and developers do? Ultimately, very little. Companies like Microsoft and Apple have shown they are willing to force users into specific models regardless of how unsightly and uncomfortable it might be. But user pushback might still have some value. In the end, web applications may never quite have the same access that native apps do and that's robbing the users of control of their device and the software that runs on it. Users should make it clear to device manufacturers that they want choice. There's nothing wrong with having an app store. But give users the freedom to install software from any source; not just the app store.
Users like you are the only hope the industry has of breaking this rush towards an app store run world. The only question is how hard are you willing to push back?