News for hackers. Stuff that matters.
Re:My Experiences as a Female Software Engineer by gvb on Sunday January 16, 2011 @09:00PM (#2110933)
The key quote: "It is also very intimidating to take classes where it seems like most people know all the material already and have been programming since middle school or earlier..."

The key to getting more females in CS is to expose them to programming in middle school or earlier.

Jean put her finger on why recruiting females for CS at the college level is so difficult: if they are starting programming in college (or even high school) when most of the class has been programming for years, they are way behind on the learning curve and have a daunting task to catch up.

Re:My Experiences as a Female Software Engineer by timr on Sunday January 16, 2011 @09:11PM (#2110955)
You've missed the most important two words of that quote: "seems like". She goes on:

"Something that frustrates me about the field of computer science is that there are a lot of jerks who think that just because they've "mastered" some programming language or know some obscure unix commands, they are gods and you are nothing."

And frankly, that's the level at which a typical CS freshman is operating. Lots of knowledge about "coding"...very little knowledge about anything else. The playing field is much more level than it initially seems, but because the CS 101 classes are mostly about writing toy code it's easy for prior coding knowledge to be intimidating. In my own undergrad CS program, the CS101 hotshots fared no better, on average, than the kids who came in with no experience at all. In fact, a few of the loudest initial braggarts were the most spectacular flameouts, and about an equal number of the no-prior-experience kids ended up the honors graduates.

Universities could do a lot to combat this problem -- it might be a good idea to let the high-school coding jocks place out of the first CS classes. Alternatively, making first-year classes more about math and less about code would probably put 99% of all incoming students on an even playing field.

Re:My Experiences as a Female Software Engineer by T-R on Sunday January 16, 2011 @09:50PM (#2111038)
I liked what my university's Chinese classes did - they had a special "advanced 101" class. This way, hot shots who still really needed to go through the 101 coursework weren't intimidating those just starting; those who really knew what they were doing could just test into a higher level. Korean classes, which didn't have the "advanced 101", ended up catering to the hottest of the hot shots, and saw a good number of both the hot shots and the non-native speakers dropping out before the 200 level.
Re:My Experiences as a Female Software Engineer by antihero on Sunday January 16, 2011 @11:08PM (#2111167)
I do think that the split would be an interesting idea. At my university, our first year programming class was divided between people who found it too hard, and people who found it way too easy.
Re:My Experiences as a Female Software Engineer by T-R on Monday January 17, 2011 @02:35AM (#2111507)
We had that, too, but it wasn't really clear cut. We also had a bunch in the middle, who, while they really did need to go through most of the 101 material, they also did their share of intimidating the fresh starters - probably more so than those who really knew the material, who mostly just skipped class.

Since my university had large Korean and Chinese populations, it kind of struck me as parallel to the problems the Asian Studies department had weeding out native speakers looking for an easy A - it was hard to tell them from the kids who could speak but not write. Putting them in a separate section kept them from driving the class, and things went much smoother.

Re:My Experiences as a Female Software Engineer by bm98 on Sunday January 16, 2011 @10:00PM (#2111053)
One of the beauties of programs that teach Scheme and ML (or OCaml or F#) in introductory CS is that they level the playing field. The typical high school computer hot shot has never seen anything like functional programming before, and is no better off than anyone else in the class. Follow that with the theoretical foundations of CS and you have plenty of hot shots at the bottom of the class. A professor of mine once said, "Some kids just can't hack the math."
Re:My Experiences as a Female Software Engineer by strlen on Monday January 17, 2011 @03:25AM (#2111579)
That's the theory (and I am a strong proponent of teaching Scheme or Haskell in introductory CS followed by C in a data structures class: Visual Blub#++2EE on Rails is something you can learn on your own when you need it for a specific task), but that's not how it is in practice.

My girlfriend took Berkeley's introductory CS class as an undergraduate. She did well in the class, got an A, but she was really put off by the attitude of many classmates who had prior programming experience and judged her for not having any. It doesn't have to be with programming languages: it can be with things like setting up your UNIX shell, using emacs, ssh etc... something that we take for granted but had to learn at one point or another.

While she didn't intend to Major in Computer Science in the first place, I can't help but think that the environment was almost deliberately designed to make sure that somebody who had great potential to be an excellent programmer couldn't accidentally realize it (much as Jean, the author of the article did). Women who are good at programming still end up deciding against it as a career; on the other hand, many men are horrible at programming, but persist at it.

Interestingly enough, in Russia/former USSR the male:female ratio is in Computing is slightly better (more females) than other technical fields. I am not sure whether that's still the case (I left former USSR in 1996). My mother is a software engineer (she introduced me to Scheme and OCaml, back when you weren't considered a real programmer if you worked in anything other than C++). She had many female colleagues when she worked in a Computer Science research lab (back in the days of [Soviet clones of-] PDP-11s, VAXen and IBM 370s, ATT UNIX, etc... when programming was much more incidentally complex than it is now).

Re:My Experiences as a Female Software Engineer by strlen on Monday January 17, 2011 @05:28AM (#2111775)
Quick note: forgot to state that Berkeley's intro CS course is taught in Scheme and uses the SICP book.
Re:My Experiences as a Female Software Engineer by SupremumLimit on Monday January 17, 2011 @04:37AM (#2111698)
I think the situation in Russia is similar to the US now. We had less than 10% females in computer science when I was at university in the early 2000s.
Re:My Experiences as a Female Software Engineer by Locke1689 on Sunday January 16, 2011 @11:03PM (#2111162)
I don't know what you mean by "hotshot" exactly, but all of the people who had extensive experience in my high school also knew functional programming and data structures and algorithms.

I'm not sure math makes all that much of a difference either because the most experienced people in my class were all doing math-related things (myself a physics minor, my girlfriend a math minor, and my two other friends a math and physics double major, respectively).

Re:My Experiences as a Female Software Engineer by _delirium on Monday January 17, 2011 @12:56AM (#2111370)
That definitely wasn't the case at my high school. The high-school coders were almost exclusively some mixture of C, C++, Java, PHP, Perl, and maybe bash. There probably were nonzero people who had used Scheme, but I'd be very surprised if it were more than one or two.
Re:My Experiences as a Female Software Engineer by rwmj on Monday January 17, 2011 @03:58AM (#2111617)
And if a few of them tried Scheme, then teach Prolog. Nobody knows that ;-)
Re:My Experiences as a Female Software Engineer by Locke1689 on Monday January 17, 2011 @05:26PM (#2113718)
Meh. Do you really think learning programming languages is hard? I think with C, C++, Python, Scheme, CL, Haskell, Racket, and ML under my belt it would take me about a day or two to adapt to new syntax and then you'd be back in the same position you started in.

I just wouldn't worry so much about experienced students or give them something extra to work on if they wanted it. I started programming when I was 9, meaning I had been messing around with Linux, systems, programming languages, and algorithms for a full 9 years before stepping into my first class freshman year. My professors did the proper thing and used the finals from the freshman year CS courses to propel me to upper level courses in my first quarter. Don't try to work against experience, work with it.

Re:My Experiences as a Female Software Engineer by Hexstream on Monday January 17, 2011 @07:21PM (#2114013)
Failing that, Forth or J ;P
Re:My Experiences as a Female Software Engineer by leon_ on Monday January 17, 2011 @04:09AM (#2111648)
It's that "func programming is rocket science"-stigma people nowadays spread. I don't know why they hype functional programming that much (maybe because they could show off the C "hotshots" in their CS 101 course?) but FP is such a basic and simple paradigm that it's not really something to brag about.
Re:My Experiences as a Female Software Engineer by aperiodic on Monday January 17, 2011 @04:50AM (#2111712)
My CS professor tries to use less mainstream languages for exactly this purpose–to put everyone on an even playing field. The first two months of labs in the course are taught entirely in Haskell. The lectures are about DFAs and NFAs.

I've graded and TA'd the course for two years, and I think his approach works extremely well. It lets you filter out the people who really get it from the people who are just pattern matching from previous experience.

Re:My Experiences as a Female Software Engineer by araneae on Sunday January 16, 2011 @10:16PM (#2111080)
In my own undergrad CS program, the CS101 hotshots fared no better, on average, than the kids who came in with no experience at all.

How do you know this?

At the school where I went, the distribution for CS101 was bimodal; higher peak were the experienced ones, lower peak were the neophytes.

Re:My Experiences as a Female Software Engineer by timr on Sunday January 16, 2011 @10:23PM (#2111087)
I'm not referring to just CS101; I'm talking about the whole curriculum. That bimodality tends to go away once you're done taking classes that are a re-hash of what the experienced kids already know as freshmen.

And no, it's not just the effect of "weeding out" the inexperienced kids -- as I said above, a number of the best students in my program had no prior experience, and a fair number of "experienced" kids flamed out once they hit the non-coding portion of the curriculum.

I went to a small school for undergrad, so I knew everyone who graduated with me, and everyone who started with me. Later, I went to a very large graduate school, and while the same patterns seemed to hold, I can't say for sure.

Re:My Experiences as a Female Software Engineer by araneae on Sunday January 16, 2011 @10:32PM (#2111101)
Right, but we're talking about the "weed-out" class effect here. If the girls get weeded out in 101 whatever happens later isn't relevant.
Re:My Experiences as a Female Software Engineer by lelele on Monday January 17, 2011 @09:09AM (#2112150)
> "Something that frustrates me about the field of computer science is that there are a lot of jerks who think that just because they've "mastered" some programming language or know some obscure unix commands, they are gods and you are nothing."

How is the computer field different from other fields? Once they are proficient, some people choose to share their knowledge to let people reach even higher goals, whilst others people enjoy making fun of those less educated and put them down. I've seen such behavior everywhere.

EDIT: Moreover, in the latter case, if you add some ingrained misogyny to the mix, things get even worse.

Re:My Experiences as a Female Software Engineer by wccrawford on Monday January 17, 2011 @06:48AM (#2111899)
When I went to college, I experienced the same. There were quite a few quiet dropouts, but the loud-mouthed ones were more spectacular. Mainly because they'd promise to do something and then fail, leaving the rest of the group hanging.
Re:My Experiences as a Female Software Engineer by erikpukinskis on Sunday January 16, 2011 @10:09PM (#2111068)
The key to getting more females in CS

All sentences that start with these words are misguided. It is a complex issue with contributing factors at EVERY stage of a programmer's development.

Yes, let's help middle school girls get a chance to program. But let's also change CS curricula to draw on more skills besides programming. And let's make intro programming classes more welcoming to nonprogrammers. And let's find new venues for promoting startup job openings. And let's give grants for women making open source contributions, and, and, and....

The same is true of promoting literacy and bike friendly cities and fighting racism and most every other kind of activism. This is not a world of root causes.

Re:My Experiences as a Female Software Engineer by biot on Sunday January 16, 2011 @09:38PM (#2111014)
I don't believe the age argument. At what age was Grace Hopper first introduced to programming? Based on the wikipedia article, Grace Hopper appears to have started programming 14 years after getting her PhD and didn't seem to have been hampered by not having started programming before high school. [Insert COBOL joke here.]

What about others who have a few more gray hairs than I? When did Seymour Cray, Vint Cerf, Peter Norvig, Tim Berners-Lee, and other early pioneers start programming? I think it's pretty safe to say they didn't have mainframes in their parent's basement growing up that they were programming on since before high school. They had a natural interest and the aptitude to do well in it.

Re:My Experiences as a Female Software Engineer by gwern on Sunday January 16, 2011 @10:31PM (#2111098)
Maybe you ought to look up your examples.

> Cray was born in 1925 in Chippewa Falls, Wisconsin to Seymour R. and Lillian Cray. His father was a civil engineer who fostered Cray's interest in science and engineering. As early as the age of ten he was able to build a device out of Erector Set components that converted punched paper tape into Morse code signals. The basement of the family home was given over to the young Cray as a "lab".

That's not a mainframe, no. But he was still learning a lot about programming.

Re:My Experiences as a Female Software Engineer by gvb on Sunday January 16, 2011 @11:12PM (#2111178)
Rear Admiral Grace Murray Hopper started programming when Howard H. Aiken[1] designed and IBM built a computer[2] for her to program. Seymour Cray was also born before the first usable computers were created. I don't have concrete date, but I strongly suspect the other early pioneers also started programming when they first got access to a computer.

I'm a few years younger than the youngest of the quoted pioneers (Tim Berners-Lee, born 1955). My first access to a computer was in my junior year in high school: a DecWriter[3] connected via a 300 baud dial-up modem to a timeshare system, programmed in Basic. (Obsessively. Still. :-O)

The limiting factor for pioneers was access to computer. For kids today, access isn't a problem.

[1] http://en.wikipedia.org/wiki/Howard_H._Aiken [2] http://en.wikipedia.org/wiki/Harvard_Mark_I [3] http://www.columbia.edu/acis/history/la36.html

Re:My Experiences as a Female Software Engineer by jacquesm on Monday January 17, 2011 @03:44AM (#2111593)
Before I got my first computer I read in some book about the first ever chess program that was written to be executed by a room full of people. Hey I thought, no money, but I do have paper, pencils and time. So one sheet became my 'variables', the other my program and I would run my BASIC programs without so much as a keyboard to touch.

That's not the fastest way to run your programs but things like 'guess a number' are definitely doable.

Shortly after that I got a Saturday job at a local radio shack which gave me access to the real thing.

So it's not necessary to have access to computer hardware at all to learn about programming, even though it certainly helps.

Re:My Experiences as a Female Software Engineer by _emily on Sunday January 16, 2011 @11:22PM (#2111190)
It's not actual age that's the issue, it's relative age. If your peers have an eight-year headstart down the learning curve, it's tough. At a low level you internalize: they are god tier, you are not.
Re:My Experiences as a Female Software Engineer by gaius on Monday January 17, 2011 @03:31AM (#2111587)
But that is a ridiculous thing to say. Should people be banned from programming until college so everyone can be "equal"? It's like whining that you can't compete with an athlete who has been training since they were a kid.
Re:My Experiences as a Female Software Engineer by antihero on Sunday January 16, 2011 @11:07PM (#2111165)
Thing is, this is a perplexing problem - my SO teaches at a school that has a "computer club" where they do such things, and it has a lot of female members, but there's a distinctly bizarre issue of girls interested in computers at Secondary/6th form level not then going on to do degrees in the subject. I think a more in depth study interviewing the "potentials" needs to be done in order to understand whether there's a problem with endemic sexism or whether it's something else.
Re:My Experiences as a Female Software Engineer by joe_the_user on Sunday January 16, 2011 @09:21PM (#2110973)
Can I respectfully disagree?

I think that it is important to make software engineering a codified, professional field.

It is not an advantage to have programming be a field where the bragging rights go to those who put together a D&D weather generator in a true Mini-computer in Middle School.

Rather, it is much better to have software engineering be something you can enter in college if you a good mastery of abstract thinking.

I would further mention that it helps programming as a professional if a good programmer is a generalist who knows how to get any required details. The process of becoming a generalist is entirely possible if you enter the software engineering field in college. Essentially, the point is for a person learn good process and let the rest take of itself.

Oppositely, if programmers are merely hackers, geeks or idiot-savants, who accumulate massive amounts of details concerning systems, languages and libraries in a near-autistic fashion, then not only will programming remain a ghetto but it will be a poorly paid, miserably ghetto.

Re:My Experiences as a Female Software Engineer by Locke1689 on Sunday January 16, 2011 @10:04PM (#2111060)
It is not an advantage to have programming be a field where the bragging rights go to those who put together a D&D weather generator in a true Mini-computer in Middle School.

Careful, this could be similar to saying that it's not advantageous to have mathematics be a field where people who prove non-trivial theorems in high school do better in university courses.

Some people have prior background or a special talent and that's not a bad thing. It's just important that this is also not required to succeed in the given field.

Re:My Experiences as a Female Software Engineer by zb on Sunday January 16, 2011 @10:34PM (#2111105)
I think that it is important to make software engineering a codified, professional field.

I personally couldn't disagree more, but luckily in this case there is no need to speculate since we have an almost perfect natural experiment available. Virtually all of the other branches of engineering - including the ones which you're presumably basing this idea on - have exactly the same gender imbalance issues as software engineering.

Re:My Experiences as a Female Software Engineer by jarek on Sunday January 16, 2011 @11:34PM (#2111209)
Yes and no. In Canada, software engineering is an accredited, 'professional' program and discipline; that doesn't seem to have helped gender ratios within software much for now, but nevertheless it's outpaced by stereotypically dirty and male disciplines like civil and chemical engineering.

Sample from one institution: http://web.archive.org/web/20080611075012/http://www.eng.uwa.... Class sizes are around 80-100 except for environmental and geological which are half to third of that.

Re:My Experiences as a Female Software Engineer by wyclif on Sunday January 16, 2011 @11:44PM (#2111230)
stereotypically dirty and male disciplines like civil and chemical engineering

I spent 10 years as a land surveyor and GIS cartographer, and during that entire time I met one (!) woman surveyor. CE is notorious for this.

Re:My Experiences as a Female Software Engineer by neutronicus on Monday January 17, 2011 @09:22AM (#2112200)
At my school civil and environmental engineering were in one department, and most of the girls where there for the "environmental" half - or so my CEE friends said, anyways.
Re:My Experiences as a Female Software Engineer by zb on Monday January 17, 2011 @01:29PM (#2112935)
OK, but that link still shows Software and Computer engineering ahead of Mechanical and Electrical engineering.
Re:My Experiences as a Female Software Engineer by jarek on Monday January 17, 2011 @02:01PM (#2113021)
True. Clearly professionalization is not the only required step, but the natural experiment doesn't tell you it's not required — hence my "yes and no" reply.
Re:My Experiences as a Female Software Engineer by juhygtfghjk on Sunday January 16, 2011 @10:10PM (#2111069)
> software engineering a codified, professional field.

So after getting your degree you can only be a CEng by working for an existing CEng in a company that certifies CEngs.

Sounds like a perfect way of weeding out all those women who do pick a CS degree. Unless all traditional big-iron firms are looking to hire more women, and all 60-something male senior engineers are really clamoring for more women to certify ?

Re:My Experiences as a Female Software Engineer by jarek on Sunday January 16, 2011 @11:42PM (#2111228)
That's the way it works for, say, civil engineering, and there's more women in civil engineering -- or at least studying and graduating it -- than in software engineering.

It would be rare for a new engineering grad to work under a 60-year-old engineer, typically the supervisors are much younger.

Re:My Experiences as a Female Software Engineer by philwelch on Monday January 17, 2011 @04:08AM (#2111642)
Another big difference is that lots of civil engineers are employed in the public sector, which (for various reasons) tends to employ more women than the private sector. The same correlation is seen in EE's, where there's a lot more women in power engineering than in other fields. Unless you can create tons of public sector software engineering jobs (which sounds worse than dreadful to be honest) you're not likely to replicate that.
Re:My Experiences as a Female Software Engineer by jarek on Monday January 17, 2011 @02:19PM (#2113073)
Why do you think more public sector software engineering jobs would be dreadful?

Perhaps women are attracted to public sector-type jobs, for some values of "public sector type", rather than a specific engineering discipline. How will that change the gender ratios question?

Re:My Experiences as a Female Software Engineer by cyen on Sunday January 16, 2011 @09:07PM (#2110945)
Re:My Experiences as a Female Software Engineer by younata on Monday January 17, 2011 @05:14AM (#2111758)
I don't go to a school known for their CS program (we have a good one, just not a renowned one). Of roughly 30 or so freshman in the CS program, I know of about 20 or so who said they did not know how to program before they went to college.

So, your premise of "most of the class has been programming for years" is false in at least my case.

Re:My Experiences as a Female Software Engineer by shortlived on Monday January 17, 2011 @05:29AM (#2111779)
I started programming in college and turned out fine.