Getting Unstuck: Strategies For Solving Problems

By Steven Hicks

Elevator Pitch

Every developer gets stuck. The key to success as a developer is knowing how to get yourself unstuck.

This talk will reframe the act of getting stuck as a positive. We’ll discuss strategies for getting yourself unstuck, and ways to prepare yourself for the next time you’re ready to give up.

Description

You’ve followed along with the docs. Everything seems like it should be working. You’ve looked over this code 20 times, but you can’t figure out why it’s failing. You’re frustrated, and you’re ready to give up.

Even with the simplest of problems, we can get stuck. It happens to engineers of all experience levels - new hires and senior engineers alike. The key to success as a developer is knowing how to get yourself unstuck.

In this session, we’ll start by reframing the act of getting stuck as a positive. Then we’ll talk about many strategies for identifying the problem and moving on. We’ll discuss the psychology behind these strategies, and answer questions like “Why do my best ideas come to me in the shower?” Finally, we’ll look at ways to harden yourself for the next time you get stuck.

Getting unstuck is a skill. This session will help you sharpen that skill, and prepare you for the next time you want to throw your keyboard out a window.

Notes

Hearing someone tell me in a standup that they are stuck on something is like a beacon to me. My eyes light up, and I drop everything I’m working on to help them get past it. I’ve been keeping track of the things that I and my coworkers do to get ourselves unstuck, and I’d love to share my strategies.


High-level outline:

Embrace The Stuck

Reframe the act of getting stuck as “solving problems & being a developer”, instead of something bad.

Explain The Problem (4 strategies)

Explaining the problem to someone/something forces you to use better learning strategies to understand the problem. It also helps you challenge your assumptions.

Isolate The Problem (~10 strategies)

Isolate the issue by breaking a larger problem into smaller problems.

Escape The Problem (4 strategies)

Complicated problems benefit from setting the problem aside, to let it incubate.

Harden Yourself (5 strategies)

Condition yourself for the next time you get stuck by learning new ways to solve problems.


I’ve given this talk at RailsConf 2019 in Minnesota, and at CodeMash 2019 in Ohio. At CodeMash, I received an average rating of 5/5.

Video: https://www.youtube.com/watch?v=3XscuivvUzI

Reactions from Twitter:

  • https://twitter.com/BeyondtheTeal/status/1083737703617871872
  • https://twitter.com/garyfleming/status/1170348237494136834
  • https://twitter.com/FlextaMcSignalz/status/1083733670064766976
  • https://twitter.com/pottereric/status/1083723812007485441