The Smarter Way of Asking for Programming Help
How to get better help during your debugging crises
Cover Photo by Christina @ wocintechchat.com on Unsplash
As programmers, we all face bugs regularly in our programs. Nevertheless, we must find a way to solve those issues and make our programs run properly. Some people are so good at debugging — they can find bugs and solve issues on their own. But they, too, would have gotten to that level of expertise by having taken baby steps from the beginner level.
I personally like helping people solve their bugs. Lending others a helping hand is fun and emotionally rewarding. It also helps me revise or learn things that I’ve missed or forgotten.
Therefore, I’ve created this small guide to help beginners ask for help from fellow programmers in a smarter way.
Before You Ask a Question
Before you ask for help, make sure you’ve done your part of the research as well. Some people are so lazy — they don’t even think of doing some googling on their end. They simply open up a forum, say Stack Overflow or a Facebook group, and post their question. It can even be simple questions, such as “how do I start programming?” or “how do I install an npm package?”
You can genuinely not understand how to do it, but you must make sure you put up an effort from your end — and then ask for help. Make sure you show the potential audience of your question that you’ve put effort into finding a solution to your problem and yet failed.
These are some steps you can take before asking your question from others.
Search online — the first thing you should do is google
Read the documentation — make sure you read the official documentation and forums
Ask a skilled friend — if the above two options don’t work, you can ask a skilled friend of yours
If you haven’t been able to find a solution after these three steps, you can go ahead and ask your questions. When you ask your question, display the fact you’ve done these things first.
How to search online
One common thing I’ve noticed among my peers is they all do search on Google before asking a friend for help. But what surprises me the most is when a friend searches on Google to find a solution and succeeds in doing so.
How can two people search on the same platform, yet only one person was able to find a solution to the problem?
This is because of the way both of them phrased their questions.
Make sure you include only the necessary phrases or terms in your search query. Suppose you want to know how to add a local image to your HTML. You can either search “how to add images to my website” or “how to add a local image in HTML.” As you can see, the latter question is better phrased — as it’s more specific but provides enough detail.
Photo by Charles Deluvio on Unsplash
How to Ask a Question
Make sure you ask the right question at the right place
Be cautious about where you ask your question. You’re likely to be ignored or written off as a loser if you:
Post your question to a forum where it’s off-topic
Ask a simple question to a topic where sophisticated technical inquiries are anticipated. — or vice versa
Crosspost to too many different newsgroups
Post a personal email to somebody who is neither an acquaintance of yours nor personally responsible for solving your problem
Make sure you post clear screenshots/messages of the error
I’ve seen countless posts being mocked on Facebook groups because the question contained very unreadable images of the code or error.
You should always make sure your code is readable. This can be achieved by uploading screenshots of your error/code. You can even upload your code via GitHub gists or code editors like CodePen. This makes sure that people can clearly read and understand your code without having to turn their heads to be able to see your captured image of the code.
Always make sure to include your error message as a text in your post. This will make it easier for people to do research on.
If you don’t know how to take a screenshot, you can find out more here.
Try websites like Stack Overflow
Stack Overflow is the largest, most trusted online community for developers to learn, share their programming knowledge, and build their careers.
Make sure you follow the Before You Ask a Question guideline mentioned above to avoid being downvoted on your question. Being downvoted gives you a bad reputation on Stack Overflow. Posting code/error screenshots in StackOverflow is not recommended at all. Try to post your error as a text.
Write the question as clear as possible and straight to the point
One thing I’ve noticed on forums is people posting questions that make no sense at all. I do understand that they’re poor in English. If you have such issues, you can always ask a friend to proofread your questions for you. There is nothing to be ashamed of when asking for your friend’s help on this.
Also, make sure your question is straight to the point. Don’t beat around the bush and waste peoples time.
Mention the environment you run on
Clearly and precisely describe the symptoms of your problem or bug.
Provide a means to recreate the problem in a controlled setting if at all possible.
Include the precise wording of the error message – ideally, copy and paste it straight from the log, console, or web page that contains it.
If you need help with a piece of code, always provide a code sample. It need not be the exact code, but it shouldn’t be semantically different from your actual code. For instance, hiding particularly sensitive values in your code is fine, but you shouldn’t change or paraphrase things like loop conditions.
What If You Don’t Get an Answer?
If you’ve followed all of the above steps, be patient until you receive feedback. You are not entitled to someone's assistance unless you pay them for their time. There are plenty of people willing to answer your questions out there, but they don’t tend to like being annoyed. Give it some time once you've mentioned your problem or inquiry someplace. People that want to assist will usually do it when they are able.
If you don’t get an answer to your question, don’t take it personally. Members of the asking group may not always know the answer. No response isn’t the same as being ignored — though, admittedly, it’s hard to spot the difference from the outside.
If you’re still in need of solving your question, you can get paid help. There are also a plethora of business companies, both large and little, that you may hire for assistance. Don't be put off by the prospect of having to pay for some assistance! After example, if your vehicle engine bursts a head gasket, you're likely to take it to a mechanic and pay to have it repaired. Even if the program was free, you shouldn't expect free assistance all of the time.
Conclusion
If you’d like to know more, I suggest you read the reference material mentioned below.
Happy coding!
References