How to Learn When Programming

| Comments

Part 1

At the Flatiron School, it’s all about trying to fit an elephant inside a fridge. Your brain being the fridge and Ruby plus everything else being the Elephant. Needless to say, it can feel a little bit crammed in there.

But wait, this is a good thing! It means you’re expanding your comfort zone and actually learning something. Here’s why:

Novelty – a two-edged sword

Novelty can both be good and bad. You’re being awarded pleasure for learning, while feeling the discomfort of not knowing what to do. It’s confusing.

Here’s the scary part:

Everybody loves novelty. If your job doesn’t challenge you in new ways, it will only keep on dragging you down until you eventually quit. This is a no-brainer. But that’s just part of the story…

Discomfort and Emotions

Wouldn’t it be nice if the discomfort would actually feel good too? Well, chinese scientists have discovered that due to the nature of the design of our brain, this is not possible. Sorry.

But wait, how about a workaround? Yes, now we’re talking. But before we go into that, let’s inspect discomfort in a little bit more detail:

What I mean by discomfort, are generally negative emotions. Feeling lost, hopeless, angry, annoyed or frustrated are all pieces of the pie. So why do we feel them? Because they are necessary.

Think about it, when you were a little kid and put your hand on that stove for the first time, you needn’t make that mistake twice. You see, linking experiences to negative emotions will make them stick better.

And that’s really all there is to it. Read it again. It sounds simple, because it is!

But what about programming?

Persisting and struggling with concepts you don’t understand will assist you in learning them. Simply stated, it may be more painful, but you will gain a deeper understanding.

To make a point, when I was working through the collections practice lab, it took me a full four hours to work through one method! But I discovered and learned a lot! Taking on pigeon organizer afterwards felt as easy as binge-watching a season of Game of Thrones.

So here is what you should do:

Use this piece of information as a framework to help putting things into perspective. The next time when you feel really frustrated, don’t take the easy way and look at someone elses code.

Struggle with your own code first, feel frustrated, browse the Array Ruby documentation for the hundredths time. Stay with it. Remember that all this frustration will help you in the long run.

No pain, no gain.