Every now and then when I have a few moments, I try to give back to the technology / developer community by helping those who have questions about why something they’re doing isn’t working or how to do it better. I find it fun and self-fulfilling to help those who are at a stage all of us in the developer community can relate to at some point in our careers. Not to mention, it never hurts to go back and “refresh” your knowledge of the easy stuff.
Most of the time, the questions come from early stage developers who have little knowledge of how to accomplish what they’re asking or sometimes, they’ve tried and tried and tried but get “tunnel versioned” into the non-working code. This leads to frustration and eventually, the cry for help.
All experienced developers can relate to this problem and if they tell you otherwise, they are simply lying. We’ve all been to a point, more than once I might add, where we believe that the code we have written is being manipulated and messed up by the computer and therefore it is the computers fault for the code not working. Unfortunately, that view of how things work is 99.9% wrong and comes from the frustration and tunnel vision from above.
If you’re an experienced developer, one of the best ways to clear your head is to get away from the computer screen for a bit. Go run a couple of errands if you need to, grab a bite to eat or go sit outside in the fresh air and just take in the world around you (recommended only when it’s nice outside).
At this point, you’re probably wondering where I’m going with this and why I am relating experienced, expert developers so much to the novice developers. Well, it’s simple – we all know how to ask questions and should understand how to format code.
Perhaps the biggest problem when trying to help someone with their coding problem is the lack of effort put in to one of the following:
- Explaining the problem
- Explaining what they’re trying to accomplish
- Explaining what’s already been tried
- Noting what frameworks are being used
- Lack of formatting / structure in the code / comments
I’ve heard it time and time again that the people on Stack Overflow or other help websites are “mean and don’t help” or that they “down voted my question.” Well, here are a few reasons why.
Poorly written / unclear question
The same people, who are trying to help, don’t want to spend a ton of time deciphering what it is being asked of them or where the problem lies. There are far too many variations of what could be asked and quite frankly, why do the “helpers” care to stick around waiting for your response when what they’re doing is free? For all we know, the person asking for help could have posted the question in a hurry before leaving on a lunch break and isn’t going to respond to the helpers questions until later.
Lack of searching for an answer
If a 2 second Google search produces an answer, especially from the same website that the poster is asking for help on, it shows the lack of effort on their part to produce an answer. If this happens, the question is likely to be closed and referenced to another post. Save everyone the hassle and try searching this thing called the World Wide Web via great search engines such as Google. If there’s an answer out there, you have a pretty good shot at finding it by the referenced method in the previous sentence.
Note: 90% of the time, these question posters will also fit the poorly written / unclear question bill as well.
Code formatting sucks
If you don’t have basic structure to your code, it will be overlooked the majority of the time. Again, let’s go back to the poorly written / unclear question part. If it’s one thing developers don’t want to do, it’s try to decipher code that looks like it’s been dropped in a jar, shaken around, uncapped and thrown into the ocean. Clean up, format and comment your code to give a clearer understanding of what each part does if it’s not self-explanatory. Remember, whoever is trying to help did not write the code, you did. Thus, they’re likely to have a limited understanding, especially if it’s a more complex question.
This article isn’t meant to demean those who are asking for help. It’s meant to help guide anybody who is asking for assistance by letting him or her know where those who are offering the help are coming from. If everyone put in as much effort as they expect from people, we’d have a lot more answered questions and healthier collaboration.
We’ve all heard it before, but it’s probably worth mentioning it again. There is no such thing as a stupid question, nor a stupid answer. However, there is lack of trying when asking a question, especially when you’re looking for an answer.
Engage in discussion
If you’re a developer, what are your outlets for clearing your mind when stuck on a problem?
Want to add something to the list regarding how to format a good help question?
Leave your responses in the comments below.