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."
1) Geek woman get CS degrees & jobs.
2) Geek woman meets geek man.
3) ???
4) Aspergers!!!
Trolling is a art,
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 past year, I was accepted into Carnegie Mellon's School of Computer Science. It has been a remarkable experience that I would like to share with the community. Here's an account of my experience.
Week 1, Sunday: I moved in today. My roommate, a sophomore CS student, had already moved in two days before me. The floor is already completely covered with garbage. He also smells. I think he might be gay too. He's already asked me if I like the color he painted his toenails. This should be interesting. I am almost completely settled in. Techno music is playing in every room in every floor of my dorm. There are computers and other types of trash out in the common areas. What a mess. Tomorrow, I am going to go sign up to get my network connection.
Week 1, Monday: I got hooked up to the CMU network today! I jacked into the network, only to find that the hostname and address assigned to me were colliding with another system. I'll just increment the network numbers a few times. I am really eager to get on.
Week 1, Tuesday: I am still looking for a free IP address. Can't anybody here properly configure their systems?
Week 1, Friday: I finally found a free IP! It's mine! You sons of bitches can't have it, I found it, I keep it, it's mine! To hell with all of you! Head hurts really bad. I've slowly been developing a headache since I first arrived. Everywhere I look there are these Lucent Technologies wireless access points. I wonder if that's the problem.
Week 1, Saturday: I sat down at my computer today. My desktop wall paper is now the goatse.cx guy. Pleasant. Scattered over every directory on my C: drive are thousands, possibly millions, of files titled "J00AR30WN3DBITCH-phj33r-" and then some random hacker's name. Don't these people have lives? Maybe they need laid or something. It'd take days to clean this out. I mentioned to my roommate that I needed to reinstall Windows, and immediately he jumped up and shouted: "NO! Do NOT use Windows!" Suddenly, two dozen other guys (all of them possibly homosexuals) appeared at the door, each touting an operating system called Linux. Half of them got into a fight over which was better, Debian, RedHat, Slackware, and a bunch of others I couldn't recognize. Some kid who appeared to not have showered since he was born was touting "Linux From Scratch," saying that only losers used pre-made distros. A crowd of people in the back kept quiet about how I'd be sorry if I used Linux instead of BSD on the network. Who the fuck are these people? Classes start next week. Hope I have my computer working so I can do my assignments.
Week 3, Friday: People are still trying to get Linux to work on my system. They keep telling my that my hardware sucks. We go through about four or five distributions a day. Every now and then, I notice a little devil on my screen. Stickers for every of these distributions have been plastered on my case. Suddenly, my room stinks a lot more with these people in here. I ask them why they never shower, and the usual response is something along the lines of "showering is like rebooting" and "I don't want to lose my uptime."
Week 3, Saturday: There's a troop of men running naked in a circle around McGill Hall. I am not even going to ask.
Week 4, Wednesday: Linux is FINALLY working on my computer! I have a pretty slick desktop too. I think I might like this. I can finally work in my room instead of the labs, although considering the every increasing layer of garbage on the floor...
Week 4, Thursday: My computer flashes messages about how I am "0WNX0RED" and how I should "PHJ33R" whoever and how "L4MEX0R" I am for having an insecure box. A kid suggests we reinstall Linux after discovering about 17 rootkits.
Week 5, Friday: Someone got BSD working on my computer. I wonder if this will last. The stress has been building and I forgot to
Interested in open source engine management for your Subaru?
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.
Why couldn't they have done this when I was in school? It was a regular sausage fest in my FORTRAN 77 class.
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
They are in small to medium size companies. The large companies will play with hiring contractors, but few are moving their work overseas. The only companies really moving the jobs overseas are monster companies that have enormous IT operations or those that are pure IT companies. MS, IBM, HP, ATT, QWEST, Verizon, etc. are all moving jobs overseas. The reasons vary, and the results more so. Where the large companies have found is that hiring in India is difficult due to the fact that the good ones have already been hired on. Now, the majority are those coming from starter schools and 2 year schools. In addition, Indian law makes firing somebody difficult (as hard as in much of europe). At this time, India is actually worse then hiring in America.
That is why Argentina is catching on. If and when Russia ever gets their act together and create better laws for a business world (and enforces them), then that will be THE place to be.
But even with all that, we will still have plenty of good CS jobs here. But I maintain, that we CSers are better off starting our own companies. Even if you have to do a dozen of them before succeeding.
I prefer the "u" in honour as it seems to be missing these days.
let me say this... you can change up the university degree all you want and you will not radically change the gender makeup of the student body as that is not where the problem is... it's in the highschools.
The number of girls that are presured by friends, family and even teachers to get out of maths and into the arts and social sciences is crazy. "Math just isn't a good choice for you... how about law? or history?", if this was just from other girls it wouldnt be as bad, but that quote was from my algebra teacher (a course which I got a 90% in dispite his dislike of me). Young girls are actively presured by teachers and adminsistration to avoid maths and science.
If you really want to get more girls into comp sci, stop highschool teachers from telling us what we can and can not do.
the preceding post was not spell checked... suck it.
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
I'd be overjoyed to see the percentage of women in my courses get above 10%. But I don't think that changing course content should be the answer, since I don't think it's the problem. Instead, I'd blame:
1.) Lack of any experience of CS in high school. Even in schools that offer AP CS (which mine didn't), isn't it usually an elective that could just as well be filled with a language or second science course or music, etc? Since it's not a required class like math or chemistry, it's pretty easy to graduate from high school without ever even realizing computer science exists... or that you're good at it or like it.
2.) And when you get to college, who wants to have all their courses with just guys? Especially when everyone knows that CS majors are nerds? So why bother seeing if you like it? If everyone there already is a guy, then they must be better at or it something, right? Why else would it be so unbalanced?
3.) Bad advising. When I told mine I wanted to take intro to CS, because I was planning on majoring in chem and thought it might be useful, she told me I should take a humanities course instead, because I'd probably get a better grade. Luckily I decided to take it anyway and liked it enough to change my major.
And now when I try to convince friends to take the intro course (because I thought it was fun... and it could be good to know anyway), my guy friends tend to say that it sounds interesting, while my girl friends usually say something about how they'd probably fail. I think until the perception of who can take CS classes and do well in them changes, changing the curriculum or appearance of the program won't do much.
I don't agree with that. Men and women are different. They think differently and are likely to have different interests.
UNIX/Linux Consulting
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
It sounds all well and good when you put it like that, but as an undergrad at CMU in the ECE program (which shares a lot of classes with CS kids, and I had a lot of CS friends) what we witnessed in reality was: the program was dumbed down for girls to get in. This was reflected in many more incoming students not having a clue about how to use a computer, let alone program it, and a lot of female CS majors changing majors by sophomore year. I'm not being mysogenistic here, trust me, CS guys were THRILLED at the prospect of more girls in the program, but it didn't pan out that way. Caveat being this was 1999-2002, I have no knowledge of how it's working now, but in the first 3 years we witnessed lower quality students and more CS degree program dropouts.
-- I'm not a pessimist, I'm a realist. It's not my fault that life sucks so much. --
Exactly, as an employer looking to hire people as programmers (which would be the majority of the jobs looking for CS degrees), you now have people with a degree that means nothing. There are very few positions (professors, researchers) where theory is more important than actually being able to write code. I say we should go in the completely opposite direction, with more architecture and programming classes (using architecture to have people actually understand what they are doing, and why a certain code block is efficient/inefficient on the hardware it is running on), and only one or two survey courses on algorithms and theory, with more available as electives. CS should be an Engineering degree, as it is in my school (UCF), not a liberal arts degree. I don't see many women in Mechanical, Aerospace, Electrical, or Computer Engineering either, should we stop building cars, satellites, and circuits too? Of course, 28% seems extremely high to me, as my experience has been that there are far less than that in my classes, at least in the later stages (1 each in my senior/grad classes).
--That's the point of being root, you can do anything you want, even if it's stupid.
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!