Introduction
I have just seen a chat thread in the Ember slack and it’s prompted me to write this post as a point for discussion. Link (Slack)
I’ve been an Ember enthusiast for a long time (since way before 1.0). I work professionally with Ember and even wrote a book on the topic of testing a few years ago (hopelessly outdated now, but was useful at the time).
I probably should have written a blog post during the call for posts recently and I don’t think I really understood why I didn’t until I read this recent thread. I’ll try and explain my thoughts below.
Contributing and Participating Doesn’t Always Feel Welcome
I feel like there’s a concentration of power within the community that can send a subtle, but negative message to others. It’s hard to express this without sound ungrateful for the hard work that a number of people put in on their own time.
Some of the comments made in the Slack thread resonated with me, however, so I’ll comment on them.
whenever myself or my friend comment on anything in slack we get knocked sideways by a handful of people and shouted down. We’ve kind of given up
I have also reduced my participation in the Ember Slack channel. I used to be very happy to help out with answering questions, but these days feel like questions are generally answered by a limited group of individuals and have felt like my input is ‘unwelcome’. That’s my interpretation and I may well be wrong.
We are participating less and less and focusing more elsewhere because of this
I believe you only get one shot at this and tbh I felt like my input was worthless
Or the person making the criticism doesn’t want to get involved in a row, so they just apologise and drop it, so no-one learns anything from the experience other than the OP who learns its best just to keep quiet.
When you get into a situation where folks feel dismissed, they are only going to tell you once if they even bother to tell you at all. Most people don’t care for being confrontational and will withdraw. Their willingness to contribute is forever damaged.
Once this has occurred all future conversations are viewed through that lens. For prolific contributors on the ember slack, there’s a very real risk of folks becoming nervous about communicating with them based on any negativity they pick up. It’s a problem that compounds over time and is difficult to break.
It places a large amount of expectation and need on individuals to always be the peacemaker. As humans, with feelings, this isn’t an easy ask.
but I can attest to having conversations on here where the slightest amount of criticism immediately led to a) a borderline tribal level of defensiveness and b) adversarial responses, almost as if they were trying to “beat” me in a debate I didn’t even realise we were having
I’ve witnessed many a pile on when someone asks a questions or makes a ‘controversial’ comment. I feel like we need to teach good behaviours around how to encourage and respond to feedback without it turning into festivals of ego and bad will.
Concentration of Power
Ember currently feels like a hobby for a select clique - I can’t base my career on that.
I’ve seen people getting a bit too defensive over fair criticism (which is very subjective admittedly, but fair to me because I see it too) and as a result the replies are sometimes… less than optimal
I’ve been a contributor in a limited way across a number of Ember libraries and addons. The depth and breadth of addons available for Ember users is amazing. The overall level of quality is very high, particularly for libraries that are mostly maintained by core / almost core team members.
The downside is that there’s been a gradual concentration of power (not sure this is the right word, others could be responsibility, ownership or authority) with a limited number of people. I feel like we need to have a conversation about how we can share some of the ‘power’.
It feels like the community is now, to some degree, owned by LinkedIn, in that a few of the most prolific contributors to Ember are employees. Broadly, I welcome these folks and cannot underemphasise their amazing contributions. The downside is that there’s fewer places for other folks to get involved (whether or not this is the reality, or simply a perception).
The other downside that I’m perceiving is a concentration of decision making with folks in North America. The reason I see this as problematic is that most of the core team are based in the US and there doesn’t seem to be a clear pathway for folks from other parts of the globe to participate. Communicating with folks who are geographically and temporally close is clearly the path of least resistance.
My primary concern with the concentration of authority is that it gives the impression that the in-group are the only opinions that matter. Practically speaking, that’s the path of least resistance and I can certainly see many benefits. Being able to get a diversity of opinion and perspective, however, can tend to be missed.
I’ve seen two contributor workshops run at EmberConf in the past two years as paid addons. That adds a significant financial and travel burden for folks to participate. As a open source framework that wants to gain more traction, I feel like we need a greater focus on providing better opportunities for folks outside North America to participate and contribute. Perhaps there already exists such programs, but if they do, I’m unaware.
It feels to me like we’re losing the diversity of opinions and perspectives that really drove some of the best parts of the framework and the community in earlier years. I believe it’s a risky place to be and takes lots of conscious and active work to prevent.
Loss of Momentum
Concentration of decision making power leads to a loss of momentum. A recent example personally has been contributing back some code I worked on that added abilities to an ember core library. Broadly speaking the PR has been well received, some changes requested and addressed, but since then, I repeatedly had to prompt for “what’s happening here?”. It’s still not merged or rejected and a month has gone by.
I don’t believe for a second that it’s malicious or careless, but it does point to an availability issue. A person can only do so much and when it gets too much they have to either drop things or delegate some power to other folks to help out.
I see an increasing number of outstanding issues and PR’s across various common libraries and that starts to look like stagnation.
As a community, I feel like there needs to be a concerted effort into identifying the next generation of contributors and mentoring them to the point where they are given approval rights to the various libraries.
Thanks For Reading
Hopefully if you’ve made it this far, you’ve been able to give the most charitable interpretation to my feedback.
If anyone is confused, let me be very clear. I don’t think ember.js is bad, nor the core team or the folks who make such big contributions to the ember Slack. I’m sharing my observations and concerns to provoke a discussion of how things could be better.
Frank feedback is often uncomfortable, and for that I apologise. Know that this feedback is given from a place of respect and concern.