A while ago, I was confronted with the question if chatting really disturbes while working. I am in multiple chats all day long and I have to say I really appreciate the quick way of getting answers (e.g. in #python on irc.efnet.org) and learning stuff by reading, discussing and also answering questions. In the following I try to summarize what I think makes the chat worth being a tool a programmer needs in his toolbox. Of course we are talking about work-related chats here.
In general it’s all about information. Once you are in the flow of working and you want a certain thing that is not really the core of the problem, but a piece of it, you get nervous when you can’t find this little piece fast enough. It just keeps one from solving the real problem or doing the actual work. A chat is a very responsive media, which sometimes gives you answers in a much higer quality and with the ability to inquire. You need to find the right channels of course! As long as the know-how is spread among the people of your team or in your company it should be very easy to get together all the required “resources”. Which is also the first point I want to dive into.
It happens very often in (big) companies that you are searching for the one who knows. Or even for the one who can tell you who is the one who knows. Given that all relevant colleagues are in the same chat you can simply throw in the question. And the one who knows the answer steps up and gives the answer. You have less overhead in getting the answer. Even if your question doesn’t get answered right away it “stays around” and, I can tell from experience, soon someone will answer it. Or at least someone tells the person who knows the answer to answer the question. I don’t recall many questions not being answered. A chat with the right people in it is always a neverending source of knowledge.
Reading other people’s discussions sometimes really helps to get a broader view of things and especially more details on certain tasks, that you would never get to know about if you were not following all discussions.
It is always good to know more, than you did a short time ago!
A chat allows for unsynchronized discussions. When the person you are asking is busy at the moment you don’t disturb him/her, (s)he just answers later. That is an advantage you don’t have when you run to the person you want to ask. You disturb him/her and you are wasting much more time since you also talk about other things. That leads to the next very important point.
You are more focused, you express your questions more precise. In a chat it really helps a lot to form your question very precise. It allows you to better focus on the problem and it allows the others to understand you right away and to give the correct and wanted answer. That is also a way of learning. I realized very quickly that I am thinking in too big chunks sometimes (sounds funny, yeah). I have to break down problems into smaller things and solve them independently. It also happened that by only asking the question I answered it myself, simply because I had to put it in words which somehow lead to the solution.
more to come …