CS Programs Changing to Attract Women Students
Magnifico writes "The New York times is running an article about a push by American universities to actively recruit women into Computer Science courses. The story, 'Computer Science Takes Steps to Bring Women to the Fold', explains that the number of women in CS is shrinking: 'Women received about 38 percent of the computer science bachelor's degrees awarded in the United States in 1985, the peak year, but in 2003, the figure was only about 28 percent, according to the National Science Foundation.' One of the largest barriers to recruiting women to the field is the nerd factor. To attract women students to the CS field, 'Moving emphasis away from programming proficiency was a key to the success of programs Dr. Blum and her colleagues at Carnegie Mellon instituted to draw more women into computer science.' Changes at CMU increased women students in the CS program from 8 percent to nearly 40 percent."
If someone, male or female, is put off entering a particular study path because they're concerned about how other people will view them then they simply aren't passionate enough about it. Hell, they're not even interested in it. They're better off leaving the place open to someone a little less vacuous.
Maybe it's just me, but I see no reason why people need to be recruited into compsci. There's plenty of interest in it already. Should there be more men going to beauty school just to balance out the demographics a bit?
Let people decide what they want to do and stuff the perceived lack of equality.
http://twitter.com/onion2k
Moving emphasis away from programming proficiency was a key to the success of programs Dr. Blum and her colleagues at Carnegie Mellon instituted to draw more women into computer science.
I realize that there is more to CS than programming, but I would be surprised if theoretical computer science, which is more math intensive, would be that much more appealing. . . . Any way you go, I don't see how to remove the nerd factor from CS.
I am a viral sig. Please help me spread.
This is a good idea and I think it could equally be applied to boosting the numbers of under-represented groups in other areas. For example, proficiency at flying should no longer be a requirement for airline pilots. And surgeons shouldn't have to be good at doing operations. To say otherwise is elitist and divisive.
Its funny you should mention geeks meeting up. Is that the best reason to actively recruit women?
What I'm trying to say is if women don't want to enroll, so be it. Why force this 'positive discrimination'? Now if it was said that there was an overall drop in students enrolling then I would understand some concern but I just don't understand why we should force equality.
Personally I have no interest in signing up for a degree in Fashion Design. Some men may and more power to them but if there are more women signing up than men I don't think they should spend time or money trying to make fashion design more butch.
I never get used to these constant resurrections
Bullshit.
If there was that big of a demand over here then more people would be getting into it to take advantage of the high salaries.
There's demand, but there's also a limit to how much will be paid. So it is all about the "cheap labor".
They are talking about admissions criteria, in the context of high school computing backgrounds. Attracting talent that may or may not have extensive programming experience, rather than focusing just on the people who enter college with a lot of programming under their belt -- those people are overwhelmingly male.
Might they have some catching up to do? Sure. But at least they won't have bad programming habits to unlearn, which can be just as bad as inexperience.
"Trolls they were, but filled with the evil will of their master: a fell race..." -- J.R.R. Tolkien on Olog-hai
This is America. If you can't measure up to the standards then we lower the standards so no one's feelings get hurt.
I'm not a karma whore but I play one on Slashdot
Are you using the Chewbacca Defense? That does not make sense!
Why yes, I AM a rocket scientist!
I don't agree with that. Men and women are different. They think differently and are likely to have different interests.
UNIX/Linux Consulting
What I'm trying to say is if women don't want to enroll, so be it. Why force this 'positive discrimination'?
Because of the negative discrimination that is artificially limiting the number of women in the field in the first place. Discrimination in the form of men assuming that women "don't want to enroll", simply because they're women and thus less interested in our manly computer engineering/sciences.
Look at this thread. I guarantee (in part because a lot has already shown up) that you'll see men in computer fields stating as fact that women don't really want to be in computer science. You'll see them state as fact that women aren't as good in computers as men. That it's an obvious "natural difference" that means that there really shouldn't be as many women in CS, only those rare few that have what it takes to match up with the men, and thus recruiting more is futile or even counter-productive. And then they'll say that all this proves that there isn't any discrimination against women in CS. Despite the fact that the real reason there are few women in CS -- men in the field discriminating against women -- is put blatantly before them every time they look in the mirror.
It's the same thing that went on in the 70s and 80s with women in the fields of law, business, and medicine. Fields dominated by men, and those men said that clearly women neither wanted nor were capable of succeeding in these fields, and hence would continue to be minorities. Well time passed and the women proved both that they wanted to and that they could, and you'd look like an archaic dinosaur with severe damage to the tact centers of the brain if you said otherwise. Computers, a field that has been dominated by a particularly anti-social breed of men even more prone to insulation than lawyers or MBAS, is the next stop. Encouraging women, letting them know that there are people in the field who welcome them, that the ones telling them what they want to do with their own lives are dinosaurs on the way out, that's helpful.
It may be that once we have gotten rid of all the sex discrimination in the computer field that there will still be fewer women in the field. It may be that there is in fact natural tendency that affects the ratio of men vs women. There's nothing wrong with that. The problem is that if you think that we are at that point, today, where sex discrimination doesn't exist? Then you're 1) male and 2) delusional.
The enemies of Democracy are
How is reducing the dependency on learning specific programming languages "watering down the degree"? Let me tell you, if the first language I had programmed in was Java, I would have been deterred, too. Learning a programming language isn't like learning Swahili here. It's just a syntax for expressing how you want to get things done. The quality of a programmer isn't how well they know a particular syntax; it's what they plan to put into code.
The first part of any learning path should be to allow those who are not familiar with it to see what you can do with it. Do we start teaching mathematics with order of operations? No -- we show first how to count (immediate practical applications), then how to add, subtract, and other things with immediate practical applications. Do we start teaching reading with sentence diagramming? No -- we start with simple sentences (immediate practical applications). Etc. So why should we start on programming with a focus on learning a language? You should start with a simple language with a clear syntax** -- then work on practical applications immediately. Competitiveness and freedom in project selection should also be encouraged early on. If people get to work on what they want and are trying to outdo their friends, they're more likely to spend more time, actually learn what they're doing, and really get into it.
Good coding style (comments, self-documenting code, etc) should be taught and rewarded early. If a more complex language is needed for later courses, the switch should be made as necessary. Object oriented code and important modern coding features/standards (templates, const correctness, etc) should be taught after the introductory courses. Data structures would probably be good after that. As for learning languages, I'm more of a fan of the concept of a later "Programming Languages" class that simply covers learning a number of different languages, stressing the advantages and disadvantages of each. There's no need to frontload the learning of languages. Learn what's neat about programming first, then learn how to be a good coder, then diversify your language and library knowledge.
** -- I learned on BASIC, but something like Python would probably work well. A fun language with a useful syntax would be LPC (a MUD-coding language), since you can "visualize" and "handle" everything that you code, everyone has an avatar in the same virtual world, and it's based on C, so it would make switching to C easier. Another option that would probably help attract teens is Javascript -- relatively simple if you stick to a single browser, and definitely useful since webpages are really popular among teenagers.
The big brain am winning again! I am the greetist! Now I am leaving for no particular raisin!
For fucks sake, I think a lot of people here in slashdot should go and study Computer Science to realize that CS is NOT all about programming, there are countless branches of Computer Science were programming has *nothing* to do. I am making my PhD in Comp.Science right now, and if it wasnt for the fact that I am doing simulations (which in some circumstances it might be possible to do *without* programming like using RepastPy) I would not be using programming.
/coding/ you do).
/code/).
You people are confusing Computer Science with Software Engineering. Software Engineering is what most of slashdotters would *need* to study in order to be "professional" developers (this is, learn the theory and background behind that PHP, Python, Java, C++, C, Visual Basic, etc etc
It is completely possible to study in a subfield of Computer Science (in fact in many of them) without knowing how to program (in fact, many of my fellow PhD students do exactly that, oh, and my own supervisor [a Prof. in Comp. Science] does not
Several slashdotters will find this last comment offending: I believe that removing Programming will indeed attract more women, basically because this fat-dirty-geek-egocentric-smelly person idea is specifically centered on programmers, coders, etc, not on Computer Scientists overall. Gosh, there are really intelligent Women in Computer Scientists, one that comes to mind now is the cryptoanalyst women that sometimes has been featured in slashdot.
Ubuntu is an African word meaning 'I can't configure Debian'
Java is as ugly and awkward of a language as I've ever used, barring LISP-derivatives. As for your comments, pretty much every language people would consider except for C does memory management. GUI programming is not a first year topic. OO is not an immediate topic for learning (late first year, early second perhaps, unless it's as seamless as you see in languages like LPC).
// Iterate over the characters in the forward direction // Use ch ...
For a beginning language, you want the syntax to be as easy as possible. Let's look at a Java "Hello World":
public class Hello {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
1) Classes are not beginning topics. They should be introduced as soon as possible, but certainly not at the very beginning. They're req'd in Java. And Java's implementation of them is poor.
2) "public static void" and "String[] args" are nonsense to a beginner.
3) System.out.println is pointlessly verbose. We do *not* want beginners to be having to learn libraries to get anything done.
Java is not an intuitive language -- certainly not for a beginner. Let's iterate over the characters in a string (a typical beginner task, right?). How do you do that in Java? Why, like this:
CharacterIterator it = new StringCharacterIterator("abcd");
for (char ch=it.first(); ch != CharacterIterator.DONE; ch=it.next()) {
}
Yeah. A bloody iterator. That's a great beginners topic.(/sarcasm) All sorts of other great "beginner" topics like there being both primitives and classes for all basic number types and the like. Of course, even some primitives are confused -- is a char a character or a number? Why, it's both! Try out "blah" + 's' (JDK 1.1 -> "blahs"; JDK 1.2 -> "blah15"). Java dates are very ugly; I don't think I even need to get into them (certainly a newbie wouldn't want to!). You can't compare strings for equality with == like you do for most everything else; you have to use equals(). You have gems like "".compareTo(null) throwing a null pointer exception. Oh, java nulls, gotta love them. String.valueOf on an int[] returns "null", but on a char[] returns a null pointer exception. Java makes you pointlessly cast all the time and makes you stick parens all over the place; I've seen apps spend half their time casting. Java error reporting when compiling is done very poorly. Java crashes manage to be both verbose and unhelpful -- quite a challenge. There are more incompatabilities between versions and interpreters than you can shake a stick at. Even running a Java program is made needlessly complex for a beginner.
I'll repeat: Java is *not* a language to teach coding to a beginner in. You're going to drive people away by doing that.
The big brain am winning again! I am the greetist! Now I am leaving for no particular raisin!