As a lady with two postgraduate degrees in computing science, who has a full-time occupation as a developer and Microsoft SQL Server certifications - I hope that I do qualify as a lady programmer. If not, please tell me why.
I think that the reason there isn't more women in IT generally is because we get siphoned off along the way - either by being directed into softer roles by management, or by customers not wanting to work with you simply due to your biology.
I think also that women are put off by a largely male-dominated environment since it is harder to for a lone woman to work in, particularly if there are some colleagues/customers who are, shall we say, very interested in your physical attributes and appearance. It's really difficult to listen to lewd comments day in, day out, and it is even harder if your customer are doing it. I don't have this in my present role so I'm lucky, but I have had this experience and it is very isolating. I don't dress in a way that invites attention, not that it should matter.
I think that, since people don't expect you to have technical skills, there is sometimes no management support for women programmers. For example, in previous roles I have been directed towards a 'softer skill' job rather than a more technical one. When I have questioned this, the reason I get back is 'some customers don't want women to do programming work'. Additionally, customers don't always want to be speaking with a geek with no social skills (you're not all like that, but face it, there are some geeks you would never put in front of a customer!) so I've been put in front of the customer instead. Since you're actively not being exposed to technical project work, it can be deskilling.
As a customer-facing consultant, I have been asked to be replaced by a male colleague because the customer's internal IT team do not want to work beside a woman. I have had experience where brand name companies have said that they don't want a girl IT technician because 'it would upset the male IT team members and the existing equilibrium of the internal IT Team'. What happens then is down to the management. I have had supportive managers who have said 'well, if you're going to be sexist, we don't want your money since your request probably isn't legal and she is our best programmer'. On other times, more often a man does go out to do the job, with support from me 'behind the scenes' because I have more experience. So, I don't get credit for my work and nothing changes.
If I do get past the door, then sometimes my work can be actively sabotaged e.g. my work deleted, files removed and replaced with rubbish and so on. One customer I had were excellent - it was the customer who spotted that a contractor colleague was sabotaging my work, and they said that they had no room for sexism in the workplace and threatened to stop the project until my company had sorted him out. Needless to say, he was questioned- when asked why he did it, he said that (wait for this) 'that he did not like working for a senior woman'. In the end, he was taken off the project, which I then completed. This sort of thing just puts women off, and I'm very glad to have had a good reputable customer who defended me.
To summarise, I think women don't program because there are too many social obstacles along the way. The earlier comments about women not being able to think logically are simply a sideshow, which directs attention away from the fact of how women can be treated and sidelined in the workplace. You would not get away with saying this sort of thing about people's colour, creed or religion - so why about biology and the role of the individual? As an experienced, bitten forty-year-old-ish programmer, I feel I've achieved a lot of things I'm proud of, and the fact that my programs are still running at customer sites should speak for itself... along with the fact that my blog has only ever attracted questions from guys who need help.
We're individuals with different skill sets and experiences, and for people to dismiss you for one simple criterion alone means that they are the ones missing out on an opportunity.