The last Collab that we did was back in August or September or something. So it's been a little while.
But I wanted to sort of outline what we did last time around for people curious about how this collab thing might play out.
Keep in mind that everything is changeable. I'm quite certain we'll want to change at least something this time around. So we'll just have to figure it out as we go. But at least this is a starting point.
So here's basically what happened…
1. A few weeks in advance, we had people sign up. This way we knew who would be joining us, and people could clear up their schedule.
2. We picked out a game to clone a few days in advance. (I still highly recommend we pick a simple game or part of a game to clone. It will make life easier for us.)
3. A few days before, I did a crash course training via Twitch on how Mercurial/TortoiseHg/BitBucket worked so that we could all share code more easily.
4. The collab was officially scheduled for an 8 hour block on a Saturday, and since there were four of us and we were all in the USA in relatively similar time zones, we were all able to just work together without any real problems. If we have people from Europe or Asia or something, we'll need to have multiple teams or something. I don't know right now, but we'll figure it out.
5. We all got onto the chat room here on the website, as well as a voice chat server. Voice chat was nice, but that didn't work for everybody so we still did a lot in the chat room here.
6. I spent the first 1.5 hours of our 8 hours trying to put together some basic core code while everyone twiddled their thumbs. I'd like to fix this somehow.
7. I spent the next 1 hour explaining how that basic core code was intended to work, we came up with a list of tasks to work on, and people all picked something that they wanted to work on.
8. The next 3.5 hours went much better, with everybody working on their own little piece, then moving on to the next piece.
9. Our 8 hour time block ran out and we stopped for 20 minutes and did a little retrospective on what worked and what didn't work.
10. Some people had other stuff to do, and so they left at this point.
11. Some people kept making changes all evening as well as Sunday and into the week.
I actually think I had more fun making this game in this collab than I did in the month-long competitions. It was fun to work with other people on these things, and the very short deadline meant (a) we had to focus to get stuff done, and (b) that we were free to just be done with it when the time ran out, without a massive commitment.
I'd definitely like to find a way to make sure that everybody is actively doing stuff the whole time. The first couple of hours wasn't a lot of fun for people because everybody else was just kind of sitting around doing nothing, while I felt a ton of pressure to hurry and get to a point where others could do something useful.
I don't know what the solution to that particular problem is yet. Maybe I should step back a bit and not try to build the core. Heck, maybe I should step way back and just plan on helping people with their problems, as well as being available for design discussions, etc. and not so much writing a lot of code myself. Maybe it gets solved by having more smaller teams. I don't know. I'm open to suggestions…
If we've got people from around the world, we'll have to come up with a way to make the different time zones work. That might mean running two projects 12 hours apart, and letting people pick between the two (or doing both). We'll have to figure that out too. (But that's a good problem to have.)