many revisions, getting closer
This commit is contained in:
BIN
From_Tragedy_to_Triumph/From_Tragedy_to_Triumph.pptx
Normal file
BIN
From_Tragedy_to_Triumph/From_Tragedy_to_Triumph.pptx
Normal file
Binary file not shown.
689
From_Tragedy_to_Triumph/create_presentation.py
Normal file
689
From_Tragedy_to_Triumph/create_presentation.py
Normal file
@@ -0,0 +1,689 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Create PowerPoint: From Tragedy to Triumph
|
||||
How Data Transformed Deaths into Design Changes - 45 minute internal presentation
|
||||
"""
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
from pptx import Presentation
|
||||
from pptx.util import Inches, Pt
|
||||
from pptx.dml.color import RGBColor
|
||||
from pptx.enum.text import PP_ALIGN, MSO_ANCHOR
|
||||
from pptx.enum.shapes import MSO_SHAPE
|
||||
|
||||
# Create presentation
|
||||
prs = Presentation()
|
||||
prs.slide_width = Inches(13.333)
|
||||
prs.slide_height = Inches(7.5)
|
||||
|
||||
# Color scheme - Darker, more somber for emotional impact
|
||||
DARK_NAVY = RGBColor(15, 30, 45) # Very dark blue/black
|
||||
ACCENT_GOLD = RGBColor(212, 175, 55) # Dignified gold
|
||||
SOFT_WHITE = RGBColor(250, 250, 250)
|
||||
DARK_GRAY = RGBColor(60, 60, 60)
|
||||
MED_GRAY = RGBColor(120, 120, 120)
|
||||
LIGHT_GRAY = RGBColor(220, 220, 220)
|
||||
HOPE_BLUE = RGBColor(70, 130, 180) # Steel blue for triumph sections
|
||||
SOMBER_RED = RGBColor(139, 69, 69) # Muted red for tragedy
|
||||
|
||||
|
||||
def add_dark_title_slide(title, subtitle=""):
|
||||
"""Full dark title slide for emotional impact"""
|
||||
slide = prs.slides.add_slide(prs.slide_layouts[6])
|
||||
|
||||
bg = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RECTANGLE, 0, 0, prs.slide_width, prs.slide_height
|
||||
)
|
||||
bg.fill.solid()
|
||||
bg.fill.fore_color.rgb = DARK_NAVY
|
||||
bg.line.fill.background()
|
||||
|
||||
title_box = slide.shapes.add_textbox(
|
||||
Inches(0.5), Inches(2.8), Inches(12.333), Inches(1.5)
|
||||
)
|
||||
tf = title_box.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = title
|
||||
p.font.size = Pt(56)
|
||||
p.font.bold = True
|
||||
p.font.color.rgb = SOFT_WHITE
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
if subtitle:
|
||||
sub_box = slide.shapes.add_textbox(
|
||||
Inches(0.5), Inches(4.5), Inches(12.333), Inches(0.8)
|
||||
)
|
||||
tf = sub_box.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = subtitle
|
||||
p.font.size = Pt(24)
|
||||
p.font.color.rgb = ACCENT_GOLD
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
return slide
|
||||
|
||||
|
||||
def add_story_intro_slide(story_num, title):
|
||||
"""Story section divider - dark and serious"""
|
||||
slide = prs.slides.add_slide(prs.slide_layouts[6])
|
||||
|
||||
bg = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RECTANGLE, 0, 0, prs.slide_width, prs.slide_height
|
||||
)
|
||||
bg.fill.solid()
|
||||
bg.fill.fore_color.rgb = DARK_NAVY
|
||||
bg.line.fill.background()
|
||||
|
||||
# Story number
|
||||
num_box = slide.shapes.add_textbox(
|
||||
Inches(0.5), Inches(2.2), Inches(12.333), Inches(0.8)
|
||||
)
|
||||
tf = num_box.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = f"STORY {story_num}"
|
||||
p.font.size = Pt(20)
|
||||
p.font.color.rgb = ACCENT_GOLD
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
# Title
|
||||
title_box = slide.shapes.add_textbox(
|
||||
Inches(0.5), Inches(3.0), Inches(12.333), Inches(1.5)
|
||||
)
|
||||
tf = title_box.text_frame
|
||||
tf.word_wrap = True
|
||||
p = tf.paragraphs[0]
|
||||
p.text = title
|
||||
p.font.size = Pt(44)
|
||||
p.font.bold = True
|
||||
p.font.color.rgb = SOFT_WHITE
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
return slide
|
||||
|
||||
|
||||
def add_memorial_slide(main_text, subtext=""):
|
||||
"""Memorial-style slide for tragedy sections"""
|
||||
slide = prs.slides.add_slide(prs.slide_layouts[6])
|
||||
|
||||
bg = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RECTANGLE, 0, 0, prs.slide_width, prs.slide_height
|
||||
)
|
||||
bg.fill.solid()
|
||||
bg.fill.fore_color.rgb = DARK_NAVY
|
||||
bg.line.fill.background()
|
||||
|
||||
# Main text
|
||||
main_box = slide.shapes.add_textbox(
|
||||
Inches(1), Inches(2.5), Inches(11.333), Inches(2)
|
||||
)
|
||||
tf = main_box.text_frame
|
||||
tf.word_wrap = True
|
||||
p = tf.paragraphs[0]
|
||||
p.text = main_text
|
||||
p.font.size = Pt(36)
|
||||
p.font.color.rgb = SOFT_WHITE
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
if subtext:
|
||||
sub_box = slide.shapes.add_textbox(
|
||||
Inches(1), Inches(4.8), Inches(11.333), Inches(0.8)
|
||||
)
|
||||
tf = sub_box.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = subtext
|
||||
p.font.size = Pt(22)
|
||||
p.font.italic = True
|
||||
p.font.color.rgb = MED_GRAY
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
return slide
|
||||
|
||||
|
||||
def add_question_slide(question):
|
||||
"""Large question slide"""
|
||||
slide = prs.slides.add_slide(prs.slide_layouts[6])
|
||||
|
||||
bg = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RECTANGLE, 0, 0, prs.slide_width, prs.slide_height
|
||||
)
|
||||
bg.fill.solid()
|
||||
bg.fill.fore_color.rgb = DARK_NAVY
|
||||
bg.line.fill.background()
|
||||
|
||||
q_box = slide.shapes.add_textbox(Inches(1), Inches(2.8), Inches(11.333), Inches(2))
|
||||
tf = q_box.text_frame
|
||||
tf.word_wrap = True
|
||||
p = tf.paragraphs[0]
|
||||
p.text = question
|
||||
p.font.size = Pt(40)
|
||||
p.font.italic = True
|
||||
p.font.color.rgb = ACCENT_GOLD
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
return slide
|
||||
|
||||
|
||||
def add_content_slide(title, bullets, tone="neutral"):
|
||||
"""Content slide with tonal variation"""
|
||||
slide = prs.slides.add_slide(prs.slide_layouts[6])
|
||||
|
||||
# Background based on tone
|
||||
if tone == "tragedy":
|
||||
header_color = SOMBER_RED
|
||||
elif tone == "triumph":
|
||||
header_color = HOPE_BLUE
|
||||
else:
|
||||
header_color = DARK_NAVY
|
||||
|
||||
# Header
|
||||
header = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RECTANGLE, 0, 0, prs.slide_width, Inches(1.0)
|
||||
)
|
||||
header.fill.solid()
|
||||
header.fill.fore_color.rgb = header_color
|
||||
header.line.fill.background()
|
||||
|
||||
title_box = slide.shapes.add_textbox(
|
||||
Inches(0.5), Inches(0.2), Inches(12), Inches(0.7)
|
||||
)
|
||||
tf = title_box.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = title
|
||||
p.font.size = Pt(32)
|
||||
p.font.bold = True
|
||||
p.font.color.rgb = SOFT_WHITE
|
||||
|
||||
# Bullets
|
||||
bullet_box = slide.shapes.add_textbox(
|
||||
Inches(0.8), Inches(1.4), Inches(11.5), Inches(5.8)
|
||||
)
|
||||
tf = bullet_box.text_frame
|
||||
tf.word_wrap = True
|
||||
|
||||
for i, bullet in enumerate(bullets):
|
||||
if i == 0:
|
||||
p = tf.paragraphs[0]
|
||||
else:
|
||||
p = tf.add_paragraph()
|
||||
p.text = f" {bullet}"
|
||||
p.font.size = Pt(22)
|
||||
p.font.color.rgb = DARK_GRAY
|
||||
p.space_after = Pt(14)
|
||||
|
||||
return slide
|
||||
|
||||
|
||||
def add_data_slide(title, data_description, annotation=""):
|
||||
"""Data revelation slide"""
|
||||
slide = prs.slides.add_slide(prs.slide_layouts[6])
|
||||
|
||||
header = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RECTANGLE, 0, 0, prs.slide_width, Inches(1.0)
|
||||
)
|
||||
header.fill.solid()
|
||||
header.fill.fore_color.rgb = DARK_NAVY
|
||||
header.line.fill.background()
|
||||
|
||||
title_box = slide.shapes.add_textbox(
|
||||
Inches(0.5), Inches(0.2), Inches(12), Inches(0.7)
|
||||
)
|
||||
tf = title_box.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = title
|
||||
p.font.size = Pt(32)
|
||||
p.font.bold = True
|
||||
p.font.color.rgb = SOFT_WHITE
|
||||
|
||||
# Data box placeholder
|
||||
data_box = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RECTANGLE, Inches(1), Inches(1.5), Inches(11.333), Inches(4)
|
||||
)
|
||||
data_box.fill.solid()
|
||||
data_box.fill.fore_color.rgb = LIGHT_GRAY
|
||||
data_box.line.color.rgb = DARK_NAVY
|
||||
|
||||
data_text = slide.shapes.add_textbox(
|
||||
Inches(1), Inches(3), Inches(11.333), Inches(1)
|
||||
)
|
||||
tf = data_text.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = f"[{data_description}]"
|
||||
p.font.size = Pt(22)
|
||||
p.font.color.rgb = DARK_GRAY
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
if annotation:
|
||||
ann_box = slide.shapes.add_textbox(
|
||||
Inches(1), Inches(5.8), Inches(11.333), Inches(1)
|
||||
)
|
||||
tf = ann_box.text_frame
|
||||
tf.word_wrap = True
|
||||
p = tf.paragraphs[0]
|
||||
p.text = annotation
|
||||
p.font.size = Pt(18)
|
||||
p.font.bold = True
|
||||
p.font.color.rgb = SOMBER_RED
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
return slide
|
||||
|
||||
|
||||
def add_triumph_stat_slide(stat, description):
|
||||
"""Triumph statistic slide - hopeful tone"""
|
||||
slide = prs.slides.add_slide(prs.slide_layouts[6])
|
||||
|
||||
# Gradient-like effect with hope blue
|
||||
bg = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RECTANGLE, 0, 0, prs.slide_width, prs.slide_height
|
||||
)
|
||||
bg.fill.solid()
|
||||
bg.fill.fore_color.rgb = HOPE_BLUE
|
||||
bg.line.fill.background()
|
||||
|
||||
stat_box = slide.shapes.add_textbox(
|
||||
Inches(0.5), Inches(2), Inches(12.333), Inches(2.5)
|
||||
)
|
||||
tf = stat_box.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = stat
|
||||
p.font.size = Pt(96)
|
||||
p.font.bold = True
|
||||
p.font.color.rgb = SOFT_WHITE
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
desc_box = slide.shapes.add_textbox(
|
||||
Inches(0.5), Inches(4.5), Inches(12.333), Inches(1.5)
|
||||
)
|
||||
tf = desc_box.text_frame
|
||||
tf.word_wrap = True
|
||||
p = tf.paragraphs[0]
|
||||
p.text = description
|
||||
p.font.size = Pt(28)
|
||||
p.font.color.rgb = SOFT_WHITE
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
return slide
|
||||
|
||||
|
||||
def add_arc_slide(title):
|
||||
"""Show the tragedy-to-triumph arc"""
|
||||
slide = prs.slides.add_slide(prs.slide_layouts[6])
|
||||
|
||||
title_box = slide.shapes.add_textbox(
|
||||
Inches(0.5), Inches(0.3), Inches(12.333), Inches(0.8)
|
||||
)
|
||||
tf = title_box.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = title
|
||||
p.font.size = Pt(28)
|
||||
p.font.bold = True
|
||||
p.font.color.rgb = DARK_NAVY
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
# Arc elements
|
||||
elements = ["TRAGEDY", "INVESTIGATION", "DATA", "SOLUTION", "TRIUMPH"]
|
||||
colors = [SOMBER_RED, DARK_GRAY, DARK_NAVY, HOPE_BLUE, HOPE_BLUE]
|
||||
|
||||
box_width = Inches(2.0)
|
||||
spacing = Inches(0.4)
|
||||
start_x = Inches(0.8)
|
||||
|
||||
for i, (element, color) in enumerate(zip(elements, colors)):
|
||||
x = start_x + i * (box_width + spacing)
|
||||
|
||||
# Box
|
||||
box = slide.shapes.add_shape(
|
||||
MSO_SHAPE.ROUNDED_RECTANGLE, x, Inches(3), box_width, Inches(1.2)
|
||||
)
|
||||
box.fill.solid()
|
||||
box.fill.fore_color.rgb = color
|
||||
box.line.fill.background()
|
||||
|
||||
# Text
|
||||
text_box = slide.shapes.add_textbox(x, Inches(3.3), box_width, Inches(0.8))
|
||||
tf = text_box.text_frame
|
||||
p = tf.paragraphs[0]
|
||||
p.text = element
|
||||
p.font.size = Pt(16)
|
||||
p.font.bold = True
|
||||
p.font.color.rgb = SOFT_WHITE
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
# Arrow
|
||||
if i < len(elements) - 1:
|
||||
arrow = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RIGHT_ARROW,
|
||||
x + box_width + Inches(0.05),
|
||||
Inches(3.35),
|
||||
spacing - Inches(0.1),
|
||||
Inches(0.5),
|
||||
)
|
||||
arrow.fill.solid()
|
||||
arrow.fill.fore_color.rgb = MED_GRAY
|
||||
arrow.line.fill.background()
|
||||
|
||||
return slide
|
||||
|
||||
|
||||
def add_final_quote_slide(quote):
|
||||
"""Final reflective quote"""
|
||||
slide = prs.slides.add_slide(prs.slide_layouts[6])
|
||||
|
||||
bg = slide.shapes.add_shape(
|
||||
MSO_SHAPE.RECTANGLE, 0, 0, prs.slide_width, prs.slide_height
|
||||
)
|
||||
bg.fill.solid()
|
||||
bg.fill.fore_color.rgb = DARK_NAVY
|
||||
bg.line.fill.background()
|
||||
|
||||
quote_box = slide.shapes.add_textbox(
|
||||
Inches(1), Inches(2.5), Inches(11.333), Inches(3)
|
||||
)
|
||||
tf = quote_box.text_frame
|
||||
tf.word_wrap = True
|
||||
p = tf.paragraphs[0]
|
||||
p.text = quote
|
||||
p.font.size = Pt(32)
|
||||
p.font.italic = True
|
||||
p.font.color.rgb = ACCENT_GOLD
|
||||
p.alignment = PP_ALIGN.CENTER
|
||||
|
||||
return slide
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# BUILD THE PRESENTATION
|
||||
# ============================================================================
|
||||
|
||||
# Slide 1: Title
|
||||
add_dark_title_slide(
|
||||
"From Tragedy to Triumph", "How Data Transformed Deaths into Design Changes"
|
||||
)
|
||||
|
||||
# Slide 2: Arc introduction
|
||||
add_arc_slide("Every Safety Standard Follows This Arc")
|
||||
|
||||
# Slide 3: Story 1 intro
|
||||
add_story_intro_slide("1", "The Children Who Were\nKilled by Safety")
|
||||
|
||||
# Slide 4: Memorial
|
||||
add_memorial_slide(
|
||||
"In memory of the 175+ people\nkilled by airbags, 1990-1997",
|
||||
"Most were children sitting in the front seat",
|
||||
)
|
||||
|
||||
# Slide 5: The question
|
||||
add_question_slide(
|
||||
"Why were airbags killing the people\nthey were designed to protect?"
|
||||
)
|
||||
|
||||
# Slide 6: Investigation
|
||||
add_content_slide(
|
||||
"The Investigation: Out-of-Position Testing",
|
||||
[
|
||||
"What happens when someone isn't in the ideal position?",
|
||||
"What happens when they're too close to the airbag?",
|
||||
"What happens when they're small?",
|
||||
"",
|
||||
"Researchers used instrumented dummies:",
|
||||
" Small female dummies, child dummies, infant dummies",
|
||||
" Accelerometers and load cells capturing every millisecond",
|
||||
" The same sensors DTS makes today",
|
||||
],
|
||||
)
|
||||
|
||||
# Slide 7: The data
|
||||
add_data_slide(
|
||||
"The Data: Fatal Forces Revealed",
|
||||
"Neck load trace showing 3,500 N peak vs. 1,600 N injury threshold",
|
||||
"More than DOUBLE the fatal threshold for a child's neck",
|
||||
)
|
||||
|
||||
# Slide 8: The solution
|
||||
add_content_slide(
|
||||
"The Engineering Solution",
|
||||
[
|
||||
"1998: Immediate depowering (20-35% force reduction)",
|
||||
"Dual-stage inflators: Variable deployment force",
|
||||
"Occupant classification: Weight sensors detect children",
|
||||
"Suppression systems: Turn off for rear-facing child seats",
|
||||
"Multi-stage deployment: Match force to crash severity",
|
||||
"",
|
||||
"Every solution required new testing, new data, new validation",
|
||||
],
|
||||
tone="triumph",
|
||||
)
|
||||
|
||||
# Slide 9: Triumph
|
||||
add_triumph_stat_slide(
|
||||
"50 → 0", "Airbag fatalities per year:\nFrom over 50 to essentially zero"
|
||||
)
|
||||
|
||||
# Slide 10: Story 2 intro
|
||||
add_story_intro_slide("2", "The Car That Was\nCheaper to Let Burn")
|
||||
|
||||
# Slide 11: Pinto tragedy
|
||||
add_content_slide(
|
||||
"The Ford Pinto: 1970s Bestseller",
|
||||
[
|
||||
"Small, cheap, fuel-efficient during the oil crisis",
|
||||
"One problem: Gas tank 9 inches from rear bumper",
|
||||
"",
|
||||
"In rear-end collisions:",
|
||||
" Rear crumpled into gas tank",
|
||||
" Tank ruptured, fuel sprayed",
|
||||
" A spark ignited it",
|
||||
"",
|
||||
"People burned to death inside their cars",
|
||||
"Estimates: 27 to several hundred deaths",
|
||||
],
|
||||
tone="tragedy",
|
||||
)
|
||||
|
||||
# Slide 12: The memo
|
||||
add_memorial_slide(
|
||||
'"Costs: $11/car × 12.5M cars = $137M\nBenefits: 180 deaths × $200K = $36M"',
|
||||
"Internal Ford cost-benefit analysis. Cost exceeds benefit. Don't fix it.",
|
||||
)
|
||||
|
||||
# Slide 13: Data/solution
|
||||
add_content_slide(
|
||||
"The Data That Should Have Driven the Decision",
|
||||
[
|
||||
"Rear impact testing showed catastrophic fuel leakage",
|
||||
"Tank design failed at impacts as low as 25 mph",
|
||||
"Ford engineers knew. They had the data.",
|
||||
"But data didn't make it past accounting.",
|
||||
"",
|
||||
"After the scandal, FMVSS 301 was strengthened:",
|
||||
" Rear impact: 50 mph",
|
||||
" Side impact: 20 mph",
|
||||
" Rollover: 360 degrees",
|
||||
" Fuel leakage precisely measured and limited",
|
||||
],
|
||||
)
|
||||
|
||||
# Slide 14: Triumph
|
||||
add_triumph_stat_slide("Down 76%", "Vehicle fire deaths since 1980")
|
||||
|
||||
# Slide 15: Story 3 intro
|
||||
add_story_intro_slide("3", "The Test That\nHumbled an Industry")
|
||||
|
||||
# Slide 16: Context
|
||||
add_content_slide(
|
||||
"2010: Frontal Safety Was 'Solved'",
|
||||
[
|
||||
"Vehicles acing federal full-frontal test",
|
||||
"Vehicles acing IIHS moderate overlap test",
|
||||
"Frontal crash deaths were down significantly",
|
||||
"",
|
||||
"But IIHS researchers noticed a pattern...",
|
||||
"",
|
||||
"People were still dying in frontal crashes",
|
||||
"Tree strikes. Pole strikes. Corner-to-corner.",
|
||||
"Crashes where only 20-25% of width was engaged",
|
||||
],
|
||||
)
|
||||
|
||||
# Slide 17: The test
|
||||
add_content_slide(
|
||||
"The New Test: Small Overlap Frontal",
|
||||
[
|
||||
"25% overlap - not 40%",
|
||||
"Rigid barrier - not deformable",
|
||||
"40 mph",
|
||||
"",
|
||||
"Designed to stress the outer edge of the structure",
|
||||
"The area where trees and poles were hitting",
|
||||
"",
|
||||
"2012: Testing begins",
|
||||
"Results shocked everyone",
|
||||
],
|
||||
)
|
||||
|
||||
# Slide 18: The failures
|
||||
add_content_slide(
|
||||
"The Results: Premium Brands Failed",
|
||||
[
|
||||
"BMW 5-Series: Marginal",
|
||||
"Mercedes C-Class: Marginal",
|
||||
"Audi A4: Marginal",
|
||||
"Lexus ES: Poor",
|
||||
"",
|
||||
"Only 3 of 13 midsize cars earned 'Good'",
|
||||
"",
|
||||
"Data showed catastrophic intrusion, collapsed footwells,",
|
||||
"HIC values exceeding limits, femur loads off the charts",
|
||||
],
|
||||
tone="tragedy",
|
||||
)
|
||||
|
||||
# Slide 19: Response
|
||||
add_content_slide(
|
||||
"The Industry Response",
|
||||
[
|
||||
"Within two years: Fundamental structural redesign",
|
||||
"Small overlap load paths added",
|
||||
"Extended bumper beams",
|
||||
"Reinforced A-pillars",
|
||||
"",
|
||||
"By 2015: Most vehicles earning 'Good'",
|
||||
"",
|
||||
"Instrumented testing proved the problem",
|
||||
"And proved that the redesign worked",
|
||||
],
|
||||
tone="triumph",
|
||||
)
|
||||
|
||||
# Slide 20: Triumph
|
||||
add_triumph_stat_slide(
|
||||
"Down 8%",
|
||||
"Additional reduction in frontal crash deaths\nwithin 3 years of test introduction",
|
||||
)
|
||||
|
||||
# Slide 21: Story 4 intro
|
||||
add_story_intro_slide("4", "The Sport That\nSaved Itself")
|
||||
|
||||
# Slide 22: Football tragedy
|
||||
add_memorial_slide(
|
||||
"32 players per year", "Killed by head and neck injuries in football, 1960s-1970s"
|
||||
)
|
||||
|
||||
# Slide 23: The problem
|
||||
add_content_slide(
|
||||
"Helmets Existed. They Just Didn't Work.",
|
||||
[
|
||||
"No standard. No test. No validation.",
|
||||
"Manufacturers made claims. Coaches trusted them.",
|
||||
"Players died.",
|
||||
"",
|
||||
"1969: NOCSAE formed",
|
||||
"Mission: Create a test that actually predicts protection",
|
||||
"",
|
||||
"Drop tower. Instrumented headform. Accelerometers.",
|
||||
"Severity Index (SI) metric developed.",
|
||||
],
|
||||
)
|
||||
|
||||
# Slide 24: The data
|
||||
add_data_slide(
|
||||
"The Data: Some Helmets Weren't Even Close",
|
||||
"Chart: SI values - Good helmets at 600-800, bad helmets at 1500-2000",
|
||||
"Pass threshold: SI < 1200. Many market leaders failed catastrophically.",
|
||||
)
|
||||
|
||||
# Slide 25: Solution
|
||||
add_content_slide(
|
||||
"The Solution: Set a Standard",
|
||||
[
|
||||
"NOCSAE established SI < 1200 requirement",
|
||||
"1980: NCAA mandated compliance",
|
||||
"High school federations followed",
|
||||
"",
|
||||
"Helmet manufacturers had to design for performance",
|
||||
"Better liners. Better shells. Better protection.",
|
||||
"",
|
||||
"2016: Linear impactor test added for rotational injury",
|
||||
"The science advances; the standard advances",
|
||||
],
|
||||
tone="triumph",
|
||||
)
|
||||
|
||||
# Slide 26: Triumph
|
||||
add_triumph_stat_slide(
|
||||
"32 → 3", "Football deaths per year from head/neck injuries\n90%+ reduction"
|
||||
)
|
||||
|
||||
# Slide 27: Pattern summary
|
||||
add_arc_slide("Four Stories, One Pattern: Data Made the Difference")
|
||||
|
||||
# Slide 28: DTS position
|
||||
add_content_slide(
|
||||
"Where DTS Fits in This Arc",
|
||||
[
|
||||
"We're in the middle. We're the data capture mechanism.",
|
||||
"",
|
||||
"Our accelerometers are in the dummies",
|
||||
"Our DAQ systems are in the crash labs",
|
||||
"Our calibration ensures global consistency",
|
||||
"",
|
||||
"We don't design vehicles or write regulations",
|
||||
"But without accurate data capture,",
|
||||
"none of that other work is possible",
|
||||
],
|
||||
)
|
||||
|
||||
# Slide 29: Ongoing mission
|
||||
add_content_slide(
|
||||
"The Mission Continues",
|
||||
[
|
||||
"Electric vehicles: New crash dynamics, battery safety",
|
||||
"Autonomous vehicles: Active safety validation",
|
||||
"Pedestrians & cyclists: Rising fatalities need solutions",
|
||||
"Military: Evolving threats, new protection needs",
|
||||
"Sports: Concussion science revealing rotational injury",
|
||||
"",
|
||||
"Each challenge will follow the same arc",
|
||||
"There will be tragedies. Then data. Then solutions.",
|
||||
],
|
||||
)
|
||||
|
||||
# Slide 30: Final quote
|
||||
add_final_quote_slide(
|
||||
"Behind every safety standard is someone who didn't come home.\n\n"
|
||||
"Data ensures their loss wasn't in vain."
|
||||
)
|
||||
|
||||
# Slide 31: Questions
|
||||
add_dark_title_slide("Questions?", "Ben - Application Engineer")
|
||||
|
||||
# ============================================================================
|
||||
# Save
|
||||
# ============================================================================
|
||||
|
||||
output_file = "From_Tragedy_to_Triumph.pptx"
|
||||
prs.save(output_file)
|
||||
print(f"Presentation created: {output_file}")
|
||||
print(f"Total slides: {len(prs.slides)}")
|
||||
591
From_Tragedy_to_Triumph/script_and_speaker_notes.md
Normal file
591
From_Tragedy_to_Triumph/script_and_speaker_notes.md
Normal file
@@ -0,0 +1,591 @@
|
||||
# From Tragedy to Triumph
|
||||
## How Data Transformed Deaths into Design Changes
|
||||
### A 45-Minute Presentation for DTS Internal Staff
|
||||
|
||||
---
|
||||
|
||||
# PRESENTATION OVERVIEW
|
||||
|
||||
**Presenter:** Ben, Application Engineer
|
||||
**Audience:** DTS engineering and internal staff
|
||||
**Duration:** 45 minutes
|
||||
**Goal:** Tell deeply human stories that connect DTS work to real lives saved
|
||||
|
||||
**Key Themes:**
|
||||
1. Every safety standard was written in blood
|
||||
2. Data is the bridge between tragedy and solution
|
||||
3. DTS equipment is the instrument that captures that bridge
|
||||
4. Our work has profound human meaning
|
||||
|
||||
**Emotional Arc:**
|
||||
- Open with tragedy (create emotional investment)
|
||||
- Build through investigation and data
|
||||
- Resolve with triumph (engineering solution + lives saved)
|
||||
- Repeat pattern 3-4 times, building cumulative impact
|
||||
|
||||
---
|
||||
|
||||
# SLIDE-BY-SLIDE SCRIPT AND SPEAKER NOTES
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 1: Title Slide
|
||||
**Visual:** Dark background with subtle gradient
|
||||
**Title:** From Tragedy to Triumph
|
||||
**Subtitle:** How Data Transformed Deaths into Design Changes
|
||||
|
||||
### Speaker Notes:
|
||||
> *[Start with silence. Let the room settle.]*
|
||||
>
|
||||
> Every safety standard was written in blood.
|
||||
>
|
||||
> That's not a metaphor. It's literal truth. Behind every FMVSS regulation, every IIHS test protocol, every NOCSAE helmet standard - there are people who died.
|
||||
>
|
||||
> Today I want to tell you four stories. Four tragedies that became triumphs. Four times when data - data captured by instrumentation like ours - made the difference between "people keep dying" and "this never happens again."
|
||||
>
|
||||
> These stories are not easy to hear. But I think they're important. Because they remind us why we do what we do.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 2: Story Structure
|
||||
**Visual:** Simple diagram showing the arc
|
||||
**Path:** Tragedy → Investigation → Data → Solution → Triumph
|
||||
|
||||
### Speaker Notes:
|
||||
> Every story I'm going to tell follows the same arc.
|
||||
>
|
||||
> It starts with tragedy. Someone dies. Often many people die.
|
||||
>
|
||||
> Then comes investigation. Engineers ask: What happened? Why?
|
||||
>
|
||||
> Then data. We test. We measure. We quantify what went wrong.
|
||||
>
|
||||
> Then solution. We redesign. We regulate. We change.
|
||||
>
|
||||
> And finally, triumph. The deaths stop. Lives are saved.
|
||||
>
|
||||
> This arc - from tragedy to triumph - is the arc of safety engineering. And data is the hinge point that makes the transformation possible.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 3: Story 1 Introduction
|
||||
**Visual:** Section divider
|
||||
**Title:** STORY 1: The Children Who Were Killed by Safety
|
||||
|
||||
### Speaker Notes:
|
||||
> Story one. The children who were killed by safety.
|
||||
>
|
||||
> This is perhaps the most tragic story in automotive safety history. Because the very device designed to protect - the airbag - became the killer.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 4: The Tragedy - A Name
|
||||
**Visual:** Simple memorial-style slide
|
||||
**Text:** "In memory of the 175+ people killed by airbags, 1990-1997"
|
||||
**Below:** "Many were children sitting in the front seat"
|
||||
|
||||
### Speaker Notes:
|
||||
> Between 1990 and 1997, airbags killed over 175 people.
|
||||
>
|
||||
> Most of them were children. Some were small women. Some were people who sat too close to the steering wheel.
|
||||
>
|
||||
> *[Pause - let this land]*
|
||||
>
|
||||
> The youngest victim I know of was 1 month old. Killed by an airbag while riding in a rear-facing car seat placed in the front passenger position.
|
||||
>
|
||||
> These weren't high-speed crashes. These were fender-benders. 10 mph impacts. Situations where everyone should have walked away.
|
||||
>
|
||||
> Instead, parents watched their children die from the very device that was supposed to protect them.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 5: The Question
|
||||
**Visual:** Large question mark
|
||||
**Text:** "Why were airbags killing the people they were designed to protect?"
|
||||
|
||||
### Speaker Notes:
|
||||
> The question was devastating: Why?
|
||||
>
|
||||
> Airbags had been sold as the ultimate safety device. They would save 12,000 lives per year, the government said. And they were saving lives - adult male lives, mostly.
|
||||
>
|
||||
> But they were also killing. And the deaths were concentrated among a specific population: Children. Small women. Anyone who wasn't a large adult male.
|
||||
>
|
||||
> Engineers had to find out why. And the only way to find out was to test.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 6: The Investigation
|
||||
**Visual:** Photo of out-of-position testing setup or small dummy
|
||||
**Caption:** Out-of-position testing with child and small female dummies
|
||||
|
||||
### Speaker Notes:
|
||||
> The investigation centered on out-of-position testing.
|
||||
>
|
||||
> What happens when someone isn't sitting in the ideal position? What happens when they're too close to the airbag? What happens when they're small?
|
||||
>
|
||||
> Researchers put instrumented dummies - small female dummies, child dummies, infant dummies - in various positions relative to the airbag. And then they deployed the airbag.
|
||||
>
|
||||
> The dummies were instrumented with accelerometers and load cells. The same kinds of sensors DTS makes today.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 7: The Data
|
||||
**Visual:** Illustration of data showing neck loads
|
||||
**Annotations:** "Peak neck tension: 3,500 N" / "Injury threshold: 1,600 N"
|
||||
|
||||
### Speaker Notes:
|
||||
> The data was horrifying.
|
||||
>
|
||||
> Early airbags inflated at roughly 200 miles per hour. When that explosion hit a small child positioned close to the bag, the neck loads were catastrophic.
|
||||
>
|
||||
> The injury threshold for a child's neck is about 1,600 Newtons. The data showed loads of 3,500 Newtons or more. More than double the fatal threshold.
|
||||
>
|
||||
> The airbags weren't just dangerous - they were essentially guaranteed to kill children in certain positions.
|
||||
>
|
||||
> But without the data, no one would have known exactly why. And without knowing why, you can't engineer a solution.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 8: The Solution
|
||||
**Visual:** Diagram showing multi-stage airbag system components
|
||||
**Bullets:** Depowered bags, dual-stage, occupant classification, suppression
|
||||
|
||||
### Speaker Notes:
|
||||
> The data drove a cascade of engineering solutions:
|
||||
>
|
||||
> First, in 1998, immediate depowering. Reduce the inflation force by 20-35%. Accept that some large males in severe crashes might not be perfectly protected, in exchange for not killing children.
|
||||
>
|
||||
> Second, dual-stage inflators. Variable deployment force based on crash severity. Light crash? Light deployment.
|
||||
>
|
||||
> Third, occupant classification. Weight sensors in seats to detect children and small adults. Adjust or suppress the airbag accordingly.
|
||||
>
|
||||
> Fourth, suppression for rear-facing child seats. If a sensor detects a rear-facing seat, the airbag turns off completely.
|
||||
>
|
||||
> Each of these solutions required new testing. New data. New validation that the fix actually worked.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 9: The Triumph
|
||||
**Visual:** Graph showing airbag fatalities declining
|
||||
**Data:** From 50+/year (1997) to near zero (2020s)
|
||||
|
||||
### Speaker Notes:
|
||||
> The triumph: Airbag fatalities dropped from over 50 per year to essentially zero.
|
||||
>
|
||||
> Modern airbags are smart. They detect who's in the seat. They know how severe the crash is. They deploy with appropriate force - or don't deploy at all.
|
||||
>
|
||||
> And those 50+ people per year who used to die? They're alive. Every year, those 50 people go home to their families instead of going to the morgue.
|
||||
>
|
||||
> That's what data did. Data turned a child-killing device into a life-saving device.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 10: Story 2 Introduction
|
||||
**Visual:** Section divider
|
||||
**Title:** STORY 2: The Car That Was Cheaper to Let Burn
|
||||
|
||||
### Speaker Notes:
|
||||
> Story two. The car that was cheaper to let burn.
|
||||
>
|
||||
> This is the story of the Ford Pinto. And it's a story about what happens when engineering is overruled by accounting.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 11: The Tragedy
|
||||
**Visual:** Newspaper headlines about Pinto fires
|
||||
**Headlines:** "Pinto Fire Kills Mother and Child" / "Exploding Gas Tanks - Who Knew?"
|
||||
|
||||
### Speaker Notes:
|
||||
> The Ford Pinto was a bestseller in the 1970s. Small, cheap, fuel-efficient during the oil crisis.
|
||||
>
|
||||
> It had one problem: The gas tank was mounted behind the rear axle, only 9 inches from the rear bumper.
|
||||
>
|
||||
> In a rear-end collision - even at moderate speed - the rear crumpled into the gas tank. The tank ruptured. Fuel sprayed. A spark ignited it.
|
||||
>
|
||||
> And people burned to death inside their cars.
|
||||
>
|
||||
> It's impossible to know the exact death toll. Estimates range from 27 to several hundred. What we know for certain: Ford knew about the problem before anyone died.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 12: The Investigation - The Memo
|
||||
**Visual:** Quote from the infamous Ford memo
|
||||
**Quote:** "Costs: $11 per car × 12.5 million cars = $137 million"
|
||||
**Quote:** "Benefits: 180 deaths × $200,000 = $36 million"
|
||||
**Caption:** Internal Ford cost-benefit analysis
|
||||
|
||||
### Speaker Notes:
|
||||
> *[Let the audience read the slide]*
|
||||
>
|
||||
> This is from an actual internal Ford memo.
|
||||
>
|
||||
> The cost to fix the problem: $11 per car. Eleven dollars. For 12.5 million vehicles, that's $137 million.
|
||||
>
|
||||
> The "benefit" of fixing it - in Ford's calculation - was 180 fewer deaths. At $200,000 per death (their number), that's $36 million.
|
||||
>
|
||||
> Cost exceeds benefit. Don't fix it.
|
||||
>
|
||||
> *[Pause]*
|
||||
>
|
||||
> This is what happens when safety decisions are made without proper data context. When human lives are just numbers in a spreadsheet.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 13: The Data
|
||||
**Visual:** Illustration of rear impact test data
|
||||
**Annotations:** Fuel leakage measurements, fire risk metrics
|
||||
|
||||
### Speaker Notes:
|
||||
> The data that should have driven the decision was clear.
|
||||
>
|
||||
> Rear impact testing showed fuel leakage far exceeding safe limits. The tank design failed at impacts as low as 25 mph.
|
||||
>
|
||||
> Ford's own engineers knew. They had the data. But the data didn't make it past the accounting department.
|
||||
>
|
||||
> After the scandal broke, after the lawsuits, after the criminal charges - the federal government strengthened FMVSS 301, the fuel system integrity standard.
|
||||
>
|
||||
> Now every vehicle is tested. Rear impact at 50 mph. Side impact at 20 mph. Rollover in 360 degrees. Fuel leakage is measured precisely - using instrumentation - and limits are enforced.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 14: The Solution
|
||||
**Visual:** Modern fuel system protection features
|
||||
**Bullets:** Reinforced tanks, shields, self-sealing lines, protected locations
|
||||
|
||||
### Speaker Notes:
|
||||
> The solutions were straightforward - and cheap.
|
||||
>
|
||||
> That $11 fix? It included a plastic shield to protect the tank, reinforced bumper mounts, and better tank location.
|
||||
>
|
||||
> Today, fuel system integrity is non-negotiable. Tanks are mounted in protected locations. They're designed to deform without rupturing. Fuel lines are self-sealing.
|
||||
>
|
||||
> And critically: Every design is tested. Instrumented. Measured. You can't claim safety without proving it with data.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 15: The Triumph
|
||||
**Visual:** Statistics on fire deaths
|
||||
**Text:** "Vehicle fire deaths: Down 76% since 1980"
|
||||
|
||||
### Speaker Notes:
|
||||
> The triumph: Vehicle fire deaths have dropped 76% since 1980.
|
||||
>
|
||||
> Some of that is better firefighting. Some is better rescue. But much of it is engineering: Vehicles simply don't catch fire like they used to.
|
||||
>
|
||||
> The Pinto scandal forced the industry to take fuel system safety seriously. It forced regulators to mandate testing. And it established the principle that safety decisions must be based on data, not cost-benefit analysis.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 16: Story 3 Introduction
|
||||
**Visual:** Section divider
|
||||
**Title:** STORY 3: The Test That Humbled an Industry
|
||||
|
||||
### Speaker Notes:
|
||||
> Story three. The test that humbled an industry.
|
||||
>
|
||||
> This is the story of the IIHS small overlap test. And it's a reminder that even when we think we've solved a problem, we might be missing something.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 17: The Tragedy Pattern
|
||||
**Visual:** Crash reconstruction showing small overlap impact
|
||||
**Caption:** The crash pattern that kept killing people
|
||||
|
||||
### Speaker Notes:
|
||||
> By 2010, frontal crash safety was considered a solved problem. Vehicles were acing the federal full-frontal test. They were acing the IIHS moderate overlap test. Deaths were down.
|
||||
>
|
||||
> But IIHS researchers noticed something in real-world crash data. People were still dying in frontal crashes. And they were dying in a specific pattern.
|
||||
>
|
||||
> Tree strikes. Pole strikes. Corner-to-corner with other vehicles. Crashes where only 20-25% of the vehicle's width was engaged.
|
||||
>
|
||||
> These "small overlap" crashes weren't captured by existing tests. The vehicles that aced the 40% overlap test? They were failing in real crashes.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 18: The Investigation
|
||||
**Visual:** Photo of IIHS small overlap test in progress
|
||||
**Caption:** 25% overlap, rigid barrier, 40 mph
|
||||
|
||||
### Speaker Notes:
|
||||
> IIHS developed a new test. Twenty-five percent overlap. Rigid barrier - not deformable. Forty miles per hour.
|
||||
>
|
||||
> The test was designed to stress the part of the vehicle structure that existing tests missed: The outer edge. The corner. The area where all those trees and poles were hitting.
|
||||
>
|
||||
> In 2012, they started testing. The results shocked everyone.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 19: The Data - The Failure
|
||||
**Visual:** Test results table
|
||||
**Show:** BMW, Mercedes, Audi, Lexus - all Marginal or Poor
|
||||
|
||||
### Speaker Notes:
|
||||
> BMW 5-Series: Marginal.
|
||||
> Mercedes C-Class: Marginal.
|
||||
> Audi A4: Marginal.
|
||||
> Lexus ES: Poor.
|
||||
>
|
||||
> These are the most expensive, most prestigious vehicles on the road. Vehicles marketed as "safe." Vehicles that aced every other crash test.
|
||||
>
|
||||
> And they failed. Only 3 of 13 midsize cars earned "Good" in the first round.
|
||||
>
|
||||
> The data showed catastrophic intrusion. Footwells collapsed. Steering columns displaced. Dummies' heads struck hard interior surfaces. Feet were trapped in crushed metal.
|
||||
>
|
||||
> The instrument data told the story: HIC values exceeding limits. Femur loads off the charts. Lower leg compression in the critical injury range.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 20: The Solution
|
||||
**Visual:** Before/after structural diagrams
|
||||
**Caption:** Industry redesign of front structures
|
||||
|
||||
### Speaker Notes:
|
||||
> The industry responded with remarkable speed.
|
||||
>
|
||||
> Within two years, most manufacturers had fundamentally redesigned their front structures. They added small overlap load paths. Extended bumper beams. Reinforced A-pillars.
|
||||
>
|
||||
> By 2015, most vehicles were earning "Good" ratings. The test that humbled the industry became the test that improved the industry.
|
||||
>
|
||||
> But it took instrumented testing to prove the problem. Without precise measurement of what was happening to the dummies - the head injury values, the leg loads, the chest compression - you couldn't quantify the failure. And you couldn't prove that the redesign worked.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 21: The Triumph
|
||||
**Visual:** Statistics on frontal crash deaths
|
||||
**Text:** "Frontal crash deaths: Down 8% within 3 years of test introduction"
|
||||
|
||||
### Speaker Notes:
|
||||
> The triumph: Within three years of the small overlap test introduction, frontal crash deaths dropped an additional 8%.
|
||||
>
|
||||
> That's after decades of improvement. That's when everyone thought frontal safety was "done."
|
||||
>
|
||||
> The test revealed a hidden vulnerability. Data quantified it. Engineering fixed it. And real people - thousands of them - are alive because of it.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 22: Story 4 Introduction
|
||||
**Visual:** Section divider
|
||||
**Title:** STORY 4: The Sport That Saved Itself
|
||||
|
||||
### Speaker Notes:
|
||||
> Story four. The sport that saved itself.
|
||||
>
|
||||
> This is the story of football helmets. And it's a reminder that safety standards can transform an entire culture.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 23: The Tragedy
|
||||
**Visual:** Vintage football injury photo or memorial
|
||||
**Text:** "32 players per year, 1960s-1970s"
|
||||
**Caption:** Killed by head and neck injuries in football
|
||||
|
||||
### Speaker Notes:
|
||||
> In the 1960s and early 1970s, American football was deadly.
|
||||
>
|
||||
> Thirty-two players died every year from head and neck injuries. High school kids. College students. Professionals.
|
||||
>
|
||||
> Helmets existed. Players wore them. But the helmets weren't protecting them - because there was no standard. There was no test. There was no way to know if a helmet actually worked.
|
||||
>
|
||||
> Manufacturers made claims. Coaches trusted them. And players died.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 24: The Investigation
|
||||
**Visual:** Photo of drop tower testing
|
||||
**Caption:** NOCSAE drop test development, 1970s
|
||||
|
||||
### Speaker Notes:
|
||||
> In 1969, the National Operating Committee on Standards for Athletic Equipment - NOCSAE - was formed.
|
||||
>
|
||||
> Their mission: Develop a test that actually predicts whether a helmet will protect a player.
|
||||
>
|
||||
> They built drop towers. They instrumented headforms with accelerometers. They developed the Severity Index metric - an integral of acceleration that correlates with brain injury risk.
|
||||
>
|
||||
> They tested every helmet on the market. Many failed. Some failed spectacularly.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 25: The Data
|
||||
**Visual:** Chart showing SI values for different helmets
|
||||
**Annotations:** Pass/fail threshold at SI 1200
|
||||
|
||||
### Speaker Notes:
|
||||
> The data was stark.
|
||||
>
|
||||
> Some helmets attenuated impact beautifully - SI values of 600, 800. Well under the 1200 threshold.
|
||||
>
|
||||
> Other helmets - including some market leaders - showed SI values of 1500, 1800, 2000. They weren't just failing; they weren't even close to passing.
|
||||
>
|
||||
> Players were wearing helmets that provided almost no protection. And nobody knew - because nobody had measured.
|
||||
>
|
||||
> NOCSAE measurement changed that. Suddenly there was objective data. Helmets either worked or they didn't. And you could prove which was which.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 26: The Solution
|
||||
**Visual:** Modern football helmet design features
|
||||
**Bullets:** Energy-absorbing liners, improved shells, standardized testing
|
||||
|
||||
### Speaker Notes:
|
||||
> The solution was elegant: Set a standard, and let the market respond.
|
||||
>
|
||||
> NOCSAE established the SI < 1200 requirement. In 1980, the NCAA mandated that all helmets meet the standard. High school federations followed.
|
||||
>
|
||||
> Suddenly, helmet manufacturers had to design for performance, not just appearance. Helmets got better liners. Better shells. Better overall performance.
|
||||
>
|
||||
> And the standard kept evolving. In 2016, NOCSAE added the linear impactor test for rotational injury assessment. The science advances; the standard advances.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 27: The Triumph
|
||||
**Visual:** Graph showing football fatalities over time
|
||||
**Data:** 32/year (1970) → 8/year (1985) → 3/year (2020)
|
||||
|
||||
### Speaker Notes:
|
||||
> The triumph: Football deaths from head and neck injuries dropped by over 90%.
|
||||
>
|
||||
> From 32 per year to typically 3 or fewer. Hundreds of lives saved every year.
|
||||
>
|
||||
> That's not better coaching. That's not rule changes. That's engineering. Helmets validated with instrumented testing. Helmets that actually work.
|
||||
>
|
||||
> And DTS instrumentation is in testing labs around the country, validating helmets every day. The same measurement principles that started this revolution continue to drive it forward.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 28: The Pattern
|
||||
**Visual:** Four arcs showing all four stories
|
||||
**Summary:** Tragedy → Data → Solution → Triumph (×4)
|
||||
|
||||
### Speaker Notes:
|
||||
> Four stories. Four tragedies. Four triumphs.
|
||||
>
|
||||
> Children killed by airbags → Out-of-position testing data → Smart airbags → Deaths to zero.
|
||||
>
|
||||
> People burning in Pintos → Fuel system testing data → Protected fuel systems → Fire deaths down 76%.
|
||||
>
|
||||
> Drivers dying in small overlap crashes → New test protocol data → Structural redesign → Frontal deaths down 8%.
|
||||
>
|
||||
> Football players killed → Helmet testing data → Better helmets → Deaths down 90%.
|
||||
>
|
||||
> Every one of these transformations ran through the same chokepoint: Data. Instrumented testing. Precise measurement of what was going wrong.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 29: Where DTS Fits
|
||||
**Visual:** Connection diagram
|
||||
**Center:** DTS Instrumentation
|
||||
**Spokes:** Crash labs, helmet labs, military labs, sports labs
|
||||
|
||||
### Speaker Notes:
|
||||
> Where does DTS fit in this arc?
|
||||
>
|
||||
> We're in the middle. We're the data capture mechanism.
|
||||
>
|
||||
> Our accelerometers are in the dummies. Our data acquisition systems are in the crash labs. Our calibration standards ensure that a measurement in Detroit means the same thing as a measurement in Stuttgart.
|
||||
>
|
||||
> We don't design the vehicles. We don't write the regulations. We don't do the engineering analysis.
|
||||
>
|
||||
> But without accurate data capture, none of that other work is possible. We're the foundation that everything else builds on.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 30: The Ongoing Mission
|
||||
**Visual:** List of current/emerging challenges
|
||||
**Bullets:** EV safety, autonomous vehicles, pedestrian protection, new concussion science
|
||||
|
||||
### Speaker Notes:
|
||||
> And the mission continues.
|
||||
>
|
||||
> Electric vehicles are crashing differently. Batteries are bringing new failure modes. We need new instrumentation.
|
||||
>
|
||||
> Autonomous vehicles need validation of active safety. Not just "what happens in a crash" but "did the vehicle avoid the crash?" That's new measurement territory.
|
||||
>
|
||||
> Pedestrian and cyclist deaths are rising even as occupant deaths fall. We need instrumentation for active pedestrian protection systems.
|
||||
>
|
||||
> Concussion science is revealing that rotational acceleration matters as much as linear. We need sensors that capture rotation.
|
||||
>
|
||||
> Each of these challenges will follow the same arc. There will be tragedies. There will be investigations. There will be data. And there will be solutions.
|
||||
>
|
||||
> DTS will be part of that arc - providing the instrumentation that turns tragedy into triumph.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 31: Final Reflection
|
||||
**Visual:** Simple text on dark background
|
||||
**Quote:** "Behind every safety standard is someone who didn't come home. Data ensures their loss wasn't in vain."
|
||||
|
||||
### Speaker Notes:
|
||||
> I want to leave you with this thought.
|
||||
>
|
||||
> Behind every safety standard is someone who didn't come home. A child killed by an airbag. A mother burned in a Pinto. A driver crushed in a small overlap crash. A football player who never got up.
|
||||
>
|
||||
> Those deaths can't be undone. But data - accurate, reliable, precise data - ensures that their loss wasn't in vain.
|
||||
>
|
||||
> The data we capture enables the engineering changes that prevent the next death. And the next. And the next.
|
||||
>
|
||||
> That's what we do. That's why it matters. That's why I'm proud to work here.
|
||||
>
|
||||
> Thank you.
|
||||
|
||||
---
|
||||
|
||||
## SLIDE 32: Questions
|
||||
**Visual:** "Questions?"
|
||||
**Subtitle:** Ben - Application Engineer
|
||||
|
||||
### Speaker Notes:
|
||||
> I'm happy to take questions. These are heavy stories - if you need a moment to process, that's okay too.
|
||||
>
|
||||
> *[Open for Q&A]*
|
||||
|
||||
---
|
||||
|
||||
# APPENDIX: ADDITIONAL STORIES (BACKUP)
|
||||
|
||||
## Story: The Roof That Crushed
|
||||
- Ford Explorer/Firestone rollover crisis
|
||||
- 271 deaths attributed to rollovers
|
||||
- FMVSS 216 upgrade from 1.5× to 3× vehicle weight
|
||||
- IIHS roof test at 4× for "Good"
|
||||
|
||||
## Story: The Seat That Whipped
|
||||
- Whiplash causing more injury claims than any other type
|
||||
- BioRID II dummy development
|
||||
- IIHS head restraint ratings
|
||||
- Industry response to dynamic testing
|
||||
|
||||
## Story: The Truck That Underrode
|
||||
- Jayne Mansfield death (1967) driving rear underride awareness
|
||||
- FMVSS 223/224 rear impact guards
|
||||
- IIHS underride testing
|
||||
- Ongoing gaps in side underride protection
|
||||
|
||||
---
|
||||
|
||||
# TIMING GUIDE
|
||||
|
||||
| Section | Duration | Cumulative |
|
||||
|---------|----------|------------|
|
||||
| Opening (Slides 1-2) | 4 min | 4 min |
|
||||
| Story 1 - Airbags (Slides 3-9) | 10 min | 14 min |
|
||||
| Story 2 - Pinto (Slides 10-15) | 8 min | 22 min |
|
||||
| Story 3 - Small Overlap (Slides 16-21) | 8 min | 30 min |
|
||||
| Story 4 - Football (Slides 22-27) | 8 min | 38 min |
|
||||
| Closing (Slides 28-32) | 5 min | 43 min |
|
||||
| Q&A Buffer | 2 min | 45 min |
|
||||
|
||||
---
|
||||
|
||||
# EMOTIONAL MANAGEMENT NOTES
|
||||
|
||||
This presentation deals with heavy subject matter. Consider:
|
||||
|
||||
1. **Pacing:** Don't rush through the tragedy sections. Let them land.
|
||||
2. **Transitions:** Use silence between stories to reset emotional baseline.
|
||||
3. **Resolution:** Always end each story on the triumph. Don't leave audience in despair.
|
||||
4. **Self-care:** Check in with yourself before presenting. These stories can be draining.
|
||||
5. **Audience:** Watch for signs of distress. Have an out if needed.
|
||||
|
||||
---
|
||||
|
||||
*End of Script and Speaker Notes*
|
||||
Reference in New Issue
Block a user