Hacker News new | past | comments | ask | show | jobs | submit login
Being a “dumb” girl in Computer Science (rewritingthecode.com)
513 points by waffle_ss on April 5, 2016 | hide | past | favorite | 465 comments



Full disclosure: I'm a working female software developer, blah blah blah...

> I want to be that girl who no one thought she could, who had all the odds against her, that everyone thought was dumb, and yet she becomes incredibly successful in computer science. Then I want to turn that success around and use it a pedestal to expose every wound, every failure, every painful vulnerability I have, even with my hands trembling, because that is what I believe is what motivates women and gives them the strength and personal recognition of ‘if she can do it, so can I’, which then lights the spark to explore the field and helps women find their inner-strength to go for it.

I think this is a great sentiment, but....and maybe I'm just not hanging out in the right parts of the internet or whatever...but I see women writing about these meta-topics of "being a female programmer" far, far more often than any actual technical aspect. Maybe they just aren't upvoted to the top of HN or r/programming, heh. I've had a hard time articulating why I feel so prickly about promoting specifically "getting more women into tech", because I feel like it's starting to become this giant show pony. I think it's great that this lady is going into this field, but I feel really weird about this characterization that CS is supposed to be so super scary and women need special hand-holding and encouragement to attempt it.

I started programming when I was a kid because I wanted to make stuff. Nobody told me it was supposed to be hard or supposed to be for boys or whatever. I think we're doing a huge disservice by promoting this idea that programming is some super elusive thing - if we want more women in programming, then let's talk about how cool it is to build stuff, instead of how we can be role models or whatever. Just the opinion of one "woman in tech", I don't speak for anyone else but myself.


Absolutely. What troubles me - partly why I nearly always stay the hell out of discussions like this, the other part being that it seems to induce sealiony arguments I don't care much for - is that an underlying attitude, though well-meaning, often seems to come from a reaction to the field being male-dominated: "women can (program|science|engineer|etc) too".

I don't feel that the unspoken "too" part is all that helpful. Of course human beings can do things. This isn't some kind of secret "boys' club" invasion.

For me, curiosity was the key. I saw my elder brother and dad doing stuff, and I wanted to join in and learn. No-one ever told me I couldn't: or if they did I was too hungry for knowledge, and too headstrong and precocious to listen - I can't honestly say a lot's changed about me! <g> If there's a solution to whatever problem we may have, maybe it's just that, and it's not just for girls, it's universal.

I rarely gave a moment's thought to my peers' gender because I was thinking about the important part, what I was actually doing: and for the most part, save for a couple of sexist teachers (who were - an even bigger crime - totally useless at the subject they were trying to teach) nor did they.


> I rarely gave a moment's thought to my peers' gender because I was thinking about the important part, what I was actually doing: and for the most part, save for a couple of sexist teachers (who were - an even bigger crime - totally useless at the subject they were trying to teach) nor did they. <

Something I have been coming around to understand. There are two kinds of people.

a) People who live their lives for themselves

b) People who live their lives for approval and satisfaction of others

It's really important for people who live their lives for others that they get approval and validation from others. Without it, they won't ever take risks, they wouldn't hold strong opinions on anything (because that carries the risk of being wrong).

You don't care about women engineer/programmer/scientist or anything because you didn't care about living a life whose end goal is approval from other people.

However, those individuals who do live like this, something is worth doing only if others are doing it too because it means a general validation from the others.

The problem of seeking other people's validation exists everywhere, across all genders. The solution is to teach people to not live second hand lives.


>People who live their lives for approval and satisfaction of others

Every human being seeks the validation from others. We are social creatures. It matters to us what other people think. We all live in the minds of others to some extent or another. We don't do things just for money, or just to get the job done. We do things because we know that someone, somewhere will appreciate our work.

In fact, I would argue that all of mankind's greatest accomplishments have been the result of 'validation seeking.' The Nobel Prize, an Olympic Gold medal, a Pulitzer Prize--all are forms of awarding validation.


> Every human being seeks the validation from others. <

Seeking validation from others and getting validation are two different things and you're confusing the two things.

People who 'seek validation' end up being extremely unhappy individuals. They seek validation because they see people who 'get validation' and want to emulate them.

If computers and coding wasn't a way by which I made living, I'd still be spending hours on it outside my work, like how people spent hours working on rebuilding old cars in 70s-80s. I used to get a LOT of shit for 'wasting' so much time on computers and not focusing on studies (90s). I still did it because I enjoyed it. If I was a child today, my parents would have been exhilarated that I was so much interested in Computers.

I am sure if we encouraged a lot more women to get into programming, there will be a lot more women programmers, but the problem is that they will be unimpressive programmers.

It's like aspiring to become a body builder, but refusing to left anything heavy in the gym, and fighting people who give you crap for not lifting more.

Instead, do things you would do, even if nobody in the world encouraged you and you will find that the world will rally around you.


First, there really is a range: some people don't seek really almost any approval (and often seem crazy) and others who utterly define themselves by what people think of them.

Second, I would argue that the opposite: that all of mankind's greatest accomplishments have been the result of 'validation avoidance.' Van Gogh was well-known because he didn't need validation. He did his art regardless of it not selling, regardless of what happened. He would be mocked for stopping by the side of the road and staring at a flower for hours, but he didn't care.

And that's the sign of a true creativity. If you're concerned about what people will think, you're not going to be able to innovate. Prizes are nice, but for real innovators, they're never the motivation.


Or to put it this way, 'validation follows true achievements'. 'Seeking validation always results in fake achievements'.


> all of mankind's greatest accomplishments have been the result of 'validation seeking.'

Some people are motivated by validation, doing what they do for the prize and the recognition.

Others are motivated by something else...a thirst for knowledge, or a test of their determination and intelligence. Some great thinkers and doers reject these prizes outright as they never wanted the recognition in the first place.

Most people are motivated by a combination of the two, which is fine. Different strokes for different folks.


> The problem of seeking other people's validation exists everywhere, across all genders. The solution is to teach people to not live second hand lives.

A mere upvote was not enough; this needs to be echoed.


I think that's spot on, and this kind of mentality definitely sounds like a show pony. I'm wondering if some female developers mistake "not being very good at what they do" for gender bias, because I've noticed that the women who are great at what they do don't talk as much about sexism.

I don't have enough data to draw any conclusions, and maybe I'm just bitter because a conference we're trying to get off the ground was accused of sexism when all 8 speakers were men. The kicker is that none of the 70 talk proposals the conference received was by a woman...


> I'm wondering if some female developers mistake "not being very good at what they do" for gender bias

Or they mistake a rude person at work as being sexist or racist when they're really just rude.


I agree with you in some cases, but sexism can be plain-old rudeness directed by men at women -- it's the quantity of it that makes the difference. Racism can follow the same pattern, or it can come in the form of a comment that wouldn't be racist if said to a non-minority.

There's no universally agreed-upon definition of rude, and sexism and racism are very hard to define objectively. They're very context-specific and subjective, for the most part.


> sexism can be plain-old rudeness directed by men at women

No, that's a double standard. But if we're using the modern redefined version of sexism, yes you're right.


I disagree in two ways.

First, being rude can mean pushing someone's buttons. People have easy buttons to push regarding their gender, orientation, race, etc. So even if your primary motivation wasn't to express hate for their whole category, you can contribute to * ism that way.

Second, a more frequent expression of rude behavior to people of a class that you don't like is *ism even if you aren't using the forbidden slurs normally associated with whatever prejudice you're expressing.


> People have easy buttons to push regarding their gender, orientation, race, etc. So even if your primary motivation wasn't to express hate for their whole category, you can contribute to * ism that way.

Sexism and racism aren't dependent upon another person's buttons being easy to push. That just means they're more sensitive than others.


Well, it depends. If someone is rude exclusively to women, then it's unlikely to not be sexism.


> it's the quantity of it that makes the difference //

Surely not, surely it's the reason for the rudeness - if the reason is based [at all] on the sex of the person one is being rude to then it can veritably be called sexism. Otherwise it's just being rude to another person.


I think the argument is that if people tend to "just be rude" to women more often than to men, then that is evidence of sexism. Even if there isn't a conscious reason for the rudeness.

There clearly isn't any easy way to measure "aggregate rudeness" to be able to prove that women receive a higher quantity of "just being rude", but that doesn't necessarily mean it isn't there.


Oh indeed, it's possibly impossible to measure objectively - certainly in any given situation, even if sexist epithets are used, it's largely impossible to tell if a person is being sexist.

I wasn't suggesting that it was a necessarily conscious thing either; just that it either is or isn't sexist based on other things than quantity. Aggregate rudeness won't even do, if you happen to see a woman you don't get on with every day and are rude to them then your aggregate rudeness towards women could be huge without you being sexist; equally you could hate and avoid women and so have a very low aggregate rudeness towards them.


You would think so. But the reason for rudeness rarely comes up. To those on the receiving end, the damage has been done and in the case of racism or sexism it is falling into a pattern that screams "You are not welcome here" to the person.

It's like the people who get arrested while walking home from work because they happened to enter a protest area. The reason for their being there is totally unrelated to the protest yet the effect of their being there is to increase the size of the crowd by one.

We can argue until we're blue in the face that this is unjust and the truth is that it is: it's unjust for everyone involved. It creates further entrenchment and higher barriers between people.


> it's the quantity of it that makes the difference.

But as many people have pointed out, quantity can have, well, quantitative reasons. I remember a blog post stating that being the only woman among 100 men at conferences, the author always got at least one stupid comment/question.

She even turned it into a formula:

   #(women at a conference) =  inversely proportional to #(times I talk about women in tech) [1]
Of course, that formula has simple quantitative reasons. Let's say that constant 1% of the 100 men there want to talk about women in tech. If there is 1 woman, you're it. If there are 2 women, 50% chance, 3 women 33% chance etc.

Same with rude people. Let's say there's an even 1% of women and men who are rude to the opposite gender and they are equally prolific. If there are 10% women at the conference/company/..., a woman has a roughly 100x greater chance of encountering that type of behaviour. Even though the level of rudeness is exactly the same.

Approximately: 1100 people, 1000 males, 100 females. 1% rude makes 10 rude males per 100 females, roughly 10% chance; 1 rude female / 1000 males, 0.1% chance, 100x difference.

Considering that "badness" of rude behaviour is likely going to be on a bell curve, you not only get more bad behaviour, you also get worse behaviour. Just from he numbers.

So you can have outcomes that look subjectively sexist (women encounter much worse and/or much more bad behaviour) without there actually being any sexism.

[1] http://www.felienne.com/archives/4828


I can appreciate that you had a great environment with an older brother and father that encouraged you to participate in technical activities with them, but not everyone has the same environment.

I think the sentiment the author is sharing is that a lot of women feel social pressures to appear outwardly successful, popular, etc, and this creates a very difficult situation where its perceived that asking a question that might make you sound stupid causes you to lose social status.

This seems like a very tangible fear that a lot of women face, and I admire how she has conditioned herself to overcome this fear and it has helped her increase her knowledge and abilities.

It's awesome that you've had a better experience, but I'm positive that many women have dropped out of CS curriculum because of some of these social factors. Recognizing this and trying to improve the state of things is a great goal to have.


> I think the sentiment the author is sharing is that a lot of women feel social pressures to appear outwardly successful, popular, etc, and this creates a very difficult situation where its perceived that asking a question that might make you sound stupid causes you to lose social status.

This is something i see my wife have constantly forced upon her by her mother. My wife wasn't allowed to do her own hair until senior year of High School, because she "Didn't do it right." My mother-in-law(MIL) would re-do homework that wasn't perfect. Essays that expressed opinions not 100% in-line with her opinion were re-written.

My wife is smart in her own right. She's smarter than me. She has her MS in Statistics. She's really good at what she does, but she has a hard time with confidence and asserting herself. She's been told she's not doing it right her whole life. I think some of the stress and lack of enjoyment at work stems from this. She should probably push back more often than she does. To be fair she has also had a few interactions customers who were outright sexist and make me want to punch somebody in the face.

Now, we let my daughter dress herself most days (She understands there times my wife picks her clothes and doesn't fight it). She may be wearing a purple, shirt, striped pants, and a polka dot skirt (honestly most of the time things don't clash THAT much). My MIL is horrified. "All of the other kids will laugh at her." No they won't, they're in preschool. All of the girls love whatever she is wearing. The boys don't even notice. We were talking her preschool teacher the other day and she told us "She'll be princesses with the girls one minute, and rough-housing playing ninja turtles with the boys the next." I couldn't be more proud.

Now that's not to rant against my MIL. My mother and father are crazy too in their own ways. As is everybody my family and that makes everything fun.


Great story. My partner had a similar upbringing and I still see the effect it had. And I have my own quirks due to my parents' lack of supervision. We're definitely a product of our parents.


As a mechanical engineer who has worked with software engineers on projects, I believe that the nature of the job can cause us to be more blunt than most. When the guys in the shop weld something poorly they don't get points for effort, they redo the work. Likewise, when one of my designs has a flaw I WANT people to point it out bluntly and immediately to save me hours of work, the company money and reputation, an possibly even lives if the equipment fails at the wrong moment. My dad is in the field as well and we both have to put effort into not being overly critical of others outside of work. I can certainly see how someone who seeks approval from others could be beaten down by this. Learning to separate your failures from your self esteem, as long as you learn from them, is a tough skill. I honestly think that "girl culture", at least what was at my high school, makes this much more difficult.


> As a mechanical engineer who has worked with software engineers on projects, I believe that the nature of the job can cause us to be more blunt than most.

To theorize as to why this is such an issue... I think it's because IT and Engineering is an area where, while still being a creative pursuit, there's still a right and wrong answer.

We have jobs that are entirely based around a right and wrong answer. If I work in an office and my job is to take forms and enter them into a computer, then I've either done it correctly or incorrectly. If someone's criticizing my work, it's because I've objectively done it incorrectly. It's really tough for someone to take it personally.

We have jobs that are entirely based around a creative solution. If I work in marketing my job is to come up with creative ideas. For the most part, no one will ever (or can ever) tell me my idea is "wrong", because it's entirely subjective. Someone might like a different idea better, but it's easy not to take it too personally since it's all a matter of taste.

But in engineering and IT we have an intersection of the two. We're tasked with coming up with solutions to problems which is a fundamentally creative endeavour, but at the same time at the end of it all there's no couching in friendly terms or subjective evaluations... either the solution meets the criteria or it doesn't.

You've got people putting themselves out there with their creativity and effort, but being judged by a harsh and unforgiving system. Some people thrive on that decidedness and the opportunity to make use of their creativity in a place where fickle humans don't get a say. Other people get their self esteem wrapped up in their work, and a blunt "this is wrong", which can and should be acceptable, destroys them.

To me trying to make these fields friendly to these sorts of people (regardless of gender) makes about as much sense as telling gallery owners they can't tell painters they don't like their work because it discourages people from painting.

Your work either works or it doesn't, and if it doesn't then no amount of feelings are going to override the reality of the situation.


> I can appreciate that you had a great environment with an older brother and father that encouraged you to participate in technical activities with them, but not everyone has the same environment. <

What women need to understand is that just by solving this problem of "encourage women to do X" won't do anything. Why not? Because that's not the real problem.

What you miss about AlyssaRowan's post is that she is telling you that she never cared about other people's validation. What you read there is as 'her brother and father encouraged her'.

Try ignoring what other people expect out of you and you will find that suddenly everybody is rallying behind you.


The two are very much related. The way you learn to ignore other (random) people's validation, is by having enough validation early on from the people that really matter. If you've missed that early validation, it becomes a lot harder to build your inner validation.


> If you've missed that early validation, it becomes a lot harder to build your inner validation.

That is not true at all. It's a choice, always. Even after not caring for other people's validation or their value judgment, more 'validation' is what you need in order for you to start caring about their validation.

Tell me which one would have a stronger effect upon you to live up to other people's values:

a) tremon I've always seen you happy, and I hope you will keep my daughter always happy

b) tremon you're a loser, you will never be successful in life. My daughter will be so unhappy with you.

If you think the first statement is what will make you not care about your in law's opinions, then you're totally wrong, and it tells me that you have never 'not-cared' for other people's opinion about you.

It's the second statement which makes me wanna work towards my own happiness with my future wife. The first statement pushes me to deny my own feelings because it's only in first case you could disappoint someone else.


Nothing you wrote is different for men.


Yep. Part of the reason I dropped out of Comp Sci the first time around is because I was struggling and thought I must be in the wrong major, because if it was the right major, it should be easy for me. (Note: throughout high school, most classwork was easy for me, or if it wasn't, I wasn't too interested in the subject, so it was a shock to actually encounter subjects I had a hard time grasping in a field I was actively interested in)

I did ask for help during office hours, though, and one of my professors actually said "If you didn't learn it in the lectures there's nothing more I can teach you."

Back then there was very few articles online, and no Stack Overflow, not even Experts Exchange, so my only real resources were two ancient textbooks in the school library and my professor.

But asking questions isn't easy, and in fact it's actively discouraged by your peers in high school, who mostly have nothing better to do with their time at school except judge and gossip about people in their classes.


I think the implication is that the pressure is amplified for women in male-dominated situations and/or that the game is rigged. As a man, there's almost nothing you can do in your career where you gender works against you. Society's bias is that men are more competent, and it's been demonstrated in experiments many times (even among women!)

I've heard many men express vocal shock upon hearing that a good PR (or whole project) was written by a woman. The game is definitely still rigged to varying degrees in programming.


>Society's bias is that men are more competent, and it's been demonstrated in experiments many times (even among women!) //

I'll have to read your citations to be sure [hint, hint; ie citations please] but presumably this is context sensitive.

