Slide 1

Slide 1 text

Share your quests Questhub.io Tuesday, August 13, 13

Slide 2

Slide 2 text

Background Tuesday, August 13, 13

Slide 3

Slide 3 text

Background My name is Vyacheslav Matyukhin. (CPAN:MMCLERIC) I was a backend developer at Yandex for 7 years. (blog search engine project, churning lots of data with Perl scripts) Tuesday, August 13, 13

Slide 4

Slide 4 text

Background I wrote some open source code, including Ubic (polymorphic service manager) Summer 2012, I wanted to write Ubic 2.0... Tuesday, August 13, 13

Slide 5

Slide 5 text

Background I couldn’t get started. I’m a horrible procrastinator. I wasn’t sure anybody would care, and I was looking for motivation. Tuesday, August 13, 13

Slide 6

Slide 6 text

History Tuesday, August 13, 13

Slide 7

Slide 7 text

History But I didn’t know much html/css/js at the time... So I had this idea of a website where people: shared their goals supported each other had a feedback on the usefulness of their tasks Tuesday, August 13, 13

Slide 8

Slide 8 text

History October 2012: hackathon at Yandex Tuesday, August 13, 13

Slide 9

Slide 9 text

History October 2012: hackathon at Yandex November 2012: Perl community motivation survey 201 participants, 20 questions each. See http://berekuk.github.io/perl-motivation-survey/ for details. Tuesday, August 13, 13

Slide 10

Slide 10 text

History “Given the amount of free time you have now, would you contribute more if the environment was perfectly friendly, perfectly rewarding, and you knew that your actions make a great impact?” 0 90 36 90 73 Surely Probably No Tuesday, August 13, 13

Slide 11

Slide 11 text

History October 2012: hackathon at Yandex November 2012: Perl community motivation survey February 2013: launching play-perl.org Tuesday, August 13, 13

Slide 12

Slide 12 text

History October 2012: hackathon at Yandex November 2012: Perl community motivation survey February 2013: launching play-perl.org June 2013: going full-time Tuesday, August 13, 13

Slide 13

Slide 13 text

History October 2012: hackathon at Yandex November 2012: Perl community motivation survey February 2013: launching play-perl.org June 2013: going full-time New domain: questhub.io Realms, redesign, stencils, API, personal news feeds, drag&drop, etc... Tuesday, August 13, 13

Slide 14

Slide 14 text

History Tuesday, August 13, 13

Slide 15

Slide 15 text

History Tuesday, August 13, 13

Slide 16

Slide 16 text

History Tuesday, August 13, 13

Slide 17

Slide 17 text

History I regret nothing. Tuesday, August 13, 13

Slide 18

Slide 18 text

Vision Tuesday, August 13, 13

Slide 19

Slide 19 text

Vision So, you create quests. E.g. for all your ideas for side projects. Everyone can see all quests. This is not like Facebook. On Questhub everyone is your friend :-) People “like” them and comment on them. So you end up with a list of quests, with varying numbers of points. Pick which quests to work on. When you complete quests, you get the points. Tuesday, August 13, 13

Slide 20

Slide 20 text

Vision Why? Tuesday, August 13, 13

Slide 21

Slide 21 text

Vision To-do list Social network Game QH Tuesday, August 13, 13

Slide 22

Slide 22 text

Vision Social networks optimize for: the number of users the number of views the number of displayed ads What if we optimized for: the amount of things done the sense of community the quantity and quality of feedback and, you know, fun Tuesday, August 13, 13

Slide 23

Slide 23 text

Vision Why you should have a public to-do list: Knowing that people care about your work feels good. Knowing which parts of your work people care about is helpful. Public precommitment can be a productivity tool. People who have clearly defined goals are more productive and produce higher quality. Feeling there is value to your goals is motivating. Tuesday, August 13, 13

Slide 24

Slide 24 text

Vision Note that likes are extremely cheap. Feedback loops: knowing that people care knowing that it’s possible knowing that your solution is sane Figuring it out faster and cheaper is the key. Tuesday, August 13, 13

Slide 25

Slide 25 text

Vision Of course, you have to think through your quests to get the optimal result too... Starting from your goals is natural. You know how half of the responses on irc start with “/achieve”? And blogging is expensive, you have to think it through. Tuesday, August 13, 13

Slide 26

Slide 26 text

