Summer internship at Opposable Games
TL;DR: Opposable Games good, Sam learns things, program games for iOS not Android
So this week I started my summer internship at Opposable Games. Opposable is a small independent game development team in Bristol. I'm really enjoying working with the team, spending 3 days a week in the office with the other programmers and games designers. The week started with a meeting. In the meeting progress on current projects was discussed and it was decided what progress was to be made this week. Whilst I didn't have much to contribute in the first meeting it was good to see exactly what the rest of the team was working on and getting to know the people I'm working with.
After the meeting I dove head first into building an iOS game from the ground up. Ben suggested I use the Cocos2d framework to build the game. Having never coded for iOS before the progress at the beginning of the week was quite slow. I tried to focus mainly on learning how to write code, and use the framework. We're now at the end of the week and I feel that I've made excellent progress with the project, having integrated graphics, physics, networking and sound into the project I am working on. There are a number of features that are yet to be implemented which don't require crazy technical gymnastics, but will require lots of building to polish.
Working with Opposable so far has been great fun, I've learnt a lot, and I've also been asked for creative input on the project I'm working on and others. I really enjoy writing code and seeing results come out the other end, and interfacing with the projects that the group is building has been really satisfying. Particularly they have a controller system that connects via a network and my iOS program has had to integrate with that. For this I needed to learn socket programming which is incredibly complex, but it was very satisfying to see the working result.
Whilst I am only an intern, there have been times when my technical knowledge has been called upon to help the other programmers in the team, particularly related to the use of the Git revision control system. We're also continually discussing which technologies I am familiar with to see if there's a good place where I can deploy my expertise.
Week 1 status: happy, learned new things, tired.