why are the contexts different? You are insisting that all the cases that you care about are different, but I don't see any fundamental reason for them being different.
Just because something didn't work well at some point in the past for some group of people doesn't make that thing a bad idea for that reason alone.
in both cases you have a small group of "important" people (developers for opensource stuff, authors for Baen) and a very large group of less "important" or less "clueful" people (users for opensource stuff, readers for Baen)
In both cases the less important people can help each other and get value from interacting with each other.
In both cases the value of a forum increases drastically if the "important" people interact with it, but web forums are horribly inefficient ways for people to keep up with everything.