Vision Fun is a complicated thing 4 kinds of fun: hard fun, easy fun, people fun, serious fun. (via http://xeodesign.com/whyweplaygames.html) Fun can emerge from communities, or from mechanics. But mechanics can affect community behaviors too. Tuesday, August 13, 13

Slide 27

Slide 27 text

Vision Games can make you more productive Jane McGonigal http://www.ted.com/talks/jane_mcgonigal_gaming_can_make_a_better_world.html Tuesday, August 13, 13

Slide 28

Slide 28 text

Vision Gamification can be good and can be evil You choose your own destiny on Questhub, so it doesn’t impose opinions on you (usually). Replacing fuzzy goals with points can help you with procrastination. Achievements = Specialization (and fun). Carl Mäsak, “Perl 6 is my MMORPG” http://strangelyconsistent.org/blog/perl-6-is-my-mmorpg Tuesday, August 13, 13

Slide 29

Slide 29 text

Vision Planning in bazaar There are no real project managers in open source. Nobody can tell people what they should do. But can we borrow and adapt good practices? Tuesday, August 13, 13

Slide 30

Slide 30 text

Vision Scalability issues Companies don’t scale because of too much bureaucracy and specialization. High latency for trivial tasks. Communities don’t scale because of the lack of communication. Stuff gets reinvented a lot. Tuesday, August 13, 13

Slide 31

Slide 31 text

Vision Use other people to sort your backlog The more likes you get on Questhub, the more points you get. Do things that other people like. Tuesday, August 13, 13

Slide 32

Slide 32 text

Vision My Questhub dream: Questhub : Big companies = Git : SVN We’re not quite there yet... Tuesday, August 13, 13

Slide 33

Slide 33 text

Vision Task reuse You can choose your quests from preset templates called stencils. Stencils are shared, reusable, valued patterns of community behavior. We’ve got 27 of those for Perl, from “Subscribe to Perl Weekly” to “Adopt a CPAN module”. Always looking for more of these. Tuesday, August 13, 13

Slide 34

Slide 34 text

Vision So what should you do? Dump all your plans on Questhub Take stencils Subscribe to Perl realm Look through people’s quests, “like” them Become realm keeper Invite people to your quests and join others Tuesday, August 13, 13

Slide 35

Slide 35 text

Examples Tuesday, August 13, 13

Slide 36

Slide 36 text

Examples @petdance: “Release ack 2.0” @yanick, @dams: “Have Dancer 2 released” @neilb: “Standardise the Changes file in 20 CPAN distributions” Best completed quests Tuesday, August 13, 13

Slide 37

Slide 37 text

Examples @neilb: “Standardise the Changes file in 20 CPAN distributions” Standardazing Changes crusade @borisd: “Standardise the Changes file in 5 CPAN distributions” @barbie: “Standardise the Changes file in all my CPAN distributions” @neilb, @sromanov: “Get 1% of CPAN distributions conforming to CPAN::Changes::Spec” (1% is A LOT, ~269 distributions) Total so far: 70 71 73 Tuesday, August 13, 13

Slide 38

Slide 38 text

Examples Catalyst project backlog @jnap manages Catalyst backlog on Questhub. (7 completed quests, 19 open quests) Tuesday, August 13, 13

Slide 39

Slide 39 text

Examples Tuesday, August 13, 13

Slide 40

Slide 40 text

Tech Tuesday, August 13, 13

Slide 41

Slide 41 text

Tech Under the hood: Dancer and MongoDB for backend Backbone, Bootstrap and CoffeeScript for frontend Ubic and Flux for background jobs Chef and Vagrant for development and deployment The code is open: https://github.com/berekuk/questhub Pull requests welcome! Tuesday, August 13, 13

Slide 42

Slide 42 text

Tech We’ve got API Both for reading and for writing (with API tokens) http://questhub.io/about/api Tuesday, August 13, 13

Slide 43

Slide 43 text

Future Tuesday, August 13, 13

Slide 44

Slide 44 text

Future Become rt.cpan.org and github alternative email2quest service file attachments better tracker features Tuesday, August 13, 13

Slide 45

Slide 45 text

Future Stencil collections for newcomers “Learn Perl in 20 steps” or: “How to become a Perl core developer in 10 steps” Do you have an idea in mind? Tuesday, August 13, 13

Slide 46

Slide 46 text

Future Badges Various badges for various specialities, from “Wrote first line of code in Perl” to “Most popular CPAN author” and “Pumpking”. Tuesday, August 13, 13

Slide 47

Slide 47 text

Future Not just Perl We’ve got 7 realms so far: I’m looking for ways to bootstrap new communities. Talk to me if you have an idea. Tuesday, August 13, 13

Slide 48

Slide 48 text

Future Lots of other stuff http://questhub.io/realm/meta/explore/open Give me more likes to help me with roadmap! :-) Tuesday, August 13, 13

Slide 49

Slide 49 text

Future Meta plan: I’ll work on QH at least until 2014. Not worrying about monetization yet, but will have to soon. Will start with freemium features such as private realms. If I can't make this my job, I'll keep running this as a hobby. Tuesday, August 13, 13

Slide 50

Slide 50 text

Me: @berekuk Questhub: @questhubio http://questhub.io Thanks: Neil Bowers and all Questhub players CPAN:MMCLERIC Vyacheslav Matyukhin Tuesday, August 13, 13