Alisa's Odd Journey

What I learned from my most recent coding project

To be honest, I lost track of time since I have been accepted into the coding bootcamp. A lot of sad things happened during this time, including the COVID-19 pandemic that is still spreading in the most shockingly rapid way possible (to which I have to say, stay at home and wash your hands!). Although it is important to acknowledge the unhappy times, it is equally important to stay focused on positive matters in life. We are all different, so my definition of “bright and delighting activities” might not align with yours and vice versa. Nonetheless, I hope we all agree that in difficult times like this we should try and do things that bring joy in our lives. It could be anything that comes to mind! For example, recently my mom washed our cat and, honestly, I don’t remember when was the last time she smiled this wide. If such an ordinary thing made my mom smile, I am sure that there is something like this for everyone.

As for me, the thing that made me the happiest is the most recent coding project I finished. It is a straightforward quiz that recommends the user an anime to watch based on five questions with five options. Sounds easy, right? That’s what I also thought up until the point when I had to write my very own JavaScript file for this quiz to work. It was nerve-wracking and very stressful. At that moment, my familiarity with JavaScript could be described as a third-grader trying to do some advanced university-level calculus. But now, after finishing my beloved project and spending over 40 hours on it, I can confidently say that I graduated from the third grade and went straight to the tenth. It might not be impressive but it sounds like a big leap forward to me!

The only thing to keep in mind is that whatever is discussed, described or mentioned in this post is a highly personal experience. Most issues that are brought up in this article fit my learning and working pace, which means that they might not be appropriate for others. While on the subject of pace and tempo, it is crucial to mention that I spend an almost absurd amount of time on ideas, projects, and other doings if I am really passionate or highly obsessed with them. For instance, back in my third year of college during my internship, I was asked to carry out research about Africa requested by the higher company management (CEO and COO). The main priorities were to document all the necessary details about specific topics and come up with a proper way to present the report to the management as well as other team members. It was highly critical to make the report coherent and simple since it could be given to other bodies who aren’t familiar with the theme of the research. To sum things up, regarding the research nature being something that appealed to me, it took me one week to investigate, learn, build, and ultimately produce the finished 40-page document.

Coming back to the above-mentioned point, I tend to go all out and wade through mental blocks by simply working hard. Every so often it can be really unhealthy. At the same time, it diverts attention from my psychological problems such as anxiety or imposter syndrome. One could argue that this tempo of carrying out tasks is a double-edge sword and I couldn’t agree more. For that reason, I’d like to point out once again that everything written beyond this prologue is strongly based on my individual technique. Despite the contrary, I hope whoever is reading this post will retain something useful for themselves.

So, to finally bring the introduction to its conclusion, in this post I will share with you 5(ish) things that I learned from doing my most recent coding project. The first topic will be about how I figured out the way of slowing down thoughts and narrowing down ideas. Next, I will share my experience with focusing on only essential things for the project. After that, I will describe how I took my breaks and why those breaks helped with efficiency. Breaks then will transition into revisiting and reviewing materials. Following this, we have the last section named “Asking For Help: It Is Okay To Do it. Seriously.” dedicated to seeking assistance among mentors, peers, and other experienced people.

Slowing Down & Narrowing Down

Once we’d been given the criteria for the third project, I felt puzzled. You might think, “The criteria were difficult to meet?” or “Was there something contradicting?” but none of those questions crossed my mind. At that time, I’d been anticipating a project that was not based on the idea of “your boss gave you this, work on it”. I was really excited to create an app, a game, a quiz, or whatever it might be built on my own concept. I of course also understood why we did the first two projects based on someone giving us a task, but I was eager to take the next step into “adult coding life”.

Despite that, we are back to square one. I felt baffled. Confused? Excited! But, again, confused? And I felt that way because my head got overwhelmed with a countless amount of possibilities. Should I make a game? Or maybe just a soundboard? But the quiz also sounds nice… The most bewildering thing was that before the project was distributed I was settled hard on the quiz concept. However, since we officially were allowed to carry on with our coding adventure by doing this project, I fell into the infinite rabbit hole of opportunities with opened doors. I told my peers that I was settled down on this project concept but deep down I still wasn’t sure about what I would be doing.

During that time we were given a scope of approval to work on and, since COVID-19 hit really hard, we were told that our college will go on a three-week break until further notice. It meant that our scopes could be approved during the break and I felt relieved. “There is absolutely no way”, I thought, “that I could’ve finished the scope so soon". I didn’t feel discouraged or daunted, don’t get me wrong. It was a good feeling or relief, refreshing and cheerful. So, now I will (finally!) explain what I did to slow down my thought process and narrow down ideas and concepts to end up with only one: a quiz that gives the user an anime suggestion to watch.

