Table of Content
Introduction
Most developers will run into issues that frustrate them. It is nothing to be ashamed of. No, it does not speak poorly of you or your skill. Simply pulling an all night-er, trying to power through on caffeine and will power is not a healthy way to proceed, either. You may also find that doing so results in both you being exhausted and the code you produce being poorer in quality for it. You should first attempt to investigate / troubleshoot on your own, but if you are stuck, then find a different perspective.
Working on a Team or With Others Available
If you are working on a team or just with other developers nearby, you might reach out to another team member for a second set of eyes. As we are all working toward the same goal, it makes sense for me to lend you a bit of my time so that we can all move forward together. This isn’t really a kindness or a favor, as it helps me as part of the team as well. I say lending because I will likely need their assistance if I hit something puzzling in the future. Also, if our current efforts are stuck, we may find a domino effect that cascades down to immovable deadlines that cause the whole team to have to work overtime to try to meet deadlines.
- Perhaps they have seen something similar and can provide guidance?
- Perhaps as you walk through the issue with them, something will jump out to their eyes that you had overlooked?
- May be they can think of a new approach or vantage point for the investigation?
No matter how you reach out for help:
- Be kind. The person helping you also has their own work, but they are trying to help.
- Take notes. This is another way to make the best use of the expert’s time. Is there a shared, easily found location where this information can be shared with others on the team? That way, the expert only needs to answer the question once for the whole team.
Offline Troubleshooting
When asking for help offline, such as in email or Slack, you may benefit from:
- Be clear about what help you need. What is your actual question/concern?
- Provide well-formatted code snippets. Reading through poorly formatted code snippets may make it harder on the helper to understand the concern.
In a Meeting
When asking for help in a meeting:
- Be prepared. Make the most use of the time you are given.
- Have reference material open and available.
- If troubleshooting a build failure, have the build logs available and ready to re-run, if needed.
- Again, well formatted code may help you or the helper spot an issue more quickly.
Working on Your Own
Without the benefit of a team or second set of eyes, if I find myself frustrated by an issue that isn’t progressing forward, there are several ways I can try to make my own eyes look at the problem from a new perspective. Whatever you choose, add comments to your in-flight code helping you pick up where you left off, but you may just need a small break.
- Move Your Body – However you prefer to move around and take your mind off of coding for a few minutes, so it can have a break.
- Go for a walk.
- Do some jumping jacks.
- Play some basketball.
- Ride a bike.
- Take a Meal – How long has it been since you last ate? Skipping regular meals is likely going to make your brain sluggish, as it lacks a consistent stream of energy to problem solve.
- Take a Rest – Working through the night is shown in the movies, but it isn’t healthy and often it leads to worse productivity. Also, a tired person is likely more easily agitated by issues that would otherwise not bother them. Getting a full night’s sleep can help us think as clearly as possible, which is especially important when investigating frustrating issues.
- Temporarily Set it Down – Even if it’s the middle of the work day and not time for a break, setting the problem aside for a short while and focusing on something different may help your mind feel more rested when you circle back to the problem. This isn’t to say procrastinate, just give your mind a short break and allow it to feel productive doing something else.
Summary
It is perfectly normal to ask for help. There is nothing to be ashamed of and hopefully your team operates in a learning mindset, where helping teammates learn is seen as a valuable way to help increase the overall productivity of the team as a whole. After all, we all want to be able to take a vacation without interruptions. Please do not be ashamed or think poorly of yourself for asking for help. On a team, we succeed or fail together, whether working on a school project or a deliverable for work.
Please also take care of yourself, taking breaks and tending to your body’s needs, like movement, food and rest can also help us be as productive as possible. Your mind likely won’t be effective at problem solving if your body is tired, frustrated or hungry.
Leave a comment