Helping people with computers... one answer at a time.
Computer program can be a fun and rewarding profession. I look at some of what it takes to get there; some aspects are obvious, others not so much.
•
This is a very common question - particularly with video games. Kids really enjoy playing them and are often drawn to the potential of creating them as well. There's even a series of TV commercials that play on exactly that scenario.
I've hired a lot of programmers in my career. I've also not hired even more. So I definitely have some thoughts and advice.
•
First, what'd I'd call the basics:
Some points that are very specific to video or computer game programming and design:
I really need to reiterate the fundamentals. Don't get hung up on what programming language or what platform ... programming is more about how you think than whether or not you can express your thoughts in C++ or Java, or on a Mac or a PC. "It's just another language" is something you'll hear from top-tier programmers.
I've told people that HTML is a programming language and I encourage its use, but be careful. Building websites is not the basis of a career in something as complex as video game design. If your passion turns out to be the web, then invest in some of the programming languages of the web: PHP, Perl, Flash, Javascript.
Take the programming classes that you have access to: high school, community college, vo-tech, whatever. Then go get yourself a Computer Science degree or a closely related Engineering degree. I have mixed feelings on whether you need a Master's degree.
My own pet peeve: PLEASE make sure that you learn assembly language along the way. It won't make sense today, but it'll help you understand concepts and techniques that a lot of programmers today have trouble with. AND it'll help you write better code and aid in debugging it as well.
There are so many skills that could help, I could go on. Math. Logic. English. Heck, verbal and written skills are areas that I wish I had spent more time on and I would recommend strongly to anyone entering any profession.
Article C2473 - November 27, 2005 « »
January 29, 2013 2:51 AM
@Old Man
If you find a site which is useful for Ask Leo! readers you can post a link here. Many people post links in Ask Leo! comments. If they don't appear to be spam, we leave them on, otherwise we nuke them within a few hours.
January 29, 2013 8:59 AM
Thank you. Since this isn't my site, I want to be sure it is OK to post links to another site. I used to work for a website company, and part of my job was to delete ALL such entries.
The site is about.com. They have a lot of information on a variety of topics. If you click on Browse Categories, you will find one for Computing.
Some of their information is old, but still of value. Even if their computing courses are a bit old or somewhat shallow, they will still give a person a feel for what programming is like.
January 29, 2013 2:25 PM
Here's a Ted Talk on "10 places where anyone can learn to code" which has links to some great sources for learning to code.
February 5, 2013 11:55 PM
I think you are just the coolest!
I received this article in me email and though I have no desire be a video game programmer, I read it anyway. Reason being, all your articles seem to touch on so many aspects that one didn't even know how to query!
I love knowledge and find you to be a wealth of it.
One last thing. So many sites I used to trust now seem to be over absorbed with ads and possible leads that although some of the info may be liable, I find it hard to trust anything based on their obvious end game.
I think it is rarer than rare that you still are you and you alone.
Cuddos!
Thank you for your time, effort and for being Leo!
Christine
March 13, 2013 7:06 PM
"I've told people that HTML is a programming language"
HTML is not a programming language... it's not even a scripting language! it's a markup language! that's what what the M in html stands for! It's like saying modeling a cube is equivalent to knowing algebraic geometry. What exactly was your job at Microsoft my good man??