StackOverflow: The smart question
This example showcases a good question because it’s easy to read and provides all the information needed to solve their question. The user provided a header that directly asks what needs to be done and what program they are performing the tasks on and a question specifying where they want the files to be deleted from which is locally and remotely for this case. They also provided logs to see where and what error is occurring.
Why is this a good question to ask?
First, the proper use of header allows programmers to know what application is involved. It also helps future developers having the same problem find the question faster due to simple and specific wording. The given logs suggest that the user first tried to answer the question before running to Stack Overflow. It also shows errors which allows programmers helping find directly what’s the problem. The answers provided to this question proves that this a good question as multiple programmers have answered with answers not only solving the problem but also teaching what exactly is happening when deleting gits.
StackOverflow: The bad
On the other hand this question provides what not to ask. Although the user provided an acceptable header, this is all the information that was written other than the error code. The user did not specify nor provided their exact code or what the code is for. This user also only wrote “show and run the program” which is vague considering that it isn’t even written in a question format. The proper way the user could’ve asked their question is providing background information such as where is the csv file being run and a brief information about the contents of the file. The user could have also first googled the answer as there are many websites that answer the question including step by step video tutorials.
Communication is a big aspect of software engineering, especially when it comes to work environments where projects are done as a team. An often overlooked aspect of communication is questioning. So why is asking smart questions so important for you and for me? It is by far the most important type of communication mainly towards the newbies in the group/company, but even the pro asks questions when they get stuck. Smart questions allow you to showcase that you at least tried to solve the problem before asking for help. This way you are learning and not just depending on others to solve your problem for you. Smart questions also help, developers answer you in a smarter way. Asking good questions will lead developers trying to help get a gauge of what you understand and what you don’t. Majority of the people trying to help you don’t get paid for answering your questions, so it is a good practice to show that your question isn’t because you’re too lazy to do the work, but because you are confused.
From this experience I learned the importance of good questions. I never really prioritized or saw the importance of asking good questions. This exercise helped me see both examples of good questions and bad questions, which is going to help me create better questions in the future.