Telephone +44(0)1524 64544
Email: info@shadowcat.co.uk

isaga-2010 - playgramming

Sat Dec 22 00:30:00 2012

Slides for the talk playgramming at isaga-2010

Playgramming

-

Gaming
Productivity
Programming

-

Matt S Trout
(mst)

-

Shadowcat
Systems

-

NW England

-

perl

-

training
support
consultancy

-

educate
elucidate
inspire

-

perl

-

perl
community

-

insane
brilliant

-

volunteers

-

-

programmers
play games

-

Eve
Online

-

World of
Warcraft

-

Social
groupings

-

Office
gaming

-

Wolfenstein:
Enemy
Territory

-

Small
teams

-

Multiple
classes

-

Know your
colleagues

-

-

D&D
4E

-

Striker
Defender
Controller
Leader

-

Striker:
raw
damage

-

Striker:
feature
developer

-

Defender:
tank

-

Defender:
maintainance
programmer

-

Controller:
area
effect

-

Controller:
systems
architect

-

Leader:
boost and
heal

-

Leader:
PM or
team lead

-

Anecdatal
evidence

-

Case study:
last sunday

-

Diablo II

-

Jen
Assassin

-

Striker
Controller

-

Developer
Systems

-

Aurynn
Barbarian

-

Striker
Leader

-

Me
Necromancer

-

Controller
Leader

-

Architect
Team lead

-

(and so we
spent hours
killing things
for fun ...)

-

-

programming
as a game

-

ICFP

-

International
Conference
Functional
Programming

-

IFCP
contest

-

Annual

-

Results
announced
at the
conference

-

Cash
prizes

-

$2k
total

-

I didn't
even know

-

Organisers
announce

-

1st

-

"the programming
language of choice
for discriminating
hackers"

-

2nd

-

"a fine tool
for many
applications"

-

Lightning

-

"very suitable
for rapid
prototyping"

-

judge's
prize

-

"an extremely
cool bunch
of hackers"

-

-

educating
as a game

-

evolution

-

usenet

-

pure
communication
medium

-

reputation by
... reputation

-

acclaim
of peers

-

"being
known"

-

forums

-

points
per post

-

badges

-

reputation
by volume

-

no guarantee
of signal
to noise ratio

-

perlmonks

-

points
per post

-

reputation
per post

-

level up

-

acclaim by
voting

-

groupthink
problems

-

acclaim by
saying what
everybody
else would

-

experts
exchange

-

expert
sexchange

-

closed
site

-

google
hostile

-

reputation
not public

-

FAIL

-

lunch
eaten
by:

-

stack
overflow

-

points for
answers

-

points for
good answers

-

points for
solving the
questioner's
problem

-

points for
questions

-

points for
interesting
questions

-

helping
educating
initiating

-

community

-

community
competition

-

community
competition
co-operation

-

-

me

-

Inline::Guile

-

Sam
Tregar

-

"sign up
to PAUSE"

-

Catalyst

-

irc.perl.org
#catalyst

-

talking
to people

-

solving
problems

-

"this
is fun"

-

  <person> mst++

-

  <mst> karma mst
  <purl> mst has karma of 1704

-

learning to
help people

-

learning to
teach people

-

... while
working

-

learning to
multitask!

-

-

perl
community

-

CPAN

-

20000
libraries

-

1000 new
versions
per month

-

200 new
libraries
per month

-

How?

-

donation

-

giving
back

-

force
multiplier

-

sheer
joy

-

visible
recognition

-

CPAN
leaderboard

-

most recent
releasers

-

miyagawa
221

-

cpanratings

-

cpanrantings

-

IRC karma

-

Thank you
notes (really)

-

cpants

-

quality?

-

kwalitee

-

well formed
distribution

-

tests

-

examples

-

comprehensive
documentation

-

used by
other
distributions

-

RT queue

-

rt.cpan.org

-

mostly
though

-

people as
motivation

-

people who
use our
software

-

people who
ask for help

-

people who
help to help
other users

-

people who
contribute

-

tests

-

tests
features

-

tests
features
bugfixes

-

tests
features
bugfixes
documentation

-

collaboration

-

team
building

-

watching
people
level up

-

race to
patch

-

"you give me
a test, I'll
write the
feature"

-

contributor
lists

-

non-distinguishing
contributor lists

-

community
co-operation

-

competition?

-

developer
versus
tester

-

specification

-

build
tests

-

build
code

-

code should
implement
specification

-

tests should
prove compliance
to specification

-

race!

-

dev tries
to implement
faster than
tester can
write tests

-

red/green

-

test matrix

-

"going green"

-

never fail an
existing test

-

quality through
competition

-

dunce
cap

-

solitaire
version

-

build
test

-

pass
test

-

watch your
lines of green
lengthen

-

positive
feedback
addiction

-

Case
Studies

-

(more
anecdata)

-

"first run of
code is always
from a test"

-

tangible
progress

-

tangible
-proven-
progress

-

developer
versus
tester

-

"This man
is a ninja"

-

youbrokethebuild.com

-

friendly
competition

-

social
dynamic

-

-

Summary

-

Summary
(start thinking
about questions)

-

community
co-operation
competition

-

incentives
to volume

-

incentives
to quality

-

incentives
to elegance

-

incentives
to teaching

-

teams play
together

-

teams work
together

-

programming
can be play

-

productivity
can be play

-

Questions?

-

http://shadowcat.co.uk/
mst@shadowcat.co.uk
twitter: @shadowcat_mst
(come get a coaster :)