This is one topic that we hardly talk about as developers but it will definitely come up.
As we are constantly writing code daily we get into times where we just cant go forward. It's generally due to an issue that comes out in the book writing/authoring industry when writers are constantly trying to write out ideas and finally just get "stuck" or "blocked". If you're new to code, you will learn about this more as you start developing longer, but for those who have been coding for a long time, at one time or another you have or you definitely will run into this. The challenge is OVERCOMING this using helpful techniques. Unfortunately in our development industry we have not come up with great techniques for this and thus many a developer either gives up on great projects or literally leaves their own companies thinking they are just no longer good at code or have reached their peak.
I'm using the following websites for references for this article, so do feel free to check them out as they are definitely some great resources for us as developers to check out:
HOW DO YOU KNOW YOU HAVE WRITERS BLOCK AS A DEVELOPER?
Writers block generally comes up because of any of the following OR MORE:
a. Unsure: You no longer want to code, not because you're a bad developer, but you just for some reason feel like you don't want to code (Even though you aren't burnt out, etc.)
b. Perfectionism: You're trying to be perfect and your perfectionism is holding you back
c. Time of code: There are times when we code that things just move along so slow, and then there are those charged and wired times where you are coding so fast its as if your hands are possessed and going at light speed! This could be simply just waiting for the right time (Some people develop better in the wee hours of the morning).
d. Fear: You're afraid to touch your code and make a mistake which could cause more things to break, so you're not really coding at your full potential.
e. Lack of Ideas: You just cant come up with a great coding idea so you don't take action.
f. Overwhelm: You've made a behemoth of code and its now gotten out of hand so much that you cant make heads or tails of it.
g. Too Many Ideas: You have so many ideas and so many ways to do something, but you haven't decided which code path to take and are being held back because you don't want to make a mistake (Ex. You code this now, but in the future it may need to be re-coded, so now you're unsure whether to even start coding it).
h. Outside Skillset: You have enough to get through most of the actual code but THIS specific part of the code may be outside of your skillset and so you give up on it or get "stuck" waiting for a solution or looking for alternatives.
i. Too Far, Too Deep: You've coded for so long and realized you're just digging a deeper rabbit hole, so you keep continuing HOPING that it will magically fix itself and all just work. You aren't really developing at your peak, you're just developing in the HOPES that something will work out (You become a mindless automaton at this point, hoping something happens to change the code).
j. Boredom: You no longer are excited about the idea anymore and you're just going along with it because you want to complete it.
k. Criticism/Intimidation: You keep thinking about all the people who will say your code or game or app sucks and so it paralyzes you to literally stop your code. You may have seen similar games or apps and got intimidated (Ex. Look at that game/app, they already do it so well, why even bother trying to create that game/app even though I'm halfway through my game/app now, etc.)
l. Started Cool: The game/app in your head was totally awesome and then when you finally started coding it, it actually was not as great or cool as you believed and thus you slow down or stop.
The above are just SOME of the many writers block forms that happen to developers in our Game/App industry.
Luckily for us, other industries have studied this issue extensively and if you've never known how to label it before, NOW YOU DO, it's called writers block and we will go over several tips and tricks to get out of it and move on in your code.
1. GO FOR A WALK
This is one that a lot of developers favor. Simply changing the scenery and going for a walk. Whether it's at the next team coffee run (Yeah you know the midday coffee runs where the team of like 20-30 devs all get together and go like a sports team down to the local coffee shop LOL) or simply just going for a stroll, it's incredible what a walk can do.
2. SIDE PROJECT
Take on a simple side project challenge. Something simple that you know you can overcome. Something like a hello world app or something along those lines where you know you can code it perfectly.
START with a blank clean new project and start coding this SIMPLE app. Maybe its something that just adds two numbers together, maybe it's a simple input/output app. The point is create something simple that will take you no more than 15 min or less to make.
This is similar in the writing world as starting on a fresh blank page and writing out whatever comes to your head. The art of simply writing a simple app and taking on something may actually jump start you back into action so you can return to your code! NOTE: PLEASE KEEP IT REALLY SIMPLE! A one function app that logs something to the console in unity, or a simple hello world or something that gets you going again but is not complex so you dont just get into another writers block!
3. CHANGE YOUR ENVIRONMENT
Sometimes simply changing WHERE you code can have a huge impact! I like to change the room I'm in or even the computer I'm working on. See where you can go to code and a simple environment change may be all that you need to get you back on track!
4. USE THE POMODORO TIMED METHOD
The pomodoro method (https://en.wikipedia.org/wiki/Pomodoro_Technique) literally has you time boxed into a 25 minute sprint where you just focus on code. The technique uses a tomato timer (Hence the name pomodoro) and you simply FOCUS hard on just 25 minute sprints at a time. Give it a shot, it works out really good for me and I've been using this technique for many years! :)
5. CHUNKING / BREAKDOWN
The concept of chunking is not new yet for some of the readers it may be a new concept for them as it was once for me. Simply put, chunking is taking any task and breaking it down into micro steps that you know for sure you can do. If you are trying to bake a cake, break that down into the steps and then into the ingredients and tasks at each step, and keep going until there is nothing left that you cannot do.
If something seems too complex or would take you more than 1 hour, you should be able to still break it down further. For example, if I'm writing a piece of code to add two numbers, I put down things like:
a. create a variable to store one number
b. create a second variable to store number two
c. return the addition of variable one plus variable two
Now that example may be simple but in general many times people arrive at just the "I want to output the solution to adding two numbers" without breaking it down further and thus get held back because of the complexity.
If it is still too complex, there are still many steps left and you need to take some time to figure out how to break it all down.
6. DAILY CODE PROBLEMS
Another neat way you can get your brain thinking is by taking on coding problems. These challenges usually take around 5-15 minutes to complete and you can find many online. These keep you in the same realm of development and allow you to crush a challenge thus giving you more confidence.
A great site I like to use is https://www.dailycodingproblem.com/ which sends you a daily code problem to solve. This is great to keep your juices flowing and may kick you out of your writers block.
This is one awesome one that will really help out. Basically start with a blank sheet of paper and a pen and go to an environment where there is NO COMPUTERS or DISTRACTIONS other than taking your phone for emergencies.
Next start in the center of the sheet and just write whatever comes to mind. If you can keep it targeted to the code you are working on even better. After that just let whatever flows from there come naturally without thinking too much and just draw leaves from the center of the circle. Each node should represent ONE task or item required to achieve that item in the center.
After 15 minutes you'll definitely have something to move forward with. I generally do this and get so much insight that I'm able to solve a LOT of my code challenges with this one technique alone!
So there you have it, several techniques that can help you to overcome writers block as a developer. If you wish I recommend you check out the links I provided in the article so that you can see even more great ideas on how to beat out writers block.
Until next time, keep on grinding at the code :) You're a super star!!
You are a super star! Keep up the great work and NEVER GIVE UP! You Got This!! BE A CHAMPION!
Nav is a Unity Live Expert and Mobile Game and App Developer
LEARN TO MAKE GAMES FOR FREE! => Watch Me Live On Twitch => https://www.twitch.tv/academyofgames0
"I'm a game dev making fun awesome RPG and Fantasy Games. Check out my games on Steam and all major mobile platforms today => Game Scorpion Inc.!"