Learning to code is accepting peaks and troughs

The bleak midwinter and sunny intervals

·

6 min read

It’s been a while since I logged a Command Shift diary entry but now seems as good a time as any for an update. This one is all about fresh starts and a tale of two halves. Getting back into the groove after a lazy, sugar-loaded, carb-heavy winter break feels like a sloth painstakingly crossing the road. Restoring the routine after Christmas has been a challenge in itself but the only option is to keep working at it, even if progress feels like a toddler two-step.

What change do I want to make this year? It’s really simple actually. Respect that I am on a learning journey and that there will be tough times ahead. The caveat is equally simple. I won’t be so hard on myself when I don’t understand something. Because I last year, and in retrospect unfairly too. I’ll be more kind to myself. I appreciate that learning to code is hard and that everyone is at different levels. That’s by no means a compromise on the commitment I made to myself to join the bootcamp and to make a change to my life. I turn up every week and put the time and effort in.

First up, the beginning of this tale. In the build-up to the Christmas break, I was feeling under the weather and it really put the dampers on my motivation and concentration levels. There was one day I didn't get out of bed until midday and then felt guilty for not coding. Didn’t take long for self-doubt to creep back in at this point. I hadn’t finished the basic JavaScript katas and I was beginning to beat myself up for the assumption I made about falling behind. I felt utterly disappointed with my misjudged lack of progress. I would ask the question, am I ever going to get this? In reality, I was being too hard on myself. I have to forcefully overwrite the goblin that’s in favour of me failing with reminders about the things I’m doing right. I'm frantically Googling things, I can write some blocks of code without referencing anything which has to be considered progress, right? The logic makes more sense to me each day and I’m gaining a better understanding of how to read and digest lines of code. I can participate in lectures by contributing in a way that shows I’ve grasped what I’ve just learned. For example, object destructing. I was able to speak up when asked and help restructure a variable. That’s progress. Nevertheless, I stay humble in the knowledge that one minute I know something, and the next I don’t. On the whole, I am where I need to be. There's a similar feeling in the cohort. We're all feeling the same. Learning to code is challenging, it often feels like overwhelming defeat, and progress feels slower than a snail's pace. The moral of this part of the story is to stop punishing yourself if you ever feel like you don’t get something. To help combat the dread that I've bitten off more than I can chew, I bought a little diary. There's something about physically writing down my daily goals and crossing them off when I've achieved them that doesn't compare to ticking a digital list. My goals aren't exclusively code-related, but it really helps visualise small chunks as opposed to feeling like I have to do everything all at once.

That was the first half of this tale and now it’s time to get back on track. Any day can be a fresh start but my clean slate happened to be New Year's Day. I started back on day 1 of the #100DaysOfCode challenge because it seemed like a good idea after I’d forgotten what day of the week it was, let alone the day of the challenge. I put the hours in and completed the virtual pet challenge set by Manchester Codes, or Command Shift as they’re now known. The repetition of writing tests and functions has been great for my muscle memory. I can picture it as I write this. I’m starting to hear Jenny, one of our tutors, in my head when I write my code. For that reason, I’ve gotten into the habit of writing the syntax structure of my code before putting in arguments, parameters, methods or whatever else. Tangent time, when I was in secondary school I had an English teacher that would make the class sing, “a noun is a word which names a person, place or thing.” We would sing this on repeat and all these years it is stuck with me. The same can be said for my object-oriented programming experience. Although, the comparison doesn’t extend to the singing. I’ll let you know if that changes. Through learning and spaced repetition, I know that everything in JavaScript is an object. I know that the constructor class acts like a cookie-cutter template object that doesn’t have any data but defines function expressions and function declarations that will be used. These special functions are then used to create a new object known as instances where we can feed actual data. I also know that whenever a function is used inside an object it’s called a method. Sound the small victory alarm because that’s what it is and these are to be cherished. My alarm sounds like ‘Make Yourself’ by American rockers Incubus.

This next part is a late addition to the blog. A bootcamp newbie, starting the course shortly, reached out to me on LinkedIn to ask me about my experience so far, and this is what I said. The learning curve is steep, you'll have good days and bad days, and downright ugly days. The important thing I'm finding is to take the time to look back at how far I've come in a short time. Nothing a quick reminder about my motivation for doing the course in the first place can't fix. It can feel tough at times and like you're the only person struggling. However, I've found that I'm at a similar level of progression to my cohort, which is comforting. I'm very lucky to be part of a community that wants to help each and wants to see you succeed. My advice would be to ask questions, ask questions, and ask more questions. You’ll even be taught how to ask the right questions. The Command Shift team is really helpful and supportive and one of the main reasons I joined this bootcamp and not another one. I feel genuine sincerity from them about helping me switch careers. I'm starting again on Monday after the Christmas break and while it feels overwhelming at times, I'm looking forward to it because it's another step toward the life that I want. Be excited and be prepared to put in the work. By joining the bootcamp you've already demonstrated your commitment to your own development. Best of luck to you my friend.

So that’s it for now. Learning JavaSript is like learning to ride a bike. In the rain. In a headwind. I had that thought while experiencing the same conditions cycling at the weekend. The sun came out for a bit which was nice but it wasn’t too long before I was cycling through, what felt like a waist-deep puddle made of thick and unforgiving treacle. That’s what learning JavaScript feels like to me. Never taking those sunny spells for granted. I want this year to be the launchpad that changes the trajectory of my life. I'm tired of always being broke. I'm tired of being unfulfilled in my job. I’m tired of not having financial clout. I’m tired of not having a place to call my own. And I’m tired of not being monied enough to get a dog of my own that I’ve already assigned the name ‘Monty’. That's my 2023 motivation.