Friday, August 29, 2008

Hello Seattle: GTAC 2008

City of SeattleImage via Wikipedia Here's what just showed up in my mailbox:

Congratulations! We are thrilled to be able to offer you a place to attend this year's Google Test Automation Conference in Seattle on October 23rd & 24th, 2008.

Thanks Google!!!

Reblog this post [with Zemanta]

Wednesday, August 20, 2008

Why Developers Balk at Unit Testing

Unit testing is a topic near and dear to my heart. It was at about this time last year that I was really getting myself up to speed with Google Testing Blog and also Adam Goucher's QA blog.

All of this reading and testing has pointed out some weaknesses in unit testing experience.

1. A developer sitting down to write code is less likely to unit test if they don't already have some idea of unit tests they are to write. If you're not working in an Agile shop, (let's face it, there are lots of us that don't) this can be intimidating. What if you don't write enough tests or test the right way? How should this thing you're supposed to write be unit tested anyway?

2. Code coverage tools, such as this post. So what are they really telling us about tests anyway?

3. How many tests should developers be writing? This question, above all, seems the least answerable. Google had a post that addressed this very question, and even their answer was a very murky, "it depends." They qualify their "it depends," by saying, "it depends on how much confidence the tests can provide in the face of changes made by others." Um...sure. Thanks for the really practical answer (not, really).

Now that unit testing frameworks are more fleshed out, I'd like to see more tools surrounding the tests that address these issues. Have interesting tools or war stories? Please leave a comment.



Reblog this post [with Zemanta]

Saturday, August 2, 2008

Classifier angst

The Bayessian Classifier is working...now I'm onto the Decision Tree classifier. What I noticed immediately is that these two classifiers don't really appear to be useful for the same types of data. Dr. Hung gave me several sets of data and I think that they would all be classified more accurately with the Bayesian Classifier.

Before I started this project, I hadn't really thought about how different data categorizes in different ways. The book I've been using for my algorithms is the excellent book by Toby Seagaran, Programming Collective Intelligence. In the chapter where he compares these classifiers, he points out how data can masquerade as meaningful data, but if it's being manipulated in the wrong way, will be meaningless. It's very important to pick the right type of classifier for the right type of data.

My challenge for coding the decision tree, is to code it so that I can use the iris measurement data AND the data in the Collective Intelligence book. My time is starting to run very short, but so far, the DTC's logic is much easier to code and test.

The categories for both of these have been pretty simple. I'm wondering what would happen if my categories got more complex.

Saturday, July 26, 2008

Another Semester to Bed

Games class is over which is why I haven't reviewed any games in the past few weeks. This does not, however, mean that I haven't been busy.

The end of a semester means that the focus of this blog will be changing again. I had fun blogging about games. I never seem to have problems criticizing anything, as my husband will be the first to tell you, so reviewing games came pretty easily.

For the next semester, I am expecting to be blogging more about test automation, semantic web and other topics that cross my path during my year of research.

Although my blog changes focus from semester to semester, I will say that I absolutely love using Zemanta. Ok, just let me go viral for a minute or two. Zemanta is a firefox plugin that pulls up pictures and links that can be added to a blog post with a click. I've been in touch from time to time with the guys who develop this app, and they really are a class act. I emailed them during my independent study in the Spring to ask about how Zemanta uses the Semantic Web. Their CTO sent me such a great letter about their technology and was encouraging to me about my studies. This Summer when I had to blog on Ning, I noticed that Zemanta wasn't available so I emailed and asked if there were plans. They had support for Ning available a few weeks later, and they emailed to tell let me know. Very cool.

I've gotten notes from a few people working on apps that I've discovered over the past few months. I wrote about Zemanta, above. There's also the emails I got from Pandora's team when I was searching for the band !!!...really, it's called !!! so you can see how this could cause problems. They were very interested when I told them I wrote a paper about their app. Lastly, one of the developers from Zon posted a comment to my somewhat lackluster review of his game. It just goes to show how badly developers want their applications to be useful for their intended audience, and how some of them are really starting to hit the mark.

Over the past year, I've worked on some very complicated projects. In the Fall, I finished up my distributed querying application and right now, I'm finishing up the epic saga that has been my artificial intelligence project. At this point, I can honestly say how deeply one can feel invested in a development project. Even though the projects that I do are just for a grade, I get so emotionally attached to them. I can only imagine the attachment felt by those who are involved in the apps that I've written about, and these apps are someone's livelihood. It's very inspiring to me to see people taking such risks and such care with what they do.

Cheers to ya!

Monday, June 30, 2008

Bookworm from Popcap Games

It's unbelievable just how happy Popcap Games makes me. I've blogged one or two of their games before, but I'm not sure I talked about just how much I like Popcap in general. Their games are so unabashedly casual. If I want to play one of their games, I pick one, read through rules that don't even take 30 seconds to learn and click play. They always work, they are always fun and there is never a gun or semi-naked girl in sight. Thanks PopCap!

Onto their game that I played this week:

Bookworm is a word game involving a grid of letters. You look at the grid and click on letters that make a word going in any direction. Once you've selected letters and hit the "submit" button to submit the word, the letters disappear, rearranging the grid. Words have to be at least 3 letters in length, and you score points based on how long the word is. My longest word was Foxtrot. Every so often, a flaming letter will appear. If you can't use that letter by the time it gets to the bottom of the screen, the game is over.

