Frustration in coding
Hello everybody, welcome to the Journal As a Developer For the first article, we want to talk about the most common topic for programmers that is Frustration in coding. Imagine It’s a sunny day and you are energetic in the morning and you want to write a simple python script. For example, you need to extract some URLs from some badly formatted HTML. You will probably say. yay, I want to do it in 1 hour. Let’s start.
It’s easier to use ‘beautifulsoup’! package not found!
OK, import beautifulsoup.
Ok, how do I get the package (spend 15 min reading online).
Ok, pip install beautifulsoup.
Pip is not recognized as a valid command.
Ok, how do I install pip?.
Spend 15 min reading online.
Ok, add the environment variable to the PATH - what’s my path? Isn’t it already in there? echo %PATH% (yes, it’s there but it still isn’t working).
Ok, re-install Python.
See?! Yes, it was a simple example of how you become frustrated very soon! [ it was a real story btw :)] In case a proficient software developer ever tells me that he/she has never been baffled by programming, I won’t believe him/her. There are numerous ways of getting blocked when programming. So many ways your code can fail to achieve what it’s supposed to achieve. Dissatisfaction is at the center of the work of programming. How can we deal with it? Well, the way I do it for myself at times like this is that I go around finding the root of the problem to work on.
I found a very interesting article with the title “Exploring Causes of Frustration for Software Developers”. This article lists the reasons for frustration in programmers, of which I have listed three of them.
1. Fear of Failure The obsession over the fear of failure and not succeeding sets back individuals and overcomes them in the form of frustration. “It builds a strong sense of anxiety. I feel like I may not solve the issue...”
2. Internal Hurdles Some respondents acknowledged that they were the cause of their frustration. These respondents knew they have been putting this pressure on themselves; some pressures even led to fatigue. “The problem that I faced with frustration I tend to procrastinate...”.
3. Limited-Time Respondents described a limited amount of time allotted to work on projects. In the short amount of time given it seems unreasonable to make significant progress and make lasting impressions on others on a team. “I had to deal with an ambitious project in a limited time frame." After knowing the root of the problem, we have to talk about the possible solutions for them. Here we will bring some solutions:
A- Live with It Frustration is normal. You have to accept it! Attempt to keep in mind, to begin with, that you’re doing things that not everybody is able of. You might not manage to deal with the problem at hand right now, but it’s alright; you can fail. Don’t necessarily see failure as a bad thing! This is not the end of the world. It’s just an opportunity to do better next time. Second, you can view frustration as a sign that you’re getting outside of your comfort zone. If you want to learn stuff, you’ll encounter problems and most probably get stuck at some point. But you’ll get over it in the end. It will make you stronger and wiser. The process of learning things takes time. Moreover, programmers should never stop learning!!, so don’t burn yourself out trying to assimilate everything in one shot just to be finished with it. Finally, frustration just doesn’t help. At all. On the contrary, it prevents you from correctly organizing your ideas and thinking clearly. The same happens in gaming, for example. The more you lose and you don’t accept it, the more annoyed you get, the less lucid you will be to win the next game. The moment you realize that frustration can only reduce your proficiency to solve a problem, you’ll have done half the job of dealing with it.
B- You are not Alone
First, there are most likely a lot of programmers who have already encountered the same issue. Use the internet. As a beginner, it takes time to find the proper solution. After some practice, you become effective at finding help on Google. However, it’s important to try not to blindly copy snippets of code from GitHub. You shouldn't avoid getting frustrated; you should avoid seeing it as a bad thing. Frustration is a sign that you're going outside of your comfort zone, which is essential if you want to learn. In other words, I find comfort in the thought that this frustration shows that I'm learning (or at least is a necessary condition for it). This doesn't mean that it won't suck from time to time and that you'll want to give up. You have to keep in mind that in the beginning, there's a frustration barrier you need to get through. You need to learn so many things, and since, as I said, true learning implies frustration, you'll end up being almost constantly frustrated. In other words, a little bit of frustration is good, since it's (probably) a sign that you keep making progress. I find comfort in the idea that this only lasts for the first few days of learning a skill (although this depends on how often you practice and how efficiently you're learning). So, to summarize:
● The initial frustration overload doesn't last long; you just need to get through it. After that, you can start building amazing stuff.
● A bit of frustration every once in a while is not bad. It's a necessary condition for true learning.
More Advice:
Breakdown goals
With goals, you need to keep two perspectives in mind. The long term and the short term. While that long-term goal will motivate you initially, you need to aim for smaller wins to keep your spirits up in the long run. That’s why breaking up big long-term goals into smaller short-term goals is so important. For instance, you can challenge yourself to build an online resume with HTML to start with. You can then take it a step further by using CSS to make it look pretty. By breaking goals down like this, you’ll feel a sense of achievement every step of the way.
Keep coding fun
Don’t let your passion for coding turn into a stressful practice. If you get stuck somewhere, take a step back and mix things up. For example, if a JavaScript exercise is puzzling you nonstop, try creating some memes with HTML and CSS instead. Once you’re feeling good again, give that JavaScript exercise another shot. Your subconscious mind’s ability to solve problems in the background will surprise you.
Keep track of your success
Keeping track of your success and celebrating little wins is as vital as making progress. The great news is that by breaking down your goals, you’ve as of now prepare yourself for following your success, then sit back and ponder your achievements. You’ll get an instant boost of inspiration each time you’ll do this.
Conclusion
The burst of inspiration at the beginning of the projects is short-lived. That’s why you have to put these inspiration tips into action as soon as you can and believe in your path and your power. If you enjoyed this post, give your friends the gift of motivation by sharing it with them.
References
https://www.codingame.com/blog/dealing-with-programming-frustration-the-right-way/
https://getmimo.com/blog/keep-coding-7-tips-to-keep-your-motivation-even-when-it-gets-tough