I wanted to talk about something that I noticed in both of my previous projects: the 100DaysofCode and Startup Challenge. It’s about the Bump.
The bump goes something like this: you’ve decided to learn a new skill. As you always do, you check out the tutorials for it online. Things go very smoothly. This thing goes there, this goes here, and it all fits. You can even apply it to! It actually works outside the tutorial! Wow, this is fantastic; you feel productive, valuable, all sorts of… wait… what the hell? What is that thing? How are you supposed to do that? Is that even possible? Well, what if you put in… nope, that didn’t work. It’s not how to learn, but you can always copy and paste from the tutorial and … oh my. This is not an error that the tutorial mentioned. And looking it up in google gives zero results. Wow. This sucks.
Everyone’s had to deal with the Bump at some point. Perhaps not like that specific example, but the same idea applies. I’ve been dealing with the Bump when it comes to programming for quite a while now, in various shapes and forms. I know that programming isn’t my strong suit; at the same time, I recognize programming as an essential skill for the future. So, how do I get past the Bump?
For the most part, I’ve found the one thing that’s been the most helpful to also be the most ironic: brute force. Trying out as many problems, tutorials, etc. that I can find and trying to complete each one until I hit a point where its truly impossible to complete. Still, I’ll be the first to say that this isn’t the best strategy to go for. Building up momentum for a short while only to have it all collapse again can make you demotivated to finish the job as well as further lower your opinion of your own abilities. So, post-100DaysofCode, I’ve decided to draft up a new theory when it comes to tackling the Bump.
The first thing is this: execution matters above all. I now believe that it matters less that you spread out on a bunch of different tutorials and learn bits and pieces from each. When you hit a roadblock in a project and then actually get past that roadblock¸ it feels INFINITELY more rewarding and grants you with much more knowledge. Instead of avoiding roadblocks, you should focus on tackling them head-on. Make the goal less of finishing the project, and more of beating the roadblock. Once you realign your focus on the challenge like this, I hypothesize, you’ll come in with a much healthier mindset.
A second major piece of it is that just because you struggle doesn’t mean you can’t come out the other side. I think programming is one of the most notorious things out there in terms of the struggle. I see a constant stream of posts on Medium, Reddit, etc. about people banging their head on the wall because they just can’t get coding. This makes me feel a lot better about my own position. What also makes me feel good is recognizing that, when they stuck to it, the majority of these people successfully ended up making it to the other side. And if they can do it, why can’t we?
Overall, I’d still say that my level of programming mastery is novice. I left 100DaysofCode disappointed in expecting more progress, but at the same time I got a new goal out of it: to break past the Bump and get on to the next level.
That’s all for now. Feel free to follow this blog or my Twitter if you wish to see more. New posts should be up every Monday!