I received this tweet a few days ago in response to this newsletter’s launch, and I thought it’d be a great first topic to explore. I’ll attack this question through the medium of building projects, since that’s where I’ve had to answer this question the most, but I think my answer is much more generally applicable.
I think that a good place to start is defining motivation. I define motivation as the answer to the following question: why? What’s your reason for doing what you are doing? If you don’t have an answer to this question before starting pretty much anything, take some time to answer it. Without knowing why you’re doing something, you’ll never have a goal, and that makes it more than likely a waste of your time.
With that out of the way, we arrive at the question of the day: how do you stay motivated? I think the real beauty of motivation is that it can come from anywhere, or anything. It also doesn’t have to be a singular thing, and it doesn’t need to be the same for everything you do. As I’ve gone through the past few years and worked on different projects, my end goal has continually shifted. That’s led to a shift in motivation for me. When I was learning programming, my motivation was acquiring knowledge - I saw people my age doing amazing things through their knowledge of coding, and I too wanted to be able to build amazing things. Once I started creating my own projects, that motivation shifted from just acquiring knowledge to also putting my creations into the hands of others (Note: seeing other people react to something you made is the greatest feeling ever). And I suspect going forward, my motivation will shift once more to developing a sustainable business as I start thinking about student loans for college.
So as this post draws to a close, I pose you this question: why are you learning programming? If you’re like me, you’re doing this because you want to make cool things. You can’t possibly tell me that you’ll let some temporary inconveniences stop you from reaching that goal. The fact is that every single, and I mean every single programmer I’ve ever talked to struggled while initially learning programming. And I know that all of them still struggle as they continue learning new stuff. That’s the beauty of programming: you never stop learning. I can assure you, though, that it gets easier as time goes on. It turns out that repetitively doing the same things over and over make you better at it. I promise you that the struggles you’re going through will pay off at a much larger magnitude down the run as long as you keep putting in the effort. The reason I’m so confident in that is because they have for me.