Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Developers Can Lead End Users to Good Behavior

DZone's Guide to

Developers Can Lead End Users to Good Behavior

Developers can help people be successful if they listen to the issues, are empathetic, and think through rewarding the desired behavior.

· Web Dev Zone ·
Free Resource

Bugsnag monitors application stability, so you can make data-driven decisions on whether you should be building new features, or fixing bugs. Learn more.

Fascinating keynote at Okta's Iterate Developers Conference by Jeff Atwood, Co-Founder of StackOverflow and Discourse. The thesis of Jeff's presentation is that developers can encourage positive behavior by end users and dissuade negative behavior.

Jeff summarizes his career pursuits as being "addicted to community" since beginning his Coding Horror blog, building StackOverflow, and now Discourse.

StackOverflow is a site for developers to exchange information combining wikis, blogs, and forums. Purposefully, there is no discussion, no chit-chat. The site is strictly a Q&A to solve problems. Developers receive recognition from other developers and badges for special achievements.

Jeff is a big believer that learning is fun and games are learning aids. Games help people work together toward a common goal.

At StackOverflow, they put a reputation cap of 200 per day so users wouldn't get addicted. This didn't make everyone happy but he didn't want StackOverflow hindering developer productivity.  StackOverflow is a Q&A game helping developers see that the best way to learn is to teach and helping fellow programmers is the most effective way to win. Jeff started StackOverflow in 2008 and left in 2012.

Jeff realized that he enjoyed talking in game forums more than playing the games themselves. This led him to the development of Discourse. It’s a lot like the job of a parent, it's not about problem-solving, it’s about empathy. We need to stop trying to fix the problem. Listen, hear the story, and realize not all problems can be fixed.

Discourse is an open source discussion software that encourages fun. Serious discussions are the side effects of the fun people are having. Writing encourages the creation of a story -- a structure that helps people make sense of what happened to them. The human experience is about storytelling.

The design priorities for Discourse are 1) empathy for others, listening; 2) fun; and, 3) telling stories.

These are substantially different than the design properties for StackOverflow: 1) civility; 2) utility to the world; and, 3) solving practical problems.

StackOverflow is a system of “no.” Discourse is a system of "yes." On Discourse, the goal is to be nice.

So, can software teach you to get along better with other people? Yes, with rules. We let people know Discourse is a civilized place for public discussion. If you don’t say what you stand for, you stand for anything.

If you force people to do something they avoid doing it. However, there is incredible power in telling people what they need to know just at the right time. Help people make better choices about who they are. Make the right thing easy and the wrong thing hard/awkward. This helps remind people to make better decisions

Being there and reading the content is important – remove friction from reading. Reward the positive behaviors you want. Ignore, suppress, redirect the behaviors you don’t want. Just like dog training, punishments don’t work, rewards do. Showing up is 90% of the job - reward people for showing up. Reward great content. Reward collaboration and reciprocation. Encourage participants to give as much as they get.

Four key takeaways for developers from Jeff's talk:

  1. Build aspirational guidelines and refer to them but don’t force it.

  2. Use just in time nudges.

  3. Make the right thing easy to do and the wrong thing awkward to do.

  4. Reward positive behaviors.

Make it easy for people to be successful.

Monitor application stability with Bugsnag to decide if your engineering team should be building new features on your roadmap or fixing bugs to stabilize your application.Try it free.

Topics:
web dev ,developer community ,stackoverflow

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}