Skip to content

How To Ask Technical Questions


This is not something new and we are facing this issue every day! Even sometimes we also do this as well. It can be a message in a chat app such as WhatsApp, Telegram or your LinkedIn inbox, what will be your feeling when a stranger messages you with “Hi”? Yes, just a “Hi”!

Then you reply and wait for the response from the other end, most of the time you get a response the next day or later!

Let us try to learn and share some best practices for asking questions in community groups and forums.

A Typical Conversation

Someone in the Ansible group: “Anyone knows about the Ansible Jinja2 template?

(Me to myself: What the….! the group name is Ansible, what else we are discussing here then?)

Me/other group members: “Please ask your question ?” (See, still we have patience and we asked nicely)

The same someone: “Anyone can help me on Jinja2 loops?” (Again!!!)

Me/other group members: “Please post your question here!”

Do you think this is effective communication?

Let us try something better

What if the person asks the question as follows?

Hello, my name is John. I am trying to develop a Jinja2 template in which I want to loop multiple dictionary values (as given in the following screenshots). I facing some issues when I use the dictionary values and I am not getting the correct output. Please see the playbook, template and sample variables below. Could anyone assist with this?”

Wow! If I read that chat, I will spend 5 minutes reading and understanding the issue and reply to whatever I know!

Everyone saves the time

Asking Technical Questions – Best Practices

1. Avoid these questions

Try to avoid the following introductions and questions as those are waste of time, be straight to the point.

  • Can anyone help with the ABC issue?”
  • “Anyone here with XYZ experience?”
  • “Anyone worked on DEF stack?”
  • “Hello, how are you?”

2. Have you searched on the internet?

Google (or any other search engine) is our best friend to find resources and answers to our questions. Try yourself first before you post the questions in a group or forum blindly; searching and finding answers is a skill, learn it.

3. Use appropriate pronouns

Avoid calling “Bro”, “Sis” and so on, if the person is not close to you. Use the names or mention his/her username in the forum/group.

4. Use plain English

Avoid asking questions in other languages since 99.99% of the time, the members are from all over the world! You are free to use your mother tongue or local languages if the group is based on local languages.

5. Add a title to the question if possible

It will help to understand what is your problem at a high level and also be useful for other group members to learn and understand the scenario.

How to install Ansible Automation Platform in a disconnected environment?

6. Phrase your questions clearly

For the best result, learn how to ask a question in clear language and read it before you send it.

Hello, this is Sarah. I have deployed Kubernetes cluster in my personal laptop (Fedora 35) using VirtualBox and Vagrant. I am able to spinup the VMs and clusters but I am not able to connect to the cluster API from my host machine (which is my laptop). I have googled and tried some configurations but nothing helped to solve the issue.

Below is my Vagranfile and the guide/document I followed to deploy the Kubernetes cluster. Also see the error message (screenshot) shared for refernce. Could you please help with this?

For the best result,

  • Try to avoid too much jargon as the group members may not be aware of such.
  • Read the question carefully before you send it.
  • Make sure the details are included in the question – before or after the message.

7. Include the reference link

If you have already tried some troubleshooting steps or workarounds, then mention that in the questions. The group members might be googling (on your behalf!) and sharing the link, which you might already test. So both of you can save a lot of time. If possible, explain which step of the document or guide you are facing the issue and it will help the guy a lot to focus and find answers for you.

8. Code Snippets – Mandatory

Make sure the code snippets and error messages are included inside the question as no one can guess or assume what you are trying to achieve! Include the code, playbook, configurations or whatever stuff you are working on. When you are using instant messaging platforms, then learn how to format the snippets in the chat such as WhatsApp, Telegram etc as the formatting code will help the group members to understand the snippet well if they are reading it from mobile devices.

9. Screenshot or outputs – Mandatory

Cannot copy-paste the code snippets or error messages? Take a screenshot and post it! DO NOT crop the screenshots so tight as the reading will not be easy on mobile devices. Also, make sure the screenshots are clear enough for the readers to read and understand.

Warning: Remember to mask the text if there is any sensitive information such as IP address, passwords or tokens.

10. DO NOT direct message to the person

When someone responds to your questions, do not send a direct message to him/her! That is not the purpose of community groups and forums. Continue your chat in the group so that other members can benefit from the conversations. Also, it is not a good idea to initiate direct chat without seeking permission

11. Finally, please respond!

When someone asked for clarifications on your questions or when someone answers questions, remember to respond and confirm if the solution working for you. This will help the person answered (and other group members) to understand the correct solution for the scenario.

12. Last but not least

Use a human-readable and meaningful name for your account (Telegram, WhatsApp, Forums or any community group).

TLDR:

Instead of hearing unwanted questions, we all prefer to listen to the actual problems and details! I am trying to explain how you can ask questions in community groups or forums and some of the best practices. This is purely opinionated and based on my experience in community activities.

Check some of the similar initiatives here.

Disclaimer: The views expressed and the content shared are those of the author and do not reflect the views of the author’s employer or techbeatly platform.


Gineesh Madapparambath is the author of the book - 𝗔𝗻𝘀𝗶𝗯𝗹𝗲 𝗳𝗼𝗿 𝗥𝗲𝗮𝗹-𝗟𝗶𝗳𝗲 𝗔𝘂𝘁𝗼𝗺𝗮𝘁𝗶𝗼𝗻. He has worked as a Systems Engineer, Automation Specialist, and content author. His primary focus is on Ansible Automation, Containerisation (OpenShift & Kubernetes), and Infrastructure as Code (Terraform). (aka Gini Gangadharan - iamgini.com)

Comments

2 Responses

  1. Nitin Chandna says:

    I have a situation and need help. There is a project where we need to automate and achieve the following:

    Pull bulk data. Data will be available in ZIP format.
    Extract the data.
    Generate hierarchical path location and push the extracted data

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: