I actively use Freenode (nominally for open source development, but in practice for keeping in touch with my friends), as well as other IRC networks.<p>I don't think it's a good platform for a rich exchange of ideas or for developing software for the following reasons:<p>- 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 <i>better</i> ideas) drown them out.<p>- 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.<p>- Also, you can't post things like crash logs, screenshots, diagrams, etc. without using a third-party service.<p>- There's no central public log. Yes, third-party IRC loggers exist, but <i>Freenode</i> 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.<p>- 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.<p>- There's no threading or topic separation of <i>any</i> 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 <i>separate areas of the page</i> on an unstructured wiki (think <a href="https://wiki.c2.com/?ThreadMode" rel="nofollow">https://wiki.c2.com/?ThreadMode</a>, or talk pages on Wikipedia).<p>- 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).<p>I can't imagine any way to have <i>every</i> programmer on it (the way that every programmer could, theoretically, be on StackOverflow - and much less theoretically, I'd expect almost every programmer <i>reads</i> StackOverflow) and have it possible to get any value out of it.<p>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 <i>about</i> a communication platform? I'm also not in an IRC channel about Twitter, nor do I follow a hashtag about GitHub.