The recent blogstorm on women in tech got me thinking about how I ended up in the software business, why I've stayed there and how that field can attract the next generation of young women. For concrete steps you can take now to get more women into your dev team or tech event, see Mary Fodder's excellent comments over at Techcrunch.
My father bought a Sharp computer (complete with cassette deck) one Christmas during the 80s. I remember spending hours on it playing games and programming in Basic. It was fun but computers more or less fell off my radar again until much later. At my secondary school there was a single PC for 500 girls. During my first year of university, computer science (which I'd been doing as a minor subject) accidentally became my main focus after I parted ways with Physics. I fell in love with the beautiful recursive programming language Lisp. Later, I studied Artificial Intelligence, a fascinating subject which involves a mixture of programming and the study of learning, cognition and the human brain. Since then I have worked on software to power machinery in Japanese steel plants, detect fraud in Telecommunications services, encrypt video signals and much more. Here are a few factors which influenced my choice of career and how they could encourage another generation of girls to seriously consider the software business as a career destination.
Early exposure to programming
I was lucky enough to have a computer at home as a child, albeit one that was shared with three sisters. While a laptop is a routine accessory to the Internet generation, programming one is not a routine activity. David Brin's lament on the loss of access to the BASIC programming language on PCs applies to girls as well as boys. Girls in particular, seem to be steered towards becoming consumers rather than creators of software.
Single sex environment
There is ample research which shows that girls perform better academically in a single sex environment. In my own case, I have no brothers and went to an all-girls school. When first introducing girls (in particular teenage girls) to programming, it makes sense to do so in single sex groups and with an initial focus on interesting applications rather than arcane language syntax (see next point).
Interesting applications
Women tend to be less interested in programming as an end or "game" in itself; they are interested in what you can achieve with software. Software is now essential in practically every area of human endeavour. Showing the range of areas in which software is used and how, from the space program to communications to medical research, could help pique the interest of girls.
Craft not Engineering
Although it's often called computer science or software engineering, most everyday software development is closer to a craft than an engineering discipline as argued by Paul Graham. It's also based on manipulating a language; a task at which girls are often adept. Emphasising these facts might help to demystify the field.
Creativity and Variety
There are few professions in which you can work on such a variety of different subjects as illustrated above or get a well-paid job almost anywhere in the world. Software development involves making something from nothing and therefore allows a wide scope in terms of creativity. Finally, there are plenty of roles in the IT ecosystem apart from development. Product and engineering management are two areas in which women excel.
Role models
Research has shown that role models are important to the career choice of girls. The popular image of a programmer as a socially inept young man is not something which appeals to girls. It's important therefore to highlight women like Marissa Mayer (VP of search at Google) or Caterina Fake (cofounder of Flikr) as examples of high-profile women in the software business. There's a great article by Tara Hunt on the invisibility of women in tech which includes a long list of female tech founders. Who knew, for example, that one of the founders of Cisco was Sandra Lerner who later founded makeup company Urban Decay?