How to Stay Motivated While Learning to Code

June 25, 2021

Thank you for joining me today for this new season of A Cup of Code Podcast! I’m super excited for Season 2 and I’m looking forward to sharing all that I’ve worked on in between seasons. I hope you will subscribe to this podcast and follow me on social media so you can stay up to date on future episodes. You can follow me on twitter at @Cup_Of_Code or on Instagram at acupofcodepodcast.

Before we get started with today’s episode, I’d like to give a quick podcast update….for those of you who’d like to sport some awesome podcast swag and support this podcast, check out my new store at You’ll find everything from t-shirts in several colors, to coffee mugs and even cloth face masks! I’ll be adding more designs frequently so be sure to check back often! You can also find the link to the store in my bio on Twitter and Instagram.

In this first episode, I’d like to talk a bit about how to stay motivated while learning to code. I know that learning to code might seem like a daunting or overwhelming task at first. Or you might even feel like you don’t know where to start. But please know that there is help and it will get easier with time, practice, patience and persistence! Staying motivated while learning to code will help you stay steady on the path of reaching your goals and keep you true to the reason you started learning to code in the first place. The first step on that path is of course deciding to learn to code! Congratulations, you are in for an exciting and interesting adventure. There are so many decisions to make along the way, but coding can lead to a rewarding hobby, a career in the tech industry, or even give you skills that you will use in other career paths. No matter where you decide to take your coding experiences, simply deciding to learn to code is a big step for a lot of us. You may feel as though you are tackling a giant or embarking on a long roadtrip….my goal here in this podcast is to help you enjoy that journey.

Everyone will have different expectations of what the learning process will be like and we each will have different reasons for learning to code… whether it’s gaming, creating the latest and greatest app, getting a 6-figure job with a big tech company, or simply trying something new, building a website for your own business, or maybe wanting to gain skills that you will use in another job. With that in mind, what is the most important thing that made you decide to learn to code? Usually, that is the one thing that will help keep you focused when coding gets hard. I usually write down my goal in my notebook or on my computer and re-visit it often. I’ll often make a list of what steps I need to take to get to that goal. It helps me remember why I started learning to code and quite frankly, remember why I started this podcast. Because I started this podcast in order to offer help, advice, and instruction to those of you out there who are learning to code. Now that’s a whole other topic for another episode, but if I remember my ‘why’, I’ll let go of all the rest of what keeps me distracted from attaining my goals. Staying focused on your goals is super important. This will help you stay motivated when it feels like learning to code is more than you bargained for.

So what is motivation? In short, motivation is the ‘reason’ why you’re doing something. It is that reason that keeps you going and accomplishing whatever task it will take to get to your goal. Just like a sports athlete is motivated by winning a game or the prize at the end of the season if they do really well, it is these goals that make them want to work hard and do whatever it takes to get there. Coach Pete Carroll of the Seattle Seahawks is my favorite football coach of all time. He knows how to motivate these young players to be the best that they can be at their sport. He is their biggest cheerleader. I don’t even begin to know what his secret is to motivating these guys, but the way he ignites their fire individually to work so hard towards their goals, it is truly inspiring. My thoughts here might be a bit biased as the Seahawks are my team when I’m watching football. I am a big fan. But more than just a fan, I like the philosophy of hard work. That’s a motivator for me. I love hard work and a challenge. And that hard work is what is going to get you moving down the pathway of learning to code. Coach Carroll, your teacher, your mentor, a friend or your parent can inspire you and encourage you but you are the one who has to do the work. You have to put in the time, the effort and have clear decisive actions that take you in the right direction.

I talk about learning to code as a pathway or a journey because it really is a journey. You don’t learn everything about code all at once and it is certainly not a 100-meter sprint. Learning to code is more like a marathon and once you have completed your first marathon, there is always another race to train for and something more to look forward to. That also is a motivator for me. Conquering the next challenge and the next makes me feel accomplished and successful. And I enjoy what I learn along the way. For a beginner, it can feel like everything is moving so fast. Learning to code for me definitely has been more of an endurance race. During the hard times, it is that goal (my ‘why’) that has kept me focused on what I had to do to get there. And I enjoy the process.

