Gamification by Design - Implementing Game Mechanics in Web and Mobile Apps
Developing web and mobile applications is particularly easy compared to developing an ecosystem where visitors and customers are compelled to register and actively participate on that website. Web Designers and Web Developers are turning to concepts, strategies, and mechanics found in games to help engage audiences on the website. Using game mechanics to solve problems and engage audiences in non-game applications, such as websites, is known as gamification. Website developers are taking game mechanics and using them in applications, such as Zynga's popular Facebook games Farmville and CityVille, as well as successful websites like Foursquare, Health Month, Orkut, Quora, Stack Overflow, Twitter, Weight Watchers, etc. A healthy ecosystem of regular participation is cultivated by awarding "players" points, awards, badges, and other incentives by completing missions, tasks, and other objectives typically found in games.
Although familiar with the concepts, I hadn't really heard of the term gamification until recently after reading a new book, called Gamification by Design from O'Reilly. From Wikipedia:
Gamification is the use of game play thinking and mechanics to solve problems and engage audiences. Typically gamification applies to non-game applications, particularly consumer-oriented web and mobile sites, in order to encourage people to adopt the applications. It also strives to encourage users to engage in desired behaviors in connection with the applications. Gamification works by making technology more engaging, and by encouraging desired behaviors, taking advantage of humans' psychological predisposition to engage in gaming. The technique can encourage people to perform chores that they ordinarily consider boring, such as completing surveys, shopping, or reading web sites.
The concept is simple. Adding game mechanics such as a point system, achievement levels, leaderboards, badges, etc. and various rewards of status, special access, power, and free stuff and you can make a website more engaging for visitors and clients.
Gamification by Design Book Review
As mentioned above, I learned about gamification from a new book from O'Reilly, called Gamification by Design - Implementing Game Mechanics in Web and Mobile Apps. I received it for free as a member of the O'Reilly Blogger Review Program and am quite impressed by the content and examples in the book on how various game mechanics are used by a lot of the popular social network applications. Foursquare in particular is discussed quite a bit in the book.
The book is broken up into 3 parts. The first part deals with the concept of gamification and game mechanics. It does a really excellent and thorough job of discussing various techniques such as point systems, badges, levels, leaderboards, virtual currency, missions, and other techniques used by games and how they can ( and cannot ) be effectively used in web and mobile applications. You get lots of insightful examples of these techniques in actual games and similar examples on how they have been used successfully and not so successfully throughout the social web. Gamification by Design discusses the pros and cons of each, how to effectively use them to encourage and not discourage participation, and points out common pitfalls and challenges for implementing them appropriately based on your particular needs.
The discussion and examples really got me thinking about how I have unknowingly been a player in these gaming techniques on non-game websites. I also started thinking about the games I regularly play and how indeed they have successfully used these techniques to make the games interesting and more pleasurable to play. If you have never really thought about using game mechanics on non-game websites or been aware that you were actively being played using these techniques, this first part of the book will be a real eye-opener.
The second part of the book is geared specifically at website developers, particularly Rails Developers, on how one can easily provide a framework for implementing game mechanics in the sample Forum being built in this section of the book. I wasn't so much interested in the database-design and coding to achieve various point systems, levels, badges, and other items in the sample forum since I could do that quite easily, but for those web developers that aren't sure how to implement it yourself this is a good start for you. It literally shows the ActiveRecord implementations in Rails and other code to show possible solutions, albeit I didn't look at it too close.
The third part of the book is again geared towards website and application developers and shows how to leverage a 3rd party service, Badgeville, in the design of a website where people review, comment on, and rate businesses. As with the forum, one gets into the mechanics of creating a point system, levels, awards, etc., but this time calling into Badgeville's APIs using JSON. Again, I wasn't so much into the code as I was the continued discussion and process of implementing the gaming mechanics on the mythical website.
The book is pretty inspiring and really gets a web designer and web developer thinking about how they can improve a client's website ( or their own website ) in terms of active engagement and participation of their clients and potential clients. The book not only does a thorough job of explaining game mechanics and how it can be achieved on non-gaming websites, but also walks one through writing code as well as leveraging a 3rd party service for implementation in a website. There just aren't any excuses to not using gamification techniques in websites after reading the book. I highly recommended it for those new to gamification. It's a steal on Amazon for $14.
Immediately after reading this book I had several ideas on how I could improve a client's website using the techniques of a point system, levels, badges, leaderboards, and other gaming techniques. I called up my client and we will be starting to implement these techniques right away! In this case I will be developing the features right into the framework, but at some point I would love to try a 3rd party system. This will be my first time implementation gaming techniques into a non-gaming website and I used a lot of the ideas from the Gaming By Design Book. If you're not interested in a book, I am sure you can find a lot of material by just searching for the term Gamification in Google, Bing, Yahoo, etc.