Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

50
Stack Overflow: Building Social Software for the Anti- Social Jeff Atwood codinghorror.com stackoverflow.com

description

a 30+ minute deck on building social software for the anti-social, namely programmers -- using Stack Overflow (http://stackoverflow.com) as an example

Transcript of Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Page 1: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Stack Overflow:Building Social Software for the Anti-SocialJeff Atwoodcodinghorror.comstackoverflow.com

Page 2: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 3: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 4: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 5: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 6: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

So I went to New Zealand Consulate and asked if it was true. And they said: "Indeed. New Zealanders can visit Australia without a Visa". And I said:"Well, I wanna be a New Zealander. My father is a New Zealander. Can I get a New Zealand passport?" And they said: "Certainly, Sir. Go down to the basement, get some pictures taken, bring them up". And I did, and they did, and they made me a passport.

Joel Spolsky

Page 7: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 8: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Step 1:

Know your audience

Page 9: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 10: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 11: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 12: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Q:

How do you tell an introverted computer programmer from an extroverted computer programmer?

Page 13: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

A:

An extroverted computer programmer looks at your shoes when he talks to you.

Page 14: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

“In the early years of programming, a program was regarded as the private property of the programmer. One would no more think of reading a colleague's program unbidden than of picking up a love letter and reading it.”

Page 15: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

“This is essentially what a program was, a love letter from the programmer to the hardware, full of the intimate details known only to partners in an affair.”

Page 16: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 17: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

This series of books is affectionately dedicatedto the Type 650 computer once installed atCase Institute of Technology,in remembrance of many pleasant evenings.

Donald Knuthdedication toThe Art of Computer Programming1968

Page 18: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 19: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

One of the great pioneers of computer and online gaming, Dani Berry died in 1998. Some of her aphorisms are still frequently quoted by game developers, including

”No one ever said on their deathbed, ‘Gee, I wish I had spent more time alone with my computer.’”

Page 20: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 21: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 22: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Step 2:

Know your topic

Page 23: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Programming is now a social activity

Like it or not.

Page 24: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Social software for the anti-social

(programmers)

Page 25: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 26: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 27: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 28: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 29: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 30: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 31: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 32: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Step 3:

Understand people’s motivations

Page 33: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Modern programming may be a social activity, but programmers are still introverted and anti-social.*

What motivates us to work with confusing, complicated, erratic people instead of simple computers?*and that’s how we like it!

Page 34: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

A shared passion:

We love programming.

Page 35: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

A common enemy:

We hate Bad Code.

Page 36: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

•I don’t have to agree with you•I don’t have to be “friends” with you•I don’t even have to like you

… but we have a shared passion, a shared enemy, and we can learn from each other.

Page 37: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

The currency of Stack Overflow is information.

Programmers map social relationships on top of that.

Do you really need software to tell you who your friends are?

Page 38: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 39: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Workvs.

work

Page 40: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Work is when your boss tells you to do something, you do it, and you get paid.

work is motivated by inherent interest and generally unpaid.

Page 41: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 42: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Usability testing techniques developed over the past 25 years for Work no longer apply for work.

We shouldn't be asking, “Can you complete the task?” but rather “Are you motivated to do it in the first place?”

Page 43: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 44: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 45: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

Little-w work:

Tiny slices of frictionless effort

Amortized across the entire community

Page 46: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

“If you take Wikipedia as a kind of unit, all of Wikipedia, the whole project --every page, every edit, every talk page, every line of code, in every language that Wikipedia exists in -- that represents something like the cumulation of 100 million hours of human thought.”

Page 47: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

•Fast, fast, fast•No registration required•Simple Markdown formatting•Edit anything, anytime (with rep)

Every question has an input box at the bottom, inviting you to participate and share what you know

Page 48: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 49: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social
Page 50: Webstock 2010 - Stack Overflow: Building Social Software for the Anti-Social

“I'm doing a (free) operating system (just a hobby) [...] I'd like to know what features most people would want.”

“Humor me. Go there and add a little article. It will take all of five or ten minutes.”

“In the past, we could do little things for love, but big things required money. Now, we can do big things for love.”