How do I become a computer programmer?

Computer programming 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.

//

My son wants to become a video-game programmer or designer. What advice do you have?

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.

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:

Learn to program, THEN learn to program games. I can’t stress enough that it’s the fundamentals that will serve you well over the long run. “Listen to your heart. Good programmers love to

program.”

Listen to your heart. Good programmers love to program. Heck, that’s true for any profession – it’s the “do what you love” admonition. If after a while you find yourself dreading the work, perhaps it’s not for you.

Program. Use any excuse. This’ll be easy if you followed the previous point. There is simply no replacement for experience. That applies to the eventual resume, of course, but to your skills as well. The real world is full of lessons – find them. Use them.

Once you have some basic skills, get an internship, or a part time job, or a volunteer position using them. It’s everything that I just said about the real world, but with a boss. Your career will include a boss – perhaps called manager or maybe customer. If you intend to make money at it, you’ll need
to know what it takes to do what you love, even when others are telling to do what they want.

Some points that are very specific to video or computer game programming and design:

Programming video games is very very different than playing video games. Programming video games is much closer to programming an operating system like Windows, but with even more demanding customers. (If it’s the playing that excites you, perhaps a test position is more interesting, especially if you’re good at breaking things.)

Everyone and their brother seems to want a career programming or testing video games. That means you’ll be entering a highly competitive market. Be prepared to do the work that it takes to excel if you want to compete.

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.

About Leo

Leo A. Notenboom has been playing with computers since he was required to take a programming class in 1976. An 18 year career as a programmer at Microsoft soon followed. After "retiring" in 2001, Leo started Ask Leo! in 2003 as a place for answers to common computer and technical questions. More about Leo.

Comments

Despite the comment about ‘it doesn’t matter which language’ — speaking as a long-term Basic programmer, I would seriously advise you NOT to start by learning Basic (any variant – including Visual Basic) if you want to do games programming. The only exception I guess would be something like BlitzBasic, which is specifically designed for games programming.

I use dreamweaver when I develop websites at work and I use some of the built-in jquery functions that it has but I have yet to delve into the actual code myself. It is definitely something that I want to work on in my minimal spare time that I have. I hope you are right in that it is easy to pick up. Thanks!

