On The Evil Of Stereotypes

I attended (one way or another) two events last week that got me thinking

The first was Girl Developers will Save the World - a session that had me a little confused as to whether that referred to me, or actual girls, i.e. those that are not yet legally classed as adults.  The second was the Remarkable Women Twitter party the following day.
Firstly, a caveat/disclaimer (as usual) - both events were useful, thought-provoking and overall worthwhile.  But the alarming thing to me was the number of times I heard "boys are…" or "women think…" or "girls prefer…".  And I know we often make generalisations to stress a point, but I'm becoming extremely wary of statements that group people together along some arbitrary boundaries.  

  • "Google+ failed because it's design by men for men" - no, it's because it's not designed for anyone.  Its only purpose was to compete with Facebook.
  • "Women are better at communicating and social activities" - what, all of us?  I'm better at communicating than every man I've ever met?  Than someone like Obama or Steve Jobs or John Stewart? 
  • "Women do better with female role models" - where are the statistics?  And do men do better with male role models, or do they do better with female role models too because women are so much "better at communicating"?
I'm not saying these statements aren't ever true.  I'm not even saying they're not true "most" of the time (although I want to see proof).  But any kind of strategy based on gross generalisations had better take into account the fact that these are generalisations, that they are based on Statistics1(and sometimes not even those), and that they frequently correspond nicely to things we'd like to think or we are trained to think.
Humans are great at categorising.  It's a survival skill - "yummy", "warm", "safe", "funny coloured = hurty tummy", "things with sharp pointy teethies like to eat me".  Without this skill we wouldn't have made it as a species.  And marketing people, who have to use psychology to get us to part with our money, understand this.  They identify trends and target their shinies to these trends (YuppieBaby Boomer, etc).  By identifying these groups and aiming at them, they make them real.  And since humans are a clan-based society, who (again for evolutionary reasons) need to fit in with their gang, these groups become aspirational.  Essex people drive BMWs and wear white stilettos?  I don't and I live in Essex, oh no! I'd better get on that right away, otherwise people will see I'm An Imposter.
So when people go around saying "Women are great at communicating", we believe it.  Those of us who are a bit sucky at it or maybe don't care about it wonder if we're aliens.  Or we believe we're great at it because we should be, and we don't work at improving our skills.  Men are terrible at cleaning?  Great!  I don't have to clean the toilet!  Women's minds aren't programmed for engineering because they're more communicaty than logical?  Fine, I'll teach physics instead of using it.
If I hear one more person say women don't do well in IT because they prefer more soft-skill-based roles, I'm going to scream. In that case, why are there more women entering accountancy than men? In that case, how do men ever get to manage people, and why does pair programming work so well?
If I hear once more that men put women off these roles because of the macho male environment, I'm going to drag that person through a tour of every office I've worked in - I'm constantly disappointed that my male colleagues enjoy football even less than than the girls I went to school with.
So, using stereotypes to try and address things like gender disparity in IT is not going to work.  The men in our industry are not beer-swilling, football-watching, womanising alpha males.  So why, when we talk about the missing women in our industry, do we assume they will be pink-obsessed, fashion-conscious, gossipy socialites who only hang around with other women?  Do you even know any women like that?  This is not Desperate Housewives, this is Real Life.

Really good marketing people don't target people as they are - no-one wants to be considered poor - you're a bargain hunter or great at identifying value.  Similarly, if you want women to use your product or  work for your company, you don't target to weight-obsessed, soap-opera-watching, child-caring fashionistas.  Instead you target how a person wants to be seen.  You might say using your product or working for your company makes a person look smart, savvy and awesome.  And who doesn't want to be all of those things?

Saying people in IT are sexy and intelligent and earn loads of money and have oodles of job options and can find work globally might be a compelling story for people.  Some of those people might even be women.  Some of them might even be the other missing minorities