I've been mocked for being able to make a hot drink by a group of women ("Wow, a man who can make their own cup of tea!") and I've also been discriminated against at work ("Can we have the lady please" - I'm the one with the greater experience but it's in an area related to child care and so I'm assumed to be here to help my female colleague). Doesn't bother me, it's pretty petty after all, but it happens and it doesn't look like people assuming I'm more competent because of my sex; perhaps I'm mislead.

As a father I also get remarks like "do you know where his mum is" when the baby is crying ... (and no it's not because they know the baby needs feeding).


Citations below. It's very, very easy to Google these, by the way. There are literally decades of research that, all things equal, women are perceived as less competent, less hire-able, and less intelligent than men.

I agree that there is bias against men when it comes to domestic and caretaking tasks. The point that people are trying to make is that the discrimination against men is far less painful.

Your examples are actually perfect. They're small issues that didn't bother you. But what if you're a single mother trying to get a promotion? That bias could affect where your kids go to school, how much you save for retirement, and other vitally important parts of your life.

A really important note: we'd rarely discuss inequality in STEM fields if those weren't some of the best-paying and most sought-after jobs at the moment. Context and circumstances do matter here. There are certainly issues of discrimination against men that are important (men are less likely to seek mental health care because it's not "manly" to have feelings or be "weak"). But those things are also caused by men, aren't they? Are women the drivers of any seriously harmful discrimination against men? (I'm genuinely asking here.)

The overall point I'm trying to make is that bias against women happens in ways that have a huge impact on their lives, and bias against men (while still a problem!) happens in ways that harm us far less.

That's all moot, though: if we move toward gender equality, all of the discrimination should diminish. Men and women will be affected positively.

Copious citations:

1a. (writeup) http://www.washington.edu/news/2016/02/11/male-biology-stude...

1b. (study) http://journals.plos.org/plosone/article?id=10.1371/journal....

2. http://www.pnas.org/content/109/41/16474

3a. (writeup) http://www.amazon.com/Blindspot-Hidden-Biases-Good-People/dp...

3b. (video) https://www.youtube.com/watch?v=fL9__gD88xk

3c. (study) http://www.people.fas.harvard.edu/~banaji/research/publicati...

3d. (study) http://www.people.fas.harvard.edu/~banaji/research/publicati...

3e. (many more studies) http://www.people.fas.harvard.edu/~banaji/research/publicati...

4a. (writeup) http://blogs.scientificamerican.com/unofficial-prognosis/stu...

4b. (study) http://www.pnas.org/content/early/2012/09/14/1211286109

5. (research done by my incredibly smart friend showing that the gender wage gap is about $.10 on the dollar when controlling all possible variables) https://www.americanprogress.org/issues/labor/news/2013/04/0...


>I agree that there is bias against men when it comes to domestic and caretaking tasks. //

That was the point that needed citations, that there are biases in both directions. What also comes through in your cited studies is that in science the biases are across sexes and other demographics (see eg 4b. where neither faculty, tenure, sex, nor age was correlated for the person exhibiting the bias against [fake] female applicants). This conflicts with the rhetoric that it's a male vs. female problem.

There are biases against people that aren't perceived as belonging to a group naturally predisposed to a particular activity and these biases are inherent to all people? But you take from this "women are perceived as less competent" which is sexism; you've taken half of the result - people are prejudiced against others from groups they expect to be less competent. By re-couching the result you're just going to introduce a whole new load of biases, how does that help us towards equality of opportunity.

>The overall point I'm trying to make is that bias against women happens in ways that have a huge impact on their lives, and bias against men (while still a problem!) happens in ways that harm us far less. //

Bias against some men, bias against some women. Bias against people based on irrelevant factors isn't useful; completely accepted. It's not helpful in particular to say - we must focus on biases that appear to affect women because men [in general] get an easy ride of things; much of the time that's not going to help an individual fighting against bias.

You say biases against women are more harmful. Tell that to a primary teacher who's regarded with extreme distrust based on his sex alone to the point of being assumed to be a paedophile. Maybe it's worse if someone thinks you can't program.

In short, the idea that adding further discrimination will somehow reduce naturally occurring biases is completely unconvincing to me. But then I don't think we need more of $sex in $profession but instead that all people should be provided with equal educational opportunities and opportunities to enter all professions.

Looking at law in the UK (https://www.lawsociety.org.uk/Law-careers/Becoming-a-solicit...) we see more women being accepted on university courses, more women entering the profession at a slightly younger age than men. Overall there are 51% male and 49% female registered as qualified solicitors; in Scotland 64% entering the profession in 2015 were women [ethnic minorities being over-represented wrt the general population]. Does the legal profession need to start discrimination in favour of [indigenous] men ... I don't think so, I can't see how discrimination leads to a level playing field at all.

Now in law a lot of the top positions are predominantly men, that seems to be an age thing, we can't expect society to change overnight. Indeed if women continue to chose to have and raise children we'd expect a slight imbalance in favour of men [vs. the proportion entering the profession as a whole] all things being equal.

Re your 5. citation the wage gap in the UK for the young favours women. In my city women in full-time employment earn 7% more than men across all age groups. The problem then is that young men in my city are nonetheless discriminated against in favour of young women because "[men have|there is] a bias against women and so we need positive discrimination to give girls a chance" (which I find offensive to the young women and young men). So we have special women only business events, girls only tech events, and the like. Locally I'd expect them to push the gap even more in favour of girls/women. Here this is largely related to the 'hard industries' having collapsed and removed the availability of jobs that boys are interested in doing. In the UK as a whole 20% more men are unemployed than women (https://www.ons.gov.uk/employmentandlabourmarket/peoplenotin...).

---

Some more general notes on your citations:

1a. Had a discriminatory assumption that because a result suggested a perception bias amongst biology students then the bias in classes with a greater proportion of males would then have a greater perceived bias; it may be true but it was not a claim based on the results of their study. It seemed particularly jarring when talking about bias that those performing a study would jump to a conclusion based on prejudiced stereotyping - I'm not saying it wouldn't be found to be true, but it might not be. That sort of attitude is toxic IMO.

3c. Looked at perception of whether men were more likely to be scientists and matched that with numbers of children choosing science. They assumed the match was due to stereotyping, basically begging the question (petitio principii). They appear to have got their causation wrong - they think stereotypes cause a gender imbalance in school results whilst the likelihood seems pretty high that a gender imbalance causes the stereotype. That suggestion doesn't appear in the discussion and yet seems the most likely objection.

4a. This is a good study, yet still in the Sci.Am. write up the article author demonstrates a sexist bias - "Unfortunately, too, many women are not attuned to subtle gender biases.". Yet the study shows that the bias is equal across men and women: quoting the abstract of 4b "The gender of the faculty participants did not affect responses, such that female and male faculty were equally likely to exhibit bias against the female student.". The female author has unwittingly implied that 'this is a male problem but oh some women are also to blame' whilst the study says that men and women are equally to blame.

4b. On the subject of their conclusions they don't appear to have accounted for what I'd consider the first alternate hypothesis, that neither men nor women in science like working with other women for reasons unrelated to competency. They do look at whether people "liked" the students, but people liked the female student more than the male which is subtly different to wanting to work with someone [this "likeability" bias didn't even make it to the abstract though]. (It's a pity they didn't look at gender neutral names too).

4b has interesting results that look strongly supported and that I hadn't seen ... I took the IAT test (mentioned in 1a too IIRC) and apparently slightly associated women more with science - I can't work out what in the test suggests that conclusion though presumably timing (I hope they took proper account of left-right biases; my test didn't appear to mix them enough).

Can you or anyone link me to the opposite studies for female dominated fields? Do they show the same bias against women?


May be we just don't understand the social clues.

I friend had a little sister in high school. And she was very happy learning programming. She thought about studying CS, but she changed her mind. She was never able to articulate a reason; she was not very excited about her chosen career. My guess is that her decision was influenced by social status.


What's different however is men hardly get the equivalent empathy for the said hardships.


> I think the sentiment the author is sharing is that a lot of women feel social pressures to appear outwardly successful, popular, etc, and this creates a very difficult situation where its perceived that asking a question that might make you sound stupid causes you to lose social status.

I think this is true of both genders and I believe her story illustrates that. She describes her experience in the lab where the TA was getting frustrated, that is until she proclaimed "I DON'T UNDERSTAND," and suddenly everyone was at ease. I think this shows how everyone, be it student or TA, is silently judging themselves for not knowing.


>I think the sentiment the author is sharing is that a lot of women feel social pressures to appear outwardly successful, popular, etc, and this creates a very difficult situation where its perceived that asking a question that might make you sound stupid causes you to lose social status.

This not a gender issue, it applies to everyone in every real world setting.


"I saw my elder brother and dad doing stuff, and I wanted to join in and learn."

I think this article is for those who didn't start early, but want to become good at programming or computer science, anyway.

Of course, the same issues would be encountered by a man introduced to programming and CS for the first time at college, but statistically it's probably more likely for a woman to first become interested in these topics later in life.


> I see women writing about these meta-topics of "being a female programmer" far, far more often than any actual technical aspect.

I used to wonder about this myself. But, then I met some ladies that write technical blogs anonymously, or under male or gender neutral pseudonyms. This was because of the harassment they experienced themselves, or witnessed in others, when they originally set out to write as a woman in tech.

So, I suspect that women writing about getting women into tech is one of the few ways that they feel comfortable publicly contributing to their field (even if not from angle they may have originally preferred).


Why would women be harassed for blogging about programming, but not for meta-blogging about the experience of being a female programmer (as the OP)? Is one really less dangerous than the other?


The question what kind of harassment we are talking about seems pretty relevant here. Stories such as http://tech.mit.edu/V136/N9/harassment.html seem to suggest that overbearing, desperate romantic attention (often followed by lashing out when the advances inevitably turn out to be futile) generally is counted as such. In that light, I find the fashionable narrative about boys getting angry about cooties in their club to be somewhat questionable - what if the "unwanted attention" rather than the "sheer malice" type of harassment constitutes the bulk of it?

I imagine the typical perpetrator in that case is a man with negligible romantic experience, who is not particularly attractive, lives in a social environment with a 10:1 M:F ratio and statistically may well be encountering someone of the opposite sex who actually nominally has something nontrivial in common with them for the first time. The "something in common" part is contingent on actually signalling being a capital-p Programmer culturally (e.g. by blogging about programming), rather than someone who appears to be closer to a social activist who just happens to have a job in programming (and might as well be the secretary staffing the front desk for the purpose of commonalities, as far as the would-be harasser can see).

Grasping at straws inevitably ensues, and there are sufficiently many around that some don't react gracefully when the straws snap.


Perhaps the elephant in the room is the large number of young men in our profession that feel desperately lonely.


It's not related to the job per se though, it's more about personality / character (and there was another word but I forgot, er, words); people in IT and software development tend to lean more towards the introvert spectrum, the socially awkward, the physically less fit, etc. That + choosing to spend more time at a computer instead of interacting with people IRL (doesn't have to be that much even) causes a gap in development.

Of course, #NotAllDevelopers; I feel like I'm somewhere in between (but in part because of some effort on my own), and my company has quite a few developers that lean towards extroversion.

The problem in this case is that when someone steps upon a soapbox on the internet, they reach an audience of potentially millions; even if 0.00001% is a bit er, maladjusted, that's still enough for a few people to start making that kind of comment or show that kind of behaviour. Even if 99% of people were well-behaved, the 1% could still cause shit. And that's not easy to deal with.


Lots of people feel desperately lonely, not just in programming.

But one of the modern expectations of a professional work environment is that people can manage how they express their emotions. Screaming and hitting because of anger is not permitted; similarly, harassing and touching because of lust is not permitted either.

I actually don't think that programmers are that much worse than other professions in this respect. We just talk about programmers more than lawyers or soldiers here, because most folks here are programmers or interested in programming.


Harassing and touching shouldn't be and isn't permitted, but asking someone out on dates is pretty common (even if maybe it shouldn't be). The problem is that a mere question can seem like harassment when the ratio of askers to askees becomes too skewed.

There is also the issue that what is socially acceptable behavior depends upon characteristics which we do not want to admit. The difference between creepy and acceptable behavior is sometimes not found in the behavior itself, but in things like the race or appearance of the one engaging in the behavior.


Asking someone out on a date is not harassment, and it's fine if done maturely. Generally that means you take one, at most two shots and then if the other person turns you down, you drop it.

What's not ok is constantly commenting on a person's appearance or clothes, making sex-related jokes or comments in front of the person, staring at them constantly, questioning them about their love life or sex life, etc.

A lot of that stuff falls into the "harmless in a social situation" category, but is on the wrong side of the line for a professional environment. But, that is the sort of stuff that is often permitted, tolerated, or insufficiently discouraged by managers, especially folks who perceive work as a social setting, or want to believe it is a social setting.


Let me say that I agree with you, but that being lonely doesn't excuse their behavior (nor am I trying to say that's what you were implying).


Yes. I am definitely not excusing the behavior.


Really? And that's anyone else's problem but their own because...?

Sorry, learning social skills, learning to manage your time so you can meet people, etc. is not the job of an employer or a profession as a whole.

I'm sure there's plenty of lonely garbage men (purposely phrased as "men"), but no one's suggesting that the public works departments should be ensuring there's more women in the departments for their men to hang out with and fall in love with.


>Sorry, learning social skills, learning to manage your time so you can meet people, etc. is not the job of an employer or a profession as a whole.

Didn't learn job skills, wasted a free k to 12 education, made bad financial decisions? Here, let society help you. We'll tax people to help fund a social safety net because there should be a basic standard of living.

Didn't develop social skills? LOL, LOSER! Why don't you try to teach yourself some social skills. You deserve to be alone until you improve yourself.

Crass and perhaps too blunt, but people should be able to get the basic idea of this double standard.


That's a good point. It only applies if you know your blog's audience in real-life (university, workplace, meet-ups etc), but I guess that's actually the common case. I wouldn't know, I'm not a blogger :)


Women are harassed when they do both, but as a general rule women who are willing to put themselves out to be harassed are involved in politics in the first place, thus the willingness of women who are willing to write at all to write about the political subject that is being a woman. "If I'm going to be harassed for writing anything, I might as well write about something that only someone with my perspective can write."

You'll also tend to find that women who blog about tech tend to hide their gender a bit more or post on community blogs, or their posts about tech will be on a blog with a wider scope.


I think the unfortunate truth is that they'll get harassed either way.

But, if you restrict your blogging to the arcane aspects of database replication or whatever, then you can "pass" as a man.

This option isn't really available if you are blogging your experience "as a woman in tech" so this self-selects for people who can cope with abuse, are already receiving so much they won't notice any extra, or that think it's worth it to be a visible example to others.


> I think the unfortunate truth is that they'll get harassed either way.

Are women in tech harassed more than "average" women? I wonder if this is true both in real life and online.


I'm pretty sure they get harrassed for both, but it's possible to write a tech blog in a gender neutral way, while it is not possible to write a "my gendered experience in tech" post in a gender neutral way.


Males do not have the option to write a post about «being a female programmer». This does not pose a threat for the insecure males but a well-written post about tech does.


Why would women be harassed for blogging about programming

There are a great many total dickheads on the internet. Really. It's hard to comprehend just how many utter dickheads are running around out here. The exact reasons why? I've never really understood all of it. Some of it is because it makes them feel like big men, showing off to their dickhead friends; I've seen them come back to crow about it and they seem to get some kind of approval from their peers.


> There are a great many total dickheads on the internet.

I really hate this line of thought. The internet is not a different place to the real world, and the truth is that there are a great many people in your town/city/country/world etc who are kinda obnoxious.


> The internet is not a different place to the real world

In certain vague, slightly pointless ways (i.e. "it's just people doing things on a thing" ) they're exactly the same, sure.

The specifics of what is possible in terms of breadth and time are vastly different though.

With regards to the topic at hand - and assuming I am a jerk - I can find 50 different programming blogs and write sexist epithets in the comments in ten seconds flat.

I cannot do that in the real world to 50 different people in that time frame nor with the same lack of repercussion.


> The internet is not a different place

People act differently on it, though.


I've never seen anyone (outside a playground) identify a woman talking about something, run over to her shouting "stUPiD BitCH geT baCk iN tHe kiTCHeen!! lol lol lol!!" before returning to his chums for admiration and approval.

The effect does happen, but in a far more insidious way.


Yeah but the internet is more anonymous.


If you act like a total dickhead in real-life, you're apt to get your teeth knocked in, which tends to modulate dickheadsian behaviors.


I would also add that it's easier to be a dickhead online. You don't have to be particularly witty in real-time, and once you've gotten a working schtick, what wit you do have can be replicated via copy-n-paste.


There are a great many total dickheads in the real world, but in the real world, it is much more difficult to mask your gender than on the internet.

For a good account of total dickheads (in a nerdy subculture, no less) in meatspace, see http://latining.tumblr.com/post/141567276944/tabletop-gaming... If this were online, I bet the author would have assumed a gender-neutral / default-to-male pseudonym in a heartbeat.


You haven't really answered parent's question.


Perhaps I need to repeat it in fewer words; "because they gain peer approval by doing it".

I also edited what I said to remove some of the additional discussion and data, to make it simpler to see where I said it was for peer approval.


Those 'meta-blogging' are probably more likely to be resilient to the harassment, seeing it as something they're already fighting.

In technical writing, I imagine you'd just think "I don't want that in the comments [or to deal with moderating them]".

I definitely agree that the answer is to just shut up about being inspiring, and be inspiring. (To any future CS student - not just women/schoolgirls!)


My impression is that some men (trolls, MRAs, you know the type) are uncomfortable with women talking about technical topics, but have no problem as long as they restrict themselves to "women's issues", which would probably includes "women in tech".


Really, you're clumping "Men's Rights Activists" with trolls and saying that they are uncomfortable with women talking about technical topics? That is very blatantly stereotyping.


You've run into the "it's okay when we do it!" mentality here from the poster you're responding to. In their mind, stereotyping, prejudging, and wildly generalizing is completely and totally wrong, a crime on the level of hate speech and misogyny, but they will engage in stereotyping, prejudging, generalizing, and demonizing groups that they disagree with because in their mind they're fighting the good fight, and only bad people would disagree with them.


Where am I prejudging groups on who they are? I'm only calling people out on their behaviour: the people who attack women who speak about tech. I'm labeling them trolls and MRAs, because I think those are the most likely motivations for why people might specifically attack women.

Of course there are plenty of trolls who are concerned with entirely different things, and of course there are MRAs who don't attack women like that, but I'm at a loss about what other groups would be motivated specifically to shut down women who speak about tech or similar topics.


There's also a number of them who probably skip over "women's issues" articles. Likely not enough though...


Ever heard of GamerGate?


I can't say that I have. Educate me.


Google it.


I'm not convinced that the tech bloggers get harassed because they are female. Look at any hacker news discussion and things can get heated quickly, irrespective of gender. Look at the classic "Apple vs PC" wars and so on. For any technical opinion you voice, you will find scores of people who dislike it intensely (Java vs Ruby, is JavaScript a serious programming language, is agile stupid...).


I don't mind being harassed for preferring Emacs over Vim – it's a choice, after all. I can argue rationally for why you are wrong if you contradict me.

I do mind being harassed for being a man rather than a woman – that's not something I chose. I was born that way. I can't change that nor can I argue rationally for why I decided to be that way.


>it's a choice, after all.

What about religion. It is an interesting intersection of 'is a choice' and 'protected demographic'. And why should it be any more acceptable to harass someone for what they choose? Is it more acceptable to discriminate against a Hispanic individual for choosing to identify with their heritage (a choice) than to discriminate against them for being Hispanic (not a choice)? Both seem wrong to me.

>that's not something I chose. I was born that way.

What about those who are of a different gender/sex than they were born? What about people who choose to change their gender?

Even your response itself can be an issue, as there is an implication that others are born a given gender and cannot change it.


> What about those who are of a different gender/sex than they were born? What about people who choose to change their gender?

If you actually speak to these people, they will inform you they didn't "change" their gender. What you are referring to is the practise of fixing the body to conform to the expectations of the gender they were born with.


They changed the gender that society assigned them with. And on some level you might be able to say they changed the gender of their body to match the gender of their mind (depending upon where you fall on the mind/brain/body terminology).


Well if the comments are like "shut up, woman, you can not know anything about this", I agree with you. I am just not sure that is the way it is - or if it is just the usual critical comments and women think they get especially bad comments.


Just because you're not convinced doesn't mean it isn't happening. Why would somebody, a lot of people, an awful lot, say X is happening if it wasn't? And why default on somebody lying instead of believing them, or at least giving them the benefit of the doubt?


>Why would somebody, a lot of people, an awful lot, say X is happening if it wasn't?

To push an agenda. Take as an example people that claim that video games are responsible, either partially or wholly, for an increase in violence. There is no definitive link between violent video games and violence, especially as the violent crime rate in the US has been falling for decades now. The people leading this crusade generally do not like games and feel that their disapproval and dislike means that other people shouldn't get to experience them.


I don't think they are lying, just that their perception might be wrong. Or we are only getting half the story - what I often read is women claiming they get hate for being women online, when really they get hate for being radical feminists and telling random people on the internet they are assholes, for example (not saying that is the case here).

I haven't talked to any of them directly, so I don't know who is "somebody, a lot of people, an awful lot"? How many is "an awful lot", what do you reckon? 1-10, 10-100, 100-1000, 1000-10000? Millions? Maybe if I had more firsthand information, it would change my mind.


There could also be discrepancy in "what exactly is harassment."

This came up when Sarah Sharp quit developing on the Linux Kernel due to 'abuse' from Torvalds [0]. A prevailing notion was that this language was necessary for everyone working in the kernel space.

I've also seen commenters on HN get torn to pieces because their javascript benchmarks ~5-7% slower than the "optimal" solution. Harassment is often based on opinion.

[0] https://news.ycombinator.com/item?id=10338094


That's what my original comment was about - the "harassment" might not be because of their gender, but just "normal" tech discussion that they aren't used to.


What the other commenters are saying I agree with; language or editor choice is about, well, language or editor choice; gender is about who someone is. It's the ad hominem fallacy, basically. Of course, similarly when someone makes a post about e.g. ruby or emacs, adding "as a X in tech" instantly makes it (to a lot of readers) about the person, not the tech.

Maybe more posts should start with "As a man in tech" or something. In gender-skewed areas, removing gender from posts (along with the assumption of what gender wrote it) would maybe be preferable. But, IDK.


As I said, it is not clear to me that the women were attacked for their gender. Maybe they were, maybe they weren't, I don't have enough information.


> if we want more women in programming, then let's talk about how cool it is to build stuff, instead of how we can be role models or whatever.

“If you want to build a ship, don’t drum up the men to gather wood, divide the work, and give orders. Instead, teach them to yearn for the vast and endless sea.” - Antoine de Saint-Exupéry


But in this particular case, doing cool stuff is the actual reward of computer science. In other words, it's the endless sea of things you can achieve through it, not the fact that you can be cool while doing it :)


YMMV. For me, I don't really care about the nuts and bolts of engineering (I know others do), it's just the vessel in which I take to the vast and endless sea.

FWIW, I have a totally unscientific gut-feeling that feeling cool about the process and the tools (rather than the outcome) is a slightly male-heavy preference.


Here's some scientific validation of your gut feeling: https://www.researchgate.net/profile/James_Rounds/publicatio...


> I see women writing about these meta-topics of "being a female programmer" far, far more often than any actual technical aspect.

I wonder how much of that is bias of what information is put up front. I mean, I see a meta-post on female programmers probably just as often as I see posts about Qubes. Both include female programmers, but it's not as apparent in the second case. I'm sure there are some more posts where it's just not "advertised"... or at least not until someone comments that it was written by (gasp) a woman, when it suddenly becomes super-relevant to the discussion.

Or to put it another way, if this post was treated with s/girl/guy/, would anybody mention anything about "being a male programmer"? It would be likely received as just a post about learning. The community seems to be exposed to more "female programmer" posts now and they stand out. Even this post self describes as "female programmer" post to, but only the second paragraph mentions it directly.


It seems a variation of the good old there are no girls on the internet.


> Or to put it another way, if this post was treated with s/girl/guy/, would anybody mention anything about "being a male programmer"?

Bingo.

There's a recent post on HN trending right now about mistreatment : https://news.ycombinator.com/item?id=11429590

The difference is that the person is male and the comparison of comments here and there is - peculiar.


> "I see women writing about these meta-topics of "being a female programmer" far, far more often than any actual technical aspect"

I disagree.

That is, I kinda agree and I totally disagree. I mean... argh, this is so hard to phrase for me here: I kinda "agree" - that one sees "more of" the writing about the meta-topics by women. But I disagree with the underlying fact (that women actually do "write more about meta-topics than technical aspects"). The problem (but also kinda non-problem?) here is, that women do write, but a reader often may not notice when the technical-aspects writer is a woman!... I know this is true, because I totally was once corrected here on HN for answering "he something" when it was a she - and started looking more carefully since. And now I see there totally are woman technical-bloggers, and many of them highly notable ones! (off the top of my head: Julia Evans, Joanna Rutkowska, Limor Fried/ladyada, ... just to start with.)

With that said, I believe the visibility paradox is a kinda self-fulfilling prophecy and/or hard to untie conundrum: either you have technical-aspects woman writers who don't emphasize being women (and thus can currently often get overlooked), or you have technical-aspects woman writers who do emphasize, and thus easily fall into category of "women writing about meta-topics more than technical aspect"... thus I believe we "see" more of the latter mostly because we typically don't recognize the former :/


I can agree with your feeling. When I read a technical article I don't think about gender but I would say 'he' unless I knew with certainty the author was a 'she'. Even when a picture of the author is present I might never notice it, read and enjoy the technical piece, and move on. Hell I might even consider that I would say he, instead of checking gender, because I project myself into the story.

Anyhow, I believe you've gotten it right. We don't highlight gender unless that is the topic to be discussed. Otherwise we don't notice, I wonder what the real numbers are a little but I don't care. The person that looks for gender, to harass, is someone I can't identify with or empathize with. I don't understand them at all.

So people of every shade of gender please keep writing technical posts and I'll keep enjoying them! Thanks!


> if we want more women in programming, then let's talk about how cool it is to build stuff

I really agree with this.

Girls just don't seem to be interested in programming when they are young.

Then they go to university, and largely avoid CS because a) they haven't developed any prior interest in it and b) it is perceived as a difficult and male-dominated field.

The ones who do enrol in a CS course often struggle because it's their first foray into programming and they aren't familiar with any of the concepts, unlike many of their male peers who have done it before and cruise through all the 100 level courses

If we want to see more women in CS, get them interested at a younger age and suddenly CS will seem more appealing and they will find it just as easy as the other experienced students.

We need to show girls that programming is a good outlet for their creativity and foster their interest at a younger age


On one hand I agree that getting women interested in CS earlier will help, but it also seems unfair for introductory CS courses to penalize people who are new to CS. One solution some schools have implemented is to have multiple entry points, so that the experienced students can start off in more advanced courses without biasing the other truly intro courses.


> it is perceived as a difficult

It is difficult. Why would that impression be problematic?


Expertise in computer science probably isn't intrinsically more difficult than any other field, like medicine which now has more women than men.


Sure. But would it make sense to get women interested in medicine by downplaying how difficult it is?


I didn't word that very clearly but I meant difficult in the "I will have to fight to get ahead because women aren't necessarily well respected by the men in CS" sense

It is also technically difficult, but if that is a turn off to a prospective student of any gender then they might not be suited for a career in software engineering


> We need to show girls that programming is a good outlet for their creativity and foster their interest at a younger age

I agree, but not just with CS, with a lot of things. Most building toys are marketed towards boys, and a lot of baking/cleaning toys are marketed to girls. These things shouldn't be gendered toys.


>Then they go to university, and largely avoid CS because a) they haven't developed any prior interest in it and b) it is perceived as a difficult and male-dominated field. I think you're forgetting a few reasons that women have mentined when asked why they left, or avoided CS: c) they are actively steered away by advisors d) they are harassed by fellow students or professors.


Fair point, and those are definitely things that we should be consciously striving to minimise

I don't think it substantially changes anything I said earlier though.

If a girl has been actively programming since a younger age, she will have enough confidence to pursue CS without seeking an advisor or her peers' approval


Scratch.MIT.edu is an amazing place where kids can make something, see it work, and share it with minimal frustration.

Yet trolling certainly exists among kids, too. If anyone's looking to make a difference, consider volunteering as a moderator or just hanging out in the scratch community and leaving positive comments.

PS: If you're a troll, seriously, disregard this. Pick on someone your own size.


In general, girls are not really encouraged to build things as part of their play. Toys marketed towards boys are definitely more oriented towards building, such as legos, model kits, and tinker toys. Adults are also less likely to build things with girls and although households have shifted away from imposing traditional gender roles on their children, toys are slow to reflect the change.


There's a very good Norwegian documentary series Hjernevask ("Brainwash") that tackles this issue in its first episode.

"Why do girls tend to go into empathizing professions and boys into systemizing professions? Why does the labor market become more gender segregated the more economic prosperity a country has?"

It's freely available online if you're interested.

https://en.wikipedia.org/wiki/Hjernevask


(Full disclosure: white male software developer)

I certainly don't envy the role women and minorities have in tech today. Always being pressured to be a role, or lead, or to be an example, or to strengthen your group, or whatever.

When I got into programming it was because I was curious. No one ever asked me to do it. No one asked me how I was doing. No one directed me, no one told me to do anything different, no one told me I was smart, and overall no one judged me. I was 10. I never even thought it was possible to have a career in it until I was about 15.

The important thing: that allowed me to just enjoy programming with no distractions, no politics, no social aspect involved. I was purely directed by my interests only.

I'm not sure if that's possible today, especially for under-represented demographics, and that makes me sad.

The result is that we'll be pushing people to do things that they might not be comfortable with. We want under-represented groups to be vocal and open about what they do, so they can get other people interested? If I had to be vocal and open about what I was doing, I'm not sure I'd have got into programming in the first place! What attracted me was the fact that I could just be on my own, solving problems in my mind, by myself, with no distractions.


>CS is supposed to be so super scary and women need special hand-holding and encouragement to attempt it.

This. I think this is really damaging. A misogynist sees this characterization and thinks, "Lol. See, what did I tell you?" An employer thinks, "Hiring women requires hand holding." A young girl thinks, "My friends won't want to do this with me."


I want a world where we don't have to have this conversation at all. But, until we get there, don't we still need some role model type people for those women who are intimidated? I may be completely off base here: any time there's a big social shift, it takes a bunch of effort by a relatively small number of people. Right now, the industry is male-dominated, and many women are either too intimidated to start or this is not even on their radar. "Role model" type people do help, and maybe at some point a few years down the line, we've bolstered the female population enough where people enter and exit naturally like any other balanced profession.


There's a difference between a role-model and a self-promoter. The role-model hacks away at lots of projects, has an active github, and develops lots of experience until they're at the top of their field. The self-promoter writes a lot of blog posts about "being" in tech instead of actually "doing" tech.

The cottage industry devoted to writing blog posts about how hard it is to be a woman in tech and all the sexism and hardship all women face along the way seems to be doing their part to continue to intimidate and discourage women from learning to code. But for the self-promoter, this continued imbalance offers basically limitless opportunities for career progression through pointing out sexism rather than through technical ability.

Easily 90% of the female engineers I encounter are from East or South Asia where these blogs aren't widely read. It's an interesting correlation, even if by itself it proves nothing.


I don't like it but active promotion feels necessary in a world, where attention is the secondary currency.


The cottage industry devoted to writing blog posts about how hard it is to be a woman in tech and all the sexism and hardship all women face along the way seems to be doing their part to continue to intimidate and discourage women from learning to code.

As long as there is a market for that kind of rhetoric and enough eyeballs show up to generate the ad impressions, blog posts will be written about it. If shit on a stick was what everybody wanted to read about, we'd be up to our ears on whether blue or purple shit was the hotness this fall. The transparency of it and that people seem to find it confusing is the funniest thing of all.


I think talking about the issues is a good thing.

Tech is scary for women. I've seen all kinds of casual sexism on the workplace that, while generally not intended as hurtful, men simply don't have to go through.

As a man, I'm pretty sure I've never had people talk about how hot I was after I left an interview or meeting. I've never been singled out to go fetch coffee, or told to "calm down, love".


Zero of those things fun, granted, but zero are scary. That's a total misuse of the word aimed at you coming off as sympathetic to women's issues.

FWIW, my mom, mid-50s, has been in tech since the '80s. She has complained of sexism. She also says the idea that tech is more sexist is a joke, and that her younger female co-workers complain a lot.


Yeah my mom also thinks that Spain was better off under a dictatorship, but that's just because she's a raging conservative and it never negatively affected her directly.

Anecdotes are anecdotes both ways, you saying zero of those things are scary is missing the point, women are not some sort of fragile creature that will get easily offended or scared; none of that is scary, sexism is not scary most of the time, but it's demeaning to be treated as a lesser.


Exactly!

About 3 years ago, a lady by the name of Jennifer Dewalt submitted her website on Hacker News, in which she had developed 180 websites in 180 days [1]. It was basically a documentation of her self-learning process, starting from scratch and every day's project a little more advanced than the previous day's, and it was impressive.

I emailed it to my sister, who at the time was trying to decide what to do with her life. She was very inspired and started learning JavaScript. The funny thing is that none of the "you should go into tech because..." type articles I had sent her previously had made a dent. Yet apparently all she needed was a "doer" role model!

I, too, feel that if more women focused on doing stuff instead of writing about the difficulties they experience, we would see more women in tech. Dewalt became a YC fellowship founder[2] and I'm sure her leadership by example has inspired many more women than just my sister.

[1]https://jenniferdewalt.com/

[2]https://zube.io/blog/how-i-built-180-websites-in-180-days-an...


Here's another blog if you want to ever follow up with more advanced "this can be done" examples: http://www.windytan.com/p/posts.html


jvns.ca as well


For what it is worth though, if we remove the gendered aspect from the article then what remains is the insight that asking questions and alerting other people to what you don't understand is a great way to actually get the information you need and to gain skills. The advise really works for everyone.


>Yet apparently all she needed was a "doer" role model! //

Do you perhaps mean a "doer _female_ role model"?

Maybe the problem here is that [younger] females are particularly sexist and so won't consider males as role models?


My first boss was a woman who had started her career in the computer field in the mid-1970s, and nothing seemed unusual about it at the time. As years have gone by, I read an increasing amount of talk about women having a different experience with programming, but my experience of actually working with women programmers stays the same. They are just part of every team I've worked with and deal with the same day-to-day challenges as everyone else.


The "who had all the odds against her" part made me feel sick.

I'm seeing nothing about sleeping in a car, or any hint of a struggle aside from academia. Maybe it's just because my childhood was so shitty, but I can't feel empathy here.

You don't need a CS degree to become a well paid programmer, I couldn't even afford to finish college and I do well.

The little secret is you need to do a large amount of independent study,programming side projects, etc to become a decent programmer.


> but I see women writing about these meta-topics of "being a female programmer" far, far more often than any actual technical aspect.

One of my most favorite programmer figures quickly became Natasha Murashev...

https://www.linkedin.com/in/natashatherobot

...better known as NatashaTheRobot. Not because she is a woman, but because her Swift/iOS Newsletter is superuseful and interesting and she focuses on technical details instead of "did you know I am a girl?!".

https://twitter.com/natashatherobot

http://www.thomashanning.com/interview-natasha-the-robot/

Similar to Erica Sadun who writes all this Apple/iOS dev Cookbooks.


I agree, but I feel this post is not really about that. It applies to guys equally. It's just that the author happens to be female. At least it was very relatable to me.


I think the problem that krstck is trying to address is not so much that the anecdote is invalid, but that prefacing it with "I'm a female programmer" colors the rest of the anecdote. Instead of it being a general anecdote which may be relatable to everyone in the field, it's specifically an anecdote about being a woman in computing. And krstck is saying there are certain problems that come along with that coloring of things.


Yeah the core of the article is that it's good to admit ignorance and ask questions - that's how you learn quickly.

Paradoxically people will actually think you're smarter for it anyway - it's often when you pretend you know something you don't that you appear dumb.

The gender commentary is a distraction.


>but I see women writing about these meta-topics of "being a female programmer" far, far more often than any actual technical aspect.

Ok, but as a male, I don't blog about everything technical I do. Most of the code I write or fix is just sort of quietly sent into internal code-review or pushed to an unpublicized github repo. I don't see what the problem is with a woman blogging about social/political stuff rather than technical stuff, since I figure it's plenty likely she's doing loads of technical stuff without yelling about it.


> I think we're doing a huge disservice by promoting this idea that programming is some super elusive thing

very true! The heart of the article is really just pointing out that like anything, learning computer science is about admitting what you don't know, asking questions and perseverance.

I guess it's because I'm not female that the "female in tech" portion of the article didn't really stand out against the greater take away (for me anyway) of what it takes to actually learn. On the role model front though, I do think that they can play an important part in encouraging someone into learning a subject where they haven't had any encouragement/support from family or school.


Disclosure: I am a male computer science researcher and software developer. I have years of experience as a TA, and I have taught a CS intro course to college students.

> I think it's great that this lady is going into this field, but I feel really weird about this characterization that CS is supposed to be so super scary and women need special hand-holding and encouragement to attempt it.

I don't think that is what the author is trying to convey. Rather the opposite, actually. She's trying to get across the notion that computer science is a topic like any other.

The problem is that many CS students (you included, it sounds like) come into CS intro classes with significant prior experience. To those without that experience, and not realizing that their peers have a significant head-start, they may feel dumb when they don't get concepts their peers instantly get. Many people will hesitate to ask for help in such a circumstance. I think members of a minority group are then even less likely to ask for help, because they already feel different and perhaps wondering if they belong.

Not many people come into microbiology programs with years of experience in the topic. So while CS is a topic like any other, it tends to have students unlike any other.

I do not think it is enough to just talk about how cool it is in programming. I think that the culture in our courses needs to change, and some of that is on the instructional staff.


Combine this with people who have varying thresholds for "understanding the content" and you have a context where it's quite possible that somebody who is actually quite competent doesn't feel that way because their threshold for "I get it" involves asking lots of seemingly obvious but not actually obvious questions.

When you put this kind of person in a climate where they feel like they are representing a group in front of others, then you have a recipe for somebody who has a lot of promise, but the environment suppresses learning. That's bad.

On the matter of whether this person feels like they are representing a group, it's important to distinguish whether this person "should" or "actually does" feel that they are representing a group. Women should not feel that they are, but we know that some do as a direct result of someone else generalizing them to represent women as a group. We know it happens. Maybe not by the people reading this comment, but we know it happens.

So this all combines into a situation where somebody saying "hey, asking questions is a good thing, stop worrying about making yourself look dumb" is necessary and helpful.


I agree with your sentiment - I read most of the technical articles on HN and reddit and I rarely find that a woman has written them. I suspect that since only a tenth of developers are women, at best you're likely to see 1 in 10 articles written by women. Its worth discussing why the actual rate feels a lot lower than that.

Having said that, here's a fantastic article I read recently - [1]. Unlike most articles about switching languages, she tried several approaches to fixing her problem in the existing language and shared why it was impossible to do it.

[1] - https://medium.com/@theflapjack103/the-way-of-the-gopher-669...


Actually, industry-wide, more like 20-25% of software developers are women. It's only in Silicon Valley and the startup milieu that 10% is the norm.


> I think we're doing a huge disservice by promoting this idea that programming is some super elusive thing

It's certainly not super elusive but it requires a specific kind of people that don't get anxious/frustrated when tackling complex systems, often badly documented. Some hate this kind of work, others love it. It involves having a certain type of personality as much as high IQ. Most men feel helpless when tacking such problems, too.


> a specific kind of people that don't get anxious/frustrated when tackling complex systems

Eh, you learn to not let that get to you because you build up experience working through it over time. I think that's a learned skill, not an innate, immutable trait.

Also:

> Basic Cognitive Skills, as measured by standard cognitive ability tests, are not shown to be helpful in predicting programming proficiency

from http://pro.sagepub.com/content/27/7/647.short


There'd be a huge percentage of people who if you started them down the CS path would bail very early through frustration, not feeling comfortable with the topics, etc.

I imagine many of us learn to get better at aspects of it. Or we're more comfortable with what the job entails and so can make light of the frustrations and soldier on.


That's definitely true. I suppose if I were teaching a CS course, I'd point out that it can be difficult at times and that being confused or challenged intellectually is a necessary part of growth, not something to be avoided.


Reminds me of this video, where Maddox explores similar theme on women in video games

https://youtu.be/MpJGkG1g-Lk


This is nice and all, but it's also a tad simplistic.

It makes the huge assumption that women will be treated equally on their way to making video games. The video game industry is controlled by a huge majority of men, how do we know that any woman trying to enter the field will be treated fairly? The same goes for any field where there's a big unbalance in gender representation by the way.


> The video game industry is controlled by a huge majority of men, how do we know that any woman trying to enter the field will be treated fairly? The same goes for any field where there's a big unbalance in gender representation by the way.

I don't think this is really related to gender in any non-superficial way. It's the nature of business that the establishment wants to keep their high status and limit access to newcomers. Gender, if targeted, is an excuse. If you're not of wrong gender, you're of wrong skin colour. If you're not of wrong colour, you're from wrong country. Etc. What do you think would happen if suddenly women were to become majority in game development? Yeah, we'd see what could be perceived a discrimination against men.

The solution is to find a way to level the playing field for everyone, without going into specific characteristics - because those are transient and change depending on who's on the top of the hill.


It's possible that when women who do write about the tech itself, and don't emphasize the fact that they're women, people tend to not realize they're women. That said, I've definitely seen interesting tech articles by women. But I'm also aware of cases like Kathy Sierra being chased off the internet by trolls like weev.

As much as women would like to focus just on the tech, sometimes the "women in tech" issues are unavoidable.

In any case, this particular article doesn't seem to be about "women in tech" so much as about "how to get into tech when it doesn't come naturally", and I think it's very insightful and inspiring, and relevant for men just as much as it is for women.


> Nobody told me it was supposed to be hard or supposed to be for boys or whatever.

This is an ideal situation, but sadly not what many women experience, myself included. Role models are necessary because these negative gender stereotypes are real and need to be explicitly countered, ignoring them and simply focusing on gender-blind education is not enough IMO.


>I think this is a great sentiment, but....and maybe I'm just not hanging out in the right parts of the internet or whatever...but I see women writing about these meta-topics of "being a female programmer" far, far more often than any actual technical aspect.

My observation of women I know personally is that they're a lot less likely to write publicly about things they have a less than perfect grasp of than, say, I am.

I do a lot of things that I am, quite frankly, unqualified to do, and most of them turn out crap. You can spend time with google and see megabytes and megabytes of text that came from my keyboard, and the vast majority of it is garbage.

I have, however, produced a few things that I think turned out to be pretty decent. in '09, I finished a book about the virtualization technology I used in my business. (To be clear, I co-authored the book, it wasn't just me, not by a long shot.) - but my point is that throughout my life, I've always felt like only my successes counted. I've always felt like falling on my face wasn't a big deal. And part of that was unhealthy; I kind of saw falling on my face as the default situation, the ground state. But part of it was healthy, too, in that the world really has been pretty forgiving of my mistakes, especially my technical mistakes. (my business mistakes, on the other hand.)

Where am I going with this? my impression is that many of the women I know personally who work in my field feel super uncomfortable with failure, especially with the kind of failure that comes from publicly being provably technically wrong, as you are, from time to time, if you publish technical documentation. My impression is that they fear falling on their faces more than I do. Part of that, I'm sure, is just that online, I think, people are just meaner to women. There seems to be this presumption that because I'm a white guy, I didn't get the job because of some quota... which seems really silly to me, for obvious reasons, but it's there.

I also think that men are socialized to deal with rejection more than women are, from an early age, and I think that if you aren't used to dealing with rejection, you are going to be a lot less likely to put yourself in a position where you are going to be rejected. And, if you are like me in that your technical abilities are a huge part of your sense of self, being proven wrong after writing up a thing does feel like a rejection, especially if the criticism is framed in a "you are not competent to write technical documentation" sort of way. For me, that's a rejection of what it is to be me; probably the worst feeling another person can inspire in me using only text. This goes back to the mean thing. People are very rarely mean to me in this way... and if people were often mean to me in that way? I would probably stop writing.

And it could be a lot more than gender; most of the women I'm thinking of went to good schools, both high school and college, while I barely made it through a terrible high school and have no college to speak of (though I'm working on changing that part) so I have a much different idea of how you learn. It's easy to see how going to a good school, or preparing to go to a good school could give you a different outlook on failure; Just failing one class can bring your grade average way down (I mean, way down by the standards that good colleges have) and a lot of kids feel like they only have one shot to get into the school of their choice. I've never experienced anything like that; If I do really horribly at a job, I can always just leave it off my resume.


> My impression is that they fear falling on their faces more than I do. Part of that, I'm sure, is just that online, I think, people are just meaner to women.

Part of that is also that women, in general, are much more sensitive to how other people perceive them; what their social "status" is. This can possibly be explained by their (prehistorical) roles as primary caretakers and being the "social glue" of small tribes. It could very well be deeply rooted in their biology.

With that said, I don't think it's relevant in this case. There are many other lines of work where women are in the majority where it's also easy to repeatedly fall on your face.


>Part of that is also that women, in general, are much more sensitive to how other people perceive them; what their social "status" is. This can possibly be explained by their (prehistorical) roles as primary caretakers and being the "social glue" of small tribes. It could very well be deeply rooted in their biology.

eh, I think that explaining behavior through cultural conditioning makes more sense than resorting to evolutionary psychology. Sure, the latter may or may not be the cause of the former, but we can at least directly observe cultural conditioning; it's quite difficult to verify anything about the social structures of prehistoric tribes. You could say the same thing, in a more verifiable way, talking about modern dating norms and expectations.

>With that said, I don't think it's relevant in this case. There are many other lines of work where women are in the majority where it's also easy to repeatedly fall on your face.

Note, i wasn't arguing that there aren't many women in computer science because it is easy to fall on your face, [1] i was observing that many of the women I personally have observed in the field aren't as active when it comes to publicly writing, I believe, because the consequences of that fall would be greater than those consequences are for me. Writing about the technology you use is rather different from directly working with said technology.

Most people write for social reasons; technical writing, generally speaking, returns practically homeopathic amounts of money. I guess I'm different there, too, in a non-gendered way; Being as I've got no education and only the skill that I have wrung from the miserly neck of experience, I need all the credentials I can get, and so writing well probably has a higher return for me than it does for someone who is educated, because I get the social juice, and I enjoy that social juice, but when I do manage to write something worth reading, it also serves to function as a kind of credential, and oh my, do I flog it. But for people who already have credentials? I would think that writing is mostly about the social rewards, and if those rewards are more negative for women than for men, as is my otherwise unsupported observation, that could certainly tip that balance to "I'm just going to do the work, let someone else talk about it."

[1]My own theory is that it's the trickle down from "cultural fit" discrimination at hiring. Why would you spend all the time and effort training if getting a job at the end was going to be really difficult? I'm in industry, in part because every time I've asked for a computer industry job, it has been a fairly easy process. Hell, I do nothing and people try to push or pull me in that direction. Every time I've asked for a job outside of this industry, it seemed like huge walls went up. If you don't want me here, I'm going to leave. But that's just me projecting my own feelings on to other people who have very different experiences.


Full disclosure: I'm not female but I have two daughters :)

This is bang on the money to me. The important part is having the interest/curiosity & opportunity to take tech apart and see what makes it tick.

We need more women in software development, but women should not necessarily take it up because we need more women in software development.


Wouldn't it be possible that when the matter is technical you/we do not pay attention to the gender, or worse, assume the author is a male?


Two blogs from female developers that appear here. They don't post too often, but the articles are usually very good.

Oona Räisänen: http://www.windytan.com/ https://news.ycombinator.com/from?site=windytan.com

Julia Evans: http://jvns.ca/ https://news.ycombinator.com/from?site=jvns.ca


Full disclosure: I’m a female with engineering background who skipped to another semi-technical field because I got put off, blah blah blah …

Just thought I’d add another ‘female’ voice here. Apologies for the lengthiness.

For the longest time, I felt and agreed exactly what you said. I grew up being both artsy and techy, was labelled from geek to nerd, took things apart etc (though never at a too deep I-set-up-my-own-Linux-distro level) … in fact gender didn’t even occur to me. I couldn’t understand those who whine about gender issues either, of course I’ve had a few sexist incidents like boys not letting me play with their marble rollercoaster but hey, I didn’t feel particularly insulted as I couldn’t take <i>dumb</i> people seriously anyway. Maybe that sort of ego was what kept me strong, or rather provided the shield needed to keep me happy and giddy-go-lucky.

Adolescence came and I got hit by a series of personal crises – but still I couldn’t understand what the gender issue was all about. It must be noted that I must have had low empathy level to start with, as I couldn’t understand other types of discrimination – despite being non-white, foreign, muslim, short, lispy, bad skin, bespectacled etc. Why would anyone care about your ‘shell’ anyway?

When I went to university to study engineering, for the first time I was surrounded by more males than females. Friends, colleagues, teaching staff – but this is <i>great</i>, as I tend to get on better with guys than gals anyway! So initially it seemed fine, but then the gender issue crept in. Remember my low empathy level? Well that must have shot up, which was probably due to those humbling personal crises I mentioned (and which simultaneously ruined my confidence). So I guess I became more ‘feminine’, and my behaviour became more feminine too. For example, I became more conscious of the way I phrase things to make sure that it doesn’t sound so ‘abrupt’, like asking ‘dumb’ questions as conversation starters which surprise-surprise, was interpreted as reflection of my own dumb state of mind instead. More guys took me less seriously, even though we may have the same idea but I squeaked it out instead. Sometimes I get ignored completely! I admit, it’s my problem. It’s my fault for not being straightforward, for not being clear enough, but the point is, it couldn’t be helped (At least at that time, I’ve since worked on curbing it). But this difference in communication made me think, for the first time, that maybe there is a line between male and female after all. It’s a controversial point, I know, but I don’t think it’s a coincidence that I began to lose communication with guys and vice versa, that I began to socialise more with my female friends and that I began to relate more to my more timid, female colleagues.

I admit that there’s a lot of factors here, especially my own low confidence, but now I think that the gender issue is real. And it only became real when I became more sensitive and more ‘feminine’. Maybe gender doesn’t really exist, but lack of confidence sure does. And lack of confidence can come from perceived things too, like gender. You might scoff at it, you might be entirely unsympathetic to it, but who are you to judge? Whether something is perceived ‘wrongly’ or not, it doesn’t matter, because that person still feels the reaction from it. And how that person feels can affect his/her own decision-making. Frankly I’m still traumatised enough to decide quite strongly to avoid engineering … I know it’s stupid but I can’t help shudder at the bad memories of scornful male colleagues and embarrassed-looking female colleagues. Toughen up, you say? Get lost.

Let that women-for-tech blogger write. Maybe you think that she got the factors mixed up, just like I might have done in my little essay there, but you never did the full flip coin like I did to know that.

P.S. "You" is basically anyone reading this P.S.2. By saying 'male' and 'female', 'sensitive' and 'insensitive', I don't mean to simplify everything in a black and white way - of course there are many exceptions but my language skills aren't good enough to efficiently disclaim


Completely agree with this. Reading this I got the sense that the author has the impression that struggling to learn new, complex topics and feeling uncomfortable falling behind is a male vs. female thing. It isn't. I struggled greatly in my early days of CS and had many of the same pressures the author did as I felt I fell behind my classmates. Some people pick things up very quickly, while others take more time before it "clicks." It's embarrassing and frustrating no matter who you are.

I have worked with many programmers and PM's over the course of my education and career and many of the sharpest people I've worked with were female. However there is one thing that has always bothered me which I do believe affects an outsized proportion of female programmers. Many times when I'm in a meeting or on a call discussing a project, I've noticed that somebody will ask a question and then immediately follow it up by apologizing and saying "I'm not technical, so bear with me." If you are female (or male- it just so happens that it seems that this person is almost always a female)- Don't. Ever. Do. That. First of all, what does that mean, "I"m not technical?" You don't have an understanding of what is being discussed? Then you should carve out time to meet with people to gain an understanding so that you know what's going on prior to the meeting. That isn't male or female or only applies to some group of people who were destined to be "technical", it applies to everyone.

Second, when you say something that is self-deprecating, the intent is usually to gain favor with others at your own expense, but I think somewhere there's an assumption that the other people still respect you anyway because of the other things you do. But whenever I hear that, I immediately get annoyed because I then wonder why the person is asking questions and attempting to manage timelines for something they clearly don't have an understanding of. It causes me to lose respect for them. I can't help that, they just told me that they don't know what's going on, laughed, and made no attempt to gain an understanding. If you go around telling people you aren't "technical" and laughing, you're giving them license to question your abilities.

Instead, it would be far more constructive to ask people to explain what they mean by X, even if you think X is something really simple. I personally haven't worked with many people who would have a problem taking a couple of minutes to provide a basic background, and if anybody does, then they aren't doing their job and that will reflect poorly on them, not you.


I believe is perception, I follow several women careers in tech and honestly it is just because they rock in the technical department and not because they are women, funny enough they don't write about "women in tech" (or at least I haven't seen them doing that) so if you are not searching in their particular area of expertise then you might not notice them.

Caitie McCaffrey and Hilary Mason comes to my mind but there are many more.


That could be a result of selection bias: If women write 5% of the programming articles on HN (because they make up 5% of the group writing such articles) but 100% of the women-in-tech articles (because men don't care about that) you might get that impression even though women write technical articles with the same quality & quantity as their male counterparts.


[flagged]


I'm really confused by this statement. I've gone to female-oriented conferences (that were also open to male attendance) and much of the discussion was about the technical aspects of whatever people were doing both in employment and in hobby. Anything from the details of SEO to hobbyist arduino projects. Only rarely does someone bring up being a woman, and usually it was something like "a coworker/other peer referred to me with a rude comment concerning my being female, how do I navigate this" which seemed perfectly reasonable to ask a group of women about.

Do you have some kind of study or article I could read that verifies your view? I do apologize; I haven't gone to many female-oriented conferences or meetups other than the several I can drive to.


Sorry I don't have studies or articles, my views are formed by my own experience. Surely that's still valid? (Sorry I didn't mean that in a snarky way)

As a female, I've been to a few female-oriented tech events myself. And I don't hear very intimate stories, except general ones such as the "how do I deal with a sexist remark" as you mentioned. But I do hear, and see, from my close female tech friends ... I think it's because it's generally too complicated to be expressed and more than that, there's an associated shame - for example, for a long time I didn't want to talk about it because I thought that people can't be that discriminatory and therefore it MUST be something that I've done. Cue in unhealthy self-analysis and reproach, and it was only after many years, I considered sexism (and other types of discrimination) though not without grudge.

But on the other hand there are also women in tech who seem to be tougher - sometimes I think the scornful "you're-letting-our-race-down" looks on their faces hurt even more.

I think that any activism for empowering women for tech needs to deal with the deeper issues, beyond the random colleague sexist remarks. Sticks and stones can't hurt, but a lack of self-worth, leading to imposter syndrome, can.

Though I'll be honest with you, when I go to tech events I don't even think about my femaleness let alone gender issues. And that itself means something, that most people aren't generally discriminatory! So I'm still positive, but is there a need to build confidence for women in tech? Yes.

I will also add that my own experience of getting discriminated may not just be due to one factor (i.e. gender) as I happen to tick a few other "minority" boxes.


Crap I thought you were commenting on my post! (The other got flagged)


Attitudes like the one you express here, at once critical of women who raise issues of inequality and misogyny, and skeptical that a woman who wants camaraderie with others in their cohort is For Real, are exactly the reason that would drive a woman to seek out that type of environment.

If you'd be interested in learning more about the importance of empowering and accepting spaces for women in tech, and the reality of the misogyny they experience, I'd be happy to discuss further or share some links.


(Sorry late reply) My post is anything but critical and skeptical of women who wants camaraderie. I felt that the parent poster fits your description though. If you read my post again, you'll realise that it's about my own experience as a 'female' in tech, how I've taken gender issues so lightly until recently and how I'm now for 'women-for-tech' women. Flipped.


Double-crap I thought you were commenting on my post! (The other got flagged)


> When he started to explain the assignment it quickly became aware that I wasn’t grasping a thing he was saying. He tried again, and again, and again to explain basic concepts to me. He started to become visibly frustrated and impatient with my lack of understanding and everyone in the room kept looking at us.

This is sort of the unspoken problem in computer science. Most people aren't doing it for the first time. It's not uncommon for many people to have started programming on their own in middle school or even earlier. First year computer science is more of a refresher.

Then there's everyone else starting an entry-level class as beginners and getting completely demolished. "How does everyone get this so much better and faster than me?" The answer is because they're not beginners.


I definitely had this experience myself.

By the way Harvey Mudd seems to have solved the issue.

"With leadership from the college president and college-wide support, Harvey Mudd increased the percentage of women graduating from its computing program from 12 percent to approximately 40 percent in five years. This dramatic increase was accomplished through three major changes: revising the introductory computing course and splitting it into two levels divided by experience, providing research opportunities for undergraduates after their first year in college, and taking female students to the Grace Hopper Celebration of Women in Computing conference."

https://www.hmc.edu/about-hmc/2015/03/26/new-report-on-women...


Yea I have recommended these kinds of changes to my university professors a couple times. I haven't cared enough to make noise about it, but it literally has everything to do with the intro course.

You need your best professors and resources on the first 2-3 courses and everyone who comes out of those courses needs to "get it." Otherwise, everything afterward suffers and waters down. And without that stuff after (algorithms, operating systems, OOP, etc.) most students leave completely unprepared and barely understanding the stuff from those first few classes. And whoops, it's 4 years later.


If you care about this, talk to the department chair and administrators (deans). Also talk to your student government and try to get other students on board. Individual faculty members don't tend to have a lot of influence on the design of the undergraduate program.


I went to Harvey Mudd. However, I have a bit of a problem with Mudd being held up as an example or model for this sort of thing. Don't get me wrong, I think that what Mudd is doing is great for the school, it makes it a better environment, I just do not think that it is exportable elsewhere.

Harvey Mudd is tiny. People always cite the percentages it has regarding gender balance, but the fact of the matter is that Mudd's incoming classes are smaller than 200 people and every single person applying has self-selected to go to an exclusively STEM college. This makes it very, very easy (relative to other colleges) for Mudd to basically pull a disproportionate number of already CS-inclined women from the pool of applicants with a bit of heavy marketing and effort. Mudd spends a large amount of resources trying to convince girls to attend, especially ones interested in CS, a personal interest of the president. Additionally, about 6 years ago they did something to revamp the admissions process which took the incoming classes from about a 2:1 male:female ratio to an even ratio (literally the incoming class for 2013 and every previous year was >60% male, and 2014 was magically ~50/50). This is remarkable for a school catering only to high-performing STEM students.

But it doesn't apply in a general sense. This model works for a tiny niche school in a big, big market. It will not work for every (or even many) schools in the market. And when you are pulling in classes where there are nearly as many CS-inclined women as men, it makes it a lot easier to have an environment that doesn't drive them away. But not every school can do this, it is literally impossible.


It's a shame you can't get credit for your previous experience, and join in Year 2. That would allow the real beginners to get confident in the first year, too.

I have an incredibly smart friend who went to Oxford to do maths. His "competition" at Eton had sat the maths A-Level a year before normal, and had spent the last year studying university-level texts, and he was playing catch-up. Not sure who that benefits.


I think this depends on whether the course is 'Computer Science' or 'Software Engineering'.

While I agree that people might have a good amount of experience of writing software before university/school, I'd be surprised if they were well versed in Computer Science (which I think is more focused on the mathematical/algorithmic side at first).

(I studied CompSci at Cambridge)


I did the first year of CompSci at Cambridge. The algorithms and data structures course covered nothing I hadn't covered in the discrete mathematics modules of Further Mathematics A-level (they can't assume Further Mathematics because not every school offers it and even those that do often do different modules). The ML and Java courses were just basic programming (which isn't taught in schools at all). The operating systems course was interesting but much of it was general-interest stuff I'd read on the internet.


Good point, I think I was thinking that my second year lectures were actually first year. Been a while since I was there! :-s


I doubt they have experience in software engineering either, which takes a principle approach to structuring software to reduce bugs and improve maintainability.


I'm old but at my uni I went to the head of the computer dept and said "I know this stuff can I skip these classes?". He said "Yes, no problem. If you want credit for them you're free to take the tests". I guess I assumed that was the norm.


At my university (Minnesota), the intro-level programming class for CS majors was based on the SICP textbook and all the assignments were in Scheme. One really nice side effect of this was to level the playing field with regard to prior programming experience - even the students with industry experience were starting from scratch with car and cdr.


It doesn't matter that the assignments were in Scheme.

If students have extensive previous programming experience, they have had a chance to develop a mental model of computing that complete beginners simply don't have. They know how to debug. There are broad skills which aren't specific to a language or even a paradigm.

Putting all students in CS 101 together makes about as much sense as including Cantonese speakers in an introductory Mandarin course.


I think scheme provides enough of a shift that many of those mental models they had will break down. Look at how much effort and how many attempts it takes people to learn pure functional languages for the first time and it really shows.

That said - they'll leave that course with vastly improved mental models while the other students will still only have a basic understanding.


Absolutely they'll have to adjust their mental models. Learning a functional language is definitely different than learning yet another imperative language.

But it's still a far cry from knowing nothing about programming in the first place. It definitely took my less time to learn and understand my first functional language than it took for me to learn my first language.


I used SICP too. And I'm very dubious that Scheme reduces the gap. People still had radically different experiences in the course depending on their prior exposure to programming.

The biggest gap I observed was in motivating _why_ we were doing anything. The whole theme of the course is using abstractions to tame complexity. But beginners had never encountered real program complexity before, and it's not an easy thing to simulate in an introductory course as they're usually done.


I'd say they need to tackle simple naive solutions first, in order to develop a taste for abstraction, not the other way around. You can't appreciate an abstraction unless you feel the pain point it helps attenuate.


I agree. I'm making my way through the adaptation of SICP written for python currently and it has been an absolute game changer, but I never would have appreciated it without struggling to construct "larger" projects on my own with little abstraction.


> though the adaptation of SICP written for python.

Do you have a link to this? A quick google didn't seem to turn up anything that was obviously what you were referring to.



As a high school student (with programming experience outside of CS), I can tell that this doesn't change much. It took me about 20minutes to realize that everything in scheme is just a list, literally everything. Using recursion everywhere seemed absurd to me but I wrapped my head around that pretty quickly while the others were still struggling with the basic syntax. List manipulation seemed hard to everybody but it quickly made sense to after understanding how lists are structured and what car and cdr actually do (read the value of the first pointer vs second).

The good thing about scheme is that, after understanding the basics, it seems more natural to most students. I help one of my class study for his final exams and he understands recursion way better then for loops and iterators in Java. The syntax is also more minimalistic compared to Java which helps a lot (I did not think the syntax would be the hard part in Java). I don't even bother teaching him when to use private, public and protected. I just tell him to use protected for the variables (because it is often used in the final exams despite the fact that l variables should always be private in Java) and public for the methods


They had the same tactics at the University of Gothenburg, the first class was basic functional programming which we used Haskell for (in parallel we had 50% math during the first year). This really leveled the field because basically everyone only had been programming imperative (and object oriented) before.


That sounds like an awesome program. Functional languages weren't even an option at my University.

When I was graduating, they were just changing things around so that you had theory classes before programming introduction classes. I kinda did this by accident (took Discrete Maths/161 before I started 201 programming) and I think it's a really good idea. You get students use to the idea of sets, basic logical operators and the foundations they need before dropping them straight into programming.


16 years ago I started a CS education - while I dropped out after 6 months, one interesting observation was that the first courses used SML. Their reasoning was exactly that - both language and paradigm was new to pretty much everyone, which served as an equalizer.


I took the same class at UMN and enjoyed it, especially now that I'm getting more into functional programming in my career, but I was very frustrated with the program overall because of the lack of real-world problems. That was back in 2000 so maybe it has changed, but I can confidently say I learned most of what I use on a day to day basis after college, not during.


I think most "Computer Science" programs are going to continue doing that. It's more academic than... pragmatic? I graduated in late 2015, and frankly I can't point out anything in particular that I can confidently say made me a better software developer. Actually, if I wasn't consciously aware of it it at the time, it probably would have made me worse, but I got plenty of exposure outside of class.

I just tell myself it, over time, subconsciously changed my thinking to make me better at grasping software.


> I just tell myself it, over time, subconsciously changed my thinking to make me better at grasping software.

I make the same justifications :)


I don't see how that would make up for anything; especially given how dynamic and list-/function-oriented JavaScript, the most common language these days, is.

In a situation like that, I would be willing to assume that those who you thought were experienced were almost as lost in any event as the beginners; and no amount of language familiarity would help them.


I'd be willing to assume that the instructor and authors of the curriculum, after many years of observing such phenomena in the wild, might've anticipated your exact assumptions, and designed against it.

But yeah, on the first day of school, children tend to puff up their egos and put on airs, and some people might've exuded a soon-to-be-deflated sense of overconfidence, when they weren't actually very experienced after all.

Both are possibilities. BTW, just as those supposedly inexperienced students found out, you know what happens when you assume... right?


Do you think it's possible to major in computer science in college if you have absolutely no prior experience in programming?


Absolutely. A number of my coworkers at Google had never done it before college (and some had never done it until after college, going back to CS as a second career).

You have to be okay with being "behind" compared to your peers, but if you'd like to be successful long-term in anything, you need to become okay with that anyway. Fashions change, whatever you were good at before becomes obsolete, and you relearn things. Slope is more important than Y-intercept.


> Slope is more important than Y-intercept.

That's nice :)


Not my invention. Usually credited to John Ousterhout, although it's been repeated by many:

https://www.quora.com/What-are-the-most-profound-life-lesson...


I first heard it in the late '80s, in the context of grad school admissions, but perhaps Ousterhout was the first to port it from math to computing.


I agree with this wholeheartedly. The problem with it is that until you're most of the way towards being at the point where those things meet, it can feel pretty terrible, if you're not mentally good at dealing with being behind.

The trick is being able to support those with decent slope while they're still under those who had higher y-intercept so they continue.


For a real treat, try replacing a curve that is fundamentally linear (say, optimizing your salary as an employee) with one that is fundamentally exponential but with a much smaller constant factor (say, founding a startup). Not only will you be below the Y-intercept for a considerable period of time, but you will also have a slope that is indistinguishable from zero.

This is probably the biggest killer of startups: it doesn't feel like you're making any progress at all, until you have a sufficiently deep picture of your marketplace to know exactly where to hit it that your competitors aren't, and a sufficiently solid product that your customers realize this.


Yes. I had no programming experience at all. Never written a single line of code nor even touched a Mac. I'm originally from Ghana. And I was able to get an honors in CS. Start a student group to teach other college students to build mobile apps (appdev.grinnell.edu) and get a dream job at a startup here in SF. So yes! Even with zero experience, I'm certain you can kick ass, if you have the willpower


This is a very difficult question. I used to be TA for freshman CS, and there was a marked difference in performance and the time it took to complete labs between those who had been hobbyist programmers and those who had never programmed before.

It really seemed like there was a vast chasm between the two groups. While I did see complete newbies making A's, it took them considerable effort. I'm not sure they really groked the concepts at that point in time.


Of course it's possible but it seems a little odd. Programming is something that anybody can do with a very modest investment. If you're interested in programming, seems strange to have absolutely no prior experience before getting to college.

It's sort of like deciding to be a music major when you've never played an instrument before. How do you know if you even enjoy it before starting down the long path to getting a degree in it?


>Programming is something that anybody can do with a very modest investment.

That's highly debatable. A lot of people including my old compsci professor seem to believe it's largely something someone either can learn to understand or can't. I've noticed myself that students seemed to either "get" programming or not, both in a class I took in high school and the compsci class at my first college. This article on the issue is worth reading: http://blog.codinghorror.com/separating-programming-sheep-fr...


The author of the study linked in that blog has retracted it and apologised for it and said he was wrong.

http://retractionwatch.com/2014/07/18/the-camel-doesnt-have-...


It'd be good to have another large-scale study to try to replicate, because, while the results where, err, politically incorrect, they fit too well with what an extremely large number of people have observed...


Yep, same experience here. I remember spending about a week explaining some basic programming concepts to a very smart lady (PhD in biostatistics) and it just wouldn't click. For some people it's easy and for some people it doesn't jive with the way they think about things.


I wasn't saying anybody can become competent in it (and have no opinion on your particular point), but anybody can definitely try it out to see if they enjoy it. It has an extremely low barrier to entry compared to a lot of other majors.


>Programming is something that anybody can do with a very modest investment.

Yeah, but most people don't know that. Sure, us nerds figured it out, but most people are shocked that I learned to code at 13. I thought it wasn't that difficult. I don't think I'm smarter than most, I just wasn't scared off by the technical details.


If you're not technical enough to type 'learn to program' into Google then I'm not sure how far you'll make it into a CS program. Back in the 80's and early 90's, sure it was a struggle. I remember reading out of date BASIC books trying to figure out how to load my code from floppies, now that was a bit of a headache.

These days you can be be learning to code using any number of slick web sites in about 5 minutes.


I tried learning programming quite a few times back in the '00s, but none of it really made sense until I took the intro to programming course in university.

I was too focused on my high school academics (and goofing off) to devote enough time to properly learn to program. Once software became a part of my academics, I found that I got much more better explanations of how things fundamentally work. I also finally had more time to practice.


Without a doubt it's possible. Of the people who graduated in my CS class, I'd wager fewer than half of us lived in a home with a computer.

What you'll find with many computer science curricula is that the science of computing is so abstract that the simple excel macros and other stuff you've already done and perhaps dismissed is actually "programming."


ABSOLUTELY. The trick to it is exactly the point of the original article. You have to not be afraid, and instead interrupt class constantly and ask for explanation. Don't let yourself walk away from even one session with a floating question mark looming over your head.

No joke. Don't leave even one class not understanding what was covered.


This might not be a popular opinion here, but computer science is not the hardest discipline that students can major in at college. Physics, biology, chemistry, and pre-med come to mind. How many students majoring in biology or pre-med have personal "hobby" experience before starting college? Probably not many.

The fact that so many high schoolers can pick up and become productive at programming is in part evidence that programming is not the most complicated thing in the world.


How do you think the first computer scientists and programmers learned it? Or, for that matter, anyone who picks up programming? (My own mother started in her late 20s or early 30s on punch cards, having never even touched a computer.)

Everyone starts at the same place.

And nowadays you don't even have to wait to go to college to have your first brush with programming.

The best intro to programming online in my opinion is Harvard's CS50x on edx.org. It's meant to be an introduction to programming for people who've never even written a for-loop.

CS50x uses C, but there are plenty of good introductions with other languages. Google Think Python for a free pdf of an introductory programming book that teaches Python and how to think like a programmer. Following that up with Udacity's Intro to CS course is a great way to get your feet wet.

There are so many ways to learn and so many places to ask questions when you get stuck. And it's such an intellectually rewarding pursuit! Come join us!


Uh, they taught themselves. You think Alan Turing or Ada Lovelace went to college and studied computer science?


He means the first people who studied computer science, not the people who invented it.


Bingo.


Of course. If a university computer science course is unable to teach its students how to program, there is something wrong with the course, not its students.


Some of the people I went to university with even graduated with absolutely no experience in programming.

It was rather disheartening.


It's more than possible. The first line of code I wrote was second semester freshman year, at one of the top CS programs in the world. Google hired me during my senior year of college (a few years ago) and in my last two years there I've been in an actual computer science oriented role. I won't deny that it was a little unnerving in the beginning that everyone else seemed to have a ten year advantage over me, but that hurdle turned out to be 99% psychological.


Sure. It depends on the program, definitely, but at my university, the CS curriculum was extremely abstract focusing more on logic, algorithms, compilers, basics of hardware processors, language design and software design theory than any practical implementation of the above.

In fact, outside of the introduction class, there was never actually a place where they sat down and said "here is where we teach you how to program". The professors mainly taught theory and had the assumption that we'd be able to put it into practice if needed.

Luckily we did have lab assignments, and multi-month group projects, so you would pick up some vestiges of professional programming within the 4 years you were there.


Absolutely yes. But you'll definitely want awareness of the reality the GP presented. The environment you're in is likely to make you dissatisfied with your own performance... at first.


Let's not forget that the first generations of computer scientists likely had no experience with programming at all before college, due to computers being such expensive rarities.


It'll make things more difficult, I think - doubly so if you've missed computers or internet 101 - but not impossible. I have a good colleague (android / web developer) who majored in electronics engineering. Others are self-taught, although that may imply they've been using computers for a long time already. I'd have to ask around for more of such examples.


Definitely yes! I'm currently a senior studying CS. Many of my classmates freshman year had never written a line of code in their life beforehand. Now, some of the best programmers I know at my school are those same people. If you're passionate about it and willing to put in the effort, then I say go for it!


Absolutely. Quite a few people in my Software Engineering program had obviously never done anything more advanced than use Microsoft Word on their first day.

Heck, while I loved computers, I'd never been dedicated enough to teach myself a programming language. 4 years later I graduated with Highest Honors, and worked for the DOD.


Absolutely! I have a lifelong friend that didn't pick up programming until his thirties when he just decided on a whim to enroll in computer science. This despite our being friends and my having been a programmer most of my life. He's a great programmer, too!


I had no experience and I ended up interning at a couple good companies (Big Four) and ended up with a Masters degree and a great job.


I imagine the first teachers of programming had the same problem. They are often considered the best and brightest as a result.


Absolutely yes, and if it doesn't work at your college then it's a failure of your college.


I did and many of my classmates did as well (graduated in 2010).


I did. Programming oriented courses were my strongest subjects.


Yes. No undergrad CS course assumes prior experience.


Absolutely, because I did it.


Also, do not hesitate to question the teaching material relatively to your needs. Don't cave on "it's trivial duh" look teachers can give you. I spent years trying to grasp linear algebra with a very formal textbook, just bought another book on the subject, everything became easy. I wish I had the brain for the more formal style but if I ditched the first book earlier I'd be finished since long.


> "it's trivial duh"

I've learned to not ever say "this is easy" to anyone when I am teaching them something. That sounds perhaps like an encouragement -- like, "you are almost there" kind of thing. but it often ends up as an insult to their effort or intelligence.


I can assure that in college no T.A ever meant it as a form of motivation. Most of these guys were in class to fill in for duty and weren't interesting in teaching concepts. Only one guy was passionated and held extra classes for us morons. He managed to bring the laziest weakest guys on sunday morning sessions. Probably my most beloved teacher in all college years.

To go back to your point, never stating the difficulty but focusing on describing the concepts and aiming at the student blind spots and/or communication issues (how many times an issue ends up in a simple "oh that's what you meant..")


> I can assure that in college no T.A ever meant it as a form of motivation.

I (unfortunately) did this as a T.A. in college. Despite being well versed in the material and caring quite a bit about trying to teach I used the "this is easy!" line as well as falling into many other teaching traps. I think part of the problem was that I never had a problem learning the material (I came into college with a fair amount of prior experience) so it was hard to relate when people had trouble. The other problem was without being formally taught about how to teach, it's hard to get feedback on what's helpful and what's counterproductive. For instance, it wasn't until I took a class with my girlfriend that I realized how much I interrupted or talked over other students when they asked questions. Without direct feedback I would probably still be doing it.


The intention behind is what matters. Even a frustrating 'this is easy', if well meant, won't be the same as a formal 'duh'.

It's slightly paradoxical that most TA are people who had it easy with the subject, thus rarely able to explain things to people who struggles, thus not really teachers. I said this here somewhere before, this system crafts colleagues who will discuss a bit with you as pairs if you're on similar levels, not people able to explain. But maybe the school comb is balanced this way, only people able to grasp things on their own gets to advanced through it.


> just bought another book on the subject, everything became easy

What book? I'm the same way (formal treatments usually aren't sufficient).


Gareth Williams Linear Algebra with Applications (6th edition). 2nd hands were very cheap on amazon, some people got one for 90c, I paid 5$ for mine. 5 Very well spent dollars.

http://www.amazon.com/Linear-Algebra-Applications-Gareth-Wil...


Thank you!


My school had a nice solution for this: split the already competent programmers off into an Honors class to learn something completely new (Haskell) and bring the beginners up to speed in Scheme. Both are challenged appropriately, and neither group makes the other feel stupid. The classes converge after the intro sequence and there is no real difference from there on out.


One thing I like about UC Berkeley is that we have a CS 10 class which is open to anyone and is actually pre-CS. It teaches the very basic concepts of programming with Snap, a drag and drop programming language. That way people who haven't had that entry level stuff might catch up. A lot of it is reiterated in the first CS class too, in Python (a notably high level scripting language), but they also move on to some interesting things like recursion.


UC Berkeley as of 5-7 years ago had a decent solution - there was the intro class, where having no programming experience seemed to leave some students treading water, and then there was the no-siree-definitely-not-remedial class that you could optionally take before the intro class, which was well-publicized and pushed hard by the department.


I see the reason for having beginners in any fields at start of college a failure of the primary and secondary education, not that of the student. An effective education system (don't know if one exists) should expose kids to enough variation of what's out there, preferably with real world hands-on work so majority develop find their interest long before college, which is supposed to discipline young people in their existing area of interest.


Exactly. This is why it's important to teach the general concepts of computing, logic, and programming in grade school.


I don't think that's necessarily true. When I started learning to program I didn't have it "broken down" for me to the tiny tiny details. I just read books/tutorials. I think it's the same for most of the people who were exposed to programming before college.


IMO the problem seems to be that intro-level classes don't seem to fit anyone. The people who have programmed before get bored and cruise through, while it still mostly just ends up confusing the people who go in without experience.


Also not convinced that it is true. While I had prior programming experience from C64 times, I still remember being stuck in vim in my early days, having to ask my neighbor how to exit to the shell again... And CS should be more abstract anyway. Coding assembly for the C64 didn't teach me anything about O-Notation. It is a little head start to already know programming, but CS shouldn't be about programming most of the time anyway.


You see people ask basic questions on SO. And people will downvote them to oblivion.


This is why I don't bother with SO anymore. I once spent a good 45 minutes carefully explaining how something worked to somebody that was obviously a beginner. When I went to submit the answer, I was informed that I couldn't because a moderator had closed the question.

When I asked the person why it was closed, I was informed it was too broad and not a 'good fit' for SO. Of course it was broad, beginners don't know what they don't know. I then looked up this persons history to the first questions that they had asked themselves. I was not at all surprised to see that they were all very similar types of questions to the one that was just closed.

I pointed this out and how their questions had gotten 50+ upvotes and multiple answers which then led them to help others and become a mod vs this poor person that will never bother using SO again. His response? SO has changed, it's not for beginners anymore.


This is a real problem with SO. SO is still the best place to go to find answers, but they do quite a bit - though not nearly as much as Wikipedia - to frighten off beginners. Arbitrarily closing perfectly fine, sometimes even great questions, is only the half of it.


Bill_The_Lizard does this so much I actually remember his name. I assumed it was just because he only had time to make snap decisions since he handling so much content. Now it sounds like this is a conscious decision to push beginners out.


It's also the manner in which it is done. About 5 years ago I asked a (dumb) question, I had no idea how to ask the "right" question and was closed down and told "this isn't your personal code writing service". I had phrased the question as can you give advice on how to proceed, I wasn't asking for code samples. Yes, SO wants you to post code, but if you have no idea where to start, some advice could go a long way. Being snarked at was unnecessary and it was 3 years before I posted there again.


Its surprising to me the amount of snark that is allowed from the moderators. Perhaps of the last 5 questions I've posted, I've received rude responses from moderators twice. Each time was in response to a mistake that I had made, so criticism was welcome, its the rudeness that was unprofessional.

A contributing issue might be that the moderators are the result of elections. This would weight moderator personality types towards people who crave recognition, perhaps even more on the narcissistic end of the scale. As opposed to more "level 5" type leaders who are probably less likely to run in an election and talk themselves up.


SO has a few bad mechanisms that encourage behaviorial issues that the SO people just like to stick their heads in the sand about. Closing valid questions is one example. Making most questions a race to copy and paste the correct response out of Google by awarding the first response that looks vaguely correct with a permanent "accepted answer" badge is another bad thing, and really hurts people trying to give thorough or good answers. It also really hurts when that accepted answer turns out to have issues. How many times have you come across a question and found an answer with 10x the upvotes of the accepted answer and a thorough explanation about why, while that answer may seem right at first glance, it's actually wrong?

I spent a day or two trying to get karma on SO and then gave up. SO is still a good resource for some types of questions, but for the most part, it's not worth hanging out there to answer questions.


Contributing to what ChrisDutrow said, SO used to be great for asking questions. However, they retroactively changed their points value for asking questions. I found this to be a bit counter productive.

I realize that they are trying to "fight the people gaming the system." But I just felt like asking questions wasn't valued well enough. My participation dropped on SO like a rock after that.

I wrote an article about SO 4 years ago, and many of the points still remain and there are newer issues: https://theexceptioncatcher.com/blog/2012/09/stackoverflow-i...

My participation in SO now is primarily focused on asking questions only when I have something I've been struggling with for quite a while. By that time, I won't get an answer on the questions because it's so obscure.


My reaction was different. I chose to keep asking a lot of questions and just brace myself to get kicked in the teeth by some people.

The value of just the chance that someone will clarify things and suggest things that I wouldn't have known about is worth the inevitable online beat down.


This is essentially what I do.

I've deleted some of the questions afterwards, after receiving a lot of down votes or having it closed, but generally within 30 seconds there'll be a two line answer to a question that I spent several hours trying to figure out.

It's still an amazing resource, just a broken points/closure system.


Consider that the vast majority of beginner questions are already asked and answered on SO; inability to Google is appropriately selected against, as it's a core skill.


The problem, I believe, with this line of thinking is that at a beginner level one simply does not know what to Google. You need a certain foundation to be able to simplify the problem down to a few key words. You need to understand the problem you're having on some level that beginners simply don't.

And I think it's a fairly elitist attitude that's prevalent in programming that leads people to treat the field as if there is some innate quality that makes for a good programmer that we want to filter for. It's a similar fallacy that leads people to believe that they're "just not good at math," I think.


SO should not be the point they start, then. They need some sort of mentoring/tutoring service, or start with a low-level beginner Online Course to help them learn the terms.

Once they have that under their belt, their knowledge/experience has been "bootstrapped" enough such that they know what they don't know, or where they need help, etc.


That's not helpful if those things aren't available or easy to find - which, for most beginners, they aren't.

(An online course in what, exactly? Web design? C? JavaScript? Scratch? CS fundamentals? "Coding"?)

The SO approach is just nasty - unforgivably so, IMO.

SO could at least have split into abs. beginner/more experienced beginner/journeyman/professional/expert levels.

Currently it just seems to provide an excuse for not very interesting people to bully beginners instead of helping them.


This is a fairly well known problem for SO (see people trying to explain a question about the ternary operator - a name you only learn after you first try to find out what it is - in any language where it's all symbols).

SO does account for this though. Questions can (and regularly are) closed as 'already answered'. Those questions then link through. This means that all those questions hang around as pointers with all the ways of describing the issue people tried, hopefully increasing the search term surface area.


I think there's a world of difference between the existential question of "what is a programmer" and the concrete question of "should SO allow yet another list comprehensions syntax question".

There exists a category of programmer who has so little knowledge that SO is not the place for them. They can be, should be, and are directed to Google and the documentation.


I think you may have misunderstood me if you boiled down my point to an existential question.

My point was that directing to Google or documentation is a basic misunderstanding (or simple forgetfulness) of what it means to be a beginner in the field. It is that telling someone to "Google it" or "read the docs" fails to understand the fact that beginners often simply can't comprehend documentation and can't use Google effectively because they do not have the foundation necessary to understand the problem they are facing.

This isn't an existential question of "what is a programmer." It's the statement that if SO is exclusive to "beginners" then it is doing the field a disservice. And it's a statement that directing beginners to Google or documentation is elitist and inherently exclusionary in practice.


I think that the people behind SO have weighed up the pros and cons - a million questions about the most basic parts of a language are not that helpful to anyone but the person asking, and are better answered in the context of a tutorial or whatever. Generally those kinds of super-beginner questions are not useful without context, so they get either a useless answer or a small tutorial that doesn't really work because it's on SO.

Expecting people to be able to learn a language from nothing by going on SO and asking questions just isn't going to work well. It'll burn out answerers and fill the site with mostly useless content. I respect the decision made by the SO guys to focus the site and avoid that, because a useful resource for one group is better than a bad resource for everyone.


This is the reason i stopped contributing to SO. It has become very insular and discourages interesting questions that are challenging to answer. The problem SO has is that the effort to become a mod is only put in by people who align with the rigid mindset of existing mods, and this perpetuates and reinforces a hostile culture.


I am saddened by his response. I have noticed that over time, it is becoming a much more negative environment - for beginners especially. I don't understand why the people in charge have chosen that direction. Up until now I did not know it was a conscious decision. I thought it was just a side effect of becoming larger and having too many mods who don't ask questions (only answer them).

Over the past 5 years, I've probably increased my skills 10 fold by actively asking questions on there, its really sad that other people will not have this opportunity: http://stackoverflow.com/users/84131/chris-dutrow


So their slogan should basically be "There are stupid questions". It's not how I was raised, and I don't agree with it, but at least they would be honest.


I don't disagree with your point, but I have to ask: How do you design a site like SO that is simultaneously valuable for both beginners and experts?


By letting everyone (almost) regardless of rep upvote or downvote questions and closing questions only when they're downvoted into oblivion. The trick is to get a wide variety of questions, and that means vague and confusing beginner questions need their fair shot as well.


People appear to be forgetting how it used to be. Before SO, that was how it was, and it sucked. You constantly found answers to beginner questions that were wrong or useless because of lack of context, or just unanswered questions when you searched.

SO is regulated because it means the content that is there is quality. Getting rid of stuff that doesn't work on SO makes it a better resource. Trying to shove that stuff back in would be terrible.

By all means, go set up that 'SO for newb questions', and when it's full of ananswered questions (because all the answerers get fed up trying to decode incomprehensible questions and feeding the help vampires), and content no one wants, maybe you'll get it.

Beyond all that, it's better for those asking too. Getting a short answer out of context isn't what those people need. They need proper, in-depth tutorials.


SO did go through that phase.


Because they're usually poorly phrased with no effort put into them at all and generally it's fairly clear the asker hasn't even checked if the question is asked before.

All the basic questions have pretty much been answered quite thoroughly already. Any beginner is extremely unlikely to ask something that someone else hasn't already thought of.


But beginners often don't know what to ask or how, or even what to Google for. You need a year in the field just to pick up the right terms to type into a search engine to point you in the right direction.


Sometimes that's true. But often it's enough to google the actual error message which is returned to you and people still don't do that. I don't think that's a case of beginner not knowing what to google for.

https://stackoverflow.com/search?q=%22NoneType+object+has+no... - ~900 cases of people spending time to upload their code to SO and waiting for answers with explanations, rather than trying to understand what the error means. (or even reading the first link that comes up in "Questions that may already have your answer")


It is never OK to be mean to someone asking a question. But more importantly, it is clear that too many questions have "enough" effort put into them that they don't deserve a withering response.

As for copy-pasting error-messages into google, the results may not apply, in the asker's mind, to what they are doing. The results might have information which is too technical to understand. If the error comes from a turgid framework, it might very well provide no useful clue at all because its just detritus from leaky framework abstractions.


"detritus from leaky framework abstractions" - good line.


Here's an example of me screwing up a pretty basic question on SO: I was new to Angular, and didn't even think to follow the really obvious URL that they included in the error message.

http://stackoverflow.com/questions/19671962/uncaught-error-i...

Luckily, I was met with a kind and thoughtful answer, and it turns out that I'm probably not the only one with the problem: the question has had some 42K views. But I've been coding for 20+ years, and I still screwed up my question. Yes, even on a Q&A site, folks should research before posting. But some grace to beginners who don't even know the proper etiquette would go a long ways.


You're one of the first ones who reported it, it's also a terrible error message that you said yourself was not googlable at the time. You provided as much information as you could. I see nothing wrong with your question and don't think it's in the same category as the list I posted.


I'd debate that a bit. Personally I hardly had to ask any questions when I was a beginner, and I'm not even particularly good with Google. Relevant vocabulary can be picked up from tutorials quite quickly.

Though Google does seem a little worse at programming queries now than it was circa 2009. :/


I support your position 100%. There was no Google when I had questions. I cut my teeth on pointers in C with nothing but the K&R book. That people can't be bothered to put some effort into that miraculous white textbox doesn't make me feel any pity for them. Google is good enough just literally typing what you're saying with your mouth into the search bar. The other thing here I feel pretty strongly about is that programming has a barrier to entry, and that barrier to entry will not go away until robots are writing software. In twenty years of programming, I have met people that cannot think in that way, try as they might. At some point, people will hit a test of wherewithal. Their ability to reason and think logically about pure abstractions will be put to the test. Whether they fail the test in their first semester, their first SO question, or their first time trying to Google something, trying to do something about it is just shifting the time when that happens. There's a reason programmers have the salaries we do.


This isn't true or fair to beginners. Some people would call me an expert in my field. Beginners are perfectly capable of throwing me a hypothetical that neither I nor any of my peers had previously considered. Perhaps you are confusing beginner with idiot? They are not the same thing.

Seymour Cray once said he liked to hire inexperienced engineers, because they don't know what's supposed to be impossible.


>they're usually poorly phrased with no effort put into them

Or they're new to programming and lack the vocabulary to research what they're interested in or phrase a question well.


There's so many assholes on SO, but there are also people who are incredible at explaining stuff.

Unfortunately the assholes are far more promiscuous with downvotes, closing and toxic-responses than the good people are with _any_ response. To make it worse assholes see it as their duty to "police" SO to maintain the quality of the forum and will be laughably smug about justifying their actions.

The sad thing is it doesn't have to be that way. In fact, the person with the most high score, Jon Skeet, is remarkably gentle and kind in all his interactions. It is a pity more folks don't see him as a role model to emulate.


I participate in a circle of people who e-mail new questions that we ask (and answers). If we think the question needs work, we make suggestions. If we like the question, we up-vote it.

The extra up-votes help with other people taking the question seriously and it actually getting good answers.

If you or anyone else wants to be included, shoot me an e-mail (its in my profile)


That's a really cool idea... To be sure I understand, are you saying you're in a group that preps questions for SO and then buttress them against spurious closures/downvotes?


If we think it is a good question, we upvote it. I believe this conforms to the rules :)

Definitely email if you are interested. And to everyone else reading this: its an open invitation, we'd love to meet some more hackers!


I don't think this problem is as big as people make out. There definitely are the asshole types (unfortunately, a lot fo them are the helpful people after they got burnt out trying to feed the help vampires).

There is a middle ground. There is a need to get rid of low quality content or content that doesn't fit on SO - if you remember the time before SO, you remember the experience of wading through the piles of rubbish and nothing that was forums and resources for programmers of the past. The reason SO is different to those and better is because they know what type of content works on the site, and they intentionally limit the site.

The right answer is to try and help those people who post the wrong stuff in a nice way (point them at the right places, explain the issue), move on quickly, and answer good questions.


> The right answer is to try and help those people who post the wrong stuff in a nice way (point them at the right places, explain the issue), move on quickly, and answer good questions.

Indeed, I wish that behavior was more common on SO. Unfortunately, smug remarks, closure and downvotes are the norm. This might be understandable for questions which are clearly ill-conceived, but it happens to ernest, sincere questions as well.


To be fair, they have been cracking down on those kinds of comments - there are even filters that stop you posting certain common toxic comments. It's not perfect, but they are pushing the culture away from that as much as they can.

It's worth noting closure isn't always a negative thing - questions closed as a duplicate give the asker an answer and work as pointers for others.


It depends what you mean by "basic questions". There are basic questions which are about general issues. There are also basic questions which are super-specific to one issue of a trivial program and can be solved by literally searching for the error message. [going to SO to grab the one on the front page right now]

- 5th question: https://stackoverflow.com/questions/36416969/error-with-pip-...

- google: pip install "Operation not permitted"

- first link: https://stackoverflow.com/questions/33004708/osx-el-capitan-...

- second link: https://apple.stackexchange.com/questions/209572/how-to-use-...

(downvoted, marked to close as dupe)

Yes. People get downvoted into oblivion by asking questions which they (demonstrably) did not spend a moment researching. The front page of SO contains a steady stream of them anyway. The downvote arrow means (tooltip): "This question does not show any research effort; it is unclear or not useful".

But! If someone actually posted something that's not googlable and that they actually tried to understand, they do get good answers in my experience. If a good question in closed, you can always report it for review. I'm not saying it never happens - but I helped to reopen a few.


SO needs help turning this impression around. I upvote any question that's halfway comprehensible. I nearly always comment in order to help resolve the ambiguity in the question. It works out best when the asker engages SO in the comments section.


To offer a counter point, why does the girl seem like she needs or wants someone to guide her along in each class?

Asking people to help is one resource, but so is reading the textbook, doing introduction tutorials, looking stuff up online, etc. The author doesn't mention she spent time doing these sorts of activities.

> Not only that, but other people in the room jumped in to help explain

I've definitely seen guys line up to help people in labs.

Maybe the take-away is that CS is traditionally taught in a very individual way and should be more group-oriented.


  > why does the girl seem like she needs or wants someone 
  > to guide her along in each class
Probably for the same reason that people enjoy personal assistance with questions on IRC or discussion forums. Sometimes you literally don't know enough to know what you don't know well enough to know where or how to look it up.


That seems like a cop out to me. Textbooks are by far the best resource you have available for your class work and even though they take the most effort, they tell you exactly what you need to know enough to know what you don't know.


Sorry, what? Literally the first time I've heard anyone claim that textbooks are better than in-person one-on-one tutoring by an educator, which is what we're comparing to, right? (Getting help in-person from the TA.)

Like sure, certain exercises may be more ideal with a group of peers, or may be more ideal if the student does it while the instructor stays hands-off; but if you had to pick just one of all the possible ways to learn something, until I read this comment I thought it was quite universal that everyone would say yeah, one-on-one in-person tutoring with someone trained in the subject matter is the single best way to learn something. Which is why, in spite of being the most expensive option, tutoring is still a thriving industry.


> Sorry, what? Literally the first time I've heard anyone claim that textbooks are better than in-person one-on-one tutoring by an educator, which is what we're comparing to, right? (Getting help in-person from the TA.)

A huge number of software developers are autodidacts. The implication is you don't know many people.


I know plenty of autodidacts, and arguably was one. I'm almost certain not a single one would say that if they could've afforded to be tutored one-on-one instead of reading on their own, they would've still chosen reading on their own instead. They learned from textbooks because the cost and inconvenience of tutoring was prohibitive, not because they're like "pffft, the tutor was just slowing me down, in the time spent with them I would've learned way more from a textbook".


OK, here is one counterpoint.

I actively do avoid asking questions even when it is free.

Not only in computing. I really did not do to well on piano lessons. My siblings who where just taught the basics (IIRC) and then left to their own ended up playing the piano (and other instruments) because it was fun.

Of course in computing this is reinforced from time to time by e.g.:

- by visiting stackoverflow and see how many (IIRC again) of the questions that has helped me most are closed as not constructive,

- or by a colleague who seems they will use any opportunity to talk about something being junior-level stuff and then go on to waste a lot of everyones time by rewriting the whole thing.


Having gone through two degrees, I have rarely found getting help from others to be more efficient than learning on demand myself. I definitely deliberately avoided tutoring apart form the occasional sampling.


I've had exceptional teachers and tutors at times, but I always learned best from textbooks and articles. Information density (ideas per second) in text is much higher and I can scan ahead at my own speed. And with text, I can time-shift my learning. You only get personal tutoring at certain hours and only for a limited amount of time. You can't save your tutor on your hard drive and pull it up later.

Regular evaluation and correction from a human being is useful, though, so that I don't mistakenly believe I know something before I do. But there are subjects where self-evaluation (math quizzes, small software projects) can serve the same purpose. But it certainly speeds things up to have someone set a curriculum.


How many times have you heard the opposite? Is it discussed often? A good book is is way more convenient than a good tutor.


I can't recall any discussions directly comparing textbooks with tutoring, but I can recall many discussions that assume in-person one-on-one teaching to be the gold standard, and all other methods are merely cost-effective compromises. It's implied that textbooks, while not as effective as interacting directly with the textbook author, are an excellent compromise because the author's pedagogy can be widely dispersed for relatively low cost (compared to the author personally tutoring every reader).

While convenience could arguably be considered part of what makes something "better", I think it's also commonly not. Like, you might say a restaurant a half-mile away is "better" than one across the street because its food is tastier, even if the one across the street is so much more convenient that in practice, you eat at the less tasty place five times as often.

In this context it's not clear-cut, but even when re-reading great-grandparent it still seems to me to not be considering convenience to be what makes textbooks better:

> Textbooks are by far the best resource you have available for your class work and even though they take the most effort, they tell you exactly what you need to know enough to know what you don't know.

If anything, great-grandparent seems to be emphasizing an aspect of textbooks that's less convenient than a tutor.


> "Textbooks are by far the best resource"

for people with certain styles of learning. I've always found lecture with some degree of interaction to be of much higher value than the textbook for me.


So I didn't mean that the textbook is the best resource for the concepts, just for the coursework. Side note, though, learning styles are a myth [1].

[1]: http://www.wired.com/2015/01/need-know-learning-styles-myth-...


I can't find any references as to why learning styles are a myth in that article.


As mentioned in the article:

> surprisingly few studies of this format have produced supporting evidence for learning styles; far more evidence (such as this study) runs counter to the myth.

There's been a number of meta-analysis done (e.g. [1]), and they overwhelmingly conclude that there's just no support for learning styles. So, it's a myth until proven otherwise. See also Willingham's book based on his research [2], and his FAQ here which links to more research [3].

[1]: https://www.indwes.edu/cli/research/meta-analysis-summary---...

[2]: http://www.amazon.com/Why-Dont-Students-Like-School/dp/04705...

[3]: http://www.danielwillingham.com/learning-styles-faq.html


For you, maybe - the commenter below me preferred lecture and I didn't learn anything until I did the project and trolled the mailing lists asking (and eventually answering) questions. Some people do better with the human interaction.


I don't think I was clear enough. I'm not saying that textbooks are the best resource for the concepts, but that they're the best resource for the course work.

The comment I replied to said that people can be excused because they "don't know enough to know what you don't know well enough". But the textbook is exactly that information. Most CS courses plan the lectures, notes, homework, tests, etc off the textbook. So the textbook tells you enough to know what you don't know well enough so you can look it up on mailing lists or pick it up in lecture.


Depends on the textbook tbf - a lot of textbooks are really, really bad. Same with basically all sources of information. They pretty much all make assumptions about knowledge level, mainly because they're written by people that (think they) know a lot about the subject. In a lot of cases (the PHP tutorials online are a poignant example), they don't or spread misinformation (yeah just use mysql_query ololooo)


There were no discussion forums or irc channels discussing the gnarly details of quantum mechanics - I read and taught myself until I got it.

The onus to learn is on YOU - if you go to college expecting someone to magically and painlessly install a degree in your head you've another think coming.

Edit: downvoted for proposing that people put effort into educating themselves? Downvoters, YOU are the entitled problem-people.


I mean, I self taught a ton and see the value in it, but seriously?

You pay to attend a university for the sole purpose of having people teach you, that is what they are selling. The idea you should go to a university and only self-teach is insane, at that point, why attend at all?

It's not entitled to want the thing you paid for. Those people are literally there to provide that service.


> The idea you should go to a university and only self-teach is insane, at that point, why attend at all?

Because they give you a piece of paper with a prestigious name on the top of it at the end.

There's no reason why I couldn't have learned everything I learned in college on the internet, or at a well-stocked public library, but that piece of parchment written in Latin with the fancy seal on it is worth a thousand times it's weight in gold.


I mean, that might be true, doesn't mean it's what's being sold, and doesn't mean you shouldn't demand what you paid for.


So your view is that because you paid, you should be able to passively learn without effort?

At no point did I say "only" - but I will stick to my view that the onus to learn is on the student, not the teacher.

You can lead a horse to water...


> passively learn without effort

Getting taught by a teacher or helped by a teaching assistant is not 'passively learning without effort'. It is getting the help you need at the time. The job names literally include the word 'teach' - it is their job to teach you.

Yes, self-learning is a part of any degree, but sometimes people need help. Sometimes people learn more quickly and easily with help, and that's why they pay someone to help them do it.

I, personally, did not need or want that help. If I had, however, I was paying for it, and have the right to that education, as does everyone who does so.

You may not have said 'only', but you did say people shouldn't expect to have a degree given to them after being given an example of someone asking for help a couple of times. You implied that people should never need to ask for help, and should instead self-teach.


Here's the thing. While there are absolutely some pervasive, sneakily awful female-specific problems in computer science, this is emphatically not one of them. The experience described in this article has exactly nothing to do with being a woman.

Computer science is an extremely difficult subject, and everyone sucks really hard at it when they're getting started (or very shortly thereafter). That experience is universal to computer scientists. I will absolutely guarantee you that there were plenty of men in that class who were going through the exact same thing at some point in their academic career, if not right then.

The Problem in computer science education is a combination of the spotlight problem (once you know something, especially something abstract, it's hard to imagine what it's like to not know it) and the No True Scotsman problem (if you ever struggle with anything in computer science then you'll never be a Real computer scientist).

In situations like this, where a large percentage of the population is at a fragile stage of development, we need to be very clear that we're addressing the actual core problem. Namely, that everyone feels that they're the dumb one in a room full of brilliant effortlessly successful people, and that if the coursework is not easy and a little boring you should quit because it only gets worse from here.

This needs to be a large chunk of lecture time early in the semester. You are going to hit The Wall. Everyone does, there's no shame in it. When (not if) you do, ask for help. Say "I don't know". This is an important life skill, and a large part of being a functioning adult.


> Namely, that everyone feels that they're the dumb one in a room full of brilliant effortlessly successful people, and that if the coursework is not easy and a little boring you should quit because it only gets worse from here.

So I self-learned CS, my degrees were in applied math, and it was similar in the math world. Although more like:

"everyone feels that they're the dumb one in a room full of other dumb ones... "

But where I studied, we did receive that sort of lecture early on. That "a wall" as you've described it is normal, get used to it.

It's served me well, being comfortable with "not knowing" something. You could argue that it's something every student of ANY subject should be told but I guess many subjects are easy enough that simply working at X% effort is enough to never get stumped.


I guess I don't fully understand the scenario being described. She writes that the T.A. tried to explain "again, and again, and again", then after she said "I DON’T UNDERSTAND", he was "eager to help us".

It seemed like the T.A. was already aware she wasn't grasping the concept because he explained it repetitively. I'm just wondering what feedback she was giving up until that point.

Regardless, clear communication from everyone in any learning setting is essential. Saying "I don't know" and "I don't understand" are a huge part of that.


I think the point she was making was being very public about the fact she didn't understand. Stating it loudly, rather than sheepishly speaking with the TA and being ashamed.

Being upfront about it and basically letting everyone in the room know she was having a problem broke the ice. There can be a palpable pressure in social situations to conform, like being in a library... the silence of everyone almost has a presence of its own.

In a computer lab, it can be like that. Who knows why the TA changed their tune, maybe they were themselves shamed by their own lack of ability to convey understanding. But for the rest of the lab, once the taboo was broken, apparently the innate desire many people have to lend a hand surfaced.

I can't say why, I wasn't there, but in this case it worked out. People act differently in the anonymity of a crowd, and that is what you basically have in a hushed lab environment. Her plea for help / public admittance of vulnerability was apparently enough to shatter the crowd psychology and the innate desire of individuals to help other individuals came forward.


I have had to teach several individuals.

There is a stark difference between someone being humble and saying they flat out don't understand vs someone pretending to understand/get it and then blatantly making a mistake that belies they really don't understand.

I personally would much rather teach the former.


The TA assumed she had knowledge that she didn't actually have, and was basing responses off that faulty assumption - plenty of students are lazy and ask questions that they could answer themselves if they would just bother.

In my experience, if you ask questions and it's clear you're trying, most people will engage with you. But if it's a short form for getting a lazy, spoon-fed answer, that's when people disengage

My best brain-not-engaged story when I was a TA was a student who had to multiply 2 by 0.4. She reached for her calculator and I forbade her from using it (she was doing a major with a statistics component, so she could do this). She just stared dumbly at me until I couldn't bear it anymore and 'helped' her with "well, what's 2 by 4?". People like that will drain you until you don't care anymore. But a student who shows that they are trying, and you'll be more interested in going the extra mile.


> I would like to create learning software that emphasizes pride in failure over success. That the end is not the goal – continuous effort to try again and fail again, and try again and fail again is.

This reminds me of a study by Claudia M. Mueller and Carol S. Dweck of Columbia University - ‘Praise for Intelligence Can Undermine Children's Motivation and Performance’ [1].

They said praise for the effort and not results.

They found that children who were praised for their intelligence, as compared to their effort, became overly focused on results. Following a failure, these same children persisted less, showed less enjoyment, attributed their failure to a lack of ability (which they believed they could not change), and performed poorly in future achievement efforts.

Children praised for effort chose problems that promised increased learning, they had continued interest in mastery by preferring to receive strategy-related information.

[1] PDF: https://psychology.stanford.edu/sites/all/files/Intelligence...


Praise is just a factor, and not even the most important one. You usually won't turn a lazy child successful by just switching from praising intelligence to praising effort. If the child is hardened in his/her intention to avoid effort, then you can't reach them with or without praise, until they develop an internal motivation. Nowadays school work has to compete with mobile games and other super addictive stuff that just overflows on the internet.


Great post.

A good thing to remember: no one knows what the hell they're doing, no matter what stage of life they're in.


Spoken like a true parent


Not to be that guy, but I've become a lot more comfortable with not knowing what the hell I am doing since I had a kid. Most people are winging it, you just don't get to see their failures.


As a counterpoint, I've become far more worried about life in general since I realised that medical and legal professionals are just winging it too.


Well, doctors are just "practicing medicine" after all...


Even Mathematicians. Proofs are just formalised human intuition.


Should we keep the whole education lie about choosing a career early on ? [1] or admit that things are the way they are and make people have a broader intellectual view about things so that they can jump whenever the times require it ?

[1] I understand the value of picking one thing and going deep. Versus breadth / jack of all trade say.


Yup! This was the best advice I had ever gotten. There were times I felt like an idiot for not understanding something but at a certain point understanding that no one knows what they're doing is just powerful.


> The T.A.’s had to explain over, and over, and over again the simplest concepts.

As a TA, I want to say that this is literally my job. If that's what it takes, then that's what it takes. My entire purpose is to help students. If other people need my help, I might be limited in the amount of time I can spend, but I'll give you every bit of help I can in the time I have.

When I was an undergraduate, I worried about the TA judging me for not knowing things. I'd even skip tutorials if I was too far behind. Now as a TA, that seems so silly. My goal is to just get you the best mark I can, regardless of where you're starting from.

Anyways, this was a well-written post. Lots of great stuff in there. I think the issues it touches on are also something a lot of students can relate to.

I would caution, though, there's also 'that guy' who speaks instead of thinking. There is a balance to be struck. In lectures, at least. Listen, think, ask.


You say:

> As a TA, I want to say that this is literally my job. If that's what it takes, then that's what it takes. My entire purpose is to help students.

And:

> If other people need my help, I might be limited in the amount of time I can spend, but I'll give you every bit of help I can in the time I have.

But that's the point – you don't have infinite time. I think it's unfair to the faster to students if the majority of your time is spent on the slowest ones. Unless it's your explicit goal to teach the lowest common denominator, the better students also have a right to get help and support in their learning.


Sure, but that assumes that the extra time being taken here came at the expense of someone else's time. The original article showed two people gaining from this at the same time, at least.

If they require more time than can be allocated and it cuts into time other students need, then alternative arrangements need to start being made, sure. Just assuming that taking more time than others to get something makes you unworthy of getting that help isn't right.


While this is a very moving story and I hope the author finds a rewarding career in CS, one big problem I have with this is that there is going to come a point in time where she has to figure out a hard problem on her own. It might be in grad school, it might be on the job, or in an interview, or for a side project. But there is going to come a time when there's a very difficult problem to solve and there is nobody there to turn to for advice because you are doing something new. And if you haven't built up the resources to research the problem on your own and work it out, that might be a very difficult experience.


Sure, but if you fail at the beginning, how are you meant to build that skill?

If the author continued to require in-depth explanations of the core concepts again and again over the entire length of their education, sure, that could be an issue. The reality is that over time, most people are going to learn how to approach the issue, how to best self-teach, etc... and get past it.


I have found that embracing being dumb can be very useful even later on. I don't struggle with programming anymore, to the point where that "out of my depth" feeling is surprising and scary.

Occasionally I run into some new concept I have no experience with and I sit there staring at it like an idiot thinking "why do I not get this?" It takes a little while to remember that I'm comparing many years of experience and study to something I just started learning, and the feeling of being overwhelmed is natural.

I suspect many people get used to feeling competent once they've developed competence in one area. The problem is that, as described in the article, the need to feel competent gets in the way of developing competence in anything new.

I think one reason children learn so well is that they haven't yet developed competence in any area, so it's hard for them to expect competence in every area. I have no end of admiration for the way a child will look you dead in the eye and say "I don't know what that means" like it's the most natural thing in the world.


It seems like the author is at risk of breaking an arm patting herself on the back too hard. Yes, computer science can be a hard field. There are many hard fields. These require hard work. Sometimes you don't understand the material in class. Sometimes you need to work really hard. Sometimes you feel silly or need to ask your prickly, overworked TA a bunch of questions when he or she would probably rather be doing other things. I'm not sure why the author seems to think this makes her deserving of special commendation, or what her experiences have to do with gender, but most of all the incredibly self-serving, west-wing-horn-section-playing-in-the-background tone in which this piece is written really grinds my gears.


Different people have different things they struggle with - this was clearly an important breakthrough for her and many others, she wants to share that with the world. That's a positive thing, and I think you are unfairly characterising it as some kind of self-glorification.


Lemme guess, you got by without needing a lot of handholding and now watching this girl pat herself on the back for figuring out how to get tons of help while your accomplishment goes unheralded has you rattled?


or he just read the story and that's his opinion of the situation. i feel the same way and i didn't have an easy time in school.


I'm particularly infamous among my peers for asking questions, and most of the time I'm not asking on my own behalf. Asking a question because you don't understand is what you can do for yourself. Asking a question because you don't expect others to understand is something more.

This pretty much applies to all disciplines, particularly when a subgroup of people are more likely to feel intimidated by the learning environment.


That sounds dangerously close to "asking a question because you want to look smart"

I like people like you in principle, but not in meetings.


I can't speak for OP but I would say asking somewhat obvious questions and making peoples' mental gears go through the effort of thinking things through has been beneficial for me. There is a guy on our team, possibly the smartest one, who constantly asks what could initially be construed as "dumb questions", only to later uncover some flaw in our reasoning or potential pitfall we hadn't thought of. I've come to deeply appreciate his dumb questions.


It's the same principle as rubber duck debugging: It's harder to take shortcuts in your reasoning when you're trying to explain something.


Right, but examining the fundamental assumptions of a plan is -subtly- different than asking a question (whose answer you already know) because you expect that other people want the answer to the question but are too intimidated or whatever to ask. :)


I've often done this in situations where we're doing a lunch and learn, or another dev is demoing something to the team, etc.. Sometimes it's to make the presenter look smart, not yourself. Sometimes it's to know if next time you have a question about [product being explained that you know a little about] if the presenter is the person to ask, or the person to ask if you want to figure it out with.


...or at conferences. I can't find the flowchart I've seen before but it's definitely a problem at linux.conf.au (although better moderated this year!)


I wonder if about 10 years from now, we're going to see a lot more young women entering CS and similarly technical majors, and sticking with it through a degree and a career, because they've grown up watching Twilight Sparkle and the other ponies expressing vulnerability -- "I don't understand" and "I need help" and similar sentiments.

I don't think girls necessarily need mentors they can identify with (which, for many girls, means "women") in their exact chosen fields, in order to choose those fields. But I do think they need mentors they can identify with who display the character traits needed to be successful in those fields -- the sort of confidence and perseverance expressed in this article.


I like the article, but one thing caught my eye there.

"Right then and there, I said loud, confidently, and clearly so everyone in the room could hear me, “I DON’T UNDERSTAND.”"

I don't understand why this would make people more eager to help you. If I was trying to explain something to someone and they started to raise their voice, I would just get irritated and probably refuse to help anymore. But then again I have to admit that I'm not always the most patient person in the world.


I think you are reading a more hostile tone into that - I read it more as a slow paced, clear 'I. Don't. Understand.' - not shouting in the guy's face - to try and get the point across that they didn't get the core concept, and the explanations being given were not helpful. I could see how that would cause you to shift your attempt to another tack, see more success and therefore the explained scenario.


It's difficult to separate out the all-important "I did/didn't spend a bunch of time in my teens programming" factor, and if she is getting some attention to fix the temporary deficit that this causes, so much the better. As someone else points out, a lot of people come into CS with a huge head start (often one that stops working some point in 2nd or 3rd year, in my experience on both sides of the classroom).

The question becomes: when does the strategy of being the one person in the class saying "I don't understand. Please explain again/better" start to be problematic? When you're still consuming 40% of the attention of your TAs in a 2nd or 3rd year course? When you're asking questions about things all of the rest of the class understands and things are grinding to a halt for everyone else? When you're the team member who needs someone else to design your algorithm for you for every single task? There has to be an end to it somewhere.


I have been in classes with that person that asks questions constantly, because they "don't understand". After a half-dozen sessions, you're about ready to chuck your laptop at the back of their head. Sure, dude, suck up 25% of the lecture time asking questions about things your should understand if you read the assigned reading. It's not like the other 40 people in this class aren't paying through the nose to be here - take your damned questions offline, and let the professor give their lecture, so we might actually be able to cover the material we're here to cover.


This is an excellent story. Really getting over the fear of ignorance and learning to manage how much the opinions of others get in our way are real life improvements.


Very true. I tried to jump into some higher-level math classes in college after finishing my major, and though I didn't completely fail, I would have learned much more if I had gotten over my fear of looking "dumb" by asking basic questions, or by talking to the professors during office hours.


Neatly sidestepping the gender issue (not understanding is non-gender specific)

Publicly saying I don't understand, in a room full of people that appear to understand is incredibly difficult. However clearly knowing your limits, and crucially being honest about them makes you a much better programmer.

There is nothing worse than someone who bullshits or FUDs they way through things. Most arguments on t'internet/programming office can be summed up as:

Person 1: I don't think this is a good idea Person 2: This is an attack on my knowledge LIES YOU ARE RUBBISH, HERE IS SOME FACTS, SOME OF WHICH ARE MADE UP/OVERHEARD etc etc etc.

More people need to say "I don't understand" women or not.


Why do women in CS constantly seem to feel the need to tell everybody else they're a woman? Nobody cares.


> Why do women in CS constantly seem to feel the need to tell everybody else they're a woman? Nobody cares.

Because there is a fair amount of inherent sexism in many companies when it comes to female programmers.

My ex was the brightest (by a long way) on our undergraduate CompSci course. She topped the class of 250 students and got a 1st with honours. She received one of the highest grades in the department's history.

She was invited to start a Phd directly after the BSc. No masters was required. The university could see her potential and decided to embrace it. She published a number of papers related to script and language identification from document images, primarily focused on Asian writing systems.

After her Phd she went to work for a large US automotive company. It was a nightmare for her. Shitty sexist comments on a daily basis. A real toxic work environment and after 1.5 years she quit. She had no desire to go back into job in computer science.

To me that is a huge waste of talent and resource.


So she just gave up and threw 30 years of her life down the drain ? Where's the persistence ?

It's like "geeks" weren't ever ridiculed and harassed decades ago, before CS got "trendy and cool".

That's also a price of equality, sometimes you just eat shit at a certain job.


> > Shitty sexist comments on a daily basis. A real toxic work environment

> That's also a price of equality, sometimes you just eat shit at a certain job.

You can't be serious. Not only is sexism the opposite of your supposed equality, it should never be tolerated in the workplace.


It's not equal if someone is the butt of jokes, and comments and jabs are directed at one person because of a feature that they have.


Because people in tech have never been the butt of jokes from the rest of society.


It's unfortunate that your ex had to work in such a toxic environment. She should definitely write about her experiences. As a male I'd be curious to learn about her story because there seems to be this constant allegation on the internet of misogyny in tech, but personally I've never witnessed it, and if anything it seems to be the opposite.

Gender, however, is totally irrelevant to this article. It almost feels like the author is using her gender as clickbait to generate views. If sexism is indeed rampant in the tech industry, these kind of articles aren't going to make it any better.


So after one bad experience she left a fields she graduated and got a Phd in ? It sounds like sexism wasn't the only issue there.


Hi, out of a personal interest I'd like to follow up with you with some questions. This is similar to an interview except I'm not a writer and would just like to understand this issue better. However, you don't list a contact. Could you either write to me at the contact that I do list, or list an email for me here? Thank you.


Who would have thought that asking for help in class would help you out


For many students, it's not easy to be the first one to speak up. It interrupts the lecture and tells everyone you don't know what's going on. Of course, a lot of people might be just as lost as you, but none of them can be sure that others are lost.


I used to ask loads of questions during lectures - feedback I got from my classmates was half saying "thanks for asking the question, I was wondering about that too" and the other half was "why do you ask soo many questions".

I just liked making sure I understood things properly.


It's almost as if there are two separate types of people. People who learn by reading books and people who learn by asking questions. They do not always understand each other and maybe it's bad.

However, I can attest that reading books (also, googling these days) and never asking basic questions is a perfectly valid way to learn.


From experience, I can say that university is a place that creates an atmosphere of fear in asking questions.

Ask a question in a lecture? The 100+ other people in the room are now staring at you like you're an idiot, despite the fact that most probably have the same question.

Ask for clarification on something the lecturer said? You've interrupted their flow now, and want you to sit down, shut up and ask after class.

Go to ask after class? 12 other people have questions they were too afraid to ask during class or couldn't and the lecturer doesn't have time to attend to all of you, and tells you to send them an email they won't read.

Ask a TA? Most of them are overworked and underappreciated which leads to them having a very low tolerance for "I don't understand" questions, which can lead to a brush-off answer like "just re-read the lecture material."

Ask other students? They either don't know themselves or cannot explain it in an appropriate or correct manner, or simply cannot be bothered to help you because "this is too easy, why don't you get it!?"

Now of course, not every lecturer/TA is like this, and I had some wonderfully helpful and open teachers while I was in university, however, both myself and other people I know from across many different schools have had numerous experiences like this.

And here's the other thing, as a student I've been guilty of doing the exact things I describe above, either out of arrogance or simply down to the fact that I was slammed with other classes I just didn't have the time or patience to help others. Is it something I am proud of? Of course not, looking back now I can safely say I was a dick.

It gets even worse for women, when you differ from the majority of others in your class simply by genetics, it creates a feeling of not wanting to stand out or give other people a reason on top of their sub-conscious bias to think you "don't belong here" or "aren't as good as the rest of us."


> Ask a question in a lecture? The 100+ other people in the room are now staring at you like you're an idiot, despite the fact that most probably have the same question.

I always ask the question anyway. The lecturers don't mind answering questions -- they're there to teach you (though since I talk to them outside lectures, I might have a different view of how lecturers feel about students). Even if it's a dumb question, just ask. People who judge you for asking a question are assholes and aren't worth your time.


See, I agree with you, but look at it from the average person - they now have to stand up in front of a crowd which will probably freak them out due to public speaking, plus the self-consciousness of being the odd-one out in a room full of your peers plus the embarrassment of interrupting the lecturer can compound into a situation that most people would rather avoid.

And yes, there are lecturers who don't mind answering questions, but there are very few students who have never met the grumpy, tenured "I don't give a fuck, I lost faith/hope a long time ago" professor who will go out of their way to make sure they aren't bothered with questions while they talk.


> From experience, I can say that university is a place that creates an atmosphere of fear in asking questions. Ask a question in a lecture? The 100+ other people in the room are now staring at you like you're an idiot, despite the fact that most probably have the same question.

It's called life - there's a lot of feelings involved, good or bad. Sooner you learn to cope with them, the better life becomes and for those around you.


As a teacher, a bigger problem that I have is not that people don't understand it, but that people don't care when they don't understand it. Many students seem to be just attending to a class because of peer pressure or something. They can just glide it when it doesn't click. If you feel sad when you don't understand something, I'd say you're already very motivated.

Very rarely, a teacher can press a student's button to make them actually interested in the subject (or anything related to the subject), but I feel this mostly happens only randomly.


People are scared to sound stupid but there is no stupid question. Even after 10 years of software engineering, I still learn new things everyday.

Whenever I join a new company, I'm the dumbest person there at the beginning... Until the next recruit arrives :)

Putting yourself in the position of always being the dumbest person in the room is the smartest thing you can do.

You never want to be the smartest person in the room... EVER. Sure, it feels great, but you don't learn anything.

By always putting yourself in difficult situations, you become more adaptable and better rounded as an engineer.


There's nothing wrong about being dumb as long as you want to do something about it.

Here's a couple of women that have made me feel exceptionally dumb (and want to do something about it) with the fascinating things they've had to say:

[1] - https://vimeo.com/109380788

[2] - https://vimeo.com/109380802

(disclaimer: I co-run the con these talks come from, but I still think they're great talks)


Disregarding gender, I think this story is more about people that weren't into computers and tech trying to get into it. Comparing it with my own experience, my dad got our first computer when I was 3, we grew up with it; I got computer basics (besides what I already knew by then) and skills like typing between ages 12-16; I learned how computer hardware and software and operating systems and networks and such worked age 16-19 in school, then at the end of that started with basic software development, which was another (bachelor degree) education from age 19-23.

I don't know what exact path the author followed, but judging by the opening paragraphs, it had nothing to do with computers until she tried to get into software development. I'm also going to assume that her classmates were not completely new to the subject - or were afraid to admit they didn't get it.

What I'm saying is / TL;DR, getting into software development will be hard for anyone if they don't have much prior experience; you can't just join up with a class and expect to catch up on half a lifetime of prior knowledge. That's probably also why the schools I attended had a wide range of classes, going from history to hardware to operating systems to networks to office tools until finally going to e.g. browsers and the web and the basics of software development.

TL TL;DR, programming isn't easy


You are correct most people in software development have had an interest and experience for long before adulthood. However that prerequisite doesn't have to be that compulsory. We teach rocket science and brain surgery in universities, and don't expect the students to have experience in such before entering the course. Art, however, may be an exception (see below).

I think it's about how Computer Science is taught. A subject can be taught effectively and learnt by enthusiastic learners. Anyone should be able to turn up to a university and get taught how to program, with no prior experience.

What is essential is an enthusiasm and dedication to learn, and the skill of being able to learn to learn.

Now - the above standing, Fine Art degrees and such often require the learner to do a Foundation Year. This year (from my limited understanding) is mainly a year of technical skills to bridge the gap between art at school and art at university level, and a year where the student tries all forms and mediums to choose the one they want to specialise in. If educators at university level see that there is a need for such basic education, perhaps a foundation level in basic computing could be an option.


one thing I noticed about just about any industry, and this is not gender-related, is a tendency to live in a bubble and to expect that other people live in this same bubble and speak the same particular bubblese language.

I recall my high-school math teacher was very methodical, but even he "cruised over a few points" or wasn't completely explicit about all the mechanics of a given transformation/equation/formula, or perhaps wasn't clear about what the desired product was of the particular set of manipulations we were studying. It's all fine and good if YOU understand what you are explaining, or of a couple top students can follow you and nod, but perhaps the bulk of the class isn't getting it, and it would be extremely helpful for someone to stand up and say exactly what this author said "I don't understand" as this would provoke the necessary review and examination of the subject in question.

I think that closed cultures can be more welcoming of outsiders by being willing to re-examine the basics often. too often we scorn basic questions that would also be helpful in determining areas for future optimizations, or would provoke the needed work to overcome pain points.

For example: inventions and optimizations often come from naive outsider questions applied to "solved known done finished" problems


I earned perfect scores on my CS classes at a large state university. I was also a T.A. for a computer architecture lab where students had to write 68000 assembly. (Aside: when I took that class, the T.A. was a woman.)

Now this was the mid-90s and there were not many women in my classes. I search my memory for the experiences described in this article, of T.A.'s mocking students, of getting frustrated with students, of "dumb" girls. I just can't remember anything like that. There were a handful of students like myself for which certain subjects just clicked. And there were a handful that it seemed like they just were never going to get it. But for most, it was this middle ground of having to work hard to understand. Not everyone of my classes was a breeze either. I must've pulled my hair out in my compilers class three times over.

Mostly, this just sounds like the struggle of being a student. But I guess everyone focuses their experiences through a certain lens. I hope I'm not criticising here... mostly just thinking out loud.


When i read something like this it always brings up some memories back from the college times. Back then i had some interesting experiences and knowledge, while most of the students were interested in fields different from anything CS-related. To my surprise, when i got into assembly class i had a very weird feeling of being dumb just because it was not always clear to me how the this whole machine world was operating. Other students got it right away. But i was confused. I wasn't really interested in speaking up, so i just studies, but it took me some time to finally "get it" as in really understanding how the machine worked. But it took more than that. A lot of students were still confused even though they understood the basics, so i took i tried to help out and it turned out to be so much fun. It does not have to be that hard, it all about your interests and intentions.


That's real bravery. As a prof, I meet so few students who are willing to back the the very bottom of what they don't understand and work up from there. It's not what we're taught to do. How many of us have skated on over something without really getting it? This is a great and honest post.


Very timely I was having a personal dilemma about keeping regressing to basics and building backup from blank page or not. Very timely.


I am male, and I am (too often) an arrogant jerk.

If I'm trying to learn something, I assume that I'm smart enough to learn it, no question. If I don't understand it, it's because you didn't teach it well enough - it's your fault, not mine.

So I have no problem saying "I don't understand", because I have no self-image at stake. It's not enough to penetrate my arrogance. And when I say "I don't understand" in a group, I'm often not just speaking for myself. There are others there who don't understand.

That's what this lady is doing, only (hopefully) without the arrogant jerk part. She's decided that she can admit when she doesn't understand, without it threatening who she is. It's very freeing.

I got it as a side effect of being arrogant, but she got it by being brave. More power to her.


I think the title is misleading, you say dumb girl but then you get into the top level, not an easy jump. Also if I was a professor I would like those asking questions to be prepared before hand in basic concepts, just to no slow down the class. There are certain type of questions that can arise naturally when discussing certain topics, but if you ask many times and your questions are of basic topics or greatly miss the topic you are giving a disservice to your class.

I think being a girl give you the opportunity to coach other girls, and help them, if you can prove that your personal experience can motivate others. But not everyone is ready to put the necessary effort to get to the top level. I think that mastering a subject requires some passion or being interested and excited by the subject and to be prepared to put in the effort.


It is really important to abandon your ego when learning programing. The "smart" students who get everything immediately have spent hours on their own learning the material. That probably is the best way to learn the basics but the next best thing is to do as the author did.


Some subjects are just intuitive to some people without them secretly spending hours of extra study on them.


>Right then and there, I said loud, confidently, and clearly so everyone in the room could hear me, “I DON’T UNDERSTAND.”

The room became instantly quite and the T.A. had a look on his face as if a spell that had been cast over him was broken. After that his whole demeanor changed. He became eager to help us. Not only that, but other people in the room jumped in to help explain and even the girl grew visibly more comfortable and started asking questions. Everyone became so eager to help – it was rowdy, exciting – people left and right were neglecting their own work to try to help us, it became a major group effort and everyone was so passionate to jump in and help.

The field may be "male-dominated". That does not mean it is unfriendly to women, generally speaking.


Great post and great advice for anyone studying anything difficult.

We are trained to get everything right and be embarrassed if we don't know something. This makes it hard to practice pushing the boundaries of our own knowledge. It comes to the point where people can't even recognize when they don't know a thing!

I don't know what the solution is but I think that schools should become better at pushing people to the edge of their competency. To do so we must become more tolerant of ignorance so the teacher and the student can learn strategies to find the shape of it strategies on how to push themselves into that unknown. Right now we generally wait until grad school to really do such things and it is holding us back as a society.


> I strongly believe that the continued and constant emphasis in taking pride in failure is EXACTLY what women need to be exposed to in order to let down their walls and break through the well-known façade that ‘you need to be a genius to be a computer scientist’.

Maybe that's my poor understanding of English but I feel that "taking pride in failure" is a strange choice of words. I would say you can be proud of making the effort but why be proud of failing?

OTOH you shouldn't be ashamed of failing to understand something straight away, and more importantly you should not be afraid of asking loudly for a better explanation.


The author's courage in admitting that she doesn't understand is admirable, although I think it would have added more to her story to talk about what made her more willing to put this level of effort into CS as opposed to her original major.

As an aside, I think hacker culture extends itself into university CS culture in the sense that it's pretty much mandated to figure out a problem on your own and RTFM before asking IRC/forums. I guess that kind of thing works on the internet but not so much in real life - I struggle from time to time at work to admit that I need help.


An approach worth trying here is to find a friend at the office who knows more than you about things generally, then ask them privately. You can spur this on by offering your help when they seem to be stuck, but doing so without making a big scene or talking loudly about it. If you are seen as someone that quietly helps people when they need it, you will reap immediate rewards when you run into problems.


"Unlocking the Clubhouse: Women in Computing" (by Margolis & Fisher) is an excellent book on this topic.

MIT Press page: https://mitpress.mit.edu/books/unlocking-clubhouse Amazon page: http://www.amazon.com/Unlocking-Clubhouse-Women-Computing-Pr...


Is this really a problem specific to computer science? Medical, biology, physics.. all subjects have some harder parts. There is always someone who does not understand.


In an academic environment, there is nothing special about CS that makes it different from any other subject as far as the experience of the OP is concerned.

In the field, however, I have found more than a few "computer professional" environments which are clearly hostile to beginners/newcomers. I suspect this is because people tend to think that the way they learned is the "best way" to learn a topic. In computer-related professions you have a lot of self-taught folks who got to where they are by hard knocks and constantly facing a profound lack of guidance. These same people often feel that newcomers should undergo the same suffering they did. It's human nature, but it doesn't have to be way.


It might be a bigger problem in fields where there's a bimodal distribution of skill. That is: There's a group that "gets it" and a group that doesn't. In subjects that mostly require acquiring knowledge, that's not likely to happen. Individual students might not know the answer to a specific thing, but they won't be completely lost for the entire lecture. But if a subject requires learning new ways to think, I could totally see this happening.

These are just some preliminary thoughts, so I wouldn't give them a ton of credence. Still, I could totally see different specialties having different distributions of comprehension.


I study through a uni in Melbourne but purely online (minus exams) so this is an interesting side of on-campus study that I had not thought of much. I have found collaborative learning via the student forums is a great way to help people out, and there are lots who do seek help which is great (myself included). I'm just over halfway through my CS degree and now wandering how different my progress & grades would be if I studied on-campus.


When I was younger I worked at a top private secondary school for a number of years in the IT department and one of the Social Studies teachers there was very good and had an effect on me. She would tell people who had that attitude of dismissing people's questions as stupid:

"There is no such thing as a stupid question. Only stupid answers."

When you think about it, it is both completely obvious, but also very profound. It has stuck with me to this day.


I often tell people that the only stupid question is the one you didn't ask. In other words, it's stupid to not ask questions when you don't understand something.


This was a great read and applies to as many comp sci / tech heads who are more comfortable behind a keyboard than interacting with others.

Faking it till you make it always comes out in the wash.

Saying I don't understand, and acting on it in a "I want to understand' by putting in the required work to ask, and learn is what makes a developer - someone who is able to develop their skills, forever, as needed.


Reading through the comments on here, it seems as if the post has been misunderstood:

It is not about being a girl in computer science, it is about overcoming your own fears of being perceived as dumb for not understanding, and then being open about not understanding. When the author got over those fears, she clearly states there were benefits for her and others for whom she taught this technique.


Title: Being a ‘Dumb’ Girl in Computer Science

Contents: What you said

Title should be: Being ‘Dumb’ in Computer Science


To me this article relates to the idea of pair-programming. In pair-programming you should also pair lower-skilled with higher-skilled people to lift the beginner's skill. Empathy and Patience required. The problem with teamed-up programming is that it is very much relying on the groups culture and switching between cultures might turn into a hard challenge.


Would have been nicer, if she had given specific details in the article e.g. languages, specific algorithmic examples. Almost everything she learnt (overcoming her struggles) is just termed as computer science, the only other detail is of a 'robotics club'.

That said, generic lesson of overcoming fear of being seen as not-understanding-dumb holds very well.


Great article! In it you mentioned the Laramie Robotics Club. As the founder of a social robotics company, I'm wondering if there is something specific about robots that makes them a good medium for learning to code. I have some ideas about this but I would like to see what others think.


It sucks when someone is not naturally gifted at something, and can't just grok it.

On the other hand, neither lab time or class time is the place to learn something. That's the place to be exposed to new concepts and theories, and work on something in a controlled environment with peers.

Most real learning is supposed to be done through homework and self motivation to apply (new) skills to creative tasks.

So while someone is floundering in class to grasp the material -- I ask, how much _extra_ time outside of class time are you spending to fully grasp, ingest, and understand concepts through-and-through the stuff you find so impossibly difficult.

All kungfu is hard to master -- but with enough practice, blood, sweat and tears and perseverance anyone can acquire great kungfu. https://www.youtube.com/watch?v=iIieUmp0aZ0


Tangent: if you want to tutor someone, don't tell them things, ask questions. Tons and tons of questions. A majority of the sentences you say should end in a question mark.

Answer questions with more questions. It's annoying, but it works.



Not sure that this only applies to women, but for people in general. Also, those TAs at the begining of the article don't seem to understand the learning process – going from not knowing to knowing.


Why would girls voluntarily submit to development drudgery with zero status from management amongst people they don't find attractive at all (more like stupid nice ones that can be taken advantage of)? They have other options given to them by nature, especially when they are younger that men don't have. I known an entrepreneur who sold his company to one of the most known brands in the world and his wife immediately quit her job, that she doesn't want to deal with that nonsense anymore as her husband is now super rich. How many guys can afford to do the same?

Many women really perceive developers as weirdos they don't want to have anything with, only if they are forced to settle down by their age.


What you say might be true for a few but, "Many women" does not mean "all women". A lot of women I know would not marry if they had to leave their jobs afterwards, they love what they do.


I'm sorry, but I think this just has to do with bad study habits. I may be wildly off base here (I don't know the author's habits) I just have the quotes in the article:

> I just couldn’t understand a word that the teacher was saying

> T.A.’s had to explain over, and over, and over again the simplest concepts

> I wasn’t grasping a thing he was saying

> He tried again, and again, and again to explain basic concepts to me

> I DON’T UNDERSTAND.

As a student, understanding terms and basic concepts is your responsibility. The professor and TA's are there to enhance and solidify the basic concepts, they're not there to explain basic concepts to you over and over again until you get it. That's the job of reading and studying. If you don't do the reading and study the material you need to know before the class it's covered in, then of course you won't understand what the professor is on about and of course you'll fall behind. You're starting from behind and don't have any way to catch up.

I saw this over and over as both a TA, teacher, and classmate. Lecture is not the time to learn terms and concepts for the first time. Lecture is the time to connect newly learned terms and concepts to your existing knowledge and reinforce and enlighten it. If you get to the class on class instantiation and you don't know what a constructor is already then you're going to have a bad time--and you should.

So you must study beforehand and you just have to study it until you know it. I appreciate that it's harder for some than others, and commend the author for aspiring to inspire, but at some point there needs to be some personal responsibility.


Let me gently disagree with you. First, much of what she comments on (TAs, etc.) happens in recitations or office hours, which are the time to go over things until they're clear. (She mentions this: "Being hopelessly lost in lab"). Labs are typically smaller and are often taught by less-experienced people - grad students or even senior undergrads.

Second, while it's possible to take it too far, I love it when students are forthright about not getting it, even in the primary lecture session. First, because for every student who asks the question, there are a dozen sitting there being quietly confused -- and often feeling like crap about it (c.f., impostor syndrome). Second, because it gives me an excuse to explain the same concept in a different way -- which may reach some of the other dozen students who incorrectly think they get it, and won't figure out they've missed something until they sit down to do the homework. And third, because that's what learning is about - learning the things you don't know. Any experienced teacher should be able to defer when the questions are getting in the way of the material, and _holy cow_ is it better to have a classroom of students asking you to explain something than to have a bunch of drooling post-lunch zombies.

Your point about when to study & learn things depends a lot on the class. In my intro class, I don't expect the students to have done the reading beforehand, because we don't have any reading. I expect them to have worked through all of the stuff resulting from the previous lecture, however. Other classes operate in the way you mention. But it varies highly from class to class.

The author was taking personal responsibility by being forthright about what she was having a hard time understanding. It's harder to do than it seems.


I think we agree but differ in how we perceive the author's level of understanding.

I didn't mean to imply that there should be no questions in lecture or that students should understand everything by lecture. I also should have commended the author for getting TA help, though I've noticed that students do this as a replacement for studying rather than a supplement--which can fuel learned hopelessness (i.e. "I'm trying so hard and just can't get it").

But I still learn towards bad study habits here. The author felt so helpless that they screamed "I DON'T UNDERSTAND" in the middle of lab. I think that if you're at that point then there's something deeper going on there then just needing more help/clarification and in my experience that has to do with poor study habits.

It's interesting that you don't assign reading before hand in your intro class. If I were taking that class, I would read ahead any way. What advantage do you think your students get by not having an opportunity to look over terms and concepts before you discuss them in lecture?


It's also possible that it was the scenario others have mentioned -- there's a very wide range of incoming abilities in intro cs classes, from complete newbies to high school students who could out-program half of the HN crew. (Seriously - I had one working for me for the summer before he started as a freshman at Berkeley who was the equal of many Google engineers when it comes to C++. Yes, quite unusual, but there's at least one such person.) As a consequence, it can be easy to lose 20+% of the class, and when they get lost early in intro classes, they stay lost, because the concepts build upon each other so rapidly.

Oftentimes, the students don't even realize they're lost until a few weeks later, and by then, it's a big problem. I've seen this a lot - a large amount of our TA effort is dedicated to helping bring those students forward once the "oh shit" moment happens.

Why no reading:

(a) Haven't found a book worth its salt for the class. We have lots of optional texts that they can use, and we encourage students who want to read ahead to peruse How to Think Like a Computer Scientist (python).

(b) It's mostly a structure thing. 15-112 (www.cs.cmu.edu/~112) is at present structured as "go to class, get the big picture view and some details, and then go practice the living daylights out of it afterwords". It's very effective for students new to CS. I can't claim credit for it - my many-awards-winning-astoundingly-beloved colleagues Mark Stehlik and David Kosbie created the beast. The core of it is that students just learning CS need to get the "muscle memory" down so that when you tell them to implement merge sort, they don't spend time puzzling out how to append an item to a list. So the focus of the class is a fairly daunting amount of practice, in the form of exercises, homeworks, and quizzes.

It's a truly brutal class, FWIW, but the students come out of it having accomplished something really amazing. Here's a vide of some of the project highlights from last semester - https://www.youtube.com/watch?v=fkiK_cqSOwI . Keep in mind that these are projects by people who, in many cases, have never programmed before the start of the semester. Full project gallery is http://www.cs.cmu.edu/~112/gallery.html


With such a wild variance of incoming skill levels, what is the way to make lectures efficient? I know this isn't a new problem but I see it frequently in training / classes in the industry where things are 10-100x too slow for some people, while others are lost. There is clearly a failure in assigning people to the correct course level (or offering courses at appropriate granularity), but the more scalable thing I see is offline learning where you first check out slides, then check out accompanying documentation / videos, then check google or IRC, and as a last resort you launch the nuclear option of stopping your life for 2-16 hours to sit in a room and learn synchronously. Is anywhere innovating like this?


I seriously have no idea what her point is. The exact same thing (people having no idea what is going on, lots of them too afraid to ask) happened in maths and biology class. That is what tutorials were for.


>If you don't do the reading and study the material you need to know before the class it's covered in, then of course you won't understand what the professor is on about and of course you'll fall behind.

I don't think I've ever done this aside from explicitly assigned readings for something like an English class. I've always either found the explanations given in-lecture on a topic the first time to be fully sufficient, or had to fill in a few things by reading the book after class.


Your point about responsibility of the student is fair.

On the other hand: https://www.google.com/webhp#q=define%20pedagogy

The teachers have a responsibility to teach, in the face of varying readiness for their teachings in their students. Any asshat can teach people who already know the material, but good teachers teach those who don't.


The responsibility goes both ways. If I'm teaching someone and he/she fails to show at least the effort to look up the basics and achieve them, I'd find it very condescending.

Sometimes like this the person just have to be honest with themselves if this path is really what they want and what are they going to sacrifice to achieve it.


While in computer science I don't have an issue to learn stuff by myself. In math and statistics, I need the context first before I can grasp what a written text about math and statistics really means.

A teacher can fill this gap. Yes as a student, you should do your best, unless classes are splitted by level you will always get this tension.


I have long chosen to own asking dumb questions. It's helped me, no doubt about it. This girl will go far with the attitude of looking to understand.


I don't see anything specially related to females. The author is just offering couching and suggestions like ask in class.


I do. If I as a male would pretend to be dumb in class, I doubt all males would jump to help me.


In my experience the response depends much more on the person being asked than on who is making the question. In general, the people who actually understand the subjects will try to help others, while those who are hiding their own ignorance will look down on whoever is asking "dumb" questions.


> I made the decision to raise my hand in class and admit publicly that I was completely lost. To my surprise, I found that not only the teacher, but also other students in class were eager to help and went out of their way to speak to me. So I decided that I would try the same thing in lab.

Nothing gets the attention of neck beards like a woman in need of computer science help.


Being unafraid to ask the 'dumb' questions is very powerful for anyone.


tl;dr claims to have a solution, writes 5 paragraphs about feelz


Literally see this every year in the lab


In the CS lab at my uni as well.


Man or woman, this is an awesome story.


Great post. You go Cat!


This isn't gender specific. As a guy I have worked in teams where asking for help is terrifying. To the point I stared at code for hours lest I ask how the uber-abstraction and hack soup worked.


Gender and race are hot-button topics because those who claim to be victims of discrimination always fall back to an impossible-to-falsify assumption of impure intentions, if not in the individual specifically, in the amorphous "institution" behind "institutional bigotry". Every time someone brings it up, the discussion is one person saying "I bet that wouldn't have happened if the victim were [white/male]!", another person saying "Uh, I think it would've happened", and the original person saying "Well you're just ignorant", and then a cacophony of voices supporting or opposing the side they're more inclined to agree with, seemingly never calling out the absurdity or futility of it.

This happened with me in real life when I expressed some questions about the veracity of the clock kid case to an associate. "You think that [being charged with possessing a hoax explosive device] would've happened to a white kid?!" - "Uh, yeah. I was almost arrested for installing VNC on the school computers..." - "That's such an ignorant white thing to say!" No way to win.

Maybe we can stop allowing these conversations here, because this is an infinite loop that I don't see us escaping any time soon.


> Gender and race are hot-button topics because those who claim to be victims of discrimination always fall back to an impossible-to-falsify assumption of impure intentions, if not in the individual specifically, in the amorphous "institution" behind "institutional bigotry". Every time someone brings it up, the discussion is one person saying "I bet that wouldn't have happened if the victim were [white/male]!"

At the same time I'm hesitant to dismiss all gendered/racial discussion. For example, I once had to deal with a female classmate being referred to as "woman" over her real name in a condescending manner several times by upperclassmen when trying to pursue a computer science degree. I'm pretty sure this wouldn't have happened if she was a white male.

There's a space for such discussion when people run into them because otherwise, what, we're telling them to shut up and not talk about their experiences as you seem to suggest?


"Uh, yeah. I was almost arrested for installing VNC on the school computers..."

Exactly. During my time, white kids were being kicked out of school for wearing trench coats (and getting their lockers searched). But race was never brought into it..and people don't really care because it didn't get you attention.

The issue isn't really sexism or racism. The issue is that many people don't really realize how abusive some groups of people really are....to everyone.

Back when computer science was an esoteric subject only studied by your stereotypical neck beard, most developers I met in college were not really interested in helping beginners, regardless of your race or gender. If you did ask a stupid question, it was often met with a condescending response and arrogant attitude.

The Internet made it better, because you could learn so much information, without having to deal with the crap.

Only now, that computer science is cool and anyone and everyone is trying to get into it for a high paying job, does the mainstream see the same issues that have been going on for decades.

It should piss anyone off that went through them years ago and nobody would listen..because they weren't one of the magical genders or races that instantly gets you sympathy.

On a side note, why aren't we going after the fashion industry? It's equally as abusive and if you are a heterosexual man? You will be pushed out pretty quickly.

Nobody truly wants true equality, they just want retribution for perceived injustices and the power to abuse others without any consequences. It's pretty evident from all these discussions.


There are plenty of things worth discussing that aren't falsifiable. There's also plenty of actual data related to those unfalsifiable anecdotes.

Individual instances of biased decision-making are impossible to prove, but that doesn't mean we should stop bringing up the possibility. I'm sure you check yourself against common biases when you think they might be relevant. Prejudice is a common bias, and we should keep talking about it.


We should keep talking about it, but there isn't much of an point when the discussion is limited to fit existing biases.

A while back I read a study that found that work culture inside a company is primarily made from gender culture if a single gender become dominant. The minority gender, be that male or female, then has to choose between assimilate or leave. Both men and women tend to chose the later option, which result in profession becoming more homogenic in regards to gender. Only work in professional environments where there is a fairly equal amount of both genders do unique work cultures become dominant.

But that model does not fit common biases. It models both women and men as pushing each other out and discriminate against each other. As such, we don't see such models being discussed, and we don't talk about it. The only model that fits in our existing biases is men as the eternal aggressor and women as the eternal victim, and there isn't much worth to discuss within that limited space that hasn't been discussed to death already.


This seems to be a case of the "all lives matter" fallacy. It's true that the men-bad-women-good bias is harmful. It just doesn't strike me as worth spending much effort on compared to the biases that are making our industry significantly harder for people to succeed in. I'll start paying attention to other issues when I can't remember the last time I worked on a ten person, single gender team of engineers.


Which results in the predictable model where the underlaying causes are ignored, the problem remains, and thus: There is common biases, but we should not keep talking about it if we aren't willing to fix our biases.

If you don't want 10 person teams with the same gender, ask yourself this: why has those men being pushed to work there and excluded elsewhere? Why are women being excluded to work there and pushed elsewhere?

The Swedish institution of education made a report that noted that as gender roles are being made more equal, work titles has gotten more gendered in the process. The correlation seem to imply that men and women project gender roles onto work as an reaction to having their gender roles being made less distinct in home and society at large.

The same report also noted than in 15 years of efforts to get women to take up more male typical classes like engineering, only very minor progress has been made. No efforts (their exact wording) has been made to make men go to areas dominated by women, and the report predict that no major change in gender equality in education is going to occur until both genders starts to compete to get into classes dominated by the other gender. You need to pressure both side at the same time in order for gender lines to break.

But again, people aren't really interested to talk about this since it doesn't match current biases. It easier to just assume that men are evil, women victims, and try to fix problems under those assumptions. Next time you say that "There are plenty of things worth discussing", here was a explanation why there won't be a worthwhile discussion.


Do you know what that report is called?


I bookmarked it, and I can post it tomorrow when I get back to that computer.


https://sverigesradio.se/diverse/appdata/isidor/files/95/618...

I can strongly recommend page 33 if you don't have time to read the whole thing. If you do have time however, it's references are as significant as the report itself. I also strongly recommend reading some anecdotal stories from people that are minority in professions where the gender inequality is 90%:10% and over.


In one of the places I have worked the majority of the programming staff were female. They said it had happened because women tended to stay whereas the men moved on. Interestingly, this then led them to actively recruit women because their experience was that they would keep them longer.

It's also interesting to note that the women could be very clannish leaving us males as isolated individuals.


I wonder then if you're suggesting that all discussions about the observation of impure intentions should be stopped? Did anti-universal-sufferage feel they were being accused of having impure intentions when they put forth their reasoned arguments? I think in some cases people are biased even when they come up with arguments they think make sense. I certainly don't think we should stop discussing those intentions.


>Did anti-universal-sufferage feel they were being accused of having impure intentions when they put forth their reasoned arguments?

Probably, and they probably didn't have impure intentions. Who are you to say no rational argument can be brought against the idea of universal suffrage? Surely our forefathers thought the argument was sufficient for nearly 150 years.

One may agree or disagree, but their ability to express their arguments shouldn't be stigmatized.


From my experience, it isn't subject-specific either. It's a more general thing along the lines of, "It can be terrifying to admit that I don't understand the basics of something where the class and teacher seem to be making rapid progress."

I have been in Chemistry classes where the teacher was solving problems with something like Dalton's Law of Partial Pressures, and I was too petrified to admit that I hadn't understood what a partial pressure was, let alone some law involving it -- i.e., I was a "dumb" guy in a chemistry class.

In my opinion, the one thing that can be done to stop this is stop demonizing people who don't know things and fully internalize the simple truth that everyone starts free of knowledge in this world.


It's really about providing the appropriate forums and helping people identify them. It's not really appropriate to waste class time repeatedly explaining concepts that 95% of the class already understands. If a student is struggling with this, they need remedial help, which can be obtained by contacting the professor directly during office hours/after class/however it works at your school, contacting a tutor, finding a study group or downgrading to a lower-level course, among other options.

A stray "Wait, what does that mean again?" is no problem and actually probably helps a lot of people in the class who are too shy to speak up, but you can't let class time be monopolized by slow students. The slow students shouldn't be ashamed and should go get the help they need, they just need to be directed to the appropriate venue.

The same is true in programming generally. We need to make it easy to identify the appropriate forum for the issue one is having and then we need to encourage them to seek resolution there.

A way to improve SO would be to make it more obvious that the only questions that should be asked should be questions that are not Googleable, give a link to a "how to Google for programming help" guide, and when questions that violate this rule get added, include a direction to a helpful beginner's chat room or something along with the closure message.


Yep, more people should Dare To Be Stupid: http://www.irregularwebcomic.net/1754.html


Are you sure you linked the right comic? Because it doesn't seem to have any connection to the topic at hand, or to what you wrote ("more people should Dare To Be Stupid"). Or maybe I just don't get it...


The relevant content is in the essay after the comic.

"That student is daring to be stupid. By calling attention to himself, he runs the risk that his fellow students will think him an idiot. But you know what? That student is the smartest student in the class. Because he doesn't want to be left behind, he doesn't want to misunderstand something, and he wants to know if that mistake is a mistake in the teacher's writing or in his understanding. That student, by daring to be stupid, assures that he doesn't end up actually stupid."


Read the essay under the comic.


Would you have thought it was gender specific if the title was "Being a 'dumb' guy in..."?


I absolutely would, if it included a line like "...the continued and constant emphasis in taking pride in failure is EXACTLY what men need to be exposed to in order to let down their walls..."


Yeah the title and the article expressly talk about gender.


The gender part of the article is about the author leveraging her knowledge to help her peers, but the bulk of the article is about how asking honest questions is not just okay, but highly desirable.


I don't think the title matters as much as the actual content. The writer seems to think her issues were quite gender specific, when they are actually what have happened to pretty much every student who cares more about what she/he actually learns than how the other people see her/him.


"I strongly believe that the continued and constant emphasis in taking pride in failure is EXACTLY what women need to be exposed to..."

I'm gonna disagree. It seems like you were so close to understanding "the secret sauce". I'll lay it out for you explicitly: Learning requires humility. You succeeded because you had the humility to admit you weren't understanding, not because of pride.


Breaking news: Woman realizes that she has to get over her own ego to admit difficulties and learn stuff, which is a good but obvious insight. However, she has not let go of her ego fully since she cannot prevent herself from letting her feminism flow into the blog post despite it being completely unrelated.


Please don't be uncharitable. This thread managed to be fairly civilized despite the strongly divergent views HN users have. Posting comments like this only tears the community back into war of all against all, and to quote my son from when he was two, "that what we not do".


My apologies. My affinity for sarcasm got the better of me. I will contain it in the future.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: