I haven't mentioned IRC, and there are several, more modern, alternatives to IRC.
But actually, what is so wrong about IRC? I used to listen a popular webradio which had an IRC channel, people managed to join it no problem, including me as a child. Surely a developer is capable of joining and using IRC with ease?
IRC had this interesting property that chat logs were often provided publicly, making them searchable.
1. IRC doesn't have any form of persistence or history, requiring the user to run a bouncer
2. IRC doesn't have any formatting - this makes it annoying to talk about code
My experience with IRC is that I joined a channel, asked the question I wanted, waited for a few hours without a response, and turned my computer off. If anyone answered it after that, I have no way of knowing. I don't regularly use IRC and so I don't run a bouncer.
This wasted both my time and the time of people who answered my question after I was gone.
In better chat systems, you can e.g. get an email notification if someone replies to you, allowing you to check back later.