The other thing is IRC is one of those things where instant feedback isn't guaranteed. So many /join, ask a question, and /part by the time I even read it. In those cases, there's StackOverflow (and to a lesser extent reddit), where a thread is created and upvotes help a post weigh upwards a bit longer. As icing on the cake, there's nesting / voting in the conversation, as well.
With IRC, messages fade away and its really a matter of timing you find someone with the right expertise that bites. If you ask something at the wrong hour, you have to hope someone reads far enough up to answer you.
On StackOverflow, people are very generous in pointing to a newer answer with less votes. It's easy to copy and paste code snippets. Posts can be edited. StackOverflow posts are also more persistent as there's a concept of duplication and trying to have one thread for a question.
Er, yeah, because they're on bloody IRC?
Tons of people know about Freenode. I barely ever use chat platforms other than IRC excepting communications with family.
It seems like a meme to me to pretend IRC is dead. It's about as dead as email.
While IRC is a little more open as a protocol, the reality is it lacks the features these other platforms provide in attracting new visitors. In my observation this might include: Mobile support, being able to see past messages, emoji, embeded video/gif, having a company maintain and add features, and being somewhat less anonymous.
I doubt IRC networks such as freenode will disappear anytime in the near future, but I doubt it will grow much either given the alternatives.
I imagine the crowd that tend to use instant messaging don't see the same appeal with threaded message boards. Different medium, for better or worse.
It was pretty cool: you'd sometimes have the experience of being frustrated with a software project, guessing their IRC channel name on Freenode, joining with your question and getting an instant answer from the main author of the project.
But there were lots of things that weren't cool, mainly being unable to see messages sent when you weren't online. IRC bouncers existed but most people didn't have shell access to run one on; they were expensive.
I don't think it's a good platform for a rich exchange of ideas or for developing software for the following reasons:
- Messages are one line long. I couldn't write something like this comment. Much like Twitter, it's good for casual conversation with lots of people reading and participating in realtime, but it's bad for in-depth discussions, and you get the phenomenon where either complicated ideas are needlessly split into multiple messages, or they're just not said at all because simple ideas (which aren't necessarily correlated with better ideas) drown them out.
- As a result, it's hard to use it as a platform to design software. You can talk about things, but you really want to switch to a place where you can write multiple paragraphs for design. Even git commit messages accommodate multiple paragraphs. Mailing lists are well-suited to this.
- Also, you can't post things like crash logs, screenshots, diagrams, etc. without using a third-party service.
- There's no central public log. Yes, third-party IRC loggers exist, but Freenode as a platform doesn't offer one. If you want to exchange ideas, it's important that they be recorded for at least some amount of posterity.
- Relatedly, there's no way to read the history of a conversation if you're not online at the moment. Again, yes, third-party IRC loggers exist, as do bouncers, screen sessions, etc., but there's nothing built into the platform.
- There's no threading or topic separation of any sort. Even bulletin boards of the early '00s let you subscribe to an entire bulletin board and have multiple simultaneous discussion topics. The only way to do that on IRC is to have multiple channels, and there's no way to keep subscribers in sync across channels, so people tend not to create channels very often. Other topic separation tools: separate threads on a mailing list, separate bugs on a bug tracker, separate posts to Reddit or HN or Discourse, even Slack threads as mediocre as they are, even separate areas of the page on an unstructured wiki (think https://wiki.c2.com/?ThreadMode, or talk pages on Wikipedia).
- As a result, it scales poorly to large numbers of users. I was in #rust on Mozilla IRC for a while when the language was young, helping people out; as the room got busier, it became harder to have a conversation more than a few messages long because something else would come up (and again, each message had to be short, so it was hard to discuss anything of complexity).
I can't imagine any way to have every programmer on it (the way that every programmer could, theoretically, be on StackOverflow - and much less theoretically, I'd expect almost every programmer reads StackOverflow) and have it possible to get any value out of it.
Also, this is the first time I've heard of the Freenode subreddit. Why would I join it? What's the point of a communication platform about a communication platform? I'm also not in an IRC channel about Twitter, nor do I follow a hashtag about GitHub.