Thursday, October 14, 2010

The Social Network

I went to see The Social Network this week. Wiki says that no Facebook staff were involved, which is believable. Eduardo Saverin, Zuckerberg's "friend" who initially got into FB on the business side, was a consultant for the book , which explains why he is portrayed in the kindest way. The rest of the crew (aside from innocent bystanders) are skewered. BTW I put "friend" in quotes because the movie makes it doubtful that Zuckerberg ever had any real friends.

I'll repeat what others have said: the movie is thin, apparently largely based on transcripts from lawsuits. Zuckerberg is a one-dimensional character, portrayed as having zero self-esteem, craving approval, and emotionally stunted. His lack of an inner censor makes him seem a bit like an overanxious nine year old.

Aaron Sorkin wrote the screenplay. I have really loved his past work. I felt he didn't have the opportunity to really shine here, because of the nature of the plot (Ken Levine disagrees).

The movie depicts an environment that is steeped in sexism. Aaron Sorkin says the screenplay depicts the reality of the story. Here's a snippet from Sorkin:
I was writing about a very angry and deeply misogynistic group of people. These aren't the cuddly nerds we made movies about in the 80's. They're very angry that the cheerleader still wants to go out with the quarterback instead of the men (boys) who are running the universe right now.
This is recent history. Another reminder that sexism is alive and well.

It's unusual when a movie comes out where computer programming is a main feature. I wonder if the nasty culture depicted will turn off more young people considering programming as a career - men and women both. After watching the movie, you have to wonder about anyone who would consider that field an endeavor worth pursuing.

Tuesday, September 21, 2010

women in graduate degree programs

Given that the title of this blog is "Female Software Engineer," I feel that I am slacking in my commentary regarding women in the software development profession.

So here's a poke at that. (Via ComputerWorld) according to the Council of Graduate Schools,
Of the first-time graduate or doctoral students in computer and information sciences, 9,021 were men and 3,249 were women (in 2008-2009).
We should all pause here to consider whether this should be disturbing to us.

Here's another factoid to give us pause:
Of the 12,288 students counted as first-time graduate or doctoral students, or new enrollees, in computer information sciences, 5,266 were U.S. citizens and permanent residents, and 5,996 were temporary residents or students on visas.
That's a whole other can of worms.

Truth is, I can't really address these questions. I seemed to have a natural affinity towards computers as a kid. I learned about them from my dad. When he bought a kit to build a computer, I had fun helping him with it. I wrote little toy programs in Basic. I can't begin to tell you why, except that I think I had a vague ambition to write an adventure game.

But I never thought about going into computer science as a career. My first love was science, and I got a degree and had a short career in that area. During my studies I had to write thousands of lines of code; it was just a tool to get my job done. It was only when I decided to leave science that I considered software development as an alternative.

So here I am, a female software developer. I can't tell you why there aren't a ton of female software developers out there. I find it hard to believe that it's nothing more than culture. I happen to be someone who is not easily repelled by a culture that wants to send me packing (and CS does not present a happy smiley face to the world). I'm also someone who doesn't seem to be as sensitive to peer pressure as your average person (I'm guessing here, but I think it's true). That means I don't care how my job is perceived by others; what matters is how I feel about it, and since I feel good about being a software developer, that means I'm comfy in my role. Also important: I place a high value on intellectual activities (where did that come from, nurture or nature?). So I look for career options that exercise my mind.

I think most people (men and women both) are more easily daunted. Whenever the question "why are there so few women in computer science?" comes up, I think that another, very relevant question hovers in the background. Why are there so few people in computer science altogether? Talk to all the people who did not choose CS as a career, and you'll find the answer to why so many women do not choose it.

And why are 50% of our computer science graduate students from foreign countries? What's discouraging Americans from entering an ostensibly lucrative career? Do you suppose it has something to do with the way that American culture devalues intellectualism?

Thursday, September 2, 2010

old code: comparing string length with 0

