What I Learned from My College CS Class
by Maresa
1. The computer science major is overwhelmingly dominated by men. And the courses at MSU are geared for men. Rightly so. There’s just not enough young women interested. But that doesn’t mean it’s their fault. Most high schools don’t offer programming classes or expose students to the possibilities the field presents. Programming is something most girls didn’t have a clue about until after the “The Social Network”.
2. Female non-computer science majors don’t take CS courses. Because of this people will look at you funny. Like you’re the abominable snowman or something. The couple of girls I did talk to had been programming since high school and came into the course with experience. It was disheartening. Why weren’t there more girls wanting to pick up such an incredibly valuable tool? Being able to code means being able to rule the world. I couldn’t be the only girl seeing this.
3. You learn to code by yourself. The idea of ”study buddies” in this course is absolutely asinine. You have to piece together the language which is a process that takes time. Eventually, if you’re lucky, you’ll get a feel for the nuances and intimacies of the language and there can be a couple fleeting magical moments where you feel like your brain and your computer are one of the same. Also, lecture is irrelevant. It’s like learning to ride a bike — someone can tell you how but you’re not going to really know how until you’ve done it yourself and crashed a couple times along the way.
4. It ain’t no cake walk. I learned how to program in python by sacrificing sleep. During those last 5 weeks as the projects got exponentially harder, I can’t tell you how many times where an adequate nights sleep was 45 minutes. I cried in class once. I broke out in hives the night before the final. I had black holes where my eyes should have been. There was a guy who prayed after every exam. As the class came to an end, I was a sleep deprived, caffeine fueled, robot. My mom was graced by my zombie like state when I came home for Winter Break. She immediately had me checked for mono.
5. MSU will offer you zero help. I asked my prof. I asked the two adequate TA’s. I asked the MSU resource center. It was like there was no help to be had. My prof said there weren’t enough CS majors who had time to sit down with someone like me despite the fact that I said I’d pay them buckets of gold for their help. My TA’s were all too busy. The MSU resource center for CSE 231 tutoring website was poorly organized. When I finally could find a number to call about possible openings for tutoring, they said they weren’t offering it for the rest of the semester. The help I did receive was through patient friends and helpful strangers on twitter who saw my desperate tweets for help.
6. It was all immensely rewarding. It was the first college course where I really felt like I was learning something. It was challenging, it disrupted me. It was a big change of pace that I desperately needed.
Great stuff. What are the chances you could convince 10 (or 1,000) of your peers to write the same type of reaction pieces and link to them all here? Computer science education should be a huge priority, and more first-hand student perspectives like this would be invaluable…
Maresa,
I saw your post from a twitter retweet, and I appreciate you taking the time to write up your story. I am currently a grad student at Maryland, but grew up at MSU in the CS department (and wouldn’t mind returning there someday!).
I think you are — unfortunately — right, that CS contains a mostly male dominated field. In fact, if you look at Electrical Engineering (I was also an EE student) you will find that the ratio is even smaller (I think the main EE course — 302 –has a 1:20 M/F ratio), and the situation is perhaps worse in that department.
Luckily, there is a lot being done about this, but it does not seem to be enough. There are very active groups at MSU, and throughout computer science, that address this issue. MSU has a number of very notable female professors: Betty Cheng is a highly regarded researcher in software engineering, and Laura Dillon developed many techniques in automated deduction and reasoning. I believe both of these are active in MSU’s WIC organization. http://www.cse.msu.edu/msuwic/ This organization is geared toward the advancement of women in computer science, and has a very active chapter at MSU which I would suggest you join, they are very caring and would certainly be able to provide you with assistance.
I think that a number of your points are a consequence of MSU being a huge school. CSE 231 and 232 (you probably had Punch, right? Who is friendly enough but might be overwhelmed with students and research) are considered “weed out” classes, and are fairly disconnected to the rest of courses — simply because so many students take them. I think that if you were to keep taking CS courses you would see that the major is very tight knit and you would develop friendships with a cohesive student body that exists in the 300-400 level, but doesn’t appear in 231-2 because of the large flux of students through those classes. This is not to say that they couldn’t do anything to make things better: I think there are many senior students willing to help you, though they simply know 231-2ers need help! Teresa Vandersloot is the undergraduate advisor in the department, and she is very nice, (though possibly also a bit overwhelmed), you might trying to see if she would set you up with somebody. I’m sorry I didn’t hear about your troubles last year, as I would have gotten our people together to set up this kind of mentoring idea, and you might want to forward your post over to some department people for their input.
So in general, I think that the MSU WIC would be a great thing for you if you wanted to continue in CS, and a good thing to investigate for the CS student body would be to set up a mentoring / tutoring service for students in 231-2. Honestly, I do believe that a bunch of the faculty simply aren’t aware of the need for such a thing (usually being buried in research, their own classes, and grad students they advise), so your post goes a long way to demonstrate such a need.
Kris
Well said. I was a CSE student at MSU and graduated in ’09. I agree that going to classes was more or less a waste of time unless you were so far ahead in the class that your solid understanding of the materials meant you could grasp the new concepts on the fly. Unfortunately I never was.
However, I disagree on one point. I didn’t learn to code by myself. A majority of what I learned was done so while coding with other people in the lab and not by myself. Picking up on other people’s code and having them explain concepts/methods/patterns foreign to me was essential to my learning. Considering the anti-social nature of most of the developers in the lab, I think my learning style was in the minority though.
This all rings true for me. I did a Computer Engineering degree, and I had never done any programming before. It was a shock to the system to realize that you were expected to already know how to program, and that there was little in the way of assistance. Luckily, I made some excellent friends (Canadian engineers tend to be a close-knit bunch) who helped me get my feet under me.