1. It's a nominal fee that keeps a certain kind of crappy app out of the store.
2. Apps can be released for $0, yet it costs money to host those apps.
I feel most people aren't so upset about the idea or reasons behind a yearly fee so much as the yearly fee being so high.
Oh wait I'm sorry that would be good design. Apple doesn't do that.