Skip to main content
GameDev.net gamedev.net
🔒 Locked

Want to become a Computer Scientist

Started by EEletri Dec 8, 2014 at 9:23 PM 23 replies 6.2k views
Original Post
EEletri
EEletri

Hello guys, this is my first topic on the forum, but I have been on the forum for around a year and registered recently.

First, I would like to say I don't know where is the right place to post it, please feel free to move it, and I'm not from a native english country, sorry for my bad english.

I'm 13 years old, almost 14 and in the future I'm planning to become a computer scientist and mainly a game developer and I want to know what should I study to be a good one, can you guys recommend any book or things that I should study ?

I am programming in C++ around a half-year and currently learning HTML5 and Javascript.

If you have any advices for me, please let me know.

"For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life." - John 3:16   Blog: exchargedeeletri.wordpress.com
InferiorOlive
InferiorOlive

I'm not in industry or anything, but why did you switch from C++ to Javascript/HTML5? While most programmers learn many languages (they all have their strong points), when beginning, I think it would be more beneficial to acquire a strong foundation in one language before moving on.

Inspiration from my tea: "Never wish life were easier. Wish that you were better" -Jim Rohn   soundcloud.com/herwrathmustbedragons
wicked357
wicked357

If you are comfortable with C++ you should check out SFML and start with their tutorials. You can be up and running a simple 2d game in no time and IMO I came from the same background and would be much faster to get into SFML instead of switching gears into Browser games.

Roots
Roots

HTML5/Javascript is nice to have if you plan on doing web development or making a game run on your website, but if you want to make games that run on PCs, consoles, or mobile platforms (phones/tablets), it won't do you much good. Its more important to get a strong foundation with some core languages first before branching out into web development. In my college program, we started learning C because it is really the "grandfather language" and so much software we use is written with it (libraries, O/S kernels, drivers, and so on). Its much closer to the hardware, so you have to really know what you're doing. C++ is C with lots of new features added on, so you'd be learning the "core" of C++ if you will. I would say stick with C/C++ and learn how to write a few different programs before moving on to games. Things like reading and writing files, doing complicated arithmetic, maybe a simple text word processor, etc.

After you're comfortable, learn at least one scripting language as well. I recommend Python or Ruby, two common languages in use today. (If you use Python, check out PyGame). Many games are written in multiple languages and each language communicates with the other, so you need to understand that. Over time, you'll find yourself learning and using more languages for different projects and jobs. I've used over 20 different languages myself after being out of college for ten years.

TheChubu
TheChubu



I am programming in C++ around a half-year and currently learning HTML5 and Javascript.
Then keep programming!

Seriously, important bit is stick to something and learn from it. Over time you'll switch to different things, try new things, harder things (which tend to be the ones most interesting!), but you get to those parts if you keep practicing.

So there, keep programming.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"   My journals: dustArtemis ECS framework and 
jbadams
jbadams

I chuckled at "computer scientist". Good luck getting a PhD to be considered one lol.

The term is commonly used for academics (and often even just any qualified professional) with a B.S. in Computer Science OR for those who go on to complete an M.S. or Ph.D, so it's both correct terminology according to common usage and potentially quite an achievable goal.

It may not be a perfectly technically correct term, but if you're being pedantic the title of "software engineer" doesn't make much sense for most people who claim it either -- and some places (such as Texas if I recall correctly) actually enforce that distinction by only allowing the title for those who are also qualified as actual engineers.

:-)
- Jason Astle-Adams
Roots
Roots

Software Engineer is kind of an odd title. To have the word "engineer" in your job title for virtually any other discpline (mechanical, aeronautical, civil, etc.), you have to be a licensed professional engineer, which is not an easy path to take. For some reason, "software engineer" is not a protected title in the United States, and many people straight out of college are given this title.

I just did some basic searching about this, and it looks like this may change. According to http://en.wikipedia.org/wiki/Software_engineering_professionalism, there is a movement to make software engineering a professional field/title similar to other discplines of engineer. It appears that Texas has already implemented this, ironic seeing as its where I live and I've never heard of it. I did already take and pass the Fundamentals of Engineering exam 10 years ago (the first step to being a licensed engineer).

BitMaster
BitMaster
First, I'm agreeing with jbadams as the title of Computer Scientist is extremely achievable. Second, at least in Germany being a computer scientist already has benefits normally only entitled to engineers. Last I checked it was the only non-engineer profession where you could immediately go self-employed without registering a business with the taxation office first.
EEletri
EEletri

Thank you guys, I am learning HTML5 and Javascript now because I would like to do some web programming, but I still on my C++ road, reading my second book and learning to use SFML, I have not made a complete simple game yet, but I keep learning.

About a scripting language, they teached Python this year on the school and I had already played with Python before learning C++.

"For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life." - John 3:16   Blog: exchargedeeletri.wordpress.com
Gian-Reto
Gian-Reto

This might be too advanced for you right now, but maybe its a good read anyway: http://www.amazon.com/Engine-Architecture-Second-Jason-Gregory/dp/1466560010/ref=sr_1_1?ie=UTF8&qid=1418117671&sr=8-1&keywords=game+engine