Today, for the 100th time (I've been counting!), I encountered this snippet of code:

 String blah...;
 if (blah.length() <= 0) {
 ...


I've been wondering why blah.length() is being checked instead isEmpty(). (Why the string length is being checked for less than zero is a deeper mystery to me).

I dug into it a little, and it turns out that isEmpty was only introduced in Java 6, way back in 2006. Our code is really that old mature!

Wednesday, August 18, 2010

get rich quick!


graffiti moneybags / CC BY-NC 2.0
Originally uploaded by boozysmurf

I just discovered Hacker Monthly, "the print magazine version of Hacker News". Today I spent some time reading and enjoying some of the lead articles. Although, they tend towards the sensational. Here's a summary:
  • Lessons Learned From 13 Failed Software Products: Sweet! This is the kind of solid, real-world information that's so hard to come by. You can find tons of information about the guys who made millions, but what about those who did not? The latter are far more interesting, if you'd prefer to learn from the mistakes of others. At first I thought the article was about 13 failures of one particular person (woah!) but they're 13 separate ventures.
  • How to Become a Millionaire in Three Years: This article is about what you'd expect. I wonder if there actually are any rich people out there who got that way via get-rich-quick schemes? The article is not a scheme, mind you, rather a jumble of stuff that may be worth doing, but probably won't get you rich. (Probably nothing you do will get you rich, let's face it.)
  • Why I Quit a Six Figure Job: Is it sweeps week at Hacker Monthly? First you can "get rich quick," and next you're reading about the guy who "quit his unfulfilling job" - and you can do it too. I can seriously see why this stuff sells the magazine, but what good does it really do? It gives you the same little thrill you get from scratching a lottery ticket. A moment of hope and wish-fulfillment, followed by a minor feeling of disappointment. I agree with everything the guy says, except there's this:
    I currently have enough assets to sustain me for about two years, and there’s nothing that I want to buy, so I don’t need any more money.
    Well, I guess if you think you'll live longer than the next two years, you might want to put a little more thought into that. Ah, youth! Seriously, who doesn't want to do this? But is there anyone out there doing it who isn't at least partly nuts?

Beyond the lead articles, there were a couple more good items about startups. There was a kind of strange article about legal issues that seemed designed to scare entrepreneurs into hiring a lawyer first thing. And then I ran out of time.

It's a mixed bag. Maybe a little too fluffy, a little too much stardust in there. But I think it's worth the time spent reading it. I'll be back, at least for a while.

Saturday, June 26, 2010

momentum, sluggish, but there

In the good news, I managed to work on my own little side project for two evenings this week. I spent a pathetic two hours in total, but it's better than nothing.

I also decided to try out JIRA to track my progress. Not that you really need a bug tracker on a one-man project. But at work we use bugzilla, and I've heard some interesting things about JIRA and wanted to try it. And maybe keeping track of things this way will help to keep me motivated.

is there a ball and chain around my ankle? i didn't think so.

I've got a coworker who feels it's his responsibility to notify me when I haven't been at my desk; as if he wants me to know that he "caught" me being absent.

Note to coworker: I don't report to you, and it's not your business if I'm not there when you come over. And by the way: I also notice it when I come over to your desk and you're not there. But I don't inform you of it. I also notice it when I come over to your desk and you're playing video games, surfing the web, or chatting with your online friends. You may get a vibe of disapproval from me, but you don't report to me either, so I keep my mouth shut about it.

In fact, it's not a rare occurrence for employees to be absent at odd hours during the day. The company does not keep tabs on the comings and goings of the worker bees, at least not so far as I can tell. Perhaps they make the reasonable assumption that if you need to be out for a few hours during the day, you'll make up for the time. This is something that I like about the company.

Sunday, June 20, 2010

test development as mindless game


Today I sat in the office, working on a suite of TestNG tests, trying to get them to pass. The procedure was iterative. Run the suite and see a load of red bars. Explore each red bar to see why the test failed. Fix the problem. Run the suite again, being rewarded with more green bars and less red bars. Wash, rinse, repeat, until only green bars appear.

As I was doing this, I noticed that I get the same enjoyment from fixing tests as I do when scoring points in a simple, mindless video game. A really boring video game, but it's got that somewhat addictive quality. It's actually mildly entertaining if you read blogs between test runs.