One reason for me to learn to code was that I wanted to create a website, on my own without using a template. I didn’t want to just copy and paste text and photos into a template that I downloaded or use a website builder. I already had a website with a template, and I felt as though it was really hampering my creativity with how to design the webpage. Now, if you are listening to this podcast and maybe you have a used a template or you have used a website builder, by no means am I saying that there is a right or wrong way here. There is absolutely nothing wrong with using a template or another site to help you build/publish your website, especially for those who don’t have the time or desire to learn to code. Do what works for you! But there is a certain amount of freedom of design and layout in building a website from scratch… and that is what I was looking for. Sometimes a template or a website-builder doesn’t afford us this kind of freedom. For me having the freedom from a template was a big deal. It meant to me that I could adjust the layout freely, create any look that I wanted on my page, learn to create cool features like parallax scrolling or simple animations….the possibilities are really endless. I love looking for new and exciting features to implement on my websites. As I started delving deeper and learning to code, my goals expanded into developing and maintaining several websites to becoming a full stack web developer. But in the process of learning and feeling excited to go further with code, I didn’t lose sight of my original goal. I knew that I had to work hard through those baby steps first, even before I worked on my bigger goals.

In addition to creating my own web sites from start to finish, I no longer wanted to have to rely on others to help me publish my website. Because I didn’t know how to do it myself from start to finish, I was relying on others to set up the FTP uploading to the server or set up my domain names. I really wanted to learn how to do all of this for myself. Learning to code gave me the freedom I was looking for and was the answer to all of my concerns. So when the opportunity presented itself, I dove in, head first into learning web development, because of course that is what would teach me how to build a website. I have to say it felt as though at first that I was jumping into the water and telling myself to swim without knowing how. I was a bit skeptical that I was going to enjoy learning to code at all. I didn’t know if I would really love it or if I’d hate it. I figured I’d try it out and I proceeded to try a free course online with HTML, CSS and Javascript. Those first lessons were just enough to dip my toes in and see what I thought of the whole idea. Because even though I wanted to build my own website and learn to manage it myself, I didn’t know at first if this was really the avenue for me. But when I got started, I fell hard and fast and just like a good book, I couldn’t put it down. I spent hours every day reading and typing and going through the lessons. And I realized there was so much more in to learning to code than building websites. Because I loved it so much and I was gaining valuable skills along the way, the success I was having kept me motivated me to keep going, keep learning, and keep coding.

One thing that made me feel overwhelmed though when I started learning to code was, I felt like I had to learn every new library or framework that would come out. I made a list on my computer of new things I wanted to learn and that list quickly grew in a very short period of time. I thought that I would be able to learn all of these right away. It is common for new coders to feel like they have to chase every new shiny framework or that new language that everyone is all abuzz about. But the truth is, it is best to stay focused and master everything you can about the language you have chosen to start with, before you move on to something else. This will also help you stay motivated because you aren’t pulled in every direction, getting discouraged that it’s overwhelming or coming at you too fast. It’s impossible to feel like you are accomplishing anything unless you master and complete something. And like I said earlier, you will have to take those baby steps in order to master your subject. It’s okay to start small and learn the basics.

In my opinion, I feel that the tech industry is moving too fast, and while that’s all fine and good for those of us who want the latest and greatest in technology, I think there are a lot of demands placed on developers to be fast, be on-call 24/7, or to practically be married to their job and I think a lot of newbies and seasoned coders alike are struggling to keep up. We have to remember that developers are human, or as the saying goes… they ‘are people too’. Computers, software, and websites are only as good as the human who works on them. I think this kind of culture not only puts too much pressure on the people already in the industry, but it lends to the frustration that beginners feel, that somehow they aren’t good enough or that they are taking too long to learn to code. Many coders are tempted to give up. But it doesn’t have to be that way. What helped me to stay motivated when I felt overwhelmed was to set small realistic and attainable goals. For example, I decided I wanted to complete a certain difficult algorithm challenge in 2 days. Or I wanted to complete a project I was working on in 3 weeks. Or I decided I wanted to work through some Node.js challenges in 1 weeks time. I also stuck to my preferred language (JavaScript) so I could really master the language. As I set these goals, I’d write them out on my calendar and then worked as hard as I could to complete these challenges by the time that I had set. Then I’d mark the date that I’d finish the goal I was working on. It helped me visualize that I could finish a project by a deadline, but it also helped keep me focused and grounded to what I was doing without feeling pressured. This kept me motivated because I could actually see the progress I was making. It’s all about your mentality and how you approach learning to code.

