Let’s face it: While programming is usually fun, sometimes it can get really boring. Sometimes you just hit the wall, forget the underlying purpose, and eventually burn out.
You can end up with days or weeks of not programming — doing everything except sitting in front of the computer. If programming is your main source of income, then these off days can become overwhelming and eventually lead to giving up programming.
So the question is: How do you keep yourself productive and active in programming? How do you make the journey enjoyable during those times when you’re finding it difficult?
I’ve had moments where I just wanted to give up, questioned if it is the right path to take, evaluated other job fields, and so forth. Personally, I’m the type of guy that finds it difficult to sit down in front of the computer for hours.
Here are some of my secret ingredients to make programming fun again if you ever enter a state of boredom. This is not a universal law — just the things that have worked for me so far. However, there are a few things you can still take with you from this article.
Here’s what we’ll address:
- Music is underrated
- Too many things to do
- “I can do this” mindset
- The art of learning
- Take breaks regularly
Music Is Underrated
Programming is a psychological sport. Even though you don’t jog or lift weights, the thinking process of solving problems drains your energy.
In addition, you go through many emotions — emotions that feel good like when you manage to solve something or emotions of stress and anger because you can’t find the solution. The majority of programmers face all of this.
A great way to handle these emotions is to listen to good music — not any type, of course, but the ones that get you excited and help you think properly. For me, I like listening to old-school music from the ’80s and ’90s. Music is one of the few things in the world that can change someone’s mood within seconds. Listen to something that makes you happy and brings up good memories.
Tip: Listen to music that helps you think, with few beats and vocals, in order to help you concentrate for longer periods. Too much noise will just make you tired quicker.
Here are a couple of playlists on Spotify I listen to Anjundeeep New Releases, Night Rider, Synthawave from Space, Chill Tracks, and Downtempo Beats.
Too Many Things to Do
You start to panic thinking of all the things you need to implement. And before you know it, you’ve done nothing but overthink.
Let me begin by saying this is fully normal. A construction worker has the same problem — as do most jobs out there.
When these thoughts enter your mind, don’t follow the emotions. Instead, use a simple trick: Focus on the thing you currently work with (if it gets complicated, make some drawings). Sometimes the issue is that we have too much in our head and too little on a paper. A simple pen and paper help to map things into perspective by clearing your head. Another thing is to simply take a short 15-minute nap.
Tip: If you have too many things to do, begin to prioritize what’s important and what’s not. Ask yourself this: Do I really need to know this? If yes, then what value does it provide?
“I Can Do This” Mindset
This type of mindset “is a good thing to have in terms of taking responsibility toward solving problems.
However, you must realize you can never learn something fully — there is always room for improvement. Asking questions is a great way of getting insight and ideas, especially if you work in an organization. The ones I’ve seen doing great in companies are those that ask questions — questions that are well formulated.
What you gain from reading articles or watching videos is great, but what you gain from asking is unique knowledge based on experience. Programming is a job, and it’s about sharing and helping each other out. Together we reach goals much faster.
Tip: When asking a question, make sure you understand the problem. Building knowledge on top of existing knowledge makes it easier to learn stuff. But don’t let this stop you from asking — sometimes we know nothing, and that is fine.
The Art of Learning
There’s a saying: When you truly learn something, you realize how much you don’t know.
Learning is a process that depends on time through consistent discipline. We live in an era where we think just because we watch some online videos, read articles, or listen to talks we get smarter.
But unfortunately, that’s not the case. Knowledge is built upon using what you’ve learned and put it into practice. Want to learn how to use React, Angular, or whatever framework? Build something simple.
Tip: If you struggle with learning stuff, here’s an article I’ve written.
Take Breaks Regularly
In my early days of programming, I had this understanding that programming was about locking yourself inside a dark room and coding all day. Similar to what we see in movies these days. However, I gradually realized that programming requires taking breaks, similar to what athletes do in most sports activities like boxing, soccer, basketball, and so on.
Think of the brain like a car engine. And what does an engine need? It needs oil and petrol to operate right? For you, that means you need to eat healthy food, drink water, and take breaks in order to perform a good job. Resting the mind leads to creative thinking, and creative thinking leads to better problem-solving.
Tip: Make sure you get enough sleep. This is a critical factor most programmers overlook.
In general, programming is a job or a hobby that can be boring sometimes. I’m not gonna lie and say it’s all fun. It can drain your energy and motivation for a lot of things in life.
But it doesn’t have to be this way. In most cases, it’s not about the code or the challenging problems but the mindset toward it.
So listen to what you really want — sometimes we just need a short break, or sometimes we just need help from someone. Don’t hesitate to ask.
Alicia Newman is a 29-year-old programming professor who enjoys working with computers, and solve programming challenges. She is an Australian citizen and has a very exciting and bright personality. She is currently a PhD candidate.