Institut Pasteur & INRIA Futurs
Participatory programming and the Scope of Mutual Responsibility:
Balancing scientific, design and software commitment
Catherine LetondalWendy E. Mackay
2
Research setting
Institut Pasteur, France
World leader in biological research
Created by Louis Pasteur in Paris in 1850’s
Diverse research environment
Diverse computer environment
Over seven years:
multiple long and short-term participatory design projects
3
Computing in biology
Biologists rely on a variety of software tools:
Algorithms, databases, editors, websites with on-line tools
Two main types:
• large scale projects (genomic centers, .gov or .europ, etc.)
• local developments (often not distributed)
4
Computing in Biology
Needs:
• simple data manipulation and editing
• database search, retrieval and browsing
• tools for running standard data analyses
• tools for constructing scientific hypotheses
• information management tools
Evolution
• dynamic software activity
• developed by domain experts for specific purposes
• small, single-purpose tools
• recycling program chunks vs. reuse of designed modules
• designed modules evolve quickly
5
Users as participants
Education: Biology:
Computer Science:
Goals:Biology research:
Tools for biologists:CS research:
Results:Local software:
Distributed software:Biology articles:
CS articles:
Computer scientists
Bioinfor-maticians
Biologists
6
Pasteur user survey
Five user categories:
lo-hi use level
lo-hi comfort level
Learners (15%) Occasional
Users (36%)
Non-UNIX (15%)
Young
Scientists (15%)
Gurus (6%)
Discomfort, help needed
Comfort, autonomy
Extensive computing
Little computing
7
Informatics in Biology Course
Teach practicing and junior biologists basic programming skill
• Programming autonomy
• Improved communication with computer scientists
Course: 11 sessions, 16 per year, 130 total students
20 Professors: 40% biologists, 50% computer scientists, 10% other
60% Pasteur, 40% exterior
Subjects: Programming, databases, web programming,
Participatory design
Activities: Lectures, workshops, seminars & projects (+50%)
8
Software R&D projects
biok Data analysis & visualisation environment for biologists.
1. Analyze biological data, e.g. DNA, sequences 2. Support tailorability and end-user programming
A-book Augmented laboratory notebook,
integrates on-line data with paper lab notebook.
Mobyle Environment for searching, discovering, running &
combining bioinformatics analysis tools.
i3DMo Tk widget for 3D structure visualization
9
Participatory design activities
Timeline of participatory design activities (1996 - 2004)
10
Reflecting on Participatory Programming
Activities:
Interviews
Group meetings
Questionnaire
Feedback:
Workshops
Course projects
11
Boundary objects
Concrete:
Software tools
Abstract:
Program concepts
--------
Installed software
Small local software artifacts, spreadsheets and scripts
(one purpose only)
Projects (from the course) - exercises
Biology problems:
Biologist: the problem
CS: instance of a problem
12
Reflection: 3 poles
Most research labs move between 2 poles:
Computational medium and Scientific Hypotheses
Responsibilities:
Software act as Boundary objects
But we do not see boundary roles
Skills: often overlap
Biologists who program, CS who know about biology
Responsibilities: rarely overlap
« Me, I’m not a biologist » or « Me, I’m not a computer scientist »
Image of 2 poles:
13
Reflection: 3 poles
If we add a 3rd pole, participatory design,
we open opportunities for better communication and better tools
Participatory design as a ‘boundary activity’
Weak coupling
Image with third pole
14
‘
Reflection: 3 poles
Computationalmedium
Participatorydesign
Scientifichypotheses
Localdevelopments
Activetheories
Problemsolving
Scientificscenarios
Informalscientific discussions
Softwaredesign
15
Reflection: 3 poles
Most research labs move between:
Computational medium
Scientific Hypotheses
If we add
Participatory Design
We open opportunities for better communication and better tools
(weak coupling)
16
Participatory
Participatory Design
Participatory Science
Participatory Problem Solving
Participatory Teaching
Participatory Programming
*
17
Participatory Design
Prototyping
Observation
Evaluation Brainstorming
Mackay et al. (2000)
18
Participatory Problem-Solving
Designing scientific algorithms:
Who has responsibility for the quality of a scientific hypothesis?
Problem: major misunderstanding
Biologists assume software will help identify scientific questions
Computer scientists assume biologists know the questions
Biologists work with a ‘problem’
Computer scientists consider this to be an ‘instance’ of a problem
Example: biologist is looking yyy gene in a xxx
CS wants to write an algorithm to find this gene in any animal
19
Participatory Problem-Solving
Scientific modeling workshops allow participatory problem defining
Participatory prototyping of scientific algorithms
to express scientific problems and sketch potential solutions
Illusion of software ‘magic’ - somehow the software will find the right research question. (Not poor biologists - it’s the tool that creates the illusion)
Example 1: 2 workshops to help define the scientific question:
Data: Families of genes vs. Interactions :
What can we do with this data?
Workshop 1: Brainstorming:
Help identify that the biologists didn’t already have a clear idea of the question - Posed all kinds of different questions (create ‘question’ space)
Workshop 2: Prototyping:
Highly-prepared in advance based on questions that emerged from brainstorming, with lots of data examples
Data examples projected on whiteboard, + paper proto stuf
Refined and validated the question.
What happened - continued to define the question - but this time, seriously evaluating and developing ideas.
Result:
Moving beyond interactive software design to algorithm design
20
Course projects
Put in images
Participatory Teaching
21
End-user Programming today
Spreadsheets
Scripts
Small databases
Specialised software
Web applications
Distributed software
Algorithms
spreadsheets
22
Programming by the user
Biologists program but do not want to be programmers
Need flexibile environment to allow non-anticipated usage
Tool : Biok
MAP = Meta-Application Protocol
Manipulation at multiple levels:
Data (DNA sequences, etc.)
Meta-data (alignment, gap…)
23
Participatory Programming
Participatory design for end-user programming
vs.
End-user programming to help the design
Goal : either: end-user programmable software
Or using end-user programming to help in the design
24
Participatory Science
Workshops
Serve as a point of discussion for scientific ideas
1 example of PD to explore and specify a scientific design
Why teach participatory design to biologists?
Knowing that it exists, they can demand more and create a better mode of communication with programmers
25
Teaching Participatory Design to Biologists
Wendy’s course …
Approach:
A bit strange, but we actively TEACH biologists to do pd.
(they have both roles of being biologists primarily
but also learning to program - and learning PD as
a part of programming, either to communicate with
other programmers or to help them do their own designs…)
Examples from project
Really linked to the issue that who does what..
26
Conclusion
- summary view of the 3 poles (as in the paper):
Diagram of three poles
PD -> CM <- science : collaboratively building a CM
CM -> PD <- science : Providing input to the participatory
activities
CM -> science <- PD : Mediating scientific hypotheses
27
Boundary objects
Boundary objects are scientific objects which both inhabit several intersecting social worlds and satisfy the informational requirements of each of them. Boundary objects are objects that are both plastic enough to adapt to local needs and the constraints of the several parties employing them, yet robust enough to maintain a common identity across sites. They are weakly structured in common use and become strongly structured in individual site use. These objects may be abstract or concrete. … The creation and management of boundary objects is a key process in developing and maintaining coherence across intersecting social worlds.
(Star & Griesemer, 1989)
28
Human-Computer Interaction - 3 themes
New design methods:
participatory designco-adaptive systems
New interaction techniques:
paradigms & interaction models
empirical studies
New software tools:
engineering interactive systems
toolbox
29
Utilisateur
Situated Interaction
ComputersUsers
Environment
Artefacts
30
Research Strategy
The concept of ‘scientific’ has evolved
Chaotic phenomena: small changes lead to large efffects
Co-evolution : human-system interaction
Triangulation : necessary for ‘real’ problems
Inspiration from other disciplines
Interactive systems are not ‘natural phenomena’
Requires a mix of scientific,engineering and ‘design’ strategies together
Example : architecture
combines science, engineering et design
31
Multi-disciplinary approach
design
psychology
sociology
anthropology
industrial design
typography
graphic design
social sciences
Interactive systems
engineering
architecturecomputer science
electronics
mechanicalengineering
optics
physiology
Novel design methods
33
Strategies for understanding users
Scientific perspectiveCollect dataAnalyze dataInform designers
Engineering perspective technical trade-offs
ensure that it works “in situ”
Design perspectiveGet design inspirationReflect on daily activitiesRedefine the design problem
[interaction paradigms and models]
35
Mixed reality and tangible interfaces
How do we manage physical and on-line documents?
Why is it so hard to eliminate paper?
Mixed realityLinks between physical artifacts and on-line information
Tangible interfacesPhysical objects represent data and software tools
36
Mixed reality : A-book
Physical object augmented with software:
Paper notebook
‘Magic lens’
Capture hand-written data
Links and search for data
on-line
Patent: INRIA
37
A-book
[novel software tools]
39
Compromise between power and simplicity
simplicity
Power of expression
How can we move the curve?
40
For more information
Websitehttp://insitu.lri.fr/
Mediated ommunicationhttp://www.lri.fr/~roussel/projects/
Participatory design and mixed realityhttp://www.lri.fr/~mackay/research.html
Information visualisationhttp://www.lri.fr/~fekete/InfovisToolkithttp://www.cs.umd.edu/hcil/millionvis/
Instrumental interaction and the CPN2000 projecthttp://www.lri.fr/~mbl/INSTR/http://www.daimi.au.dk/CPnets/CPN2000/
41
Conclusion
Next generation of interactive environments
new design methods
new interaction techniques
new software tools