Archive for April, 2009
Herding Cats
It really is as difficult as people say it is.
Well, in the metaphorical sense it is. I’ve spent the last school term in two group projects, and have I ever learned a lot.
First, a bit of overview of the two projects.
The first is a group project for the Games in Society class (COSC 419d at UBC-Okanagan). We have to make a full game, complete with a concept document, design document, and finally a full pitch ensemble. We have to use the BioWare Neverwinter Nights Aurora Toolset. My complaints about the toolset are an entire other post. We chose to make Basilisk, a tactical espionage game in the same vein as Metal Gear Solid.
The second is a group project for AI (COSC 322 at UBC-Okanagan). We have to program a game-playing AI that connects to a centralized server, and plays the Game of Amazons.
The team make ups are pretty interesting too. For Basilisk, I’m working with a guy named Josh, a fourth year student, and David, a 1st year student. We all have our own strengths and weaknesses. I’ve found I can’t have David do anything design-wise, writing, or anything like that, but he is very diligent and turns in good code. Josh is self-motivated, and very smart about his time, has some good design sense, but can be uncommunicative. I myself can fill all the roles as necessary, and have taken the job of producer on.
For the AI course, Rachel is an Engineering major with a minor in computer science, and Jason is a major in Math with a minor in computer science. Rachel has some good skills in managing people and tasks. Jason is extremely brilliant and focused when it comes to math.
One of the big lessons I’ve learned is to establish good communication habits from the start. Because Josh is so uncommunicative, I find I worry a bit about his progress, if he needs help, etc. In addition his svn commit messages are blank. If I had, from the start insisted on constant communication, things might be easier now. Good habits must be started early.
This is backed up by what I learned from the AI project. Because both Rachel and Jason don’t know SVN we decided not to use it. Big mistake. So while Rachel and I researched the state of the art for Amazons’ AI techniques, Jason was working on the code. However, almost two weeks ago, Jason disappeared, fell off the face of the earth, with all of our code. We didn’t hear from him. He didn’t respond to emails, and he didn’t show up to class. So we lost 13 days of progress on the AI. He finally came back today, tells us he and his computer were both sick.
Lesson learned. Insist on SVN, in case something happens to the computer or person, no matter if they know it or not. I will insist on SVN even if its not code, but instead a group presentation. Never, ever, ever rely on one person solely.
A friend of mine in class, in Human-Computer Interfaces(which I am not taking yet), had a similar event happen to her. A member of their team insisted on doing their project in Flash. But no one had flash, and so he reassured them he’d take care of everything. He ended up dropping the course last week, essentially leaving the group high and dry with a 75% completed project done in flash, which none of them actually know or have.
I’ve got more stories, I promise! But these are just the main, stand-out, wish-I-do-things-over lessons I’ve learned.
Comments are off for this post