I enjoyed this game because I had to be creative with the words I was thinking of, but it was still easier than scrabble because you're not having to fit your words in with other words. It was also fun to be able to connect letters that were adjacent in any direction. Some words were letters I connected that were in a circle, others were backwards and some where diagonal.

There was no timer in this game. I enjoy games with times, it always gives a game more of an action element, but not having the timer in this game allowed me to really ponder the letters in the grid. This game not only stimulated my creativity but was also a nice game for de-stressing.

Sunday, June 29, 2008

Ayiti:The Cost of Life

This week, our assigned game was to pick anything from the website Games for Change. Games for change is a non-profit group that works towards the goal of creating "socially responsible games." Ok, I hear people groaning about "socially responsible"..."politically correct"..."WTF"..."Who's going to play that"...and so on.

Here's why these games are important and need to exist:
Remember playing Oregon Trail in grade school? Ok, maybe you don't, but I'm guessing that at some point in your K-12 experience you played some kind of game that was supposed to teach you something. These games about life in developing countries are a NECESSITY for teaching bored suburban kids about places in this world where you don't get three meals a day or Christmas presents or even antibiotics when you are sick. Games like this give us perspective on why someone would risk their life and travel to this country illegally in order to keep their family alive.

That said, this was a sobering game to play. The goal is to keep the parents of a family of 5 people alive through 4 years. You have to decide who goes to school, who stays home and who goes to work. There are certain obstacles for making choices such as the amount of money or education you have. If you want the mom to have a job as a secretary, she needs to have some education, but sending her to school means that there will be less money for food. There are hurricanes, and it's very easy for people to get sick. This game has very few happy endings, but shows the player the trade offs that must be made if you are trying to raise a family in Haiti.

I found the game strangely addicting. I so wanted to keep the children alive, and they died every time I played. Technically, I did win the game one time, but it was a hollow victory. Only the parents were alive and even they were in poor health. I knew that the game was going to be depressing, but what I wasn't expecting was just how much I would want the family to survive. This game, whether intentionally or not, does a terrific job of exploiting a player's hope that they will win.

If I were a social studies teacher or a history teacher, I would require students to play this game just to give them perspective. In my experience, kids will laugh and say something is really stupid, but in the end it does make a difference and they do learn the lesson whether they are willing to admit it or not.

Because of the nature of the game I've reviewed here, I'm including a few web-sites for charities that provide aid to developing countries:
The International Rescue Committee
Unicef
Friends of the World Food Program...had problems with the tag for this so here is the url: http://www.friendsofwfp.org

...

The World Ends With You for Nintendo DS

The World Ends With YouImage via Wikipedia

The World Ends with You is currently a very popular game on the Nintendo DS console. It is an action RPG, and its plot centers around the Japanese youth culture typified by the Shibuya District in Tokyo. The main character, Neku, is a headphones-wearing kid who inadvertantly finds himself playing "The Reapers Game." In this game, the player must stay alive for 7 days while performing different tasks. During each task, a countdown timer appears on Neku's hand. The tasks involve using powers that are tapped by wearing different types of pins. Neku also has a trusty sidekick in the form of Shiki. Shiki is a young girl who has also been sucked into the game.

This game is fascinating for me in its presentation of Japanese culture. I'm sure there are a lot of insider references that I didn't get, but despite that, it's always fun to try on a different culture especially in the context of a game. This is one of the reasons why I was so obsessed with Shenmui when it came out in the late 90's.

The game play was fairly easy. Since it's on the DS, there's no need to remember which button to press. The different powers are unleashed by using different types of strokes with the stylus. This is similar to drawing the different shapes in Okami. It also appeared that players could possibly control Shiki and Neku at the sametime on the different screens, but I didn't really explore this capability.

There was one problem with the gameplay that deserves mention. The game introduces how to use the different pins by having the player use them to fight some monsters. Unfortunately, The screen explaining how to use the pin appears simultaneously with the screen where you fight the monsters. This means you have take some hits while you are reading about how you are supposed to fight them. There should be some delay between the explanation of how to use the pin and the actual fighting. Maybe there's a pause button that I missed. This would easily fix the problem.

There was a lot of dialog in the game, but I was able to click through it at a fairly rapid pace. Dialog always seems to be a challenge in these games, and I don't see why. It's not like this is a movie. I'm not expecting "scenes." It all goes back to high school writing classes. (Notice that I didn't say "English" because good writing is the same no matter what the language.) Is the dialog moving the plot forward? If it's a game, the gameplay should move the plot forward. Otherwise, dialog is used to develop a character or a relationship between characters. There was a lot of bickering between Shiki and Neku that seemed redundant to me. As I said, I was able to click through fairly rapidly which I did because the dialog had very little substance to it.

On the whole, The World Ends With You is a very interesting and fun game with a great combination of Japanese culture and easy Nintendo DS gameplay. I can see myself playing this on Marta for the next couple of weeks. The promise of games like this is why I bought the DS when it first came out. The fact that you have to draw to win a game is so refreshing. This game and Okami are quite similar to me because of the way you play the game and that the game itself is so based in Japanese culture. The difference is in the parts of Japanese culture which are examined. These games, to me, are somewhat anthropological in the way they bring the world home to the player. The next game that I will review, Ayiti: The Cost of Life, also falls under this umbrella, but in a very different way.



Zemanta Pixie