Also, whether you are a seasoned developer or just getting started, it is really important to give yourself a break. Taking breaks is proven to help reduce your stress levels, improve productivity and boost your brain function. I have a tendency to over-think something I’m working on or to have tunnel vision until the project is complete. While that can be helpful in a lot of ways, I realized this was just stressing me out. If I got caught up in working too long and too hard on a bug in my code, I would end up just staring at the screen and not making any progress. I would only feel more frustrated instead of finding a solution. But if I would take a break, the difference I would feel when I came back to work on a project was amazing. And most of the time, I’d mentally figure out the solution to the problem as soon as I would go take 10 or 15 minutes to do something else. Then when I would come back to it, I’d hit the ground running because I was not burned out already from exhaustion. I consequently had much more productive coding sessions. This in turn kept me motivated because I was actually accomplishing something each time I sat back down at my computer. The code I was writing was more clear, concise and flowed effortlessly.

I’m sure some of you have heard of this already and maybe have even built a ‘Pomodoro Timer’ in your coding lessons. It is more than just a timer. It’s more of a concept. This concept I learned from my mom when she was homeschooling me while I was growing up. She would have me work on my studies for 30 minutes at a time and then take a 5-10 minute break. It was a much more productive way to get through all of the subjects I had to cover in the day rather than trying to work through long study periods with minimal breaks. And by the end of the school year, lo and behold, I’d have all of my lessons and books completed and all of my work to show for it. It has been an invaluable lesson that I have taken to heart and still use today in my work routines. This technique was actually developed by a university student in the 1980’s, but it was my mom taught me this technique in order help me be more productive throughout the school day. And speaking of routines, establishing a routine is another thing that has kept me motivated. Whether it is a certain time of day that you’d like to work on code, or maybe it’s you want to spend an hour on a project every day, establish a routine that works well for you. Having that set goal will give you a gauge to see how much you are progressing each day. For me, I always do my best work in the wee hours of the morning. I sit down with a cup of tea and then a cup of coffee and I get busy on my projects. Its quiet, and it’s just me and my computer and I accomplish the most at that time. When I’m done, I can look back and see my work and what I’ve accomplished for the day, and I can feel better about moving on with the rest of my day because I set that routine for myself. Then I am motivated to come back tomorrow and do it all over again because I accomplished my goals for today.

In conclusion, if you’re worried that maybe you have started learning to code too late, after most ‘college-aged’ students or that you didn’t take computer science in college, don’t fret because it is never too late to learn to code! There is no age limit and everyone can do it. There are plenty of free and paid coding lessons online that will help teach you from the basic concepts to very advanced coding challenges. I have worked through several of them myself. Many of them are structured so that you can learn on your own time, so if you’re a busy parent or busy at your job, there is no pressure to meet a certain deadline. I wanted to take advantage of every lesson path that was available to me online, so that I could still work, run the family farm and do my daily routine all the while learning to code. I don’t necessarily have a favorite course because each one helped me understand to code better in some way or another. I would encourage anyone who is wanting to learn to code to research what courses are available to you and take advantage of as many opportunities as you can. There is no harm in learning or going back to school. Do what fits your life and your hopes and dreams.

One really valuable resource that I have found is Ed2go works with community colleges to get college courses online and they have awesome self-paced or instructor led courses to give students the skills they are looking for. I am taking classes from my local community college online and it is really amazing that these kinds of classes have been made available. Feel free to check it out in your local area and see what courses you’d like to take! Learning more advanced techniques and accomplishing more really keeps me motivated as I progress in my own coding journey. Regardless of where you are at in your journey of learning to code, I hope above all that you can find joy in your journey and I hope that this podcast has answered some of your questions or helps you get started and keeps you on the right learning track for you. Keep going and keep practicing. Because practice will keep you motivated too as you gain better and more advanced skills! As one saying goes, ‘You earn your trophies at practice. You just pick them up at competitions.’ Until next time, stay safe, stay healthy and keep on coding!

GitHub CodePen

Created with HTML5, CSS3, Bootstrap3 & JavaScript