I’ve been thinking this week about young people looking to get into the games industry, this is mainly as we’ve had a couple of really great work experience students working with us in the office and also I’ve been doing a couple of talks at schools in our area.
I wanted to make games from the moment I got my first computer at 5/6 years old and was lucky enough to be able to teach myself BASIC through to C++ as I grow up first with the CPC and then early PCs and the internet in the very early 90s (IRC, the demoscene, newsgroups).
It’s always interesting to think about how we’re going to educate people wanting to join the industry and also what to say to young people asking what their best path would be.
The current popular path (based on CVs we receive – for programmers) is a games development course at University, in some cases with a computing course in the final years of high school perhaps covering Visual Basic or perhaps Java. For the most part though these people tend to be writing their first line of code only 3/4 years before entering the industry.
I want to say there are still people learning and coding at a much younger age (certainly the 15 year old student we had work with us this week has been programming in Flash/AS/PHP a while and was keen to learn C++ and Lua with us).
I’d like to look at a current state of play for young people wanting to learn to develop games (this has a programming tint to it apologies). I’m going to try and come up with good / bad points on the various areas to balance things out against how I found things while learning.
Obviously a massive resource of everything games development / programming related over the last 20 years, very cheap to access (even if that happens to be at a public facility like a school or library) and available everywhere with modern mobile devices.
- Access to free tools (GCC, XNA, Unity, Python, Lua, everything Open Source), tutorials and Q&A, features on games development.
- A huge community of other people learning and wanting to collaborate on projects and to encourage others.
- The ability to publish and make money via digital distribution.
- Copy + Paste culture is encouraged, googling a particular problem is likely to come up with working code and I’ve spoken to people currently learning programming admit that they’ve copied code without completely understanding what it was doing. In that particular case when they later had problems with that code they learnt the lesson about actually understanding everything they add to their project but I think we all know of people relying on Google way too much.
- Other distractions on the internet! WoW and online gaming (Minecraft!) not to mention Facebook procrastination. I used to pay for every minute of internet access so I made sure I spent my time well when online
When I was learning to program there were still lots of languages but I had to purchase compilers via shareware discs (charged per disc) so I stuck to Assembler + C. My first language was BASIC. Nowadays there is a huge variety of languages to choose from as a new programmer (despite C++ still being the primary development platform).
- Huge amount of choice is good in that people can find something that fits with their understanding or that provides the easiest learning experience. Once you have mastered one language moving to others is a lot simpler process.
- Experiencing different styles, concepts and patterns is good for your overall programming knowledge and helps you apply the best tool for the job.
- Choosing a bad language (in terms of your career) and sticking with it. This can make you end up with a set of portfolio apps that bear little relevance to the industry.
- Not mastering one particular language and just having an ok understanding of several may not help in terms of applying for jobs.
This is an area I don’t have a huge personal experience with, I planned to go into university education as a path into the industry but was fortunate enough to be offered a great job and felt that experience was worth more than education anyway (which I still believe funnily enough!).
From the point of view as a recruiter though :-
- University courses are constantly improving and in the UK at least there are moves by government and trade associations to link industry to academia.
- Industry experts are actually working more closely with universities in terms of guest lectures and we’re seeing a lot of industry veterans moving into teaching.
- I’ve seen signs of some programming being taught later on in high school and apparently LOGO Turtles are still used in primary education (controllable robots via a simple movement / pen drawing interface).
- At university level there still seem to be a lot of formerly ‘media production’ courses that are just being renamed to ‘Games development’ just to get the numbers on the courses up.
- I’d really like there to be more focus on programming / logic development at a younger age, technology is everywhere in young peoples lives and a better understanding of the logic (whether it’s through simple electronic teachings or focused on programming) would be great.
There are a huge amount of platforms and genres available now.
- There are truly games for everyone whether you prefer social games on PC, motion controller based party games or more traditional hardcore FPS games. This gives us a bigger audience of young people wanting to get into games – which hopefully includes more female developers as well as males who wouldn’t previously have been interested in games development.
- Successful (simpler) iPhone titles can be seen by people as something they could feasibly make themselves given enough time.
- I’m not sure how much of a problem this is but modern AAA games are so big with such huge budgets that perhaps getting involved with the development of them may feel out of reach to them.
Modern computers / Operating systems
This is the usual reason that gets discussed with learning programming now versus 20 or so years ago.
On pretty much every platform you were first presented with a command prompt of some kind and even running a game from disc / tape required you to enter a command. Most users nowadays wouldn’t even know about the command line let alone understand any of the goings on behind the applications they work with. The bad points to this are kind of obvious but at the same time without this uninviting command prompt (to the majority of the public) home computers have grown in popularity to make the industry what it is today.
This is by no means a full analysis of the state of things but just a few areas I’ve been thinking about, young people with the determination can easily develop their skills quickly and they have access to many experienced professionals and equally intelligent amateur developers via the internet. With better education the future should be bright for the new talent entering the industry both in terms of AAA studios and the independent teams.
Things we’ve been enjoying this week
- Awesome 4k ‘cdak’ by Quite & orange
- A talk called ‘Games and the Human Condition’ by Jonathan Blow, not had chance to watch it yet but will certainly be interesting.
- Amazon are offering a free year of an EC2 Micro Instance for new users.