ABOUT ME

Hello World (because this is just mandatory)! I'm Tanja, a psych major turned hopeful programmer with a massive passion for video games. And if you can't tell by the sites name I am a bit of a dork :) Also, I love puns.

LINKS

W3schools

Tizag

Kotaku Video Games

IGN

MikeStowe.com




Learn Docker + Earn Prizes
DevRel

The Psychology of Gamification

As I mentioned in my profile I am a psych graduate that absolutely loves gaming. In case you haven’t noticed I also just love tech/programming in general. So, I’ve decided to start reading up more on a topic that has become popular in those fields – gamification. What is gamification? Well it’s using aspects of game play (i.e. competition, badges, etc.) to get people to participate with a product or service (i.e. Developer MVP Program).

There are many articles out there discussing gamification and all seem to point towards it being successful. One specific article written by Michael Sailer, Jan Ulrich Hense, Sarah Katharina Mayr and Heinz Mandl called “How gamification motivates: An experimental study of the effects of specific game design elements on psychological need satisfaction” is one of these many articles. The reason I wanted to focus on this more is because it broke gamification into different elements. It discusses that there are different elements in gamification and that they meet different needs. Sailer et al. (2017) stated that:

“Our results show that badges, leaderboards, and performance graphs positively affect competence need satisfaction, as well as perceived task meaningfulness, while avatars, meaningful stories, and teammates affect experiences of social relatedness.”

If you are creating an MVP program you may want to read this article along with several articles on Influitive’s website. This shows the different needs you will want to target and how to do so.

