The art of patience

or Why bother
teaching Git to a designer

Interaction design

Like industrial design, the discipline (...) would start from the needs and desires of the people who use a product or service

Bill Mogridge, Designing Interactions (2007:14)

Building software that makes sense to the people who use it

Building software that makes sense to the people who use it

I want you to teach Git to the designers working with you

A story in 3 parts

  1. How
  2. Why
  3. How long

1. How?

The Yocto Project provides a set of tools for creating and maintaining customised Linux distributions for embedded devices, between them a build system.

The Yocto Project provides a set of tools for creating and maintaining customised Linux distributions for embedded devices, between them a build system.

Some interesting takeaways

  1. Teach on a need to know basis
  2. Avoid the Git jargon
  3. Don't bother too much with the concepts
  4. Do things with - never for - your designers
  5. Designers should take notes and keep a cheat sheet
  6. Teach command-line Git
git clone [SPECIAL_PLACE]
git checkout [BRANCH_THINGHY]

Some interesting takeaways

  1. Teach on a need to know basis
  2. Avoid the Git jargon
  3. Don't bother too much with the concepts
  4. Do things with - never for - your designers
  5. Designers should take notes and keep a cheat sheet
  6. Teach command-line Git
git pull
git fetch

Some interesting takeaways

  1. Teach on a need to know basis
  2. Avoid the Git jargon
  3. Don't bother too much with the concepts
  4. Do things with - never for - your designers
  5. Designers should take notes and keep a cheat sheet
  6. Teach command-line Git
git checkout -b [NEW_BRANCH]
git add [FILES]
git commit -s
git branch -d [BRANCH]
git branch -D [BRANCH]
git push --delete [REMOTE] [BRANCH]
git commit --amend
git push [REMOTE] [BRANCH]

Some interesting takeaways

  1. Teach on a need to know basis
  2. Avoid the Git jargon
  3. Don't bother too much with the concepts
  4. Do things with - never for - your designers
  5. Designers should take notes and keep a cheat sheet
  6. Teach command-line Git

A mental model is what the user believes about the system at hand (...) A mental model is based on belief, not facts: that is, it's a model of what users know (or think they know) about a system

Jakob Nielsen, Mental Models (2010)

In case of a mental-model mismatch (...) make the system conform to users' mental models

Jakob Nielsen, Mental Models (2010)

Some interesting takeaways

  1. Teach on a need to know basis
  2. Avoid the Git jargon
  3. Don't bother too much with the concepts
  4. Do things with - never for - your designers
  5. Designers should take notes and keep a cheat sheet
  6. Teach command-line Git

2. Why?

lurking behind the demand for designers to code is the more pertinent and useful question of whether or not designers should understand the strong forces that the coder has to wrestle with. My answer to that is an unequivocal “Yes!”

Alan Cooper, Should Designers Code?? No, Part Two: Know Versus Do. (2017)

Why should designers learn Git?

  1. Learning about software as design material
  2. Turning designers into partners in building
  3. Participating in our own terms
  4. Contributing to FOSS

Why should designers learn Git?

  1. Learning about software as design material
  2. Turning designers into partners in building
  3. Participating in our own terms
  4. Contributing to FOSS

Why should designers learn Git?

  1. Learning about software as design material
  2. Turning designers into partners in building
  3. Participating in our own terms
  4. Contributing to FOSS

Why should designers learn Git?

  1. Learning about software as design material
  2. Turning designers into partners in building
  3. Participating in our own terms
  4. Contributing to FOSS

3. How long?

2 ...

2 ... years

To Paul Eggleton and Michael Wood
for teaching me Git.

Credits

Sleepy Turtle by Kevin Jones - CC BY 2.0

Bill Moggridge at CIID by Mayo Nissen - CC BY-NC 2.0

the Making of Harry Potter - Wiseacre's Wizarding Equipment by Darren - CC BY-NC-ND 2.0

Flour by Michelangelo Carrieri - CC BY-ND 2.0

Whatever by Thomas Hawk - CC BY-NC 2.0

Bad Opinions by xkcd - CC BY-NC 2.5

INDEPENDENCE by Mat Simpson - CC BY-NC-ND 2.0

Red brick wall by Picdrome Public Domain Pictures - CC0 1.0

Thank you!

Slides at

https://belenbarrospena.github.io/the_art_of_patience_gitmerge2019/

Script at

https://preview.tinyurl.com/y7q6y5um

Get in touch

belenbarrospena@gmail.com