Ask HN: Review Our Idea (Achievements for the web)
blog.iactionable.com
blog.iactionable.com
Second comment is that I think incentive systems are highly highly tied - almost inextricably so - with the content and community around each individual site. In order for a reward system to work correctly, it has to be based on existing user behavior. For site owners who know this, they'll probably want to structure the system themselves. For site/app owners who don't, how will you sell them on the idea that incentive systems are important to begin with? I think the market you're dealing with right now is people who understand the importance of incentive systems but don't know or are too lazy/busy to make one themselves. If you believe this market is large enough, you should go for it.
As far as how tied together things are we have definitely been thinking of offering some professional type services where we do alot of the work for people or some consulting work to help them best implement this system. Those who know what they want will have free reign to implement whatever kind of system they want as nothing is predefined.
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.
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 ;)
Ask them how they think it works, and whether their traffic would be the same if they removed the feature, etc. More data is great, because the argument doesn't catch my eye right now.
I've used a couple services with badges like that, but I've always ended up finding it stupid after not too long. You might end up accidentally alienating people who just want to use a service without feeling like it's a competition. Once I started associating a useful service with the time wastingness of a game, I started reevaluating whether I really wanted to use the service after all. There are games I far prefer playing, that I could just play instead if I really needed validation that badly.
If a feature is improving traffic numbers for the site owner, but not really improving the core usefulness of the application, I think it is a net loss.
As for implementation I'd definitely use a server side API. It would be nice to be able to send a large list of the user's data and receive back any possible achievements. For example if I had an RPG and the user had just killed a monster I would want to send you my health at the time of kill, what level I was, what level the monster was, how many of that monster I've killed, how many monsters total I've killed. That way I could get back multiple achievements if they were "Kill 10 Monsters" and also "Kill a Monster That is a Higher Level Than You" but only use one API call.
Anyway, I think it's a good idea. Try asking some web game developers.
It's not like I will ever pursue this idea, so if someone thinks this is a good idea, please use it!
We had also discussed creating various blog-engine plugins to automatically pull these badges and put them by your name when you comment on posts anywhere.
Edit: Here are the questions in case the article was too long for some :)
- What are your thoughts on the idea as proposed?
- Is this something you would consider adding in to your application at the right price?
- What is the right price?
- Are you interested in the full on achievement engine or would you prefer an API that just awards badges to users directly?
- Would you benefit from a Rule Engine which could handle complex rules with many conditions? Meaning, rules more complex than just ‘Comment Event occured 5 times, Award Badge’.
- In order to prevent people from spoofing API calls we may expect sites to call our API functions from server side code instead of via a javascript/client library. Is this asking too much? Are you willing to integrate our API at this level?
If you were to make your own achievement system, would you share those badges with a repository? This is basically where we started - http://news.ycombinator.com/item?id=795952
http://bravo.yahoo.com/teaser/
I never felt comfortable with the project primarily because I didn't feel I understood the market at all.
for this to work i think you have to make it really easy to use and with minimal impact on the developer. would you handle the generation of badges (this seems like it would be a timesaver - you provide a badge editor that has basic options like colour, etc)? and serve them?
there's some tension between tying awards to a particular site and making them global. initially i assumed people would want their badges displayed as an integral part of their site. but you could also imagine some "global" badges that you provide that people can earn from various sites, and which people might want to include in blogs, personal profiles, etc...
I think it can work. But I also tire of game mechanics by now - I don't want external influences on my choices.
I think http://www.StackOverflow.com is a good example of where badges only add to the experience and don't get in the way.