In general – I believe that one of the best parts of gamification is the ability to compete with others (especially friends). As a gamer (geek really) it’s always been fun to brag about wins or anything really(such as I’m currently #2 in the Tigera MVP program).

On a basic level we all enjoy competing – it just differs a bit on how you appeal to people. Some enjoy the feeling of achievement and being recognized for it (Look at my awesome MVP badge for all the articles I’ve read) or of course the social interaction aspect of gamification (i.e. creating avatars such as in World of Warcraft and spending time with your guild).

There have been several studies that show that gaming (video games, gambling, etc.) can be addictive. The reason being it stimulates your brain in a certain way which makes it appealing to continuously participate in games. Everyone plays for different reasons though – so that is where you have to come in and try to appeal to all the different desires that people have. This is what you need to think about when creating a gamified program: what elements do I want to incorporate to make sure to include most people's needs?

How exactly does this apply to a developer program though? Well let’s look at a program that does this and point out what features they utilize to create the most engagement.

The Tigera MVP Program

The Tigera MVP program you will notice that they incorporate several of these features in their program. When you first log in right away you will notice the leaderboard is on the top displayed with the top users.

As Sailer et al. (2017) mentioned this provides a feeling of achievement for some. For me it appeals to my competitive nature (#2 spot woohoo)! As a gamer/techie when I would play World of Warcraft it was always fun riding my rare mounts around - especially the ones with the low drop rates xD!!! Leaderboards have that appeal - as do badges :)!

The badge I’m most proud of is the one I highlighted - Expounder. This appeals to the sense of achievement - I particularly find it nice that you receive badges acknowledging the fact that you like to help others! You can go on others profiles and see the badges they have and what they were earned for. Badge = a sense of pride in what you’ve done!

Sailer et. al (2017) mentioned that for a sense of achievement performance graphs are also great. While it’s not an actual graph - Tigera does have a tab called completed. In it you can see everything that you’ve accomplished in the program so far. So you can see all that you’ve achieved - as well as click on an old challenge to see what you did, read, etc.

As I mentioned - as a gamer I enjoy competing. Nothing is more fun than competing against a friend to see who gets the higher score or who has the best ideas or really competing in any way. Tigera’s MVP program encourages this ability by challenging its members to invite their friends for points. You get points just for inviting friends - which you can then compete against all while earning prizes and learning.

Tigera also appeal to social relatedness - as Sailer et al (2017) mentioned in their article. They do this through having a discussion panel on which they encourage members to introduce themselves (Yes you earn points for simply doing this)! This lets people get to know a bit about each other and what they hope to accomplish or what they do. Along with this when you click on a members profile you have the option to message them. This allows for private conversation as well if you want to ask for help or discuss the program in general.

Those are some of the more obvious gamification methods that Tigera uses for their program. But the challenges that are created themselves are important as well. A great article to read that discusses this is by Don Currie called “The Rule Of Thirds: Why Advocates Need Asks, Education And Fun To Stay Engaged”.

As the title suggests he believes there are 3 key components to challenges which are: Asks - which means getting your members to do things for you (i.e. tweet about your program, write a blog post, etc.), Education - as the name suggests these are challenges in which the member learns about your program and many other things (i.e. read this how to guide, try this demo, etc.) and last but not least is Fun - he believes these are the challenges which brings the members back and eventually lead to them doing the other challenges (i.e. Share your favorite calico picture, watch this funny video, etc.).

If you look at the Tigera MVP program it follows these rules. It has Asks (i.e. tweet about Project Calico, write a blog post, etc.), Education (i.e. Try the interactive tutorial, breaking down Project Calico article,etc.) and Fun (i.e. Calico cuteness video, share your Felix creation, etc.).

Overall, I would say that the Tigera MVP Program is a great example of how to appeal to Developers. The program uses the key models of gamification that appeal to people - leaderboard, badges, challenges, etc. It even goes so far as to consider “The Thirds” rule.

These are all important aspects to consider when creating your program. While I mainly was discussing its appeal to developers this can be applied to any program.

Psychology

Video Games and Facial Emotional Recognition

This is a presentation I created for one of my psychology courses. I was really interested in seeing if there is a correlation between people playing video games and being able to correctly recognize facial emotions. The following presentation covers a few of the many articles that I researched.

View PDF Presentation

DevRel

DevRel: Building a Community

If you're reading this you're probably wondering - how do I build a developer community? If you haven't done so already I highly recommend reading about the Developer Hierarchy of Needs first. Before you can consider how to build it you should understand what they need. Building a community without understanding the needs is like opening an all meat restaurant and trying to cater to vegetarians. If you don't know what they need then you won't know how to appeal to them.

Now that you have a better understanding of what developers need you aren't done just yet! You know what they need but now you need to figure out what exactly they want. For example, you know they want ice cream but you don't know what kind (chocolate, vanilla, etc.). A great way to figure out what is needed is by simply asking developers you are targeting. Now you have to interpret what they said and really understand the underlying desire in what they said they are hoping for.

Next you would create your platform on which your developers can interact with each other and with you. The more platforms available the better. When there are multiple platforms made available its easier for developers to find the method they prefer. The general platforms that developers like are communication platforms (i.e. Slack), social media (i.e. Twitter), forums (i.e. Stack Overflow) and there is always your own personal platform (i.e. Project Calico MVP Program). As I said earlier, the more options you give developers the better, it turns it into an all you can eat experience.

Psychology

Multiple Intelligences

Aside from video games another topic I find interesting is that of intelligence. While psychology has not figured out how to truly answer the what's and why's there are many theories. The theory I greatly enjoyed researching was that of multiple intelligences. The theorist that came up with this is Howard Gardner. Below I attached a copy of my presentation I did on Howard Gardner and his theory. It provides a quick overview of it along with a video interview that Howard Gardner did.

View PDF Presentation

DevRel

DevRel: Developer Hierarchy of Needs

The model I am referring to was created by Michael Stowe. It was created to explain what exactly developers need out of a developer relations program. At the very bottom of the hierarchy you will notice something called "Basic enablement". What exactly does that mean?

In the chart you will notice that Michael alludes to documentation and onboarding. Why is this important though? If you think about it the answer is very simple! Have you ever come across something you were excited to build (say for example a dresser you bought from IKEA) only to find out you have no idea how to make it work or what to do? Then you look at the instructions and it doesn't make what you have to do any clearer!!!

Personally, I find that to be one of the most frustrating situations to be in. You can either spend hours trying to figure out how to make it work or say forget this and throw it away to move on to something else. That frustrating experience is exactly what you are trying to avoid and that is what "Basic Enablement" is!

The next step in the hierarchy is called "Community". Now why should you care to develop a community for your relations program? The answer to that is simple as well. Remember in the example earlier when you couldn't figure out how to build the dresser? If you had someone or multiple people to turn to for help then you could have most likely figured it out and not have tossed it away. This is why community is so important! When a developer gets stuck on a problem they have a community to reach out to for help so they don't have to just "toss that dresser". Now, this is not to say it's alright to make bad documents those are still needed!! It's just saying that when the developer attempts to go beyond the information in the documents they have others they can seek guidance from. So make sure to give them an outlet to make this happen - Slack, forums, social media, etc.

This leads to the next step which is "Education". At this point the developer has already grasped the basic understanding of your technology and has a community that helps with any errors they may encounter. But a developer will not be content with just the basics - they will want to do more than that and push the limits. This is were Education comes in! You have to make them aware of why what you're saying is valuable to them and how it can increase their knowledge base and help them to further their abilities. The more knowledge you provide to your developers the more they can do for you as well, because they can use that knowledge to help their community (remember that dresser from earlier ;P )! This is also what is referred to as "thought leadership". By sharing your knowledge and bettering the community you are seen as an expert and those that you are passing this knowledge on to become thought leaders as well.

This perfectly sets up the next step - which is "Expanded Enablement". Now how is this different from the Education step you may ask (I know I did at first)? To clarify Education is not specifically related to your own program but the field you are a "thought leader in". An example would be if you are a company that creates API's, but you have vast knowledge on PHP and you share that with the community and help them to become thought leaders in the PHP space as well. Now where Expanded enablement comes in, is where you provided deeper understanding of your program (i.e. API). You gave them the tools to do the basics and they've gone to the community to do more but can only get so far! You step in by providing tools such as webinars or online workshops to help them utilize your program even more!

Last, but certainly not least...I would say the cherry on the ice cream sundae! Is the "In person" aspect of your developer relations program! You have spent all this time creating content, educating and building a community for your developers. You can't just hide behind your screen (as tempting as that may be :P). They will want to meet you in person and have that connection that can only happen when you actually meet! If you don't venture out to conferences, meetups, or some form of tech event then how can they know you and truly trust you? One of the key words in developer relations program is after all relations. But this is something that you should want to do because if it's not genuine then it wont have that same impact.

As you can see all the tiers in the hierarchy are important when it comes to fulfilling developers needs. Fulfilling those needs are part of what can lead to a successful developer relations program. Of course there is a lot more than just that....but that is for another article :)! I hope you've enjoyed reading my interpretation of the Developer Hierarchy of Needs!!


More Resources:

Brief History of Developer Relations

Going Deeper than Evangelism

Video: Creating a DevRel Strategy