I'm just beginning the process of adding badges to my app, but it wouldn't have even crossed my mind to use an outside service for it. I think in some form your idea has legs, for example as a WordPress plugin or other situation where people need simple plug-in achievements, but not as something to integrate in a case where the developers could do it themselves.
Sending you events just so I can query you right back to see if an achievement was unlocked? That seems like total overkill, I wouldn't even have the time to spare for the HTTP calls. And I wouldn't want to introduce a dependency. And all this for probably pretty trivial checks in most cases.
Yes, we addressed this in one section of the article. This is probably the one thing that gives me the biggest doubts. Many achievements can, like you said, be very trivial. Either way, it's alot of extra work that needs to be done constantly. Optimizing and implementing that is something that we don't expect everyone will really want to do themselves. Achievements can potentially be a very large system with alot of code, rules, conditions, etc to manage and that's the one thing that makes me think that it could require an entire separate system, much like a blog (Wordpress), forum (PhpBB), customer feedback (Get Satisfaction, User Voice), and so forth.
As far as the whole plugin thing - we've thought of that too and are exploring applications that we can create open source plugins for so someone can very easily plug our system in. For an example of how that might work, just try leaving a comment on our blog itself ;)
Sending you events just so I can query you right back to see if an achievement was unlocked? That seems like total overkill, I wouldn't even have the time to spare for the HTTP calls. And I wouldn't want to introduce a dependency. And all this for probably pretty trivial checks in most cases.