Possible Careers

I am a junior in high school with an interest in computer programming. I've taught myself the basics of C++ and JavaScript and have really come to love programming. The problem I'm facing now is, as a junior, what career I'm interested in pursuing. As I see it I have two options, Programming (websites, software, etc.) or Game Design. I've researched both options heavily and they seem to have nearly equal amounts of pros and cons.

Game Design is interesting and challenging with extraordinarily rewarding payoff but has bad hours with less than optimal job security, it also is apparently an incredibly over saturated market that may be hard to get into.

For lack of a better name "Standard Programming" has more reliable job security and has a growing need for jobs but can be dull work and has less rewarding outcomes.

If I could hear your opinions based on experience, which career path would be better? This is an incredibly scary point in every teenager's life and I'm trying to direct myself a bit more and give myself a goal that can be achieved. Thanks!
Learn to program well. You can always do game design if you are good at it, but will have the standard programming skillset to fall back on.
Well it depends on what you are wanting to do programming wise.

Game Design is interesting and challenging with extraordinarily rewarding payoff but has bad hours with less than optimal job security, it also is apparently an incredibly over saturated market that may be hard to get into.

I would not call bad hours, poor job security, and over-saturated job market extraordinarily rewarding payoffs.

For lack of a better name "Standard Programming" has more reliable job security and has a growing need for jobs but can be dull work and has less rewarding outcomes.

Standard programming I assume would be web programming, job specific application programming, library development for end users, etc. None of the jobs have 'less rewarding payoffs' as end the end you are developing something that will be used either in house or by end users (that is the payoff). The other pay off is the programmer proving to himself that he could do it, a boost in confidence and an excitement for the next thing he makes.

If I could hear your opinions based on experience, which career path would be better?

Doesn't matter. I have worked 9 to 5 jobs (Print Pack Packing, Walmart, Kroger grocery store, construction gopher, and several others) while pursuing a college degree and was ready to work 9 to 5 while building my portfolio and network. The job only matters once you are in the industry, but before that you have to make ends meet by doing whatever job pays the bills. The career path that pays your bills, puts food on the table, and lets you support yourself is the best one, even if it ends up not being in programming. I have 20 years programming experience and have not once had a programming job and I still love programming and make ends meet. This way I can program what I want when I want, take indie jobs when they interest me, and work on making an indie game company without someone standing over me telling me what to do in my daily grind.
That's all very helpful! So what I've gathered from both of your answers, learn to code more advanced stuff, computer science classes in college maybe, and just see where that takes me? Search for opportunities rather than set a plan.

And I understand what you mean by proving you can accomplish something being rewarding in and of itself.

The next question I would have is as I'm not yet in any computer science class I have to teach myself, so would it be more beneficial to teach myself as many languages as I can, or get good at one, in which case, which language would be the most universal or useful going forward?
Jack of all trades is what I've gathered from threads like these.
@Lumpkin
It is impossible to be a jack of all trades in regards to programming. All you can do is code well and learn several languages well. Ruby, Python, C#, Java, C++, etc. basically all the normally and widely used ones will give the largest and safest net to land a job.
The next question I would have is as I'm not yet in any computer science class I have to teach myself, so would it be more beneficial to teach myself as many languages as I can, or get good at one, in which case, which language would be the most universal or useful going forward?


Now here you have become narrow enough to get meaningful choices.

so would it be more beneficial to teach myself as many languages as I can, or get good at one


If by this you mean is it best to learn one language well or many languages badly, then it's definitely best to learn one language well.

in which case, which language would be the most universal or useful going forward?


If you are willing to put in time & effort, then learning Java and C++ (and perhaps C) could be a very good idea, since they are widely used in business and games (and low level stuff for C) respectively (among many many other uses).

You could also take the other route of learning contrasting rather than most popular languages, so for instance, you could learn C++ and PHP.
StaticBlue wrote:
would it be more beneficial to teach myself as many languages as I can, or get good at one, in which case, which language would be the most universal or useful going forward


Try to think about *types* of programming rather than specific technologies: there's web programming - dealing with various ways to fetch, prepare, and present content, there's embedded programming, with weird pieces of hardware hanging on a bunch of wires, hooked up to sensors and oscilloscopes, there are desktop applications with their GUIs and dialogs and endlessly changing business rules, there are various backend systems programming varieties, with their giant server racks, massive networking and parallelism, there is infrastructure programming, where you make libraries, compilers, VMs, and other software other programmers use.. etc etc.
Each such role comes with its own set of languages, tools, conventions, lifestyle.
You can find programming possibilities in surprising places. I have programmed since I was a kid, but like many others I do not have a programming job, at least not exactly. I work in a steel factory. But here we have machines that are computer driven and need to, on occasion, be programmed. I get to program these from time to time. It is fun. And when no one is looking, I make games at work.

To echo BHX, as long as you have a job that pays the bills, then you are doing okay. You can always scratch that game developers itch in your after hours by either joing a group or starting your own project. Good luck to you then.
First thing you need to know is that game design and game programming are not the same thing.

Second, there are tons of different types of programming other than game programming and it makes no sense to lump them together. I think that if you do more research you might find that there are a whole lot of cool areas in computer science, and computer programming. Maybe you will find that game programming is actually not the funnest or most rewarding out of all of them for you.
That's a very good point, the problem being that there are so many areas of computer programming that it's hard to judge which one I will like more than another area, especially because I only really have a grasp on the most basic tools available at this point in my learning code.

Just based on what the consensus seems to be, I think I'll start learning Java, and continue challenging myself with C++. Take classes, try a lot of stuff out and see what appeals to me.
BHXSpecter wrote:
@Lumpkin
It is impossible to be a jack of all trades in regards to programming. All you can do is code well and learn several languages well. Ruby, Python, C#, Java, C++, etc. basically all the normally and widely used ones will give the largest and safest net to land a job.
Which is what I meant by the phrase.

StaticBlue wrote:

Just based on what the consensus seems to be, I think I'll start learning Java, and continue challenging myself with C++. Take classes, try a lot of stuff out and see what appeals to me.
Okay, but when learning Java don't think C++
Generally what is Java used for? why would I distinguish the two? I know for example the C++ is graphics and visuals like in video games, and I know JavaScript is all the fancy filling of a website after HTML and CSS lay the groundwork.
No, C++ has nothing to do with graphics itself. People generally use it along with DirectX or OpenGL to create games due to it's speed, but it was not designed with graphics in mind.

Java is used to create programs with the "compile once, run anywhere" mindset. It's used for web applets and desktops apps as well.

It runs in a VM tho, so you can't really do much low level with it.
Last edited on
Lumpkin wrote:
Which is what I meant by the phrase.

I know what you meant, I just meant not to use that phrase because it is a misleading phrase in terms of programming as it is too large a field to be humanly possible to be a 'jack of all trades'.
StaticBlue wrote:
Generally what is Java used for? why would I distinguish the two? I know for example the C++ is graphics and visuals like in video games, and I know JavaScript is all the fancy filling of a website after HTML and CSS lay the groundwork.

Applications, web applets, and games. Minecraft on the PC is made in Java. Most chat programs on websites use Java primarily. C++ has nothing to do with graphics. To do graphics, GUI, etc you have to use C++ with other libraries.
Last edited on
Java is cool and it also gets expanded. Has anyone heard of 'groovy'?
Topic archived. No new replies allowed.