I have started programming at the age of 10. I have started learning Basic and Visual Basic. But now, for beginners, I really recommend Game Maker (downloadable on gamemaker.nl) with is an easy to use programming software (15

hi leo. i really wanna become a programmer.. the problem is i,m already screw my degree… at most, i only can get 2.3 something for my cgpa. maybe its too late for me.. but reallyy, i like to become proggrammer. now i start to learn java.. yheah from basic.. iam really screw wtih my degree.. is it still hope for me?

It’s definitely an obstacle, depending on where you plan to get hired. But nothing makes up for experience – so start programming. Learn to program and program well – on your own if you have to. As stated in the article use any excuse to program. Instead of a track record based on education, build a track record based on accomplishments. *IF* you have the ability to do that, you’ll be fine.

The hesitation is that the GPA *usually*, though not always, is a result of a poor work ethic. If that’s the case, it’s something you’ll still have to overcome.

Just a suggestion, but it worked for me. Play games that involve scripting/programming. The more fun you make it, the more likely you’ll be to remember what you’ve learned.
You could start with WoW – learn how to create mods.
What I enjoy most, though, are MUD’s ( multi-user dungeons). What these are, basically, are text-based games, most of which are RPG’s, played through a client. IRE has made a few games in which combat requires scripting. Being able to script in your client’s chosen language ( I use Lua ) gives you a big advantage over those of the player-base who haven’t learned to script. I got into this about three years ago, and I’m still learning. While it’s the most fun I have gaming, it’s also sparked my interest in learning to program. What’s best is I find myself grasping programming much more easily because of what I’ve learned while MUD’ing.

I’ve been learning how to program since I was 15 and I’m still 15, but a website that really helped me grasp the basics of programming was called http://www.w3schools.com. It helps you to learn a whole range of programming languages. I’d recommend starting with HTML (Hyper-text mark-up language) since this is an extremely easy one to learn. Happy programming :).

Hi Leo, Am 16 and I want to know how to program, I hav read the Article and it has realy inspired me more to take up computer programing, but am not sure which language to start with right now because the languages I have access to are in the house are C++,C,VB, C.NET,VB.NET, Java sixth edition and ADO.NET. So am kinda not sure which one 2 start with?

Hi Leo – enjoyed reading the page. I have a BS in marketing and 18 years of career experience in sales. I really want to shift gears and get into programming as a profession, but does that mean I need to get a 2nd degree in computer science to earn well? I’ve always had a burning desire to program since I had my Atari 800 and started playing with Basic, but defaulted into a sales career.

>hi leo. i really wanna become a programmer.. the problem is i,m already screw my degree… at most, i only can get 2.3 something for my cgpa. maybe its too late for me.. but reallyy, i like to become proggrammer. now i start to learn java.. yheah from basic.. iam really screw wtih my degree.. is it still hope for me?

You could take a few programming courses at a technical college. If you are already in a 4-yr program, you should have no problem getting in. They usually allow you to get to programming classes quicker than some 4-yr colleges, and most of your 4-yr classes should transfer as credit for the prerequisites.

I would just like to know if I were to pursue a career in Game Development or programing would it be better for me to go to a career college for game development, like Full Sail, or go for a four-year degree from a local school?(assuming that I do fairly well in either school.)

I am extremely confused, 30 years old. I have a math phobia. My dad and my schoolteacher had a great contribution to my dislike of math, even though i have known many people who are enjoying math, and have enviable careers.

I have always been shying away from the subject due to embarrassment. I want to now give a second chance before concluding that it is not for me.
I have a knowledge of computer graphics and there are many design and animation software that require programming skills, and for learning those skills you need to learn basic math, which I also read in your website

They won’t talk to me/ give any info at the BCS. I would like to know what computer programming languages to learn by knowing what’s in demand. I’d like to know if I can get jobs or freelance as programmer as older person.

Hey Leo,
I’d like to become a Computer Programmer. I have just left school and about to start college. I have no previous experience in programming but will learn it in College.
My concern is that I heard programming requires a lot of Mathematics…I’m not the best at Maths although I did pass my GCSE in Maths.
Do you think I should still try and become a programmer even though maths isnt really one of my strenghts?

leo pls can you help me, i am not a computer programmer thou i do have an amazing idea for a computer programme for athletes. i belive if i can get my idea of the grnd it will be HUGE. but i have only that, … my idea i havent got the knowledge an skill to take it any further and do not know where to go to get the advise i need. pls help many thanks chris humphries

i guess i have a question, or more accurately, a request for advice…
a long time ago i was very into MUDs… especially once i discovered building…
what i really loved about building was being able to code all sorts of different things, and kind of create life out of text and code… i loved being able to think out of the box and finding new challenges to chew on. i loved the problem solving aspect of it, and i was surprised to learn that you could be creative with computer code… it wasn’t just number crunching at all… eventually, over time, i came to resent that i had to ask the MUD administrator to code new things for me every time i wanted a mob to do something really cool and unique… i wanted to be able to do this myself… and finally i came to appreciate just how limitless the world of computer code can be… i was intrigued… i bought a bunch of those books that are supposed to teach you C++… unfortunately i could never get the compiler to work and my computer ended up crashing (totally unrelated to the compiler) and i kind of forgot about my desire to learn to code…
recently i got a new computer and the thought has been creeping back into my mind on whether to go to school for programming and pursue it as a career…

i know that was really long rant, but i guess basically my question is this:
would actual computer programming be as interesting to me as building on my old MUD was? i mean, am i deluding myself in believing that just because i had so much fun creating mobprogs and ifchecks and whatnot i would probably enjoy tackling programming languages?
my goal here really is not to get into game programming neccessarily, i really just want to learn programming for its own sake, and i don’t want to spend a bunch of money on school and throw myself into it only to be disappointed and find that what i thought computer programming was was entirely off the mark…

did that make sense? i could really use some advice on this… thanks so much!!!

ok i am 12 and im sure you have heard of the game runescape. Well i was great at that game when i played. So anyways i love to create computer games and stuff so i wanted to create make my own game like runescape but way better and better graphic system. i was going to get a car and than get a job and than save up for the $2000 gaming computer and start it out on there. Your advice has helped me greatly. And i look forward to making it so i can make money off of it while im out there doing whatever i want. Like pyrotecnition or anything like that because i was going to make it a 247 server with a high detailed graphic system.

I’m currently enrolled at a community college for the past 2 years now. I first enrolled to become a computer programmer and I still thrive to be one. But since I’ve been in college for 2 years now I’ve only been able to take three programming classes because of all the required classes that students are forced to take to fulfill there needs to get a bachelors degree. I’m fairly close to getting AAoT( Assosiates of Arts Transfer Degree, the reason I went with art instead of science is because Science requires you to take more Science classes not computer science)

I was really looking for some advice on what I should do. I was recently talking with my father about Apprenticeship’s since he’s a mechanic and did an Apprenticeship with an old family friend to become a mechanic and then my brother did the same thing with my dad to become an mechanic. Anyhow we were talking about apprenticeships and he asked me why I didn’t ask my uncle about being an apprentice under my uncle when I had the chance. The only reason I didn’t ask because it never crossed my mind that my uncle was a programmer other then a CnC programmer but supposedly he is an all around programmer.

So my question is. Are Apprenticeship’s recognized by company’s?
Since its basically have experience in the field

or

Do you think I should stick it out in college and finish my degree

I’m struggling in a couple of classes if why I’m a bit sketchy currently such as physics. But all around I’m a 3.0 student.

I apologize for the long winded question. Just have many things on my mind and no one to really talk to about them.

Unfortunately there’s no clear answer. I would have steered you at the science degree earlier on, and suggested you complete that. Given where you’re at, if you’re “fairly close” I’d finish it (looks better on the resume than bailing near the end). But I’d be looking for any way I could to get experience in the field. Not all companies recognize “apprenticeships” per se, but most do recognize and value honest experience; the more the better. (Typically the term “internship” is actually somewhat more common, but amounts to the same thing.)

I read the information regarding the future world in the Software Development field. But I am more interested in the Game Development field poker site as well as in robotics. I consider myself as a fantasy person with a dream of inventing ideas and turninng them into reality. Would a career in game designs/development be suitable for me || web/Business Applications based upon my personality?

I’m 13 years old, and my dream job has always either become a doctor, or a computer programmer. I’m fairly smart in class, and get better grades than most kids I know. I saw a form which included the requirements needed to become a computer programmer, and what they do. I see that they create computer games, and learn to code, and find problems within the computer. After looking closer, I found out that computer programming is for me. I was wondering what I could to inorder to improve my skills in coding, and animating things using codes. If you respond, I’d really appreciate the word you’ve given me, and use it for the future. The requirements were completing high school, and going to university for 4 years. Then getting the bachelor’s degree, and completing Computer Science in school. If this is true or not, please respond. Thank you for your time. Regards~Michael

I have just completed my IGCSE and I have always been a straight A student. I am quite confident with my English, although it is not my first language. I want to be a computer programmer because Math is my favourite subject and making & breaking codes are my hobbies. I have learned the basics of c++ through various websites by myself but I can only make simple programmes, the most complex of which is probably the pyramid of numbers. However, I am not sure about what programmes I will make if I really become a computer programmer. I mean, there are games and encryptions and application softwares. I am not interested in making games but, given the two choices :encryption and application softwares, which one do you think will suit me the most? (A detailed definition (salary, competitiveness, good colleges,etc.) for each will be most helpful)
Oh yeah, what other programming languages should I learn after I have mastered the basics of c++, because I read that I don’t have to know every commands for c++ because I won’t need most of them.

I am a dycalculic and I was wondering if it is at all possible for me to become a computer programmer. I think it is something I could be very passionate about, however, I am under the impression that computer programmers must excel at math. I am 24 years old and have not yet entered college because basically everything I would like to do pretty much requires me to learn and know heavy mathematics such as calculus and what not. While I have never really attempted complicated math, I highly doubt my abilities in that specific area. My dyscalculic mind set is not severe, but I clearly do have a very difficult time trying to solve math problems and even retaining the information sometimes.

My name is Cody and I want to become a computer programmer and i have been writing code since i was 11 i am now 14 and i started in CMD with stupid BATCH files then HTML then went on to various web languages such as CSS, PHP, Javascript, and MYSQL

Then about a year and a half ago i started in more serious computer programming languages such as C, C++, and touching in Java.

I was curious about a couple things.

I have heard of some differences between C and C++ like C++ is object oriented, and that C generally compiles to a smaller file (which may or may not be true i just noticed it when i would compile the programs)

But what does Object Oriented mean, and why does C compiler into a smaller file.

But most importantly I would like to know if you know of any companies that are a good start for a computer programmer after they get there degree.

I would like to express that i have a fairly good understanding of
computer programming and responding to me would not be a waste of your time.

Leo’s suggestion is quite something, he’s right.
Although, there are some key factors your son should look into. He needs to figure out what he enjoys the most and what he would prefer to do in a development team, that will help him figure out if he is a programmer, artist, game/level designer, resource engineer, or tester.

He should first do like Leo said, attempt to learn to program, my suggestion is learn a language with a large community that you can get help from if need be.
Even if he doesn’t like it at first, he should attempt to learn the basics, then if he succeeds in that, move on to more advanced programming.
Then if after attempting that he doesn’t like programming, he should see whether he likes to create art or compose music.
Programming isn’t the only required aspect of game design, that’s why he could also look into game/level design, that’s where most of the ideas and thoughts come out to be discussed.
Still, if he doesn’t like that, he could always become a tester, but becoming a professional tester requires looking outside of the box, figuring out what is wrong and what should be there.

There is no guarantee he will get a job in any of the fields listed above, the game development industry is a HUGE competition, but that also doesn’t mean he can’t. With lots of practice, learning and thinking outside the box, figuring out problems that persist through masses of headache’s and strife, he should be able to get a job in one of the game development fields.

I’ve been programming computer’s for 4.5 years, led small amateur development teams, and accomplished literally TONS of research in order to find information required to get into the game dev. industry. Myself, I have partaken in every aspect of game development, from managing, designing, programming, creating something from nothing, sound engineering, and the works. You can do much at an early age, and it’s no small task, he just needs to put much effort into what he wants to do, and have alot of motivation if he plans on getting a job in the industry. Oh, and I’m only 18.

Hey there! My name is Chris and I would LOVE to be a programmer. I have always had a passion for games. I want to program games for a living. But I’m kind of worried. I am 20 years old, almost 21 and all the comments I read about programming on this site and many others are people who are around 13 to 17 and already have a lot of experience. Am I too late? Did I miss my opportunity? Or can I still pursue my dream of becoming a programmer?

Programming an operating system has absolutely NOTHING to do with programming a video game. Literally. I’m not sure if you mean literally writing your own HAL, kernel, and bootsector, or working with APIs thrown at you by the OS and libraries, writing applications FOR an OS. But as far as writing an operating system goes, little to nothing but syntax and some design methods can be transfered from a video game to an OS. Video games require hardcore OOP(Most at least), and complete blindness of the computer hardware, using libraries to cover it up.

Just thought I’d clarify that.

Chrispy, you can become an extremely good programmer starting at any age provided you have a good passion. I’m only aged 16 and age hasn’t proved to stop me, or anyone for that matter.

Most people who stay they want to program games don’t really enjoy programming them, they just want to see and play the end result. However, many do. I suggest they work with some basic languages developing some basic software before getting into programming games. It’ll probably save you a lot of time.

Cody, oop is exactly as it sounds. It’s programming with objects essentially. It’s hard to explain if you don’t have a general idea of programming. In C++ all it literally is(in memory) structs, and functions. But in the compiler, it’s much more, I.E class member protection, virtual functions, inheritance, etc.. If you’re into OOP I’d take a look at java. I’ve worked with C and C++ for a long time, and occasionally java(I wrote an isometric game in it). Java has amazing OOP features that C++ lacks, but I still enjoy C++ much more.

Nate, programming has far less to do with math then it does to do with problem solving, it just happens to be that some problems require mathematics to be solved. If you passed grade 12 math you’re good to go, but I wouldn’t hesitate to take some more advanced math courses in college. There are tons of good programmers who can’t solve a mathematical equation to save their life(well — that’s an exaggeration) and are great programmers because they can solve problems. However, programming a video game, a 3D one at least, will require some Trig, and geometry, possibly physics(basics though, there are a lot of powerful physics engines out there). If you’re really into programming and not so much into math, you might find software engineering enjoyable, I.E writing segments of operating systems(I’m writing my own O.S atm, it’s not as epic as linux, but it still takes A LOT of work to do), device drivers, etc.

“OMG”, you never know until you start writing, get a book on it. 13 is a fairly good age to start programming, but just because you’re good at math doesn’t mean you’ll be a good programmer.

“poker site”, if you’re into electronics, you may find software engineering or hardware engineering interesting. Software engineering I describe above(it involves programming software that communicates with electronic devices, such as drivers or segments of an OS’s HAL). Hardware engineering is extremely interesting and I too have read about programming microcontrollers and building my own hardware(only problem is at 16 I have no income to purchase the devices and components). Hardware engineering involves developing devices like video cards and processors, network cards, etc..

Hope that helped those looking for an answer. AFK Working on a dumb socials projects. Yeap, I procrastinate my homework 😉

just remember me always because its always good for people to admire something better that is not common so i can see that programmers are not useless with the work they do so that is why i feel like to become a programmer

I am a graduate of Geography and Regional Planning, I like to be a computer programmer because when I was in school any course that has to do with computer always interest.But what I dont know is if I should go into (GIS)since I have the knowledge of Geography.
Kindly advice me of what to do, looking forward to hear from you….

QUESTION.my name is steve and have been in college for four years now and have not graduate yet and my major is MIS AND INTERNATIONAL BUS.I READLY want to become programmer. is that prosible with my age i am a old man.please help me

I would like some advice if you get the chance? You see the thing is I am in nursing and I am miserable! I mean great job and good money, but it is not for me. I have found myself madly in love with webdesign and learning new things about computers. I have chosen to switch fields to a computer programmer. My only problem is I don’t know where to start. I mean What college courses should I take, what books should I read, and what else could I do to make sure I become the best computer programmer I can be? I really want this and I know I will be happy doing this job. Please help? Any tips are greatly appreciated!

I need help. I already got an admission to a renown college in the US to read computer science when I realised that I know next to nothing about computers and programming. But now I’m so determined to be an experienced programmer in at least a language. I will need your advice. I also feel that programming is not all about the number of languages one is proficient in but his/her acquired skill sets in problem solving and algorithm development.

I am a student, styding Information Technology. I am doing the visual basic language, will do C-Sharp and Phyton later in the year, but I would like to ask you, will this be enough to make me a programmer one day. I asked some off my lectures this and they said I must complete this IT course first, this a start to to become a programmer.

I asked them if i need a degree in computer science and they told me computer science has nothing to do with programming but everywhere I look they want a degree computer science, is that the truth?

And can you please help me with the qualifications I will be needing to become a programmer

You guys know that HTML it NOT a programing language… It’s a Markup Language (Hyper Text Markup language) It’s in it’s name…

I actually disagree. Many fundamental concepts of programming apply. You’re supplying instructions to a layout engine that are interpreted at display time. (And not every programming language has the word “programming” in their name either.)

Yea I’m only 14 and i find the computer programming pretty interesting, but i’m only asking what ARE the requirements to be a computer programmer like what kind of degree i need, and what classes are needed?

i really like the info you posted.. it gave me informaiton i needed to know,because i want to study computers and work with them and mybe program. i herd thats its a lot of math involved… but i suck at math.. really bad .. but i fell confident …kinda.. im a Jr. in high school i attend el cerrito high,CA i have a lot of goals in this field …and i love computers ….. it’s in my hart and blood…..thank you please email me updates thanks you again Mr. Notenboom

my name is Tre’von Baugus and im am 14 going on 15 and i would like to be a computer programmer/technition i love computers lol and i dont knw wyhat should i study but i would like to learn how to be a computer person who works with computers. but i am a african american and i would like to become a computer programmer/technition and i love to learn and watch so i can learn how to become that pacific thing that i want to be

First off all you 14 and 15 year olds. I am 15 as well and share your compation… however you seem to mispell and make make mistakes in your typing. Writing code would be very dificult to do if you mess up and get done and you have to go back and find the mistake or redo the whole thing. The math skills and such will be nice to have as i have read in many peoples comments and forums. Also ANY computer classes in highschool/College will help in the long run along with (like this guy said) logic and a type of computer science. That is what i have to say. Kole Higgins, [address removed]

I want to become an software programmer coz my aim is to be the father of computer as like as “Charles Babbage” but I don’t have sufficient knowledge that how to gain my target. Please help me. I want to be a person to whom the world be depend. For being a “Charles Babbage” what will I do? there’s 1 more problem is here thats I dont’ have any BCA, BTec or any degree coz now I’m in BBA-1st year. Can I touch my target or not? To touch the target your suggestions are required.
Thanks.

Look, 14-15 year olds, I really hate to burst your bubble but you might be starting a bit to late. I am 15 and have been learning since I was 12. You have to have pation, if you don’t go to bed each night with your head buzzing with all the new exciting things you learned then you might not truly enjoy the work. My advice is in 2 parts, one, actually work. To many times have I seen people get cought up in the idea of programming but never actualy work. Lastly, have somone to show off too, it really feels rewarding to see somone gasp In amazment at your 40 hours of work. Best of luck to you all.

The best drunks do not make good bar owners.
You know exactly what I’m saying…computer programming requires some math skills, dedication, and death before retirement due to long hours of after hour support and 18 hour days.

You don’t need to worry too much if are at the age of say 16 and REALLY want to get into computer programming. Age matters but you don’t necessarily need to no-life on your pc since the age of 12-13-14
It does really help though.

I began programming at the age of 8 years old. I am now at the age of 14 and still struggling with the concept of C++. Overall, programming takes time and a lot of it. Combine time with motivation and a lot of coffee and almost anyone can become an experienced programmer.

Well, am 20yrs old now from Kenya, Africa. I started teaching myself computer programming in 2007. I was 16yrs old then. I fell in love with it and I immediately started learning HTML.
Age really doesn’t matter. You can learn programming regardless of the age. Practice practice makes perfect.

I’m 17 years about to end my senior year in highschool, and I’m going to join the navy which offers a computer science career which after my four years of duty I was told I can become a computer programmer. Will that alone help me become a video game designer ? Though I know that it will be better on resume to go to a school after the navy.

i m 24years i have don nothing. today i think that i have to be a computer programer so i visite this site. plz przy for me to be a pprogramer and plz tell me that how can i be a programer? because i m living in rural area so i have no resorces to join any university colleg or evin school?????????

i want to hire a computer programmer to build a i-phone application for me. How much should I expect to pay them an hour and is there a certain type of programmer i need? what else do i need to know to ask them about what i want? it is pretty complex application.

Not something I can really help with. I can say that iPhone developers are in high demand and short supply right now, so I’d expect to pay a lot – particularly for a complex app.

I am 15 years old and I began programing in ruby.Later I moved to VB 2008 and C# 2010.I’ve made web pages,but not sites.I know to program in C#,VB,Ruby,HTML,CSS,JavaScript.Currently I am learning XML and SQL and LINQ.I began making games,but soon realised that my Math skills were not high enough.So if you get stuck somewhere,learn more maths and It’ll be easier.Of course unless you don’t know anything about programing.And saaed.First learn some English.Then learn some light weight programing language(Ruby,Python,JavaScript,VBScript…),then learn some harder programing language like C# or Java or VB.Then in the end learn c++ and assembly.And then,begin making 3d games,because,they require much experience.My advice for a framework .NET.I hope I helped.

Great article, now I know what to expect once I graduate college. I originally started college to become a network administrator, but soon realized that programming in general was far more interesting. I’m in the process of transferring from a 2 year technical college to a university in hopes of getting a BS in Computer Science. My ultimate goal is to deal with video game programming, but with a Computer Science degree I’d be able to work in any field of programming, just in case video game programming doesn’t work out. For the people that choose not to go to college because they feel they know everything, than you’re sadly missing out on a great experience. Again great article, it gives rookies like me an inside look at what to expect from the industry.

my name is Darren Sharkey and i am 14 my grades are not the best but i want to achieve to be a computer software is there any way to improve on my grades? my computing and maths are pretty good any else i need?

I am 15 years old and began programming when I was 12. I started of with C++ (Yes I know many don’t start with this language) then tried out VB6 and .NET. Now I am making iPhone games using the Objective-C language and the Cocos2D framework. My advice to people who want to learn programming:
-Never give up
-Try to learn as much as you can
-Remember that patience is a virtue

I can go on and on, but these are the 3 top tips I can give you as a start-up programmer.

You become a programmer by doing only one thing — start programming! Don’t wait until someone pays you to do it. You do it first because you love it as a hobby. You’ve got to be one of those strange people who just gets satisfaction from creating a rigidly logical process solve a problem.

hi i just got 14 years old,and i know pretty much in VB,but only VB.i`m also very good in maths.my question is,should i have known lots more programming languages at this age or is what i know already enough?

@Just a rookie
It never hurts to know more languages, especially as different work places require knowledge of specific languages, but it can also be more useful in getting proficient in a language before moving on to another one as a little knowledge of several languages isn’t as useful as proficiency in one. You might want to check out want ads and see which languages are the most sought after. C+ is usually high on the list.

Hw do i become a computer programmer..?wat requirements are need,wat symbol of physics and maths must i hv..in my matric certificate…im in grade 11 so please leo answer me..,i actualy want to be a computer game programmer.

Please read the article you just commented on. It answers your question

Actually i work in a Cafe as an Attendant which I’ve the access to the Internet but within me i love to be a programmer and i will love to some one can put me through? I will love to receive by mail thanks.

Hi am 16 an am really interested in becoming a computer programmer. Would pascal be a good language to start with? Or would another one like C be better. I’m not sure as to what type of programmer I’d like to become as yet

@Rushawn
I personally would recommend C, C+ or Java because they are the languages most in demand by people who are hiring. But the most important thing is simply to learn how to program.
For example, I had been programming in Cobol and Basic when a job offer came up to do a project in Clipper (and language popular in the 80s). I stayed up all night and read the manual and started in coding the next day. There were some rough moments learning how to use some of the totally new functions, but all in all it was not so difficult.
Once you learn to program and get your first job, you’ll find that in addition to learning to program, you’ll have to learn the ins and outs of the application your are programming for such as accounting and also the specific business field. A manufacturing company is different from a retailer. Or you may work on programs to control mechanical or electronic processes, or making utility software such as AV, back-up programs etc. The options are so varied, it would be impossible to do more than scratch the surface in attempting to talk about the possibilities.

Thanks a lot. I’m kinda new to this, hope its not a stupid question but doesn’t knowing multiple languages cause any conflcts when ur actually trying to write a program?

I know more than I care to think of, and yes – sometimes I do get the syntax mixed up if I’m working in two different languages within a short time span. But in general that’s easily rectified (I keep reference manuals around to remind myself of those pesky details all the time). What’s MUCH more important are the concepts involved in programming.

Dear Leo
I have worked in retail selling tv/laptops etc.Ive managed 2 electrical stores along the way aswell.The company i work for decided to make a website & i have been envolved in from start to finnish & have learned a lot .I have a great desire to be a computer programmer & have great intrest in all aspects of programming .I admire both yoursel & Bill gates in what you have achived & i am a firm beliver in anything is possible.I have no degrees or a great education but i am passionate about learning to program & would spend night & day learning as it is pleasure rather than a chore to me.Ive all ebooks on & i am learning more every day & practicing.My question to you is if a great programmer who has not been through all the schools & colleges but can do the job as good or better than one who has a degree/qualification etc is it posssible he could be hired if he could prove he could do the job required..
Best Regards
Paddy….

I have always wanted to be a game programmer and it has been a big passion for me all my life. I have played many games when I was a kid. However I got into programming later in life and I failed at first. That didn’t stop me from pursuing my passion. Taking a C++ class was tough with no programming experience. However I took it again and I loved it. I also decided to get a Bachelor in Game and simulation programming from Devry. I also took many programming classes and I learned lots. Eventually I got a job as a web programmer but that didn’t last long since I was the only programmer and they had high demands. This was my first professional programming job. After that I started an internship and learned C# and Unity3d game programming. I was able to make a simple games and my interest expanded. All through my time at Devry, I bought books on opengl, directx, game programming, windows api, and assembley. I listened to many video tutorials on several subjects. I learned that game programming requires many skills. First its important to know class design structures. Its important to know math and physics. However you need to be able to implement the math and physics using c++ . You have to be well versed in C++. You have to know your pointers very well. You have to know about memory management. Throughout my road to become a game programmer I got interviewed for a company. But I still wasn’t prepared. I was offered a web programming job at that moment. Since I needed to live and it was getting tough. I took the job and learned web programming and database programming. I also found out that programming is not about the language. Its about the design, how the logic is designed. There is so much involved. You can either choose to make your own game engine which will take you some time, or you can use many game engines out there. There is cocos2d for iphone development, There is Unity3d for pc, mac, and mobile development. I would start with a game engine and figure out how it is engineered. Then try to make your own engine. This will prepare you for a game job. I would make a small game and release it. This will be your road to game career. Also there are many positions in a game company. Decide what kind of game programmer you wish to be. Check sites like Gamasutra or GameDev sites for the positions. Also game programming is a lifelong learning. You always need to keep up with the latest findings in AI, algorithm, memory optimization, graphics rendering, and many other techniques. About me I am still hoping to get in a game company and I am going to GDC 2012 to network and learn more about game programming. Its an amazing hobby for mine right now. I love programming. I am working on a 3d engine currently and some games on ios and android. I love to learn more and more about it. Also don’t forget to check out IGDA

I tend to worry about those commercials that basically show people playing games as part of the programming. Maybe playtesting, but then (from what I’ve seen & done) it often is along the line of “keep bumping into this wall and tell us if you somehow accidentally get stuck behind it.”

As well, programming isn’t cut out for everyone, IMHO. I can do some moderate amount of scripting, but programming — let’s just say I managed to break a “hello world” program.

One suggestion I’d like to make, although it hasn’t helped me, is to take a game you like and create mods. A lot of games are quite highly moddable and it’s actually quite fun. (Funny how I can do this but still can’t pick up on anything heavier than scripting. I have an exceedingly bizarre brain at times.)

Leo ought design a master program which can
create a program off any basic such as windows, so that dummies like me can merely plug in either words or sentences or give simple commands so the program becomes a lazybutt
short cut time saving bully…. o well, i can dream cant i ???? i always say am gonna make a progr but when i consider the work i bow out and use what comes with the p.c.

Leo and Arbidh explained the process pretty well. It takes a lot of work an determination, along with a real love for what you are doing.

I’ve done some programming, but it was always on a “need” basis – not something I was interested in enough to consider for a career. At one time I was involved in website design, and found a site that offers free courses in programming. I took the HTML course – which is no longer offered – and it really helped me. Not only did I learn the code, but also the concepts of layout, space management, etc.

The only additional recommendation I would add to what Leo and Arbidh provided is: find free programming courses online to see if that is something you like. If it is, then you will have an advantage over the other students when you begin taking the regular courses. If not, you aren’t out any money.

With Leo’s permission, I can provide the site that I used. Right now they have 8 offerings. Start with the simplest one and work your way up.

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

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

“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??

For all you who want excel at programming and move on to software design, Leo’s point about learning assembly language cannot be overstated. Knowing the hardware upon which the software operates will separate you from the masses. After a 40 year career in aerospace & defense designing electronics, the best … I mean the BEST software engineers I worked with were those who took the time to learn every nuance about the hardware with which they were working. Math and science are two more discriminators, with strong fundamentals you will build solid skills; but soft skills like communication and teamwork are also necessary. Keep your grades up but don’t get too hung up on GPA, employers will dissect this to determine where you liked to concentrate. Experience while you’re in school is absolutely necessary for myriad reasons, some being: is this for you? do you work well with others? can you take direction? will you do what it takes to complete an assignment? … and the list goes on. While playing games can be a lot of fun, programming games can be a lot of work, work you may not want to do. For those of you who take the first step I bid you Godspeed. Ask questions, work hard, be thorough. Oh, one last thing, read Leo’s article … the answers are there.

Leave a reply:

Read the article. Seriously. You'd be shocked at how many people make comments that prove they didn't.

Comment only on the article. If you have a new, unrelated question start with the search box at the top of the page.

Don't post personal information. Email addresses, phone numbers and such will be removed.

VERY IMPORTANT: because of a rise in comment spam that's making it through our filters any comments that do not add to the discussion - typically off topic or content-free comments - run a very high risk of being flagged as spam and removed.

If you have a new question unrelated to the article above, ask it on the Ask Leo! ask-a-question page.