I’m not helping

I just arrived home from the Realtime Conference in Lyon, France. It was a terrific event full of interesting people talking about a diverse range of topics in beautiful surroundings, and I’m hugely grateful to the organisers for inviting me. I could wax lyrical about some of the technical things I learned there but I’m going to focus on the topic of Adam Brault’s incredibly honest closing speech, and a topic I rarely discuss here: people.

RealtimeConf was just one in a series of events I’ve attended recently where I got to talk to people about their experience of community events and interpersonal relationships. I hope I can write something about community in general in the future, but this post is about me. I apologise in advance for the grotesque level of self-indulgence here but I need to put this on the record. I have not named anyone who informed this article through one-on-one conversation with me; I am tremendously thankful for their input and if you recognize yourself in this story and I have misrepresented you, please let me know and I will make corrections.

So. I don’t know of any way to say this without seeming boastful or pretentious, but: I have somehow become moderately well-known in the JavaScript and Ruby communities. What I mean by that is that it’s not infrequently that I meet people who ‘know me from the internet’, because of my open-source projects, my blog, conference talks, or my Twitter feed. Actually, particularly my Twitter feed. People tell me they like my rants, or ‘diatribes’ as one friend put it. And indeed I’ve met various great people, and through some slightly bizarre circumstances, made some in-real-life friends because people find my verbose streams of incoherence on matters technological entertaining.

But on the other hand, I’ve been called out by several people for being too negative, too angry, for swearing too much, for disparaging other’s work without constructive feedback, for posting too frequently, and generally making people feel bad. And before anyone feels obliged to leap to my defence or tell me you can’t please everyone: these are all valid criticisms. I’m a nasty person sometimes. People see different sides of you, and have differing opinions of those sides, but the aforelisted behaviours are matters of observable fact. I do those things.

Okay, James, enough with the navel-gazing. Why does any of this matter?

The thing about being well-known is it creeps up on you. It’s very hard to tell, when you walk into a conference hall full of strangers, how many people know who you are. It still comes as a surprise to me when people have heard of me or know my work, and I still feel as anonymous walking into a venue as I did at the very first developer conf I went to in 2007. But the illusion of anonymity soon fades when people come and introduce themselves.

I’ve met a lot of new people recently. RealtimeConf was my third conf in as many weeks, I’m going to another next week, and at the beginning of March I did /dev/fort. And several of those people have had a reaction somewhere in the region of: “wow, you’re a nice person in real life”. Now I won’t claim that’s always the case either, but it’s certainly disappointing to find out that people’s expectation, based solely on following me on Twitter, is that I’ll be a sarcastic, negative troll who’s no fun to be around.

While it sucks to find out people are apprehensive about meeting me, the straw that broke the camel’s back is something another one of the speakers told me yesterday: they were nervous about giving their talk knowing I was in the audience. My reputation for mouthing off about the minutiae of software made someone worry their material would risk setting me off. It’s one thing to know I might not get to meet someone because I put them off, it’s another to know they’re having a worse time on stage on my account.

Public speaking is regularly listed as many people’s greatest fear. As Adam Brault said in his talk, “your heroes are all scared, too.” It’s so true. I don’t know anyone who isn’t at least nervous about speaking in public. I know some remarkable speakers who have almost paralysing fears about what will happen on stage. I’ve seen friends pretty much pass out from exhaustion after presenting. Me, I feel nauseous for about an hour beforehand, I have to pee every five minutes, I sweat like crazy and I’m scared I’ll go into panic attack on stage. Oh and I stuttered as a child and it comes back when I’m not confident in what I’m saying. I don’t know why any of us choose to do it sometimes, and I have huge respect for anyone that even tries. I want the person on stage to know that, and not instead feel scared that I’m looking for ways to trip them up.

I’m ecstatic if I get one laugh during a whole talk. It’s the only way you know the audience is on your side.

Anyway, to get to the point. I make software and give it away and answer people’s questions about it because those are the best ways I have of helping people. I want people to expect that I’ll want to be helpful in real life, but that’s not the signal I send out sometimes. I’m sorry about that. Context matters, and I’m sure I’ll still indulge the people I know are comfortable with my snarkiness when I know I’m talking directly to them, just as good friends are allowed to insult each other without getting hurt. But I ought to remember I’ve not met most of the people who follow me, and some of them look up to me for my programming work. If you only know me from Twitter, you’re mostly seeing my angry side.

One of the biggest lessons I’ve taken from talking to people about community is that it pays to be up-front and explicit about what you expect from people and what they should expect from you, even when (or maybe especially when) those expectations seem obvious. In that spirit, I’m asking anyone that follows me online to tell me when I’m overstepping the line. Don’t hold back because I’m an ‘expert’ on something or because you think I’ll get defensive. Several people have done this in person in recent weeks and I was grateful to everyone one of them. I’m tired of being the angry programmer from the internet, so I have to change people’s expectations. Telling me when I’m getting it wrong helps that.

Hopefully next time I meet one of you, you won’t be so surprised.

If you’ve enjoyed this article, you might enjoy my recently published book JavaScript Testing Recipes. It’s full of simple techniques for writing modular, maintainable JavaScript apps in the browser and on the server.