Thinking in stereotypes can be damaging to everyone.  Gender stereotypes in both directions are so sweeping they are unhelpful, you can't categorise fully half of the world's population as one thing or another.  I hear men doing men a disservice by saying things that aren't even true for themselves, and the same for women.  It's something we're trained to do, and something the media loves to do.  But it's wrong.  

So the next time you find yourself saying "men prefer..." or "women are...", stop and think if this is actually true for all of the men and women you know.  And if it's not, just don't say it.

1Lies, damned dies and…

Overheard: Development Myths

Continuing the theme of Things I Have Heard I Don’t Think I Agree With.

To developers technologies are everything
I can’t remember the context of this but I hear the same sentiment in different guises over and over again.  Often from non-techies, but more alarmingly from developers.

Is this true?

It’s true for a certain tribe of techies, sure.  And creating and effectively using new technologies is an important part of what drives the current information age forward.  But I’d be worried if I thought that 99% of developers were like this.

In our day jobs, and also if we want to create something that makes any money, we need to be interested in solving people’s problems and creating solutions.  Sure, we’ll use technology to do that.  But if we were all only motivated by technology, we’d always be trying out the Next Big Thing when our customers wanted a simple CRUD web app.  Any organisation that encouraged this sort of technology um, infidelity?  playing the field? might find themselves with lots of fascinated and broadly-educated developers, but not a lot of productivity.

I always thought developers were drawn by wrestling with the machine to solve a particular problem, or to do something that hadn’t been done before.  I didn’t think we liked learning Ruby because we didn’t study it at university, or switching to a functional language simply because that’s the way the whole world is going.

We can train The Business to speak our language
I’ve heard a number of people talking about the Holy Grail of having business owners write acceptance tests.  At LMAX we have a (Java-based) DSL that theoretically could allow technical-ish non-developers to write our automated acceptance tests.  However, is this the right thing to do?  To make our jobs easier, and our code better quality, we need the business to become almost developers?

Our (very difficult) job as developers is to act as translator between the ones and zeros a computer speaks and the real life doman language our business guys (and girls) use.  Forcing the business to become more technical is just, well, lazy.

So if our business people shouldn’t be forced to become more technical, how can we bridge the gap?  Is there anything that we as developers can do to move closer to the business?

Ubiquitous Language"" is a good start.  When a business user talks about an order, a developer should be thinking about the Order class, or something that implements an Order interface.  When the business talks about placing an order, a developer shouldn’t be thinking “place order translates into the execute method”, they should assume there’s a placeOrder method somewhere they can use as a start point.

We certainly shouldn’t be training the head of sales to start talking in terms of Java classes or technologies - “I want the Resin tier to validate the order while the OrderMatcherImpl checks for availability”.  That would be silly.

Development is hard, that’s why they pay us.  And part of that hard job is learning the business model we’re implementing so we can mirror and support the business.  We shouldn’t be inflicting our technology on the business.

On Changing The Image Of Programmers

Gah!! This is exactly what I was talking about - it’s pink, it mentions shoes, and it’s about as patronising as you can get.

Would the chart be different if your possible outcomes were Bill GatesSteve JobsMark Zuckerberg, and Linus Torvalds?  I bet for a start it wouldn’t mention Jimmy Choos or choice of handbags.  And it probably wouldn’t be in baby blue either.

Which leads me nicely onto the next subject I have strong opinions on: Role models.  Why do we need them? Do we need them?

If there is any good to be salvaged from that horrific infographic, it’s that it gave me what I’ve been trying to research - some female role models in technology. Unfortunately it hit the other button I was ranting about earlier - they’re all very presentable and polished.  I don’t doubt their value as role models, it’s great to have people like that to try and emulate.  But surely there must be IT women out there who look like real people?  And how many of them started as programmers?  I know there’s a wider issue around women in technical professions, and women at the top of organisations in any business domain, but I’m trying to keep focused on the issues faced by girl programmers specifically.

