This is a rare kind of post. This isn’t about something I’m doing, it’s about something I see happening which is concerning. I also don’t know what the answer is, I’m asking all of you what we should do and how you may have handled a similar situation.
There are a selection of people that, for various reasons, have written “blocking style” APIs on top of node.js. Some of them are scientific, some are opinionated, some are for compatibility with common-js, some are just scratching an itch. These libraries have varying degrees of compatibility with the rest of node.js and the wealth of libraries being created in the community.
Node is booming and a flood of new users are joining the community. When they ask the mailing list simple questions they receive a lot of feedback. If those questions touch on flow control or callbacks, a common new user question since it’s one of the biggest surface differences between node.js and its contemporaries, they get a barrage of conflicting answers.
There is no one answer to these questions. There is a lot of opinion and even emotion around these choices so having a discussion and weighing one’s options is a sane thing to do. Unfortunately, the responses to these very simple questions are unevenly weighted by a vocal minority. By the best measure we have (npm) the adoption of “blocking style” APIs as a whole account for less than 2% of the community but it’s not uncommon to have a mailing list thread weighted about 60% in favor of such APIs because the authors of those libraries reply to these questions like it’s their job.
This is incredibly confusing for new users. The vast majority of people using node are using callbacks with many of them opting for a flow control library (by most measures it appears they are choosing the async library) but those people seem to be content with their choice and don’t have the endurance to reply to these questions on the mailing list.
If you try to contest the use of blocking style APIs for any reason, the least often of which is a close to zero rate of adoption, you better grab yourself a drink because you’ll get no less than twice as many replies from these library authors, further confusing new users who now think that even the simplest of questions is a street brawl in the node.js community.
This isn’t acceptable. It makes the node.js community seem way less coherent than it really is and it makes new users confused and pretty afraid of the mailing list. It also makes me a sad panda :(
But in the end, I have no solution. They have a right to comment on these threads and they don’t appear to be willing to scale back their behavior to a level that represents the community as a whole. We can’t censor them, and they won’t censor themselves, so I’m asking everyone out there, what do we do?