Science Friday® is produced by the Science Friday Initiative, a 501(c)(3) nonprofit organization.
Science Friday® and SciFri® are registered service marks of Science Friday, Inc. Site design by Pentagram; engineering by Mediapolis.
![]() |
![]() |
Tweet |
Would you believe that one of the landmark innovations in sneaker technology involved a waffle iron? In the early 1970s, Nike co-founder Bill Bowerman was trying to figure out how to create a running shoe with more traction. But he didn’t want to add spikes to the sole. Then, inspiration struck over breakfast with his wife when he examined the structure of his waffle. As Elizabeth Semmelhack, senior curator at the Bata Shoe Museum recounts, Bowerman decided to pour rubber into the waffle maker—and the rest is sneaker history. The classic Nike Waffle Trainer made its market debut just a few years later.
Today, innovations in sneaker technology seem endless, from knitted uppers to 3-D-printed components. D’Wayne Edwards, former footwear design director at Nike’s Jordan Brand, even included titanium in the Air Jordan 22 shoe he designed. Yet as sneaker technology continues incorporating new materials, does any of it make a difference in how we move, especially when it comes to running? Biomechanist Rodger Kram explains how the sneakers you wear can affect the way you run.
Plus, if you’re looking to add some flashy tech to your trainers, Science Friday’s education team shows you how to weave LED lights through your sneaker laces.
|
EVAL ERROR: Entity: line 1: parser error : Space required after the Public Identifier ^ Entity: line 1: parser error : SystemLiteral " or ' expected ^ Entity: line 1: parser error : SYSTEM or PUBLIC, the URI is missing ^ Code: line 1: package tmpevalpackage; line 2: sub doEval { line 3: my($parent); line 4: line 5: if($LayoutManager::url_resolved_values{'SEGMENT.nickname'}) { line 6: $parent = $LayoutManager::url_resolved_values{'SEGMENT.nickname'}; line 7: } line 8: elsif($LayoutManager::url_resolved_values{'VIDEO.nickname'}) { line 9: $parent = $LayoutManager::url_resolved_values{'VIDEO.nickname'}; line 10: } line 11: elsif($LayoutManager::url_resolved_values{'DOCUMENT.nickname'}) { line 12: $parent = $LayoutManager::url_resolved_values{'DOCUMENT.nickname'} line 13: } line 14: line 15: if($parent) { line 16: my(@books) = &Database::SelectClause('BOOK',"parent = $parent"); line 17: if(!@books) { line 18: $parent = ''; line 19: } line 20: } line 21: line 22: if(!$parent) { line 23: my(@sel) = &Database::SelectClause('GLOBAL','record all ""'); line 24: if(@sel) { line 25: $parent = 'GLOBAL.' . $sel[0]; line 26: } line 27: $main::ENV{'reading_header'} = "FEATURED READING"; line 28: } line 29: line 30: = ''; line 31: line 32: if($parent) { line 33: my(@books) = &Database::SelectClause('BOOK',"parent = $parent"); line 34: 0 = 0; line 35: my $dots; line 36: foreach(@books) { line 37: my(%data); line 38: &Database::GetRow($_,'BOOK',\%data); line 39: my($status,$title,$author,$url,$image,$width,$height) = &SciFri::Schema::getAmazonItem($data{'isbn'}); line 40: if($data{'title'}) { line 41: $title = $data{'title'}; line 42: } line 43: if($data{'author'}) { line 44: $author = $data{'author'}; line 45: } line 46: if($status eq 'ok') { line 47: .= "<div class=\"box-2x1-item box-slide\" data-href=\"$url\">"; line 48: .= " <div class=\"box-2x1-item-photo\">"; line 49: .= " <div class=\"image-wrapper\" data-jsclass=\"imageWrapper\" data-align=\"right\">"; line 50: .= " <img src=\"$image\" data-width=\"$width\" data-height=\"$height\">"; line 51: .= " </div>"; line 52: .= " </div>"; line 53: .= " <h4>$title</h4>"; line 54: if($author) { line 55: .= " <p>by $author</p>"; line 56: } line 57: .= " <div class=\"box-2x1-more-button\"><a href=\"$url\"><img src=\"/images/v1/icon_text_more_white.png\" width=47 height=15 border=0></a></div>"; line 58: .= "</div>"; line 59: ++0; line 60: } line 61: } line 62: } line 63: if($parent eq "GLOBAL.1") { $main::ENV{'reading_header'} = "FEATURED READING"; } line 64: else { $main::ENV{'reading_header'} = "RELATED READING"; } line 65: }; line 66: &doEval(); line 67: 1;
Discussion