Safety. It doesn’t spring to mind when considering how to delight customers, improve quality, increase profits, innovate and win in the marketplace.
Yet safety allowed Alcoa, a 100-year-old aluminum giant, to regain its mojo after years of struggle. By empowering workers to make their workplace and products inherently safer, injury rates declined steadily, quality improved, innovation flourished and profits soared.
Most high tech companies don’t value safety. Developers routinely experience crushing complexity, schedule stress, outage ordeals and other injuries, while users sustain bug bruises, feature frustration, setup suffering and more.
Tech safety is here to change that.
It is a driving value that improves life by removing what harms us.
It empowers us to find, remove or reduce hazards and injuries in our processes, codebases, workplaces, relationships, strategies, products and services.
Tech safety is an unexpected pathway to excellence.
9. #1e5d91
“People become so much accustomed
to a deviant behavior that they don’t
consider it as deviant, despite the fact
that they far exceed their own rules
for elementary safety.”
Diane
Vaughan
Sociologist,
Columbia
University
24. #1e5d91
•Economics
educaGon
•Engineering
&
operaGons
research
•Programmed
soIware
for
Veterans
AdministraGon
•Served
On
ALCOA
Board
For
1
Year
Paul O’Neill,
ALCOA CEO 1987
32. #1e5d91
“From
this
day
forward,
we
will
not
budget
things
that
need
to
be
done
to
improve
safety
condiGons.”
33. #1e5d91
Workplace
Injury?
Report
it
within
24
hours.
CEO
Presidents
Vice
Presidents
.
.
.
Plant
Manager
.
.
.
Plant
Worker
What
happened?
How
will
it
never
occur
again?
35. #1e5d91
“Accidents
and
injuries
are
not
the
natural
price
to
pay
for
meeGng
goals.
ProducGvity
does
not
necessitate
danger.”
36. #1e5d91
“Some
habits
have
more
power
than
others...
[they]
seem
to
unlock
all
these
other
changes
and
set
off
a
chain
reacDon.”
–
Charles
Duehigg,
The
Power
of
Habit
Keystone
Habits
37. #1e5d91
“Some
habits
have
more
power
than
others...
[they]
seem
to
unlock
all
these
other
changes
and
set
off
a
chain
reacDon.”
–
Charles
Duehigg,
The
Power
of
Habit
Keystone
Habits
38. #1e5d91
“Some
habits
have
more
power
than
others...
[they]
seem
to
unlock
all
these
other
changes
and
set
off
a
chain
reacDon.”
–
Charles
Duehigg,
The
Power
of
Habit
Keystone
Habits
39. #1e5d91
“Some
habits
have
more
power
than
others...
[they]
seem
to
unlock
all
these
other
changes
and
set
off
a
chain
reacDon.”
–
Charles
Duehigg,
The
Power
of
Habit
Keystone
Habits
48. #1e5d91
William
O’Rourke
Vice
President,
Sustainability
and
Environment,
Health
&
Safety
for
Alcoa.
“When
I
went
to
run
Alcoa-‐Russia,
I
led
with
safety.”
• The
2
plants
acquired
by
ALCOA
in
2005
averaged
5
fataliDes
per
year
for
50
years.
• First
calendar
year
(2006)
under
ALCOA,
there
were
ZERO
fataliDes.
• Within
the
last
5
years,
there
have
been
ZERO
fataliDes.
52. #1e5d91
A graphic
representation of
all possible
sequences of events
that could result in
an incident.
Originally
developed
in
1962
at
Bell
Labs,
FTA
is
used
in
Failure
Analysis
and
is
considered
to
be
a
part
of
reliability
engineering.
Fault Tree Analysis
54. #1e5d91
“Injuries
are
oIen
the
result
of
different
combinaGons
of
unsafe
condiGons
and
unsafe
behavior.”
-‐
Linda
Merton,
safety
and
hygiene
manager
at
Alcoa's
Mission
Valley
Works
55. #1e5d91
Production Local
Tomcat 6 Tomcat 7
MySQL 5.5.9
Case Sensitive
MySQL 6.1
Case Insensitive
JRE version (box 1): 6
JRE version (box 2): 7
JREVersion 6
Differences
in
producGon
and
local
environments
are
oIen
the
source
of
producGon
problems
60. #1e5d91
Jun
16,
2010
8:56:42
AM
com.industriallogic.shared.acGon.AcGonProcessorServlet
processRequest
SEVERE:
null
java.lang.NullPointerExcepGon
at
com.industriallogic.acGon.ScreencastDownloadAcGon.moviePathFor(ScreencastDownloadAcGon.java:73)
at
com.industriallogic.acGon.ScreencastDownloadAcGon.screencastFileNameFor(ScreencastDownloadAcGon.java:53)
at
com.industriallogic.acGon.ScreencastDownloadAcGon.process(ScreencastDownloadAcGon.java:21)
at
com.industriallogic.shared.acGon.AcGon.processWith(AcGon.java:32)
at
com.industriallogic.shared.acGon.AcGonProcessor.processWith(AcGonProcessor.java:19)
at
com.industriallogic.shared.acGon.AcGonProcessorServlet.processRequest(AcGonProcessorServlet.java:61)
at
com.industriallogic.shared.acGon.AcGonProcessorServlet.doGet(AcGonProcessorServlet.java:49)
ScreencastDownloadAction.java
Exceptions In Our Code
72. #1e5d91
“It
takes
10
minutes
to
go
through
the
lockout
and
tagout
procedure.
It's
a
pain
in
the
neck,
and
all
for
a
repair
that
will
take
five
seconds..”
-‐
ALCOA
worker
with
20+
years
experience
75. #1e5d91public List keysOfCompletedPagesFor(UserProfile user, String albumId, Language devLanguage) {
String sql = "select pageStats.elementKey from PageCompletionStatus page " +
"join AlbumStatistics albumStats on (albumStats.albumId = page.albumId and albumStats.devLanguage = page.devLanguage) " +
"join TrackStatistics trackStats on (trackStats.albumStatistics_id = albumStats.id) " +
"join PageStatistics pageStats on (pageStats.trackStatistics_id = trackStats.id and page.elementKey = pageStats.elementKey) " +
"where page.user_id = :userId " +
"and page.albumId = :albumId " +
"and page.devLanguage = :devLanguage ";
Session session = getSession();
final SQLQuery query = session.createSQLQuery(sql);
query.setLong"userId", user.getId());
query.setString("albumId", albumId);
query.setString("devLanguage", devLanguage.key);
@SuppressWarnings("unchecked")
List result = query.list();
session.close();
return result;
}
public
List
uniqueIdsFor(ViewableAlbum
viewableAlbum,
UserProfile
userProfile,
CompletionStatusRepository
repository)
{
List
keys
=
repository.keysOfCompletedPagesFor(userProfile,
viewableAlbum.getId(),
viewableAlbum.getDevLanguageEnum());
Listids
=
new
ArrayList();
for
(String
key
:
keys)
{
String
path
=
getPagePathFor(key);
Page
page
=
viewableAlbum.getAlbum().getPage(path);
ids.add(page.getUniqueId());
}
return
ids;
}
Before
76. #1e5d91
public
List
uniqueIdsFor(ViewableAlbum
viewableAlbum,
UserProfile
userProfile,
CompletionStatusRepository
repository)
{
Language
albumLanguage
=
viewableAlbum.getDevLanguageEnum();
List
ids
=
new
ArrayList();
for
(Page
page
:
viewableAlbum.getAlbum().getPages())
if
(repository.isPageCompleteFor(userProfile,
findSourceAlbumIdFor(page.getKey()),
page.getKey(),
albumLanguage))
ids.add(page.getUniqueId());
return
ids;
}
After
113. #1e5d91
So How Do I Do It?
TechSafety
Value the safety
of the people
doing the work.
114. #1e5d91
So How Do I Do It?
TechSafety
Value the safety
of the people
doing the work.
Excellence
Habits of
excellence emerge.
115. #1e5d91
So How Do I Do It?
TechSafety
Value the safety
of the people
doing the work.
Profits
Remain focused on
safety & habits of
excellence.
Happy
customers and
profits follow.
Excellence
Habits of
excellence emerge.