mediated by one or more instruments or tools (Rabardel, 1995)
Activity theories
Anthropocentric point of view (Lomov, 1977; Rabardel, 2005)
“A tool is what it is used for” (Bannon & Bødker, 1991)
“Tools shape the way human beings interact with reality.
(...) The shaping of external activities eventually results in the shaping of internal ones.”
(Kaptelinin & Nardi, 2006)
History & development (Engeström, 2014 [1987])
Mediated activity
The dotted arrows represent the three orientations of mediation in instrument-mediated activity. The linear arrows represent non-mediated relations.
Instrument
A mixed entity
physical or symbolic artefact
associated utilization schemes, resulting from an autonomous construction specific to the subject or from an appropriation of social schemes already formed outside of him
Shaped through use (personal and social constructs)
Instrumental genesis
1st study
Interviews with graphic designers
Results
Description of the activity: determinants-effects framework, families of activity
Integration of values and practices of free software culture
2nd study
Video & code based case studies
Methodology
Video recordings
Jaton, 2022
Amélie
10 videos
29:50:09
Benjamin
23 videos
34:29:29
Self-confrontation interviews
Vermersch, 1994
Self-confrontation based on activity traces
Cahour et Licoppe, 2010
Subjective dimension of the activity
Theureau, 2004, 1994
Amélie
1st interview
2:02:00 (audio)
12 250 w.
2nd interview
1:26:35 (audio)
16 150 w.
Benjamin
1st interview
2:02:00 (audio)
12 250 w.
2nd interview
1:26:35 (audio)
16 150 w.
Analyse of code source
Jaton, 2022
Amélie
Files
7
HTML
6 252 lines
CSS
1 475 lines (1 file)
Benjamin
Files
7
HTML
969 lines
SCSS
2 998 lines (22 files)
Results 1/6
Generic Composition Instruments
with HTML and CSS
Utilization Schemes
A scheme is a behavior organizer — a repeatable action framework (Piaget & Rabardel).
Schemes are structured, generalizable, and made of interdependent parts.
They develop through experience and interaction with tool.
Schemes adapt to new or similar situations.
Class situation observed
“Template Instrument” Design of page templates
2 cases = 2 narratives of the development, implementation and adjustment of the “template” instrument
Case 1
Amélie designs title pages
Comprehensive diagram of the development, implementation and adjustment of the “template” instrument in the course of the activity
1. Elaboration phase
9 line of HTML and 60+ lines of CSS
2. Implementation phase
3. Adjustment phase
Comprehensive diagram of the development, implementation and adjustment of the “template” instrument in the course of the activity
Case 4
Benjamin designs list pages with different columns
A "funnel-like" scheme
1. Applies a six-column grid to all “list” pages
2. Extends elements over three columns if specified as “list-2col-h” pages in the HTML section
3. Extends elements by three columns if specified as “list-3col-h” pages
4. Changes the grid to 12 columns and extends the elements over 4 columns if it is specified that these are also “list-4col” pages
[I try] to select a set of sections and [I set out] generic rules that act on all sections at the same time (...) And then, if need be, I refine them on a particular page, a particular section, a particular type of content. (...) But in reality, it's more by iteration: I concentrate on all the pages that need a 2-column grid, then the 3-column ones, and so on.
From the same artefact, different schemes of utilization lead to different instruments.
Instruments are developed through practice and reflect each designer’s individual experience.
Two strategies for composition:
Amélie: bottom-up → builds generality through repeated specific cases
Benjamin: top-down → from global styles to specific pages
Shared goal: reusable, flexible, and scalable page layouts
Results 5/6
Creating instruments with the code of others
Narrative of an instrument genesis
Benjamin creates a two-tone filter for images
Condensed narrative of the activity
#1 Consult an external resource
#2 Transforming code to understand
#3 Mobilize past experience
#4 Understand/mobilize the most efficient parts of the code for the action
#5 Select the most relevant code
#6 Make code generic
#7 Apply the code to several situations
#8 Adapt the code to your own resource system (instrumental genesis)
CodePen: RGB color values in a format ranging from 0 to 1.
Expect by Benjamin : hexadecimal RGB values (e.g., #63bdc2)
Before (left): RGB colors in hexadecimal format After (right): RGB colors described as arrays in a JSON file.
Intrumental genesis
Instrumentalization(artefact)
Modification of the artefact (code) = adapts code to project needs
Instrumentation (utilization shemes of the subject)
Changes understanding of RGB logic Gains deeper comprehension of proportional color systems
Constructive dimension of the activity
(Resource for future action)
I understand better how RGB works now: it’s more about proportions, from 0 to 255. Working with it in another proportional scale, from 0 to 1, helped me better understand what it really is.
Results 6/6
Instrumental mediations in code readability practices
Analysing reflexive, epistemic, and interpersonal mediations
Type of mediations
Rabardel, 1995, 2003, 2005
Mediations to the object (epistemic / pragmatic forms)
Reflexive mediations
Inter-personal mediations
Some class of situation involved in the code readability
Visual organization
Meaningful naming
Code decomposition & simplification
Code cleaning
Textual comments
Nesting for clarity
Nesting for Clarity (left: HTML, right: SCSS)
Reflexive mediations in composition activity
Enhancing code readability serving several purposes:
Efficiency and navigation
Understanding their own past actions
Interpersonal Mediations in Composition Activity
It's important that others can reread [my code] because I strongly support free and open-source software, and it's important that projects are well-documented and clear so that other people can reappropriate them and understand the logic. (Amélie)
Reciprocity and learning
(Epistemic mediation)
Shared "good practices"
(documentation, tutorials, collaborative work)
Code as a readable trace of activity
The activity of making code readable involves designing code artifacts intended to be read in such a way that the activities through which they were produced can be reconstructed later, either by oneself or by peers.
Larning to write a computer program is learning to write it in such a way that it is intelligible to a community of practitioners.
— Button & Sharrock, 1995
Statement
Designers are constantly developing resources for future activity
on an individual and collective scale
3rd study
Paged.js hackathon
How designers that use paged.js actively shape the tool itself?
How the comunity of pratice develop their own instruments?
Why a hackathon?
A defined and limited time and space for observable data
Concrete participation to the community (design & code)
Development of a complex web interface to synchronize and process all the data.
From individual experience to collective design
Issues and needs rooted in individual past experience
Shared stories revealed common concerns
Local issues reframed as collective design challenges
Design of generic, reusable script modules
Example: Full-Page image placement
Full-Page image placement issue
First script
Second script
Comprehensive documentation of the complex mechanisms of baseline alignment
Statements
Shift in the object of activity → from a singular authority to comunity of practice
Reciprocal development between individual and collective activity
Collective Instrumental Genesis
Type of collective instrumental genesis
Collective instrumentalizations → attribution of new and durable functionalities to the shared artefact (functional modules in Paged.js)
Production of various artefacts designed to support the instrumentation of the subjects of the community of practice
Collective instrumental genesis
The process of a community of practice elaborating instruments (tools, scripts, workflows, knowledge) by and for itself