Is This a Good Question?

06 Sep 2017

The importance of being good at asking questions.

If you’ve found yourself staring at the same 5 lines of code and wanting to smash your head with keyboard, chances are you’ve had to ask for help on some aspect of programming. Failure is key to learning, but sometimes we all need a helping hand; however, it’s important to know when, where, and how to ask.

Tip 1: Fail.

No matter your job this is important, but especially so for programmers. If you run try to compile something and it won’t run properly, or has errors and won’t even compile, do everyone (yourself included) a favor and try to fix it yourself. If that doesn’t work, try again, and again, and again, until you think it’s impossible. when asking for help it’s quite easy to tell when you haven’t even tried to fix it. For many reasons this is terrible, not least of which that you probably won’t care to remember how to do fix it when you’re shown. As well, you really don’t want to be the person who people think can’t do anything for themselves.

Tip 2: Know where to ask.

This is more for yourself; it will help you get the right information more quickly. If its a general programming or software question, places like Stackoverflow might be a great place. If you’re working with a specific piece of hardware or software, maybe there’s a forum for that specific thing (there often is). When you manage to find the right place make sure you search around to see if your question or a variation of it has already been answered. If you find it and it has an answer, great! You get your answer instantly. It also helps keep the places tidy and organized to help people find the information they need without sifting through they same repetitive questions.

Tip 3: Help people help you.

If your question hasn’t been answered already it’s time to ask; when you do make sure to be kind, be clear, be brief. Make sure that your title gets at what you’re trying to ask about, what helps here is to really understand the problem you’re having; this ties back the first tip. For example, instead of asking someone to get rid of the error in your code, understand that it’s a pointer problem and ask about pointers. Make sure you explain your objective or goal as well, otherwise people may give an answer that ends up doing something different than intended. Lastly Background information always helps, don’t be afraid to show off that code!

Examples:

This person has a specific question and talks about the problem they are running in to as well as what they want the program to do. As a nice touch they even link to the website they are trying to build itself so have an idea of what it’s supposed to be like.

This is, I would say, is a bad question because it is a lazy question. Although this person did get their answer, it is obvious that they didn’t look around first. It also shows in their typo’s, not even bothering to capitalize the “i”. Suffice to say they could have just looked up “try catch” and read about it without asking this question.