We all crave human interaction, especially when it sometimes becomes scarce like in the past couple years. And when we can't get our dopamine hits from warm, thoughtful conversations we'll settle for angry flame wars instead.
I run the State of JavaScript developer survey (it's open now, go take it!), and as the conversation around the project has become higher profile, I've had the chance to notice a few toxic behavior patterns –not only in others but in myself as well!
So whenever you feel your teeth clenching and your heart rate spiking, you might want to check if you're engaging in any of these bad behaviors yourself.
Note: I also previously wrote about the other side of the coin, how to better take online criticism.
Dismissing Other People's Experience
People are only jumping on the Foo.js bandwagon because of all the hype! You don't need any of this fancy stuff!
Let's start with one of the most common toxic behaviors you'll see developers engage in: dismissing others' opinions when they don't coincide with theirs.
If someone tells you they appreciate a particular piece of software, chances are it's solving a very real problem for them. Proclaiming they're just "following the hype" is condescending, and shows a lack of curiosity for the other person's point of view.
Maybe you're not experiencing that particular problem yourself, or maybe you've already developed your own coping strategy that has by now become second nature. In any case just because you're not aware of the problem doesn't mean it doesn't exist.
Forgetting the Human
I don't think I've ever seen a worse piece of code than Foo.js! My 7-year-old could write a better library!
We spend a large part of our lives interacting with huge corporations that do everything in their power to hide away their human elements and confront us with a digital corporate blob instead. As a result, it's very easy to forget that not all online interactions fit that mold.
If you're yelling at an open-source maintainer on GitHub then that's a real person whose day you've ruined. And just because someone has tens or even hundreds of thousands of followers doesn't mean they won't react just like you would to a nasty tweet.
We all need to vent sometimes. Just make sure your venting isn't in turn causing more stress elsewhere!
Seeing Corruption Everywhere
Why so many videos about Foo.js? I bet you're taking money from BigTechCo, it's all rigged anyway!
Similarly, because the behemoths that surround us deal in billions of dollars, it can be tempting to think everybody in tech is swimming in money.
But the truth is that the vast majority of open-source contributors and maintainers give up their time without seeing a cent in return, and the same goes for many bloggers, podcasters, or YouTubers. As you might imagine, this makes these accusations of corruption or greed all the more hurtful.
And for a well-documented example of what can happen when this conspiratorial mindset takes hold in a community, look no further than Gamergate.
Feeling Entitled
Why would I pay $5 for the Foo.js update when there are far better libraries out there for free?!
Would you ever step foot inside a restaurant solely for the purpose of informing them that their prices are too high, and you won't be dining there today?
This kind of behavior would seem totally out of place in daily life, yet for some reason we engage in it all the time online!
If you don't want to pay $5, or sign up, or leave your email to access some kind of service then just don't do it and move on. If you really feel some kind of obligation to let someone know about it then leaving a respectful GitHub issue or sending a nice email is fine too. But anything more than that will just make you seem entitled.
Looking for a Fight
I saw you were talking about Foo.js, and I can't believe anyone could have such a stupid take.
It's fine to engage if someone directly mentions you and expects a response, but don't go actively searching for things to take offense to.
Sometimes people are just trying to let off steam by screaming into the void, and having the void scream back to go fuck themselves can feel very jarring and stalker-y, no matter how hurt the void's feelings were.
Note: this is one I struggle with a lot myself!
Calling People Out
Look at what that idiot is saying about Foo.js!
Whenever you quote-tweet someone instead of replying to them, you're essentially trying to bring down some good old mob justice on them and boost your own ego in the process.
If you really want to engage in productive discussion then no need to bring all your followers into it. In fact, for sensitive topics I've often DM'd or emailed the person I disagree with rather than engage in public debate to avoid exposing them to potential third-party abuse.
Only Judging the Outcome
How could Foo.js lack such a basic feature? It shows how little you care about your users!
When we judge something we see online, we're often only seeing the tip of a much larger iceberg. Maybe that developer spent weeks trying to implement that feature only to give up because they just couldn't make it work.
Or maybe that product designer fought meeting after meeting to fix that one annoying issue you brought up, but got shut down time after time due to lack of resources.
The point is, it doesn't hurt to do a little bit of background research before lobbing a truth bomb, just to make sure you have the right target.
Taking Righteousness Too Far
Foo.js isn't even properly accessible! It really shouldn't surprise me from someone like you!
Just because you're on the right side of an issue doesn't mean you should be an asshole.
Sure, some anger is understandable when it's a topic you care deeply about, and I'm not trying to engage in tone policing here. And yes, shame can be an effective tool to change someone's behavior.
But let's be honest here: in the vast majority of cases, whenever we choose to dunk on someone instead of engaging with them in a more constructive manner, what we're essentially doing is prioritizing our own satisfaction over actually trying to make things better.
We're All Toxic
Don't get me wrong, I'm not trying to call out anybody specific as a "toxic person" here. Instead I believe these are patterns we all fall prey to from time to time – at least I know that I've personally engaged in every one of these behaviors at some point.
All I'm hoping is that maybe if we're more aware of these pitfalls, it'll help us avoid them.
And if you think I'm wrong… well then you're obviously just a paid corporate shill who blindly follows the hype and doesn't care about your fellow human being, and I can't wait to tell my Twitter timeline all about you!
Photo by Dan Meyers on Unsplash
Top comments (19)
Good read! You forgot "Sending Calendy invitations".
This is both a hilarious comment, so kudos — but just for the sake of this post — could also be an example of a type of toxic behavior which I think is probably more about Twitter's algorithms than anything the community can change on its own— but effectively I think one type of toxic behavior is the "pile on", or the endless "dunk".
Basically — one person had a really awful take, which people were right to disagree with, perhaps right to make fun of (given it's the Internet, can't take that away), but the level of piling on and dunking was kind of absurd.
It's like — maybe that person deserves a bunch of feedback — but tens of thousands of people yelling at them the right amount?
This is a tragedy of scale more than any one toxic individual (though I'm sure this wasn't without that). IMO Twitter really needs to get a handle on the way they help virally promote "dunkable" moments.
Agree, original comment was funny and I appreciated the joke, like you.
But you make a good point. Twitter allows for certain mistakes to get way overblown. I feel bad for people who go through that, even if they expressed a terrible opinion originally. We need more grace and forgiveness in this vicious world of social media. We need to just be nicer to each other.
I've stayed away from Twitter but now that I work in DevRel, I've made an account and I like that I am aware of these Calendy-type current events, but I'm also disappointed on a daily basis by some of the outright condescending and toxic discussion on there.
This is a really excellent post. So well written, and so true. Nobody is perfect, and you're not asking us to be, but you're reminding us that we need to keep each other's feelings in mind. We need to be a little nicer.
The dismissing others' experience one really spoke to me. Senior devs (in my experience when I was a junior dev) sometimes will say to juniors who are excited about new frameworks or tools, "Oh that's just like blah blah blah..." (some tool used back some number of years ago or "none of this is new, we're all just doing the same thing we've always done". I don't agree with that statement and it always made me a little sad. We may recycle some ideas as devs but we are always working towards doing better, building better, and evolving the technology, even if we go back to things that worked well before (perhaps now I am dismissing their experiences, oops! Better reread the article.).
Yeah it can definitely go both ways! I've seen it happen a lot around single-page web apps for example: one group is like "Rails and jQuery worked great, we don't need any of this Redux-React crap!" while forgetting why the SPA pattern emerged in the first place; while the other group goes deeper and deeper in their rabbit hole without acknowledging the increased complexity.
Interestingly enough I feel like with this specific example we're kinda starting to go full circle with tools like Remix or Astro that try and learn the lessons from both groups and build something even better.
It's always a worthy endeavor to try and be better.
Great article.
In some developer communities, I did encounter entitlement, discrimination, misinformation, bias and some really mean folks.
And coding-related subreddits are one of the most toxic communities I've ever seen.
But focusing on the negative parts will drain your energy and make you cynical about life.
I think polarising and toxic posts also garner more reactions and are therefore more self-selecting? (think the loud minority)
on the other hand, I'm grateful that people on this platform have generally been awesome
One possible source of toxicity might be corporate culture. I experienced many developers would love to develop their own solutions or at least choose which tool to use, but someone else already decided they must use framework X with bundler Y. Starting sceptical, turning frustrated after checking out open issues and seeing their Stackoverflow questions being deleted before anyone could answer.
It's still wrong to act negatively against the creators and community but the root cause of that toxic energy happened long before engaging in the community, and just shutting up and using another solution is not an option for many employees.
After becoming guilty myself, as a "hater" of Webpack, React, and CSS-in-JS, I quit corporate culture to become a self employed developer and decline every inquiry for React developers ever since, happy to find out what's possible with Vue, vanilla JS and modern (S)CSS.
I also created a devRant account, so hopefully my contributions to DEV and GitHub have become positive and grateful again.
Yes I think you're right, when you transpose the behaviors of corporate culture (venting at the water cooler, feeling oppressed by the hierarchy, etc.) to the online space it often doesn't quite work and becomes toxic.
This was a very good read.
We need more posts like these to keep reminding us how to be better.
So true 😁 it's really good to think about our behaviour in open source community. Specially when answering someone's question that looks dumb.
Sometimes people say "sorry for my dumb question"
In my opinion , every question , at any context and at any time , has value because not everyone are the same 😁
To be fair, Foo.js is often an inferior implementation of an old idea. I’m not sure if it’s the lowered barrier to entry, but JS developers seem to have collectively short memories. I’m expecting to see a mainframe.js any day now.
“Calling it out” is definitely inappropriate, but there is a conversation to be had about what exactly we want to achieve.
(No hate, my whole career is built on JS :) )
Brilliant post!
I often notice that some people have a terrible inability to think outside their own box. They tacitly assume that everyone has the same task to solve as they do. So, they tell you, a Corvette is a bad car, because you cannot buy a roof rack and a trailer hitch.
If you'd know how much I ignore TOXIC people on #php topics?
Yeah, the guys they are ask for ask a question are missing. :)
Thank you for the article! A very relevant topic! I often encounter this. I agree with you and try to comment correctly :)
Good article; always good to remind others that people are humans and should be treated as so...redundant but sadly forgotten at times.