Upload
roberto-minelli
View
34
Download
4
Tags:
Embed Size (px)
Citation preview
Free HugsPraising Developers For Their Actions
Roberto Minelli, Andrea Mocci, Michele Lanza REVEAL @ Faculty of Informatics — University of Lugano, Switzerland @robertominelli
What is a game?
“Playing a game is the voluntary attempt to overcome unnecessary obstacles.”
Goal
Rules
Feedback system
Voluntary participation
Reality is Broken J. McGonigal
Penguin, 2011
“Playing a game is the voluntary attempt to overcome unnecessary obstacles.”
Goal
Rules
Feedback system
Voluntary participation
Reality is Broken J. McGonigal
Penguin, 2011
“Playing a game is the voluntary attempt to overcome unnecessary obstacles.”
Goal
Rules
Feedback system
Voluntary participation
Reality is Broken J. McGonigal
Penguin, 2011
“The use of game thinking and game mechanics in non-game
contexts to augment the engagement of users.”
Gamification|ˌgāmifəˈkāSHən|
Boost the performance through gamification
gamification software engineering
software engineeringgamification in
For the Win K. Werbach and D. Hunter
Wharton Digital Press, 2012
Language Quality Game
Thousands of participants reviewed over half a million dialog boxes, logging 6,700
bug reports, resulting in hundreds of fixes
Stackoverflow and GitHub: Associations between software development and crowdsourced knowledge
B. Vasilescu, V. Filkov, and A. Serebrenik Proceedings of SocialCom 2013
Integrated Development Environment (IDE)
“The programmer, like the poet, works only slightly removed
from thought-stuff.
He builds his castles in the air, from air,
creating by exertion of the imagination.”
The Mythical Man-Month F. Brooks
2nd ed. Addison-Wesley, 1995
developer
developer
What can be done about it?
developer
gamification in the IDE
“If you do this you’ll get that.”
Reflections on Behaviorism and Society B. Skinner
Prentice Hall, 1978
The Alter Ego
The Alter Ego
Short-term
The Alter Ego
Short-term Long-term
Session Digest
What? When?
1 class3 methods
3 class4 methods
1 class1 method
navigationinspectionedit
mouse
keyboard
Top
Act
ivit
y
Profile
232,321 pts. 12
Lv.4
1 2
How do you feel?
NavigationUnderstandingEditingUser Interface
browsing inspecting searching
2h09m25s duration
6m22s navgation time
11m06s editing time
20m16s user interface time
1h31m40s understanding timeTi
mel
ine
time
Session Digest
What? When?
1 class3 methods
3 class4 methods
1 class1 method
navigationinspectionedit
mouse
keyboard
Top
Act
ivit
y
Profile
232,321 pts. 12
Lv.4
1 2
How do you feel?
NavigationUnderstandingEditingUser Interface
browsing inspecting searching
2h09m25s duration
6m22s navgation time
11m06s editing time
20m16s user interface time
1h31m40s understanding timeTi
mel
ine
time
Session Digest
What? When?
1 class3 methods
3 class4 methods
1 class1 method
navigationinspectionedit
mouse
keyboard
Top
Act
ivit
y
Profile
232,321 pts. 12
Lv.4
1 2
How do you feel?
NavigationUnderstandingEditingUser Interface
browsing inspecting searching
2h09m25s duration
6m22s navgation time
11m06s editing time
20m16s user interface time
1h31m40s understanding timeTi
mel
ine
time
Session Digest
What? When?
1 class3 methods
3 class4 methods
1 class1 method
navigationinspectionedit
mouse
keyboard
Top
Act
ivit
y
Profile
232,321 pts. 12
Lv.4
1 2
How do you feel?
NavigationUnderstandingEditingUser Interface
browsing inspecting searching
2h09m25s duration
6m22s navgation time
11m06s editing time
20m16s user interface time
1h31m40s understanding timeTi
mel
ine
time
The Development Empire
“A system that rewards complex actions and best practices of a developer with badges, achievements, and trophies of different types.”
Profile
232,321 pts. 12
Lv.4
1 2
How do you feel?
The Development Empire
A new community, where people can observe, challenge, and
interact with other developers
PSN
Session Digest
When?
NavigationUnderstandingEditingUser Interface
browsing inspecting searching
2h09m25s duration
6m22s navgation time
11m06s editing time
20m16s user interface time
1h31m40s understanding time
Profile
232,321 pts. 12
Lv.4
1 2
What?
1 class3 methods
3 class4 methods
1 class1 method
navigationinspectionedit
mouse
keyboard
Top
Act
ivit
y
Tim
elin
etime
How do you feel?
Roberto Minelli, Andrea Mocci, Michele Lanza REVEAL @ Faculty of Informatics — University of Lugano, Switzerland
FREE HUGS
@robertominelli
Praising developers for their actions
Nothing in life is free
love is.
FREE HUGS Praising Developers for Their ActionsREVEAL @ Faculty of Informatics, University of Lugano, Switzerland
R E V E A L
Universitàdella Svizzeraitaliana
@robertominelli
[email protected]/phd/minelli
Roberto Minelli, Andrea Mocci, Michele Lanza
Session DigestWhen?
Navigation
UnderstandingEditing User Interface
browsing inspecting searching
2h09m25sduration
6m22s navgation time11m06s editing time20m16s user interface time1h31m40s understanding time
Profile
232,321 pts.
12
Lv.4
1 2
What?
1 class3 methods
3 class4 methods
1 class1 method
navigationinspectionedit
mouse keyboard
Top
Act
ivit
y
Tim
elin
e
time
How do you feel?
A sunburst visualization that shows activities and time componentsA tree visualization of the entities involved in the last session with the intensity of the interactions
An activity view that decomposes a single activity into its low-level events
A summary of the developer’s profile that goes towards an application of gamification
A sentiment feedback on the last development session
A timeline of activities, divided per category
A table that shows the last diffs
Session Digest A short-term gratification, similar to the one present in fitness apps, offered to developers for their last development session. It summarizes the last session from various perspectives, e.g., how was time used, how much was achieved from a coding point of view, which program entities were involved, etc. It also enables to dig into the fine-grained recorded data and acquire a deeper understanding.
Alter Ego A developer is like a character in a role-playing game: She moves her first steps, evolves, acquires new skills, and unlocks new ach ievements . In our v i s ion developers possess an avatar that they can evolve, providing them short- and long-term satisfactions to turn software development into a more engaging activity.
Development Empire The long-term vision is a comprehensive gamification layer on top of the IDE. It is not all about assigning points to developers, but the development of a ramified system that rewards complex actions and best practices of a developer with badges, achievements, and trophies. The history and the evolution of the alter ego of a developer is a key factor. When this mechanism is in place, all the alter egos will originate a new community, where people can observe, challenge, and interact with other developers.
Bug-tracking systems
Coding style and guidelines
Questions & answers services (Q&A)
User study
DFLOW
Smalltalk IDE
Recorder Analyzer …
HTTP
DFLOW
Server
DFLOW
Smalltalk IDE
Recorder Analyzer …
HTTP
DFLOW
Server
MetaOpening a Finder UI Selecting a package, method, or class in the code browser Opening a system browser on a method or a class electing a method in the Finder UI Starting a search in the Finder UI Inspecting an object Browsing a compiled method Do-it/Print-it on a piece of code (e.g., workspace) Stepping into/Stepping Over/Proceeding in a debugger Run to selection in a debugger Entering/exiting from an active debugger Browsing full stack/stack trace in a debugger Browsing hierarchy, implementors or senders of a class Browsing the version control system Browse versions of a method Creating/removing a class Adding/removing instance variables from a class Adding/removing a method from a class Automatically creating accessors for a class
User Interface
Low-Level
Opening/closing a window Activating a window, i.e., window in focus Resizing/moving/minimize/maximize a window class
Mouse button up/down Scroll wheel up/down Mouse move Mouse-out/in Keystroke pressed