Do we need role models?
I feel almost a responsibility to be a role model.  I joined ThoughtWorks because I felt it would give me a better platform for greater visibility, so I could show that girls could do this job.  I feel passionately that the industry desperately needs excellent role models to overcome the stereotypes kids are absorbing (in our western society) about what it means to be a programmer(/developer/techy).

My friend Mazz feels quite differently.  She doesn’t see why she should have a greater responsibility to be a role model simply because of her gender.  It wouldn’t be expected of her co-workers.  She suggests that by making a career in programming an option for all, or worse, by targeting specific groups (e.g. women) we’re devaluing the industry.  Surely we’re stronger if we only attract people who are interested in the first place?

During a week long trip to Vegas (it’s a hard life), Mazz and I realised we actually agreed on fundamentals:

  • Mazz doesn’t believe we need female role models to tempt women into programming
  • I believe we need more diverse role models than we currently have.
If Mazz doesn’t want to be a role model because she’s perfectly happy getting on with doing her job bloody brilliantly, then that’s totally cool - after all, if minorities are expected to do stuff which distracts them from their day job, it’s going to make them less appealing to employers.
My aim in being a role model was not specifically to get more girls into programming, but to show to the world that we’re not all speccy asexual white boys.  Some of us are speccy white girls.  And this shows the ridiculousness of trying to encourage girls to be role models - you’ve only changed one dimension. And having a token bisexual black disabled older lady is only going to narrow the field you’re appealing to.
So what do we need to change?
Back to the question that started this off - “what do we need to do to encourage the girls?".  The answer, it would seem, is not to roll out the girls, dress them up and parade them around.  After all, we got here with no female role models.  And we may very well have been put off by role models like us - a teenage Mazz and a teenage Trish would probably not identify with the heel-wearing blonde I’ve become, despite my all-round awesomeness.
When I worked at Ford they used to tell us a story about marketing.  They told us that Harley Davidson understood that to market something, you had to market it at the person your customers wanted to be.  A Harley is a statement, a lifestyle choice.  They focused on promoting that lifestyle, promoting the image of the Harley biker, all leather and macho attitude.  They knew that the majority of their customers were CEOs, lawyers, doctors.  Guys who’d made it in life and had the cash to spend. But if they’d marketed Harley Davidson directly to the stereotypes of these guys they would have lost their market.  These men did not buy a Harley as part of their CEO persona.  They bought them because they aspired to be the leather-wearing macho guy.
I don’t know how true that story is, but I do know Harley Davidson revitalised their failing business by focusing on creating a community around their brand.
So back to the question: How do we get more girls into programming?
And the answer is: We’re asking the wrong question.

The real question is: How do we attract more than just the “typical” geeks into programming?  

And when you ask that question, you realise it’s absurd to assume that attractive female role models and women-centered events are going to fix the problem, or even make any significant headway on it.  You’re narrowing your field of appeal instead of broadening it.  You’re being exclusive instead of inclusive.

Where can we find appropriate role models to represent us?

We have diversity amongst geeks.  We’ve got diversity along the typical dimensions (age/race/sexuality/gender etc etc).  But in addition we’re all individuals and we’re going to appeal to other individuals.  I might appeal to someone who likes shoes.  I might appeal to someone who likes photography.  I might appeal to someone who thinks Java developers should give a toss about the user experience.  I might appeal to someone who is massively OCD about the names of their variables.
We shouldn’t care what little boxes those people tick on the dimensions that make absolutely no difference to their ability to program.  In fact, if we focus less on this and more on our general awesomeness as geeks, we might find so-called minorities are happier to represent us.
Even with diverse role models we might have trouble getting the media to let go of their stereotype of the geek programming in their bedroom.  But we might not - I did a search for “geek” on The Sun’s website, and I found a lot more references to geek chic, and celebrities claiming to be geeks, than to stories of the lonely computer programmer who went crazy and killed everyone.

It is the time of the geek.  Let’s ride the wave and bring other people to the party.

So who should our role models be?

Everyone.

All of us.

You.