In early 2012, Sean Ewington, Jeff Hadfield, Chris Maunder and I started a discussion about one area where we felt CodeProject was, perhaps, not living up to its potential for the community. Specifically, we wondered what CodeProject could do to help women embrace programming in greater numbers - helping women enter the industry and supporting women who are already in the industry.
Being guys who already work in the industry, have access to one of the largest (mostly male) online programmer communities, and work with world-class content publishing tools and discussion forums, we figured it would be easy. Just a build out a new ... er, maybe spin up a forum for ... um....
Maybe it wasn't so simple after all. And maybe we ought to ask actual female programmers what *they* needed.
And we found out that there was a lot we didn’t know.
The Advisory Board
We knew there were smart, resourceful women out there, already doing the work, and we wanted to tap their expertise. Some were founding outreach and educational programs, introducing women to the fun (and occasionally profitable) world of coding. Others were teaching the next generation of computer scientists and researchers. Still others were established developer pros, building businesses and writing world-class software.
So we set out to find a group of such women who could take time out of their busy schedules and share their expertise with us. The idea was to create an Advisory Board for Women in Technology.
The board members would share their stories with us: how they got involved in software development; the frustrations and successes the encountered along the way; how the developer community helped (and hindered) their professional development; and the kinds of tools, resources and community support they hoped would potentially assist the careers of other aspiring female programmers.
We were fortunate to get the support of the following women in setting up our Advisory Board:
Susan Buck - Co-founder of Web Start Women and lecturer at the Harvard Extension School.
Susan Epstein - Researcher and professor at Hunter College Department of Computer Science, specializing in AI, machine learning, and human-machine interaction.
Vanessa Hurst - Founder of Developers for Good, co-founder of Girl Develop It and a former data and analytics consultant at Paperless Post. Vanessa is also an advisor at Ohours and Hirelite.
Lynn Langit - Co-founder of Teaching Kids Programming, developer evangelist, teacher and author.
Tracy Pesin - Lead mobile engineer at bitly, previously director of mobile engineering at Major League Baseball.
Lauren Roberts - Freelance software developer, former computer science educator, and long-time, active member of the CodeProject community.
I spent much of the spring talking one-on-one with each of them, developing background for understanding the issues and further research on my own part.
During late summer, we held our first board meeting. I mostly stayed out of the way and let the board members dig deeper into their diverse experiences in technology and the programmer community. The rest of this article summarizes some of the key points discussed, issues of concern for the developer community in general and ideas for moving forward.
Talking About Women in Tech
We started the discussion with thoughts on outreach to women: what works well, what doesn't seem to matter, and what happens after we get people involved in the first steps of learning to program?
Opportunities to Learn
Susan Epstein, who spends much of her time as a graduate advisor and leading research teams in an academic environment, noted that it's hard to recruit women into tech programs.
"In my experience, presence, being out there, attracts interested women," added Susan Buck, whose background also includes university level teaching, but also has the experience of direct outreach via her involvement in Web Start Women. "There are more women in our [university] courses," too, thanks to actively courting female students.
Outreach is the first step, agreed Vanessa Hurst.
Where are these female students coming from? The board members involved in teaching all agreed that there were a variety of motivations. Some women taking courses were new to programming and just expanding their knowledge. Others were young women trying out a potential career choice or working people expanding skills that could be relevant to getting (or keeping) a job.
Buck indicated that in the university setting, she saw women taking interest in programming for design and journalism courses in addition to Computer Science-related programs.
What happens to these women after taking courses through grassroots programs like Web Start Women and Girl Develop It?
The experience of our board members is that some women are grabbing the opportunity and continuing with active, professional projects. However, it's a small fraction of the total number of students attending the courses.
"We are not a substitute for college education," said Buck about these grassroots, learn-to-program efforts. "We're starting them early, getting in at the roots. We're watering what interest is growing up already."
A Place of Our Own?
Among the board members there was general agreement that the software development community is not welcoming to women. Some of this starts early in a girl's life, even before school, and is tied into larger, societal gender equality issues.
We didn't want to discount these issues — they're important! — but felt they were a bit out of our wheelhouse. Instead, in the context of the CodeProject Advisory Board, we focused on the specific issues of women getting a foothold in technical professions, specifically software development.
If the online developer community is male-dominated and not particularly inviting, should women find their own space? And more specifically relevant to a community like CodeProject, would a female developer-specific discussion space be helpful?
Lauren Roberts thought a segregated, walled garden wasn't the answer. "The dicks are still out there" and, eventually, working programmers need to deal with people in the larger world — the nice and the not so nice.
But it does, perhaps, help to have a space where women are seen to be doing cool stuff.
Programs like Girl Develop It and Web Start Women are providing more resources, and higher-profile examples of accomplished female programmers, and marketing the programs primarily to women as a place where they can go together, support each other and learn something new.
Vanessa Hurst, however, was quick to point out that these are not exclusively women-only events. Many men do attend and the courses are judgment-free, but putting the focus on women intentionally reverses some expectations about the setting. Using female teachers most of the time also changes the dynamic because of the way they control the classroom and how people respond to them.
This contributes to a better learning environment for someone who has the experience of being intimidated to ask a question.
Tracy Pesin had a different experience than many in her career, not feeling that gender had been an issue in the teams on which she worked. But she did see more general problems with intimidation and one-upsmanship in the industry. "A separate space with different values (that goes beyond gender) is useful," said Pesin. "A place to ask questions without judgment is really helpful. No 'RTFM'. An opportunity to communicate differently. Being confrontational is not part of it. We need more collaboration."
One problem facing outreach efforts is scaling them beyond the classroom. "In-person is great," says Buck, and to some extent they extend the reach of these efforts up by "helping to organize individuals to scale out into local person-person groups."
Girl Develop It, for example, has set up a local presence in Austin, Columbus, Cincinnati, Detroit, New York, Ottawa, Philadelphia, Pittsburgh, Raleigh-Durham, San Francisco and Sydney.
But that takes a lot of work from dedicated people on the ground. While helpful in promoting a strong, supportive women-oriented developer culture in those communities, the impact is somewhat limited.
In a similar vein, Lynn Langit explained that, while she does get regular offers to speak at conferences, she increasingly felt the benefits of having an expert woman on stage weren't working in favor of the larger community. There were large costs in terms of travel and preparation, but a relatively small audience (of mostly male conference attendees) received the benefit.
"Online scales out [better]," explains Buck. "We're working on that."
"This problem has not been cracked yet: allowing women to be experts in context," says Hurst. "Instead we have really strong silos of expertise. How can they be accessible? How can we magnify technical voice, not just community side?"
One solution may be sites like Confreaks, which provides recordings of conference talks, and Langit has been releasing more talks on YouTube instead of attending conferences.
"At two major conferences I recently attended, women were 3% of the speakers," says Epstein. "Any way you can make women visible on the web is a step forward."
Buck ads that, "Potential students are more open to the opportunity knowing there may be women teachers. When looking for help, if the face of the person giving help half the time was a woman, that would help."
Beginner to Expert
Scaling out in the sense of getting more women involved in programming is only the first step. As you've seen, much of the early discussion focused on outreach to people new to coding and creation of opportunities for first steps in software development. To be successful, outreach efforts also need to scale in terms of expertise.
Several of the board members observed that one aspect of scaling up the outreach opportunity involves including opportunities for more experienced and expert developers. "A beginners-focused forum is less interesting to me," says Pesin.
"It's important to make an impact on beginners, but to be interesting in the long run we need the ability to get more technical while still reaching beginners," says Hurst. "Critical mass is important to get answers."
From a practical perspective, programs to teach a new generation of female programmers need the support of experienced coders as teachers and mentors.
Coding communities also need opportunities for new coders to grow beyond the beginner stage. Teaching "Hello, World!" is one thing, but for continued success, the community also needs to support ongoing skill development. As we know, there's more to being a professional developer than writing a few lines of code. Architecture, design patterns, testing and debugging are just a few of the tools beginners need to learn.
For those women who've made careers in programming, Langit suggested that "just having technical women contribute is not sufficient. The ability to build visibility and reputation is also important."
The online world is already making strides in this area: sites like CodeProject, CodePlex, Github, LinkedIn, StackOverflow, YouTube and others all make sharing expertise and getting involved at any level easier.
There are still hurdles in moving from the beginner level, however, and there's room for women-focused groups to provide guidance and support.
One-on-one mentoring is an area where some of the more experienced female programmers can make a significant impact on the new generation of developers.
"It's nice to have someone to have lunch with, someone you can call in frustration," says Epstein. "It's not a question of how many hours [you commit to mentoring], but how much accessibility you can offer."
Hurst adds that "the difference is often ... knowing you can ask dumb question or admit you don't know what you're doing. Stories that won't be shared publicly can be shared in one-to-one conversation."
The key is chemistry, hooking up mentors and mentees who have shared goals ... and just get along. This can be territory for some communities, but can be overcome.
Mentors don't need to come from an elite corps of expert programmers. "The best mentors for female students are (slightly) more experienced women — a freshman with a sophomore, for example. It's a big job to do right," says Epstein.
"It helps to have a context to what you want to be mentored about. A mentor is not necessarily a role model," notes Hurst. "If either side hasn't been clear in expectations it can be a problem, but people with similar goals can work together on their shared goals."
Many people think they can't mentor, have nothing to share. That's not really the case. Shared values, well articulated goals and chemistry are the basic building blocks for setting up effective mentoring relationships.
It's even valuable to "set up peer-mentoring relationships between people who are at same stage in careers," says Hurst. "They help each other reach similar career goals by sharing their varied experience."
As we stated in the opening of this article, understanding how to improve the participation levels of women in software development isn't such a simple problem after all. There was a lot we didn’t know, but we *did* learn a great deal by asking
women what they needed.
It turns out that simply firing up a new server, launching a new forum or launching a new site isn't the answer. We can't just flip a bit and magically make everything better.
However, CodeProject is about community and sharing common goals: "to learn, to teach and to have fun programming." That's our mission, to "come together to share source code, tutorials and knowledge for free to help... fellow programmers."
Our first step in this ongoing process is this article and sharing the knowledge and experience of the CodeProject Advisory Board for Women in Technology. We hope everyone in the software development community — and in the larger STEM community as well — can use this information.
As an example of what's happening since we started this project, and how you can get involved, too, here are some of the new work started by our Advisory Board members since we met them:
Web Start Women launched Codagogy, bringing their successful in-class curriculum to online, collaborative web development courses.
Vanessa Hurst is starting up CodeMontage, a program that mentors post-beginner programmers working in open-source, community-focused projects as a way to improve their skills and professionalism while building a portfolio and doing good.
Sara J Chipps, who co-founded Girl Develop It with Vanessa, is working on The Levo League, a community for Gen Y women looking for mentoring, jobs, career advice and peer networking in technology.
Lynn Langit is continuing to develop Teaching Kids Programming with free, open-source courseware designed to introduce children ages 10 and up to programming and video-training for teachers.
For more learning, organizing and networking resources, see our Women in Technology Resources article. If you're working on outreach or mentoring projects for female developers, please let us know about it in the comments.
Thanks To Our Advisors
We'd like to close by thanking our Advisory Board members again. They all took time out of their busy schedules to speak with us and share their experience and insights.