To begin with, it is inevitable to mention the learning styles (there are plenty of theories surrounding them). According to the research, there are over 70 different models that focus on explaining and narrowing down the types of learning. However, for the purpose of this post, I will narrow it down and mention more general styles: visual, auditory, and kinesthetic. Visual type refers to people learning through images, PowerPoints, maps, and overall graphic aids. Some folks prefer auditory means of learning such as reading out loud, discussions or speaking to peers. Others (like the person who’s writing this post!) are hands-on learners or kinesthetic students, meaning that they study and learn better by physically doing something and working on projects.

Since I am the kinesthetic type, I tend to have trouble sitting still for long periods and lose concentration because of that. Moreover, if we bring the MBTI concept into the discussion and add the fact that I am an ISTJ, it will explain the fact that I tend to succeed in learning some subjects through practice and repetition supported by clear objectives and instructions. By the same token, admitting that kinesthetic learners are bad with auditory clues, we tend to do better with visuals. And this is the main point of the first topic discussed in this post. What do I mean by that? Let me explain!

Thanks to the most recent project, which left me at first confused with my own thoughts, I learned how to incorporate another learning style into my routine. To slow down my thought process I mapped everything that I wanted to create for this coding project on multiple sheets of paper. I used several sheets because after crossing out ideas I would put the remaining ones onto the next piece of paper to keep narrowing concepts down. This visual and at the same time hands-on repetitive technique helped me greatly in eliminating ideas that did not meet some criteria that I outlined for myself. The process of narrowing it down let me take it easy and conversely, by taking it easy, it was relatively effortless to reduce the number of ideas I had to focus on.

Therefore, the main takeaway of this section is how important and essential it is to understand what is your true nature when it comes to learning and studying. After understanding what works best for you, it will significantly improve not only your efficiency but it will also allow you to focus on 3 to 5 main ideas, concepts, or whatever it is you are working on, at a time. Based on my personality and my way of doing things, it is a true blessing to keep track of such a small amount of topics in a moment since my brain is continuously thinking and sometimes refuses to lose its grip. After finishing the project, I basically learned how to trick my brain into staying cool in situations like this. Hopefully, after more practice and hands-on experiences in the coding field, my brain will become forever calm!

One-Tasking

As I said above, for the third project I have outlined my personal criteria. Some of those included my passion for them, my level of knowledge about the concept, how relevant it would be for the users and many others. These benchmarks outlined in my head (and on sheets of paper) eventually reminded me of the Five Ws approach. I treated these criteria as checkpoints to keep myself on track and not wonder whether or not I should have chosen a different application to create.

I also noted that before we could do anything about our projects, we had to have our scopes of approval, well, approved. Since I tend to go all out while working on things that I am highly invested in, this process of focusing on scope helped me a whole bunch. Although I am not sure if I could tell the general audience about concrete things in the scope, I will say this much: regardless of how or what kind of technique you use to work on projects and other things, it is necessary to stay focused on one project at a time.

Multitasking is praised by many employers all around the globe in the current day and age. However, I now believe and fully support, that when you are in the process of learning, for instance, how to properly write a sentence in Japanese, how to do a backflip or how to improve your soft skills, it is not recommended to multitask. Basically, don’t get distracted, keep being in the moment, and literally focus on one single task. Otherwise, when you are learning the basic Japanese grammar structure and you are also listening to music at the same time, you could potentially get distracted and miss an important point. As an example, as I was writing the JavaScript file for my project, I had a show on the other half of the screen and I got distracted by it at least five times over an hour of coding. And at some point, I even typed out what the characters were saying without noticing.

So, don’t be like past-me. To increase your efficiency and maximize your performance, it is essential to stay on track and keep in mind only one task at a time. Unfortunately, I cannot give you the specific technique that will help you but this article provides a general idea of how to go about one-tasking.

Taking Breaks

Isn’t it self-explanatory? Taking breaks is essential for any kind of work. That’s why you get breaks in school, college, and the workplace. However, it mostly happens when others tell you to take a break. How about giving yourself a break?

Before working on this project, I truly never appreciated the power of breaks. I always thought they slowed me down and I was scared to forget everything I had learned so far, although the breaks weren’t even that long. It made me think that I was being lazy although at the same time I would nearly collapse from the amount of work I’d take on and carry on my shoulders. To shorten the story, I would guilt-trip myself into thinking that I am being sluggish and eventually it will be impossible to achieve anything in this life-span because I distract and interrupt myself by taking breaks. Moreover, I found that getting back into the routine was extremely difficult and hard to do.

Thankfully during the project I’ve learned that there is nothing to be ashamed of or feel guilty about when taking breaks. It is normal to let yourself relax and distract yourself from work. Therefore, since I started working on my project, I’ve decided to take at least one day, the whole 24 hours, as a break per every 5 days of constant work. It meant that I would not be thinking about, working on, researching, looking into the previous lectures about coding at all. By at all I also mean zero thoughts about anything remotely and directly related to coding. I did not allow myself for one day to let my brain divert to thinking about HTML markup, functions, arrays, CSS grids or literally ANYTHING about coding. This must have been the hardest thing to learn throughout the project because I felt highly insecure about my JavaScript knowledge and capabilities. Many of my bootcamp peers have taken some JavaScript courses in my college before or learned it through other online courses. Meanwhile, at that moment I knew only basic JS and none of the advanced or intermediate techniques.