Pretty much an introduction to everything going on in a modern 3D engine. Good basic knowledge for anyone working in 3D Game dev field, and mandatory reading for everyone trying to write his own engine for the first time, IMO.

If you ask me, every software developer should have at least basic knowledge in HTML/CSS and Javascript. Really, it ain't rocket science, but its still hugely useful for multiple lines of work (Starting with web development, if you go Indie, you might be able to safe some bucks because you can get your website up and running yourself, web game dev also relies on it, AND more and more tools seem to adopt Javascript (-lookalikes, sometimes) as scripting language... Unity as Game Engine, Adobe for some of their PDF tools...).

Mastering the art of juggling different browsers to spit out the same rendered page from your HTML/CSS output is a higher art form, though.

EEletri
EEletri

I learned C++ with Programming: Principles and Practices Using C++, do you guys recommend that I read C++ Prime 5th Edition or go to something more advanced ?

"For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life." - John 3:16   Blog: exchargedeeletri.wordpress.com
ThinkingsHard
ThinkingsHard

I recommend you work on creating some console games and then move on to creating some gui games. I took a class in C# this semester, because I previously had taken an intro to Java class, which had given me info on loops and arrays, one of our projects was to create a console game. I create minesweeper, where you just selected your position by typing it in. It was actually pretty fun to make.

The point is, is that you'll gain a lot more from hands on experience than from reading from the book, in my opinion. I've read sections of my textbook 10 times over and still don't know what I'm doing, I go to implement it, it doesn't work. I get it working, I kinda understand better. Again this is all just personal opinion, but if you can create something simple from scratch, like a pong game, and you understand it perfectly well, it doesn't really take all that long. You could probably make the entire game in about 2-3 hours if you understood everything, and yet it took a group of us in class 2 weeks to get it working properly when we were still learning that stuff.

(Also in case this is understood as such, I'm not saying don't read the books, they are great, I'm saying to practice the stuff you traditionally see in the first 8 or so chapters of a programing book (Which is like, creating strings, ints, doubles, floating points, printing out statements, sending information to the program with input, arrays, loops, drawing shapes) because for me and my class, it's poor understanding of those first semester / second semester concepts that are causing issues, not the higher up database and networking stuff)

Brain
Brain

it is possible to learn C++ simply by reading example programs and playing with them to see what they do.

To do this though, you first need to understand other languages and it helps to understand object oriented principles. For the life of me i could not understand C++ at all at age 14, but when i came back to it after college, and after learning assembler, pascal, basic, delphi and a bunch of other stuff, it just made sense.

C++ is not a very newbie friendly language by any means, and although i am sure others might sneer at me for suggesting it, I did learn a lot from pascal which was the mandated language at college for me. You can probably get the same experience out of any modern object oriented language such as python.

galleyh4us
galleyh4us

Please, please get a grip and don't waste your time. You still have a good 4-5 years before anything is actually important. Make a few games and start off your adult life miles ahead of your peers financially (if they are good enough to sell remotely well).

Gian-Reto
Gian-Reto

Please, please get a grip and don't waste your time. You still have a good 4-5 years before anything is actually important. Make a few games and start off your adult life miles ahead of your peers financially (if they are good enough to sell remotely well).

Wait a minute, isn't youth meant to be wasted? smile.png

Seriously though, I think at his point in life learning is actually much more important than making quick bucks. He WILL start ahead if he puts in the time needed to actually finish games in the next few years, as many people will not achieve that until after university. That is much more valuable than all the money he could earn.

Also, chances are his games will NOT sell at all. Creating a title that sells well, no matter on which platform, requires many skills way outside of game dev (marketing, advertising, economical), which he most probably cannot grow at the same time as learning the basics of game programming.

"Create it and they will come" never really worked, especially not in todays hypercompetitive gaming market.

I wouldn't worry about financial success for now... that is the luxury of youth (for most people anyway)... do it as a hobby, try to have fun with it, create what interests you (and you are capable of finishing), and you will learn a lot for the time when you really need to make money. Don't waste your youth, man. Learn and have Fun, and worry about the future when it arrives smile.png

alh420
alh420




I chuckled at "computer scientist". Good luck getting a PhD to be considered one lol.

Apart from what all others already commented; Why would it be so impossible for him to become a PhD if he set his sights on it? It's not like it requires magical powers or anything.

Gavin Williams
Gavin Williams

@Olof Hedman - no but it's damn hard. Most people who start a degree will not reach master or doctorate level. It does take unusual commitment.

alh420
alh420




@Olof Hedman - no but it's damn hard. Most people who start a degree will not reach master or doctorate level. It does take unusual commitment.

Sure, but it is far from an unachievable goal, lots of people get their PhD every year, and no young person thinking about their future needs to hear it is something they can just forget about.

The guy is 13 years old, and is already looking for ways to learn more and faster, and in a foreign language too, I'm sure he could manage a PhD if he really wanted to.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.