Fresh blood (getting into game dev)

Posted on October 23, 2010

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.

The Internet

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.

Good points

  • 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.

Bad points

  • 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 🙂

Programming languages

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).

Good points

  • 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.

Bad points

  • 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.

Schools/General education

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 :-

Good points

  • 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).

Bad points

  • 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.

Modern games

There are a huge amount of platforms and genres available now.

Good points

  • 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.

Bad points

  • 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.

Conclusion

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

Be Sociable, Share!

Tags: ,

5 Responses

  1. Ryan Henson Creighton
    October 24, 2010

    i’ve taught at both the college and elementary school levels in Ontario, and i can say with certainty that if you ever hope to educate kids in this stuff, it’s got to start early. i think programming should be taught in schools at a very young age. It’s increasingly becoming a vital language in our society.

    Look at auto mechanics. They used to be able to fix cars by ratcheting the parts together, but now the cars are controlled by computer systems, and there’s not much a mechanic can do to keep up.

    i think the games people play today are part of the problem. i grew up with very simple games – Intellivision, Atari 2600, Colecovision, C64 games – and i programmed in Logo (the turtle language) in school. i have a grasp of what a simple game is. Kids today don’t. At all. Their ambition is what kills them much of the time – as soon as they find out that it took a team of fifty to a hundred people 4 years to make a game they consider “simple”, they get a sniff of how difficult game development is.

    i very much want daughters to learn programming, so i’m starting them young. My eldest is four years old. What could i possibly teach her? i’m going to try to start with Lego Mindstorms, the programming language of which actually evolved from Logo. i’ll let you know how it pans out.

    – Ryan


  2. admin
    October 24, 2010

    Hi Ryan, many thanks for the comment.

    Nice to see another parent wanting to teach their children young, I have a 4 year old daughter as well and she already seems pretty logical in some of the things she says (plus she can figure out a UI better than her mum!)

    Simon


  3. Luke
    October 24, 2010

    As far as education goes. I built my own company, and never did I look at a prospective employee’s education background (or even their age) — only their portfolios. If there’s anything young artists, designers, and programmers should be doing, it’s building a solid portfolio of work. I honestly believe that gets you noticed much more by an employer than a piece of paper with some words on it.


  4. […] Fresh blood (getting into game dev) […]


  5. Breakdance McFunkypants
    October 27, 2010

    WOnderful post. I agree with almost everything you are saying but wantd to stress that there are lots of highscool computer courses that teach programming languages: it certainly is too late if you write your first line of code during university. To really be a great programmer when you enter the job market you should have started coding when you were 12, like you, Ryan, myself and most other game devs out there. You need a decade of being a script-kiddie before you can really be a coder. Kids who have written two programs when they get out of college are years behind a interested 16 year old who programmed for fun in their spare time. I strongly agree with Luke: education is less important than your portfolio and I would happily employ an 18 year old with a vast portfolio before I’d consider a phd with one project under his or her belt. We need to encourage kids to start coding from an early age: the moment algebra comes into their education, which in most countries is long before high school starts. If you can understand X=5 then you are ready to start programming.


Leave a Reply