Wednesday, September 12, 2007

Help You, Help Me

posted by Scott Hsu-Storaker at 5:57 PM

Help Yourself
I have an interesting story to tell you, something that really surprised me. Last night I was at the grocery store, and, being in my usual I-have-three-kids-and-I-am-tired-and-in-a-hurry state of mind, I rammed my cart into a display of plastic juice bottles. For a moment I thought I was fine, then at the opposite end of the display 2 cartons, about 30 bottles, rolled off onto the floor. My first thought, being a parent, was "Oh man, now I have to pick this up." But then I thought, "Wait, when you spill things at a store or restaurant, someone who works there will come around and pick it up." As I glanced around quickly to see if someone was going to do that very thing, I realized that was just irresponsible, the bottles did not break or anything, so I just started to pick them up. Then a most unexpected thing happened, though. About ten other people bent over and picked them up with me, finishing off the task in about a minute. I imagine that if I just stood there looking helpless or tried to ignore it that the most I would have gotten would have been a few nasty stares. Instead I got a real world example of something I see time and time again on game development message boards. People are much more willing to help people who take the effort to help themselves first.

How many times have you seen it over at gamedev or garagegames? Someone new to the community plainly says "I want to make the next great MMORPG, I don't know what to do, help me!" The charitable responses are usually of the following types: "Read the stickies"; "Search the forum/web/google"; "Can you be more specific?". more commonly, these messages are ignored. At the worst, it turns into a festival of flaming -- no need to describe this in detail, you've all seen it. Now, think about a new person who says "I read this, I searched there, I get it mostly, but I am missing one important thing". That person will get a good response. Sometimes four or five people will post immediate and useful information. Approaching a call for help from a position that one is competent, resourceful and thoughtful yields far more help than someone who appears needy, lazy and careless.

This is a great reminder to something we all may already know, an extension to the golden rule. Help yourself first and others will be more likely to help you.

Helping Others Helps You
It is quite simple to look at the work we do here in the coop, the work of giving art away, as an act of altruism. That the very act of making our art free is the same as making it worth nothing. I feel strongly in the contrary. Yes, offering help to others, in our case by offering game art to indie developers, does give me that warm fuzzy glow that comes from receiving admiration and respect from those I respect and admire. But, it's more than that. I do receive personal gain from what I do here. By fostering the community that I believe in passionately I am making that community a little bit stronger with each little bit I put into it. My hope is that this indie game dev community can grow large enough and strong enough that it can support a bunch of little indie game artists like me and my friends. Basically I am helping make an industry that can hopefully one day contain my dream job.

Here, I have a story for you that may illustrate this. About six years ago, I started up a site to sell self-published comics, similar to the kind that my friends and I used to publish back in the early nineties. After about six months, it was doing reasonably well with great potential for growth. Eventually I shut it down due to demands from having a second, and then later, a third, child. At the same time, a friend I met through this community, Rick Bradford, was turning his comics news and reviews blog into a store as well. At the time, there was not a huge market or customer base for selling these types of hand made books on an ecommerce site. But now he is doing well enough, between his store and a number of similar endeavors, to be working on comics full time. This is fantastic. 15 years ago, when we both started loving these types of comics, there was only a small, or at best, decentralized market for the work and selling something on a computer was barley even thought of. Many years of a handful of people like this nurturing the community out of sheer love of the medium has brought us to a time when those who love something the most can work on it as much as they want.

In short, reminder number two is this. Helping others helps you, too.

Help Us
Before I finish I do want to say that, yes, there is a goal to this post. I am here to ask something I don't often ask, and something I have not asked for in any kind of a concerted fashion before. In short, I am asking you to help us. Come join the coop. We learn, we share, we create together and, more than most virtual teams, we get stuff done. I have been extremely lucky to work with the great artists who have stopped in and contributed and I would like to share that with any of you who want to join in. Now is a great time to jump in. We're ramping up after a hiatus. We're building new teams. We've been working on new stuff and we're ready to have new artists join in. If you would like to know more, then check out our new Beginner's Guide to Joining, join the forums and do some work.