It was a difficult time for me, mentally. I could not let go of the thought that I am being lazy and me being highly competitive did not help either. However at the same time, I understood how nice it might feel to be able to relax for a day and play games or watch anime as a distraction with thoughts about stressful things in the back of my head, but truly enjoy the break. Nonetheless, I did. I made it! I did not think about coding for one day, and I felt really grateful for those twenty-four hours because I could sort out other issues I had too. Yet the thing that I felt the proudest of is that I was not discouraged and not unmotivated about the project. To be frank, I have never been excited in this way before. I was excited to work on the project again not because it would help me to stop feeling guilty but because I was refreshed and energetic. It wasn’t a mentally unhealthy comeback but a positive, definitely healthier one.

Hence, the moral of the story is that it is completely normal to take breaks and there is nothing to feel embarrassed about. It is a proven fact that breaks help your brain. Breaks are known for improving your mood, preventing motivation fatigue, increasing creativity and efficiency, and overall improve learning. Unfortunately, I learned it the hard way, so hopefully, other people who read this post will not make the same mistake.

Revisit and Review

As mentioned previously, I’ve learned that there should not be any bad connotations with taking breaks. However, before taking the actual 24 hours of a break, I’ve decided to stop working on my project. The major reason for that being that I got stuck on the JavaScript file.

By this time, the scope has been approved and I (somewhat) happily started working on my beloved recommendation quiz. I outlined all of the questions with all of the possible options, anime that could be potential recommendations, the design was finished as well. Next, I finished up my HTML markup and a bit of CSS to make it look a bit prettier. “Well, time to do some JavaScript!” I thought to myself only to see my dreams shatter in front of my eyes once I got stuck in the first ten lines of code.

I panicked. I knew that I had nearly two more weeks on the project. Then, I calmed down a bit and started googling whatever I had issues with. I glued the shards back together and my dream looked somewhat the same. Do you want to guess what happened next? Yes, the dream has been shattered again because I could not read almost every piece of code that I had been coming across. I felt incredibly discouraged. I was thinking to myself that I should’ve paid more attention in class, asked more questions, taken more notes…wait…notes!

Since the idea of taking a healthy break was not in my head yet, I decided to step back from the project and do the research about JavaScript and JQuery. I started from scratch. I looked into the very first lectures we had, looked through my notes, re-typed those notes, looked into exercises, re-did those exercises, watched a bunch of YouTube videos and so on. By doing these steps, I re-learned (pun intended?) what the true power of revisiting, reviewing and repeating is like. After going up and going down the same stairs I noticed that there were some things I missed. It helped me to pay closer attention to details when learning something new or revisiting the old concepts. Although I was going through the same material and re-doing exercises, it really helped some concepts stick.

Asking for Help

I mentioned above that my nature is very competitive. Moreover, the environment that I grew up in was highly encouraging me to be better than others. However, it wasn’t done in a healthy manner. Rather than being the best based on your own skills and not showing off but being appreciative, the opposite was promoted. It was not really about the skills you possess but wealth. Therefore, it was okay to brag about how expensive your car was that you got last week and how your kid is carrying the most expensive phone at the time.

With all of my power I had at a time, I was trying to rebel against this sick and foolish idea of competitiveness. But, when you’re a kid and your brain is just starting to develop, you can’t help but to get a bit spoiled with an unhealthy mentality. I have never bragged about money my family had but rather I stopped asking people for help. To be honest, I had never asked people for any assistance because it was carved into me that asking for help is a sign of weakness. Fast forward a couple of years, and I moved to Canada where regardless of what I would rather do, I had to ask people for help. It was hard, incredibly hard. After asking for help, I felt like I owed something to that person. After asking for help, I felt weak. I felt like I was being a burden although the only thing I asked was “Could you tell me where the subway station is?”.

As for the project, there were multiple times I was stuck on many different issues. Sometimes it would drive me insane because I couldn’t find a solution to why my function wasn’t running or why my items weren’t aligned in the middle. Thanks to finishing the project, I started to appreciate the fact that there are so many people that know more than me and are willing to assist once they can. I am still working on this in order to be a mentally healthy person, but since finishing the last project, I was reminded again that it is okay to ask others for help when you feel lost or stuck. Seriously. One might say that being able to ask for help is a sign of emotional strength. Basically, in order to feel invincible, one must be vulnerable and brave enough to ask for help. To ask for help is to be emotionally mature.

Finale

To conclude this ridiculously long article, here are five things I have and continue to learn every day after finishing the project. It’s been a wild ride since the beginning of the bootcamp back in March. It feels good to see that not only my technical and soft skills are improving but I am also starting to better understand myself.