What to do when you feel stuck.
Tags: productivity, learning
Published: 2016-11-04 13:13:18

---
title: What to do when you feel stuck.
published: true
description: How I've learned to move forward as a developer.
cover_image: http://i.imgur.com/g9dSPpl.jpg
tags: productivity, learning
---

Every developer has felt stuck at one moment or another. Sometimes we feel left behind by others. I believe this is due to how quickly things are changing in the tech industry. Rather than fear change, we should embrace it. Over the years I've learned how to turn the feeling of being stuck into a growing opportunity. Here is how:

## Work outside your comfort zone

The biggest mistake I've ever done is to label myself as a `$language` developer. The reason this was a mistake is that it reduced the amount of attention I paid to other languages and technologies. A real example is the Cambrian explosion going on in the Javascript community. I should have focused less on Python and more on Javascript earlier, but I did not. I was comfortable knowing Python, and knowing that the Python marketshare was growing. Over time, I started to feel stuck with Python, because there are things I wanted to do with Python that I could only do with Javascript (in terms of web development). That made me feel like I was stuck. The fix was simple. I started developing my Javascript skills. It took a little bit of time until I realized that the progress I was making in Javascript removed the feeling of being stuck.

You don't necessarily have to learn another language. Maybe you are a Java programmer with Java EE experience. You can work through the feeling of being stuck by learning something new within your ecosystem. Maybe you learn a new unit testing framework. Or start listening to podcasts about Java. Anything that will provide a new and different perspective will do. The feeling of being stuck comes from doing the same thing over and over. We need to vary what we do in order to challenge ourselves and grow. The feeling of being stuck is simply the feeling of halted growth.

## Share with others

The biggest benefit I get from using social media and web forums is that I can share with other developers and learn from that they are doing. One great example is Hacker News. I enjoy participating in that community because there is a wide array of opinions and experiences. You might be talking with somebody about a specific technology and the person who built it shows up and joins the conversation. Being able to interact in such fashion is a powerful learning tool. Having conversations with smarter people is a great way to remove the feeling of being stuck. Make sure that your approach here is about listening and learning. Otherwise, you will not benefit as much.

## Don't be afraid to fail

I use to loathe sharing my code. I hated it. I knew that people would judge me for it. I'm very insecure about my coding abilities because I wish I was better. Being afraid of what other people might say led me to hide away in a corner. Truth is that everyone sucks at coding. We all do. The best programmers have that one piece of code that will always hunt them. Successful programmers learn that you can only succeed by failing. Good coding skills are the result of bad coding skills being improved over time. Fear of failure makes us feel stuck because we simply close our minds and let our insecurities take over. Rather than let the fear slow us down, we should embrace the fact that learning is a process filled with mistakes. Progress is only achieved when enough learning is accomplished. You must first fail in order to succeed.

## Be patient with yourself

I'm afraid to admit that learning this took me longer than I'd like to accept. You have to be patient with yourself. Pushing too hard is not good. There is definitely a possibility of self inflicted burn out. I don't want you to go through that.
How can I be more patient with myself? Understand that things take time. We have to make priorities. I wanted to build lots of robots, but I also wanted to improve my Javascript skills. Rather than do both things at the same time, I decided to work on improving my Javascript skills and let the robot building for later. Setting priorities means that we also have to set goals. Setting goals is tricky. The one thing I've learned about it is that our estimates are always wrong and things will take longer to achieve. Being patient means that we will reconsider our timelines and adjust accordingly. Time is the one thing we don't have and needs to be managed like the precious resource that it is.



I really do hope this helps you move forward. Feeling stuck is not fun and can be frustrating. I believe you can move forward and overcome this feeling if you are willing to give the things I outlined a try. They might not work for you, but you will gain something important: Accepting that you feel stuck is the first step towards getting yourself out of that place.


**PS.** Follow me on Twitter and Snapchat **@pryelluw**

`I'm available for Python, Django, and Javascript projects.`
`Contact: pr@yelluw.com`