location_city Washington DC schedule Oct 24th 03:15 - 04:00 PM EDT place Room 5

Have you ever been stuck between a rock and a code place? Learning to code can feel as daunting as climbing Mount Everest! In this talk, I’ll share seven software development best practices I learned through rock climbing.

This talk will…

  • answer how do I start?
  • address the mindset for coding
  • discuss the value of practice versus profession
  • introduce the benefits of doing what you love
  • ideate on how to find help and support

What do climbing rocks and writing code blocks have to do with one another? Come learn some techniques and strategies for becoming a better software developer (and incidentally maybe a better rock climber too)! No harness and rope required!


Outline/Structure of the Talk

The Approach

Challenge: How to get started?

  • Strategy: 
    Whether it be climbing a route or coding a kata, there's way to approach a problem.
      • Rules of Thumb - Sandy Metz
      • Cookbook Recipes - Martin Fowler
      • Prioritisation for highest value 
      • MVP --> MLP (?) 
  • Mindset: 
    Problems are hard! New failures and continual failures can be demoralizing. Here's how I keep my mind on the task at hand.
      • Fail Fast - the benefits of knowing what doesn't work
      • make it work make it right make it fast/get to green
      • Keep Calm and Climb/Code On

Building Skills

Challenge: How to get better?

  • Practice

Fitness and skills help with climbing and coding practices. Here's how I learned to build up my experience.

    • Gemba - the real place
    • Fitness - broken windows theory/refactoring
    • Shu Ha Ri - learning from others
  • Measure

It can be frustrating to fall or to fail. But appropriately measuring improvement can help!

    • Tasks
    • Crux
    • Problems
    • Health

Continuous Improvement

Challenge: How to hone my craft?

  • Purpose and Passion
    If I like to do something, I'll naturally do more of it and in theory improve. The journey of finding what I like about climbing/coding and getting good at it.
      • Follow your bliss - Joseph Campbell
      • Kaizen
  • Exposure and Experimentation
    Advancing can be fast tracked by trying new things and learning from those adventures!
      • Spikes
      • When & how much/long?
  • People and Community
    Climbing and Coding can be solo or quite community oriented. Here's what I learned from others that helped myself and gave back.
      • Diversity - the differences between the genders
      • Pairing - Roles
      • Priming - Thinking Fast and Slow
      • "Matz is nice so we are nice"
      • Project Aristotle - Google

Learning Outcome

Learning anything new can be challenging! Sometimes helpful hints to better coding practices can be found in the world around us! Becoming a better rock climber helped me understand software development best practices. For those learning to code, my talk is intended to provide some rules of thumb to fall back on and lessons learned from my experiences. For mentors and more experienced coders, my talk can provide some ideas on how to empathize with new coders and provide some learning structures to use in their own coaching opportunities.

Target Audience

Ideal for new coders and mentors

schedule Submitted 6 years ago

Public Feedback