Dealing with Frustration

Alex Dzwonchyk
Launch School
Published in
3 min readMay 21, 2017

Today is May 20th, 2017, and I’m nearing the end of the 101 course at Launch School.

Flipping back through my journal to May 6th, I read:

I feel myself pushing up against frustration, and seeing the weak spots in my mental model of Ruby.

Today, I feel pretty confident. I just finished writing a program that plays a simplified version of Blackjack against a user, and it works as I intended! I even worked through the all the bonus features without much trouble at all.

So today, I don’t feel frustrated by programming — but I know that as soon as I move on to what’s next, and do a few more exercises, I’ll hit something that stumps me.

An entire hour will pass while I stare at a single exercise, and my egg timer will ‘ding’, and I’ll still be furrowing my brow trying to understand why my algorithm solves most of the examples, but not all of them.

Perhaps I’ll get angry, and the clouds will gather in my mind — why am I wasting my time trying to solve this particular problem right now? Minutes, hours are ticking by — is this really getting me any closer to my goal of getting a good job as a developer, and a long career doing work that engages me? Have I made a mistake by trying to take the long, slow path?

Maybe I’m just not really cut out for this. I felt pretty smart yesterday, when I was moving through exercises at a nice clip, one after the other, visions of nested data structures laid out beautifully in my mind — but clearly I was just fooling myself, and I’m not really smart enough to truly master programming. After all, I’ve never been good at math.

So now what do I do?

Don’t Let Frustration Lead to Anger

Here’s the rest of my journal entry from May 6th:

This is the test of mastery…I need to circle back and review, and re-chunk.

The key is to not let frustration lead to anger.

Instead, patiently break down problems, and talk through them to myself, and if I get something wrong, truly understand the solution given, then come back and try it again.

I’m convinced that trying my best to apply this patient approach to my studies is what allowed me to keep working through my frustration, and it’s why today I’m again feeling confident in my path as a developer, and confident that when frustration next hits — as it most certainly will, maybe even later today — I’ll be ready.

I’ll try my best to be patient with the specific problem at hand, and also patient with myself as I reckon with it.

I”ll try to remember that being frustrated isn’t something to fear, something to get angry about, or a sign that I’m not capable of figuring things out — it’s an intrinsic part of the process of solving problems with code.

As Tom Stuart talks about on this excellent episode of the Greater Than Code podcast, how you deal with solving the specific problems you face as a developer is ultimately more important than the specific technical skills you possess.

So as I continue my journey ever deeper into the wild heart of web development, I’m going to keep telling myself something Stuart said when asked what advice he would give to new developers:

However bloody-minded you are, you need to be more so. However methodical and patient you are, you need to be more so.

--

--