What Ops Can Learn From Design
-
Upload
robert-treat -
Category
Technology
-
view
370 -
download
1
Transcript of What Ops Can Learn From Design
![Page 1: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/1.jpg)
/ Robert Treat
What
Ops
Can Learn From
Design
Velocity Barcelona
Tuesday, November 18, 14
![Page 2: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/2.jpg)
Hello
ground rules
slides will be online
@robtreat2
ask questions
Tuesday, November 18, 14
![Page 3: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/3.jpg)
Who Am I?
web dev
dba
nodejs
phpperl
postgres
distributed systems
pointy hair
author
speaker
sysadmin
shawarma
crocs
root beer monitoring
oscon
mysql
devops
surgecon
velocityconf
pgcon
open source
ruby
chef
illumos
zfs
dtrace
philosopher
omnios
golang
zones
scalability
linux
sql
nosql
git
engineer
Tuesday, November 18, 14
![Page 4: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/4.jpg)
Who Am I?
web dev
dba
nodejs
phpperl
postgres
distributed systems
pointy hair
author
speaker
sysadmin
shawarma
crocs
root beer monitoring
oscon
mysql
devops
surgecon
velocityconf
pgcon
open source
ruby
chef
illumos
zfs
dtrace
philosopher
omnios
golang
zones
scalability
linux
sql
nosql
git
engineer
Tuesday, November 18, 14
![Page 5: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/5.jpg)
Who Am I?
designer?
Tuesday, November 18, 14
![Page 6: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/6.jpg)
Who Am I?
web usability analyst
ux / ui
Tuesday, November 18, 14
![Page 7: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/7.jpg)
Who Am I?
A designer is a person who designs.
More formally, a designer is an agent that "specifies the structural properties of a design object".
In practice, anyone who creates tangible or intangible objects, such as consumer products, processes, laws, games and graphics, is referred to as a designer
-- https://en.wikipedia.org/wiki/Designer
Tuesday, November 18, 14
![Page 8: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/8.jpg)
What is Design?
Tuesday, November 18, 14
![Page 9: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/9.jpg)
What is Design?
focus on utility, not aesthetics
Tuesday, November 18, 14
![Page 10: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/10.jpg)
What is Design?
everything is created with a purpose
think of design as the means by which we make that purpose self evident
Tuesday, November 18, 14
![Page 11: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/11.jpg)
What is Design?
cars tv
phonescoffee machines
doorslight switches
showerstoilet
Tuesday, November 18, 14
![Page 12: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/12.jpg)
What is Design?
doors
allow entrance / exit
1. push
2. pull
3. both
Tuesday, November 18, 14
![Page 13: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/13.jpg)
What is Design?
have you ever tried to push/pull a door open,
only to find that you needed to work the door in the opposite fashion
Tuesday, November 18, 14
![Page 14: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/14.jpg)
What is Design?
Tuesday, November 18, 14
![Page 15: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/15.jpg)
What is Design?
Tuesday, November 18, 14
![Page 16: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/16.jpg)
What is Design?
Tuesday, November 18, 14
![Page 17: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/17.jpg)
What is Design?
http://www.1ablelocksmith.com/BLOG/wp-content/uploads/2012/03/fire-door.jpg
Tuesday, November 18, 14
![Page 18: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/18.jpg)
What is Design?
http://psychsciencenotes.blogspot.com.es/2011/10/affordances-of-everyday-things.html
Tuesday, November 18, 14
![Page 19: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/19.jpg)
Design Idea
perceived affordances:
the quality of an object that suggests how it might be used
Tuesday, November 18, 14
![Page 20: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/20.jpg)
Perceived Affordances
http://www.iamaudi.com/2009-a4-a5-fuel-door-release/
1. unlock doors
2. push cover on rear side
Tuesday, November 18, 14
![Page 21: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/21.jpg)
Perceived Affordances
Tuesday, November 18, 14
![Page 22: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/22.jpg)
Design Idea
feedback mechanism:
sending information back to the user about what action has actually been done
Tuesday, November 18, 14
![Page 23: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/23.jpg)
Feedback Mechanism
oncall process
Tuesday, November 18, 14
![Page 24: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/24.jpg)
Feedback Mechanism
oncall process
alert is sent
Tuesday, November 18, 14
![Page 25: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/25.jpg)
Feedback Mechanism
oncall process
alert is sent
acknowledge alert?
Tuesday, November 18, 14
![Page 26: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/26.jpg)
Feedback Mechanism
anti:- notification of expected action
- problem is not resolved
pro:- confirms alert was received
- allows time to fix
Tuesday, November 18, 14
![Page 27: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/27.jpg)
Feedback Mechanism
Unix, the Rule of Silence
when a program has nothing interesting or surprising to say, it should shut up.
Tuesday, November 18, 14
![Page 28: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/28.jpg)
Feedback Mechanism
Unix, the Rule of Silence
when a program has nothing interesting or surprising to say, it should shut up.
scripts that execute successfully should remain silent on exit
Tuesday, November 18, 14
![Page 29: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/29.jpg)
Feedback Mechanism
when designing a process, program, or system,
you must ensure that success is distinguishable
from failure modes
Tuesday, November 18, 14
![Page 30: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/30.jpg)
Feedback Mechanism
can you tell the difference between a cron job that runs successfully
and a cron job that doesn’t run at all...
Tuesday, November 18, 14
![Page 31: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/31.jpg)
Feedback Mechanism
oncall process
alert is sent
acknowledge alert
Tuesday, November 18, 14
![Page 32: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/32.jpg)
What do we Design?
Tuesday, November 18, 14
![Page 33: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/33.jpg)
Design Idea
natural mapping:
taking advantage of analogies or cultural standards to help ensure understanding
Tuesday, November 18, 14
![Page 34: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/34.jpg)
Natural Mapping
-d
Tuesday, November 18, 14
![Page 35: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/35.jpg)
Natural Mapping
[robert@67bfd38c-6dca-11e4-8d31-283737190742] psql --help | grep "\-d," -d, --dbname=DBNAME database name to connect to (default: "robert")
[robert@67bfd38c-6dca-11e4-8d31-283737190742] pg_restore --help | grep "\-d," -d, --dbname=NAME connect to database name
-d
Tuesday, November 18, 14
![Page 36: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/36.jpg)
Natural Mapping
[robert@67bfd38c-6dca-11e4-8d31-283737190742] psql --help | grep "\-d," -d, --dbname=DBNAME database name to connect to (default: "robert")
[robert@67bfd38c-6dca-11e4-8d31-283737190742] pg_restore --help | grep "\-d," -d, --dbname=NAME connect to database name
-d
pg_dump ?
Tuesday, November 18, 14
![Page 37: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/37.jpg)
Natural Mapping
[robert@67bfd38c-6dca-11e4-8d31-283737190742] psql --help | grep "\-d," -d, --dbname=DBNAME database name to connect to (default: "robert")
[robert@67bfd38c-6dca-11e4-8d31-283737190742] pg_restore --help | grep "\-d," -d, --dbname=NAME connect to database name
-d
v7.1 - 8.3-d, --insertsDump data as proper INSERT commands (not COPY). This will make restoration very slow.
pg_dump ?
Tuesday, November 18, 14
![Page 38: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/38.jpg)
Natural Mapping
[robert@67bfd38c-6dca-11e4-8d31-283737190742] psql --help | grep "\-d," -d, --dbname=DBNAME database name to connect to (default: "robert")
[robert@67bfd38c-6dca-11e4-8d31-283737190742] pg_restore --help | grep "\-d," -d, --dbname=NAME connect to database name
-d
v7.1 - 8.3-d, --insertsDump data as proper INSERT commands (not COPY). This will make restoration very slow.
v8.4 - 9.2-d was removed
pg_dump ?
Tuesday, November 18, 14
![Page 39: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/39.jpg)
Natural Mapping
[robert@67bfd38c-6dca-11e4-8d31-283737190742] psql --help | grep "\-d," -d, --dbname=DBNAME database name to connect to (default: "robert")
[robert@67bfd38c-6dca-11e4-8d31-283737190742] pg_restore --help | grep "\-d," -d, --dbname=NAME connect to database name
-d
v7.1 - 8.3-d, --insertsDump data as proper INSERT commands (not COPY). This will make restoration very slow.
v8.4 - 9.2-d was removed
v9.3+-d dbname
pg_dump ?
Tuesday, November 18, 14
![Page 40: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/40.jpg)
Natural Mapping
when we write postgres related scripts and utilities, we try to use -d for database name
write your utilities to align with software you use
Tuesday, November 18, 14
![Page 41: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/41.jpg)
What is Design?
Tuesday, November 18, 14
![Page 42: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/42.jpg)
Design Ideas
forcing functions:
a constraint where the user "is forced" to complete a task based on a limited, paired down set of features or controls.
Tuesday, November 18, 14
![Page 43: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/43.jpg)
Forcing Function
Most microwaves do not allow operation with the
door open
“Force” the door to be closed for safety
Tuesday, November 18, 14
![Page 44: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/44.jpg)
Forcing Function
Few examples in software:
kill vs kill -9 force an extra step for a more destructive action
Tuesday, November 18, 14
![Page 45: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/45.jpg)
Forcing Function
Few examples in software:
kill vs kill -9 force an extra step for a more destructive action
sudo run an extra command to execute an action
“sudo su -s”
Tuesday, November 18, 14
![Page 46: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/46.jpg)
Forcing Function
if you use the same tools to deploy changes to dev / stage / prod, perhaps you should require extra steps?
Tuesday, November 18, 14
![Page 47: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/47.jpg)
Forcing Function
if you use the same tools to deploy changes to dev / stage / prod, perhaps you should require extra steps?
- verify code running in “prior” environments
- verify no active alerts in prod
- run sanity tests against deploys;rollback if alerts are generated
Tuesday, November 18, 14
![Page 48: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/48.jpg)
Tuesday, November 18, 14
![Page 49: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/49.jpg)
Parting Thoughts
We often claim incidents are caused by human error, but in many cases the human error is a result
of poor design
Approaching our problems from a design centered approach gives us the best chance for improving our world
Tuesday, November 18, 14
![Page 50: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/50.jpg)
Fin
thanks!
Tuesday, November 18, 14
![Page 51: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/51.jpg)
Fin
Tuesday, November 18, 14
![Page 52: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/52.jpg)
Fin?
OmniTIoperationally focused development and consulting services for
building and managing large scale web architectures
more:
@robtreat2http://xzilla.net
@omnitihttp://omniti.com
Tuesday, November 18, 14
![Page 53: What Ops Can Learn From Design](https://reader033.fdocuments.us/reader033/viewer/2022060205/55a1034e1a28abf1078b465a/html5/thumbnails/53.jpg)
Tuesday, November 18, 14