And, if you don't want to join a group like ours, that's fine, go ahead and give it a try on your own. Do something to contribute to the community -- it will help all of us and it will help you.

Stay free
~shs~

Monday, September 10, 2007

Thousander Club Update -- September 10, 2007

posted by Scott Hsu-Storaker at 11:29 AM

Getting back into the regular habit of posting these updates. I'll get some screenshots up this week -- we're getting busy in the forums.

GBGames' current year hours (8/6) -- 146
GBGames' total hours (8/6) -- 409.25
Scott's current year hours (9/10) -- 137.5
Scott's total hours (9/10) -- 410.5
Scott's 1000 biking miles (9/3) -- 488

Stay free.

~shs~

Wednesday, September 05, 2007

Thousander Club Update -- September 5, 2007

posted by Scott Hsu-Storaker at 5:03 PM

I am slowly creeping back towards being more regular in the hours I devote to working on art. From my experience last year the best solution to getting work has been to be consistent. A little bit of work everyday has yielded far greater results for me that doing work in sprints. The bicycling is coming along very well. At my current rate of biking to work every work day, I will be able to miss about 10 days and still make it. I hope the rain holds off until the usual time of February and March for the Bay Area! Gianfranco recently moved, so his reporting is out of date, but he has finally moved ahead of me and is probably now WAY ahead of me -- even after starting three months later than me last year. I'm looking forward to crsossing the half way point.

GBGames' current year hours (8/6) -- 146
GBGames' total hours (8/6) -- 409.25
Scott's current year hours (9/3) -- 133.5
Scott's total hours (9/3 -- 406.5
Scott's 1000 biking miles (9/3) -- 464

Stay free.

~shs~

Tuesday, September 04, 2007

How Long Does it Take Anyways?

posted by Scott Hsu-Storaker at 1:24 PM

I've been thinking about time recently. Partially, it is natural -- time plays a big part in my day job. I keep projects on deadline and I estimate how long projects should take. That sort of thing. But I've taken a much greater interest in understanding how all the little grains of time add up over the day, how all the little bits of sand become the massive waves of dunes. I think what sparked my renewed passion in this myopic accounting of seconds and minutes is a project I worked on recently. There was this certain task that had to be done on a regular basis, a fairly mindless task but it needed to be done with enough concentration so as to avoid stupid mistakes. Basically it amounted to an hour of design work and five hours of copying and renaming files. Naturally my mind started to wander and I started calculating how long each keystroke, each renaming, each click was taking. I ended up figuring out a solution that cuts out over four hours from the process and that sort of success has gotten me to start thinking about how long tasks in other parts of my life take.

I've been reading with interest a discussion being had over at the Freegamer blog and related forums about making a centralized project for the creation of a library of free game art -- kind of like what we do here, but multiplied by n. I would love to see something like that take off. There has always been a tough balance to strike around here with our project. We want our project and our team to grow because with growth comes excitement, momentum, and a sense of doing something greater than ourselves. But, there is also the urge to keep it small, because with smallness comes friendships, independence, and a sense of working on something as close to our passions as we can get in public. I've probably said it a thousand times in this space, but I'll say it again. There is a point at which there will be enough free game art in this community that a developer could get a long way towards reaching the first goal in creating a whole game -- a kind of critical mass if you will. I've always gone for a thousand as an even number. A thousand generic environment models plus one great developer plus one great artist to create custom artwork can put together a valid demo/beta/prototype. And if someone else out there is going to help lead a community effort to bring it all together, then, well... yeehaww! Go to it!

