go away, i'm coding
go away, i'm coding
the problem
research software engineers often work in environments unsuitable for programming. Often management, colleagues don't recognise importance of environment.
the solution
find a friendly way of demonstrating the importance of environment. A game that:
- has programming-like tasks for non-programmers (featuring for example memory tasks)
- introduces distractions
- assesses the impact of distractions on programming-like task
- is modular, so that others can design new annoying distractions
- produces metrics so as to explore problems such as whether distraction really decreases productivity?
the implementation
lots of reuse and lots of stitching things together:
- base game mechanic forked from HTML5-Simon-Says (MIT Licence assumed, creator contacted to establish this)
- random pop-up interruptions added by the team
- interruptions in the form of Public Domain images from the DPLA's GIF IT UP competition added by the team
- output of score as an array (1 to n) and interruption as an array (0 or 1; where 1 is an interruption occurred) added by the team
- feedback in the form of a chart that represents both the user score and where the during the game interruptions appear added by the team
the future
we have the basic workflow, but lots could be improved:
- "flow is fragile but, thankfully, it isn't as fragile as it first seems. Flow can only be broken if an interruption requires a programmer to mentally change contexts" (Dollery, 2003) Adding different categories of distraction - perhaps on a taxonomy from least to most similar to the main task - would allow demonstration of the types of distraction that most are problematic
- the positive effect of the coffee shop hum (eg New York Times, 2013). Could we replicate attention boosting scenarios?
- implementation of full data analytics
- implementation as a public, web based service
the team
team of five (with one contributing remotely) with work assigned so as to play to the strengths of each individual (a mix of technical and non-technical):
- organisation via Gitter, GitHub issues, and Scrum Task Board
- three workstreams: interruptions, feedback, joining it all together, documentation
- public documentation (this page!) via GitHub Pages
- lots of showing, teaching, helping, demoing, and learning so as to improve overall team skill set
the legal/credit/admin bit
created at Software Sustainability Institute Collaborations Workshop 2015 hackday by Mateusz Kuzak, David Perez-Suarez, Tom Pollard, Joshua Potter, and James Baker.
This page is licensed under a Creative Commons Attribution 4.0 International License. Exceptions: embeds to and from external sources, and direct quotations