iOS has always been this way and, though I used it for a while, eventually the stories of apps being rejected for all sorts of reason were too significant to ignore. When Apple tried to dictate the set of acceptable _programming language_ for apps I gave up my iOS devices.
Though I can still run software on my macs without permission, I'm now looking for a suitable replacement for Mac OS as well. It's difficult to imagine a day coming where the Mac would be "app store only" like iOS, but it's not impossible.
Apple is the ultimate arbiter of software that is sold through their store. They do not control what you build and run on your device through Xcode. You just can't distribute the end result. It's still a computing platform, and you can still write and run code. You can make your iOS device compute things.
There is value in being able to sell and distribute the end result — but that's not what computing is, that's marketing.
Edit: Why not make your same complaint about Sony's PlayStation 3? Do you not use that because it is a closed environment, one where you can not run your own software?
Late response: There is some software I want to run that I do not have the source to. There is some software I want to run which is not being written because the person interested in writing it is not convinced that they will be able to distribute it to anyone in a convenient or profitable fashion.
I don't own a PlayStation, but of course have many other computers that are "appliances" (mp3 player, digital camera, etc.). I don't expect or even want all of those to be general purpose computers. For a long time I thought of my phone as an appliance, but with modern smartphones it's pretty clear that being a general purpose computer >> being an appliance and so I want to use platforms that are open in that way.
A PS3 is just another computer in your home. It just happens to be locked down and branded.