Not enough U.S. mayors make sustainable transportation a priority, and even the ones that do don’t always get much done. On today’s episode of The Brake, though, we spoke with one elected official who’s making massive progress to make streets safer, greener and more equitable in his small town — and sharing lessons in leadership that can scale to even the biggest cities.
What It Takes to Put a Seat At Every Bus Stop in Town
In this extended conversation with Mayor John Bauters of Emeryville, Calif., we learn more about his successful effort to put a seat at every bus stop in his town, which Streetsblog covered last month, and what it takes to get humble yet ambitious mobility projects like this done. And along the way, we chat about why he thinks climate change is a losing campaign issue even though it’s the most important issue of our time, why elected officials should get outside more, and why he thinks that you — yes, you — should run for office.
Tune in below, on Apple Podcasts, or anywhere else you listen.
( function() {
var func = function() {
var iframe = document.getElementById(‘wpcom-iframe-fcf048294eae5be50abb73dbcf6f2b29’)
if ( iframe ) {
iframe.onload = function() {
iframe.contentWindow.postMessage( {
‘msg_type’: ‘poll_size’,
‘frame_id’: ‘wpcom-iframe-fcf048294eae5be50abb73dbcf6f2b29’
}, “https://embeds.streetsblog.org” );
}
}
// Autosize iframe
var funcSizeResponse = function( e ) {
var origin = document.createElement( ‘a’ );
origin.href = e.origin;
// Verify message origin
if ( ’embeds.streetsblog.org’ !== origin.host )
return;
// Verify message is in a format we expect
if ( ‘object’ !== typeof e.data || undefined === e.data.msg_type )
return;
switch ( e.data.msg_type ) {
case ‘poll_size:response’:
var iframe = document.getElementById( e.data._request.frame_id );
if ( iframe && ” === iframe.width )
iframe.width = ‘100%’;
if ( iframe && ” === iframe.height )
iframe.height = parseInt( e.data.height );
return;
default:
return;
}
}
if ( ‘function’ === typeof window.addEventListener ) {
window.addEventListener( ‘message’, funcSizeResponse, false );
} else if ( ‘function’ === typeof window.attachEvent ) {
window.attachEvent( ‘onmessage’, funcSizeResponse );
}
}
if (document.readyState === ‘complete’) { func.apply(); /* compat for infinite scroll */ }
else if ( document.addEventListener ) { document.addEventListener( ‘DOMContentLoaded’, func, false ); }
else if ( document.attachEvent ) { document.attachEvent( ‘onreadystatechange’, func ); }
} )();