Speaking

I love telling a story, whether about code or about life. I've spoken at conferences all over the world, from Barcelona to Paris to Boston and (usually virtually) to meetups from Guadalajara to Stockholm to Sydney.

My public talks are 'free as in beer'.  I deeply appreciate those who do the organizational work that make us a community; if you're a non-profit putting together a public event, I'll happily speak for free.

I'd also be delighted to give a private talk at your company.  This is 'consulting'. :-)  Let's talk.

I fear my schedule fills quickly.  If you plan to get in touch, sooner is always better than later.

I saw your talk at RailsConf today, and I was very impressed. You are the most gifted, engaging speaker I have heard so far at this year’s conference. Thank you for sharing your knowledge and experiences! -
— Anthony C.
crankset-transparent.png

Talks

all the little things 

Removing `if` statements from object-oriented code: The Gilded Rose Kata.

 

If you enjoyed this highlight and want to see more, you can watch the full video here


Grit

The writing of POODR, a heinous bike ride, and the research on how people use Grit to get things done.

 

If you enjoyed this highlight and want to see more, you can watch the full video here.


Magic Tricks of Testing 

Make yourself happy; delete some tests!

 

If you enjoyed this highlight and want to see more, you can watch the full video here.


Rules 

Five 'little' rules for writing object-oriented code.

 

If you enjoyed this highlight and want to see more, you can watch the full video here


Sandi Tells Your Future

The history of printing as a predictor of your future. 

 

If you enjoyed this highlight and want to see more, you can watch the full video here. 

 

Authority, Conformity, Community

This talk delves into famous (and frankly, horrifying) social science research for hints about how to intentionally create positive, collaborative, and effective teams.

 

Get a Whiff of This 

This talk shows how to take a pile of perplexing code, identify the "smells", and surgically apply the curative refactorings.