Men are from Mars, Women are from Venus, but..
I’ve always simply accepted that there are few female software engineers, assuming this was no more than a manifestation of the theory that “men are from Mars, women are from Venus”.

Woman: Software development needs you

There are, after all, plenty of psychological experiments confirming the commonly-held stereotype that men are better at reading maps, and women are better at communicating. Recently however, I came across a chart that has caused me to question this assumption:

http://www.npr.org/blogs/money/2014/10/21/357629765/when-women-stopped-coding

Clearly something has changed over the last 30 odd years. I don’t believe programming per se has changed fundamentally, but rather the working culture seems to be less attractive to women today.
It would seem there should be no fundamental reason why we do not have at least as many female programmers as we do doctors and lawyers. Software would also appear to be almost unique amongst the professions in having gone backwards in recent years with regard to gender equality.

If women are being frustrated in pursuing what would be their chosen career, then that is bad enough. The more so, since as a relatively well paid career (and gateway skill into entrepreneurship – Mark Zuckerburg, Larry Page, Sergey Brin, and Bill Gates to name but four programmers turned billionaires), the lack of women in software will depress women’s average earnings as compared to men.

In fact I think there is yet another reason to be concerned. Software development – and by extension all companies which depend upon it – is suffering from a lack of women.

..Programmers are from beyond the Asteroid Belt

The psychologist Simon Baron-Cohen (http://en.wikipedia.org/wiki/Simon_Baron-Cohen) believes that autism is best understood not as a single condition, but rather a continuum that extends directly from what we consider typical male behaviour. It’s characterised as extreme male brainess and referred to Autism Spectrum Disorder (ASD). That’s not to say women don’t suffer from autism, but it is in much smaller numbers than men.

If you’re curious, you can take the test – http://en.wikipedia.org/wiki/Autism-spectrum_quotient .

Typical characteristics include sensitivity to interruption, pedantry and obsessive behaviour. Which is interesting as when you start perusing Programming Reddit (http://www.reddit.com/r/programming/), you can see much of this on show from professional software developers. Incidentally, ASD is correlated with higher income – no doubt the software industry is a major reason for this.

You might argue it has lead to the creation of a special class of go-betweens – a.k.a. product management. Typically you don’t see such staff in other professions such as architecture, medicine, or law where the practitioners instead work directly with clients. Generally speaking, connecting software engineers and users is frowned upon in the industry. They just don’t speak the same language.

Whilst there are sadly lots of instances of misogyny in software, I’m not sure there are more than any other field. There is, however, an undercurrent of what “brogrammers” consider normal that isn’t the same normality most women inhabit. One development shop I know has a giant image of the Death Star from Star Wars on the wall, and I admit I do personally think it looks cool. But decking out the workplace in the manner of a 12-year-old boy isn’t going to cause women to stampede into the profession.

Lost in Translation

Where this becomes an issue is that programming is really translation, but that is not how most programmers see their role. By translation I mean that the overwhelmingly important factor is accuracy – achieving the users’ aims – not writing elegant code or prose. It’s the ends not the means that count.

When the US President meets with the Chinese Premier, it would not be good for the translator to throw in some of their own opinions into the mix. That’s not to say the translator can’t have an opinion on politics, but it’s not what they are being paid to do here.

The reality of most business commercial software is that it’s a well-trodden route. Just as most architects don’t get to build the Shard (try a bedroom extension instead), most doctors don’t get to find a new tropical disease ( “it’s a cold, take some aspirin and rest”), and few lawyers get to work on high profile criminal trials (house purchase and divorce cases are the real bread and butter), few programmers actually get to work on particularly novel stuff. Most of the time it’s a simple forms-driven database app. From a technology perspective whether it’s accounting, CRM, or a dating site, it still comes down to a screen and a database call.

In these situations, you don’t want the professional to start experimenting – “I read that potassium nitrate might be good for arthritis, so I thought I’d try it on you”. You don’t want a display of creativity from your accountant: “it would have been totally awesome if the IRS had fallen for this”. You want the professional application of accepted, tested, and understood principles. Grey hair, brass plaques. Certainty. Predictability. Repeatability.

So does this imply most professionals are simply dullards mechanically shuffling scalpels and set squares with all the enthusiasm of an assembly line robot? In fact they enjoy not just the mechanics of the profession, but also helping people. I myself get a buzz when people praise the product I’m working on. That’s the reward – not that I solved some deep academic problem to achieve it (and certainly not an artificially constructed and self-inflicted one).

Business programming should not be bleeding edge research. Unfortunately today, we have a culture in software development that is based upon the exploration of the latest technology – so-called “Boredom-Driven-Development”. Tremendous fun, but couple the need for a learning curve with version 0.9 software, and you have formally given up all hope of schedule estimation. This is just a killer for the business.

It’s my belief that software development needs to change from being a black box within which it’s practitioners undertake semi-directed play, to a fully integrated business department which does, and most importantly, repeatedly does, things for other people. In short it needs to become “normal”. The reward is not respect from peers as to how sophisticated your code is, but a simple “I couldn’t have done my job without this” from an actual user. That’s the real definition of good code – the sort people use, the sort that works.

Women: Software Development Needs You!

The culture needs to change, and a key first step is in bringing in more women. People who can listen, and who don’t derive their sense of self-worth from an ability to find yet another new way to skin a cat. I believe that more women in software and a culture of

more communication and a service-oriented view of work go hand-in-hand. One will attract and drive the other.

Correcting an imbalance that has been 30 years in the making will not be easy, but the first step is to not just recognise the issue (which I think most people do), but also to refuse to accept the status quo (as many people, including myself, all too readily have done), and pro-actively work to bring more women into the industry. It starts with schools but business has its part to play too.

I hope we can look forward one day soon to the idea that a female programmer is no more remarkable than a female doctor or lawyer, just like it used to be in the beginning…