Not Smart Enough for the Room

I recently attended a group meet. The group is a pack of programmers from around the county that meet up every month and discuss issues and industry and so on. Each meet they decide on a small project together and work through it. This project can be anything from Programming Kata ideas to a full blown development project.

This appealed to me right from the start. It’s a chance to associate with people in the industry, do a little networking and maybe learn a little something. The meet isn’t that far from me a few of my lecturers attend and have been encouraging me to, so I decided to go.

I can honestly say that I’ve never felt so intellectually inferior in my life. Some of these guys are the people that the people I look up to, look up to. Every time I spoke up I regretted it almost instantly. My input was lagging and often needless, responded to with blank stares and patient slowly spoken sentences. I’m pretty sure that everyone in the room actually started dumbing down the language toward the end.

One of the highlights of the evening was when a team member from a company that had recently declined me for a placement came in. This team member then proceeded to talk about the poor quality of programmers they have had applying this year, my interview was even brought up as one such example.

By the end of the night I was drained and depressed. I felt like such an ameteur and well, like an idiot. Unworthy of referring to myself as a member of their industry.

I’m going to keep attending. I’m aware that I’m naturally very paranoid and have never been very good with those types of situations. I’d like to think that soon I’ll do better and that’s not going to happen if I run away screaming due to my own insecurities. I am just a student after all and all of these guys are seasoned veterans. They all seemed like genuine, nice, very smart people and I think in the long run it will be good for me on a number of levels. In fact, I learned a lot while I was there. I’m a big believer that if you truly want to get better at anything, spending as much time as possible with the masters is the best way. Coming away from the meeting feeling 2 inches tall is just an indication that I’ve still got a lot to learn. I’m going to be coming home from the meets with a lot of homework for quite a while.

Being The Boss.

21-01-13

I’ve got a module this semester where in, we’re to work as small games companies. It’s straight forward enough, the class of 30ish students has been split into two teams of ten and we’re using the Cry engine and Scrum to create one prototype game each. The game has to be a FPS zombie killing game, multiplayer optional.

Now, in that we’re supposed be working as a games company we were all to be given roles based on skills and personal preference. These roles were to be given out by the company producer, an elected executive type role, basically the producer is the guy in charge. This role has real power in the module, they manage the team, make all the final decisions about the game and if necessary, discipline team members. The producer can actually have members of his team kicked off the module if it’s deemed necessary.

I’d put my name in for producer. Thinking that, if I got it, it would be good experience relating to my plans after graduation, I also thought it would be nice if I was actually put in charge of a project by my peers instead of just assuming the role.

The campaign was short, we stood in front of the class and presented our fitness for candidacy for 2 minutes each. I’m not well known at the university and I don’t even think I’m well liked, I have a habit of winding up total strangers and openly mocking design students, many of whom were on that module. I screwed up my ‘speech’ delivery pretty royally and made myself look a real idiot. But when the votes came in I (having snuck a peek at the count) was on top… oh… goodie.

So now, here I am leading one of three teams in making a game from the ground up. We’re using a commercial grade engine so it’s not nearly as much work as it sounds, but there’s still an awful lot to do, especially for me. I’ve got 10 other students relying on me to get a good grade in this module, I’ve got to manage their time, their tasks and the quality of their work. I’ve got to organise and lead regular meetings, orchestrate documentation and be held accountable for any and all the problems. I’ve also got to track it all and report on it. I have a lead artist, designer, tools developer, scripter and 6 team members assigned to various areas. In all I have 2 game designers and 8+ programmers, I’m still waiting for a couple a stragglers to be assigned to my team. All looking to me for decisive guidance and support…

What have I gotten myself in to?

Group Work

This post may come across as whiny, it’s really not meant to be so, I’m just trying to document the entire experience so that the lessons learned are more clear.

This semester I had the pleasure of a group assignment. This particular module awarded a great deal of freedom in the assignment and looked to be very very fun. I was excited about this class.

I was given some advice earlier in the year on group work, that was a few items that are roughly as follows.
1. Find a group of good people, not your friends.
2. You’re going to get roped into being the team leader sooner or later.
3. Don’t forget that others struggle with this stuff more than you do.

The assignment can be summed up as this; as a group make a game engine and use it to make four different genres of game to demonstrate the engine. Awesome.

Firstly there was the division of work.
We talked and talked about what kind of games we wanted to make in the hopes that it would give us an idea of what types of engine components we needed. 2 weeks of these talks got us no where, so it came down to me to make the decision for everyone.
So I decreed: “I want AI, you do physics, you do graphics.”
“But I don’t want graphics.”
“Fine I’ll do graphics. You do physics”
A little time passed and I actually wrote a working tile engine for the game before.
“I can’t do physics I want something else, but graphics is too easy.”
and so on.

The end resulted in me on physics, him on AI and him on Graphics. But surely the more astute of you have noticed that me, him and him only amount to three, and I mentioned four before.
That’s because another ‘friend’ found himself without a group. So me being the charitable person I am had suggested that we wouldn’t have a problem with him joining our group. He was a sharp guy, if a little unreliable, very unreliable… What the hell was I thinking? I regretted this decision the moment I spoke up. Having this guy in our group could only mean disaster…

So then, what should the new guy do? Sound? No too easy. Physics? No too easy (thanks). I want to do a lighting engine. Great, it wasn’t a crucial component to the engine and if he finished, it would be a cool effect.

The weeks went on and our graphics were finished in an instant, well done you. We had a tile engine and a screen manger and some basic artwork. Meanwhile I’d created some of the framework of my physics and got a particle system working pretty quickly.
More weeks rolled by and I worked and tuned my physics and started working on collisions and all that goes with it. All was going relatively well, except that guy number 4 vanished. He stopped attending classes, didn’t so any work, wouldn’t answer messages, nothing. So we counted him as lost and resumed as a three piece. Or so I thought.

Week 10 rolled up, two weeks to go before christmas break, 4 weeks before hand in. I proudly finished my physics engine and started working on my physics based game. The graphics stuff still lay there, unchanged, no sign of AI.
Week 12 came around, it was christmas break and I’d finished my game, I had no more work to do…
First week of christmas break rolled by and there were quite a few premonitions of work but none actually appeared. Second week is when suddenly my team burst into a flurry of activity. Guy number four appeared out of no where with a complete lighting system, which I greedily incorporated into my game, and then he vanished again. The graphics stayed the same and still no sign of AI but I was assured that the work was being done.

3 days before hand in work started to appear, first part of a graphics game and some additional features, then some AI that didn’t work, but would eventually. Oh goodie. I was bombarded with questions and problems and ideas, none of which I had any time for but couldn’t ignore because my grade was on the line.

I’m happy to report that we made hand in with a working game engine, 4 game demos and a report. It all looks like it was put together by drunken monkeys. I’ve asked for the project to be graded on an individual basis in hope that I can save some of my marks but we’ll have to wait and see. The entire thing was very frustrating for me and while I did my best to be Mr. Optimism and Support I came very close to negotiating a solo contract with the module leader.

In the end our demo received praise, the tutor was impressed by the number of features it engine included and said it was a good project. So alls well that ends well I guess, hopefully we’ve come away with good marks despite the issues and hopefully we all learned something about working as a team.

What did I learn?
Take advice from academics when it’s given to you. They’ve seen countless students fail and succeed and thus, they’re in the best position to advise you on such matters.

Friends usually don’t make good co-workers.

As flattering as it is to have people leaning on you for support, it doesn’t help you stand up straight.

Never underestimate the amount of work a student can get done in one night.