Which brings me here. I got to thinking about these things together -- time accounting and a large community effort. So, I am going to throw numbers at you. Yes, even in some detail. I hope I don't lose many of you, because I often get bored when people start spewing numbers, but I do think there is some sort of point at the end of this, my thoughts on how something larger than we have here now could possibly be run. It might make sense to apply some of this thinking to our own projects here, even. Up to this point our group, and our output has grown and changed very organically over time. For any artist coming along offering help, my one main direction has always been, "Just start working on stuff". This works great for a while, but without my constant attention, the organic growth tends towards being fallow. It is something akin to a gardener standing in the garden with a hose, watering the seedlings and saying out loud, "Grow". Things do grow and in some quite extraordinary ways. But as the team matures and the list of projects grows and production of art goes in all sorts of wild directions, it does get out of control. Sometimes this is good -- projects like this attract the type of people who inspire and create beautiful art. Sometimes it is not -- projects like this tend to drive away hardworking and productive people who would keep projects on track and spirits high as everyone sees the results of all their work coming together. Any project massive enough to say it can organize one community (artists eager to donate art) and supply another (developers looking for quality free art) needs to think about how teams need to be structured and a big part of understanding team structure is understanding how things get done, who does those things, and how long these things actually take to get done. And I am going to talk a little bit about what I have learned over the past two years, working with a flexible team of 20 artists, supplying models to over 5000 developers, wrangling over 200 models and helping the flow of over 500 man-hours.

So, here come the numbers.

I looked at the Gilman Street project that we completed last year. It was in many ways the easiest to examine since I was involved with all steps of the process and did about 50% of the work myself on it. So, accounting for time was a matter of looking over my Thousander Club records and extrapolating other artists' time based on forum postings. Here are some basic numbers:

42 complete models
320 total man-hours

Given that I edited out a few at the end, I am going to go with a rough number for the following:

7 hours per complete model

How does that break down?

1.5 hours -- Modelling and unwrapping
3 hours -- Texturing
1 hour -- Exporting and file wrangling
1.5 hours -- Man. & Misc., includes project management, team communication, finding source material, recruiting, anything else miscellaneous.

I've broken it out this way to coincide with each of the discreet steps at which files can be passed from one team member to another in a manner that feels complete. It also works out that each handoff point matches pretty well with standard skillsets of modeller, texture artist, technical artist, and management.

My next step is to then apply this accounting to formulating a proposal for what would be an ideal team structure for creating a massive library of models. At some point I may actually finish an article I have been exploring for the past year about Brooks' Law and how it applies to the sort of virtual game art teams similar to this coop. For now, in short, my conclusion is that small teams are best for creating work in the way that we have done here in the coop. My calculations say that anything over seven team members working on any one project starts to produce a state in which each person added makes the team less productive. Five may actually be a more ideal number, but given that real life has a way of knocking people out (see my last ten posts), I say seven would be a better starting point.

So, let's try this out for size. Let's make a project team that consists of the following members:
2 Modellers for modelling and unwrapping
3 Texture Artists for texturing
1 Technical Artist for exporting and delivery of files
1 Team Facilitator to handle all the team management
1 Floater to help the team facilitator and to fill in the gaps on the team

How does that sound? What does this team accomplish? Well, if each person on the team works five hours a week, that will net a content pack with 50 models in a period of 10 weeks. If each person works 2-3 hours per week on the project, a content pack will be done in under 6 months.

For a team like ours, if we get larger than we have been, it might or might not make sense to split out in teams like this. For the Gilman project, which tooks 18 months to complete, I filled more than one of these roles. I was, in effect, 1 modeller, 1 texture artist, the technical artist, the team facilitator, and the floater. Maybe for a team like ours, which is small by its very nature, this sort of flexibility is better suited to us than grafting on a layer of structure. For contemplating a massive project like a community media project, though, with potentially thousands of elements, I think it makes a lot of sense. Expecting a crowd of people, each one an artist with a unique style and a partial skillset, to just drop off whatever they have made in their spare time with little oversight is an invitation to chaos. At best, with the efforts of a few dedicated facilitators, the mass of work can be wrangled into some sort of coherency. But, having been one of these central faciliators in the past (a whole separate story), I know that the sort of effort needed to rein it all in is taxing, unappreciated, and is often met with resistance and spin. In short, it is not a position to stay in for long and any lapse in the continuity of the main facilitators' presence results in a strong blow to the project.

I propose, either for project like a large community media project or for the coop if we grow that large, that an approach of creating multiple small teams brings the best of both worlds. The team dynamic can help create work that is better than the work that any one person can accomplish, yet a small team is ideal for creating work that is cohesive and focussed.

I say we all throw a party when we reach a milestone of 1000 original models for the community!

Stay free
~shs~