So You Have A Problem

25 Jan 2018

In the world of science and technology, we all appreciate a good problem to solve. Weather you are an Engineer, Mathematician, Chemist, or Computer Scientist, just to name a few fields, we are all united as problem solvers. It is the core foundation of our fields of study to solve problems, and proper communication plays a huge role into solving all the problems we will be faced with.

When one comes across a particularly head-scratching problem to solve, our fields of study encourage collaboration. This encouragement is really a push to ask questions from the recourses you have, and as the old saying goes “two heads are better than one”. Particularly in the world of Software Engineering, being able to ask your question in a smart way is highly important. To illustrate this point lets first look at an example of a bad question from the link below.

Link: Bad Question Example At StackOverflow

We can see that the author does not provide any detail to his problem, and in order for others to help him properly; first he should have provided details to what his code is suppose to do. This helps those who look at his code to understand what he is trying to accomplish with these few lines and his end goal overall. Secondly, he is lacking to convey any troubleshooting he did on his own. Troubleshooting information is highly informative to narrow down the exact cause of the problem, and at least shows those who you are seeking help from, that you tried to solve the problem yourself. Not in the picture, those who replied ask him to please explain what is meant when he says the code does not work, and asked what his code is suppose to do in the first place. Those who replied spent time asking him to clarify his question rather than using that time to help the author solve his problem. We can see simply asking why the code does not work is a bad question. Next lets look at a good example of a smart question.

Link: Good Question Example At StackOverflow

Right off the bat we can see a lot more detail in the post made by this author over the previous post we looked at. The post includes exactly what the author is trying to do with his code, in a very precise manner. This way no one is stuck trying to work through his code to see exactly what he is trying to accomplish. He then goes on to explain the problem that he is having, and the exact error that is being thrown from his code. This lets everyone who is looking at his post know exactly what he is stuck on. He lastly goes into what he has tried and what did not work for him, before he resorted to posting his question. With all of this necessary information and detail that he provided, his smart question provided a solution to his problem quickly and easily.

The smart way of asking questions has many factors, as outlined in How To Ask Questions The Smart Way, by Eric Raymond. From this reading and my own research into the StackOverflow posts, I have gained insight to what a smart question consists of. First, you need to be detailed in your question overall. Give the information that you would ask for if someone asked you the same question. Next, convey your problem accurately. Make sure that you understand exactly what your problem is, so that you know exactly what you are asking. Last, do your own research and exhaust all other sources before asking your question. This can not only help you find the solution on your own, but give the necessary information to convey your problem accurately, and be detailed in your question overall. In the end smart questions give you the answers you are looking for, and in the world of science and technology, we all appreciate a good problem to solve and the smart questions that will go along with it.

Link: How To Ask Questions The Smart Way