Want to get into programming and code, any advice?

Well, I plan on becoming a video game developer in the future or anything related to code (possibly a computer engineer) and I know absolutely nothing about coding. I am in high school at the moment and it turns out in the academy I take (engineering academy), C++ and Java are a required course. I figured it might be something hard to figure out, so I am thinking about trying to get the basics or a head start above everyone else just simply waiting for the next year to happen, and I am one of those types of people who can get really frustrated with things. I'm just wondering, what good advice can you give me on trying to get into programming?

 

Anything helpful given and I will thank you for it... and if I think you're a cool guy/girl immediately, which may not happen easily, I might give you cookies... or something.

Try to have an open mind when programming, but be creative and use your own ideas as well. I think a lot of people just go online for help, rather than sitting down and solving the problem at hand—at least that is just my experience, and I can't vouche for anyone else.

 

I hear that coding is quite a lot of trial and error. Can you give me any light on that topic by any chance? Ain't saying I have problems with that, I'm quite use to it after not being able to use internet until I was 9 and had to figure out games such as Zelda myself without those awesome strategy guides XD

Yes it is quite a lot of trial and error, even for people who know what they are doing most of the time; we are all students, I suppse. Someone once asked me:

"Why are so many programmers atheist?"

I responded with:

"Because no matter how many times they pray to God their program still won't compile. Trial and error is king. "

 

There are a few types of errors in programing including:

 

•Syntax errors.

•Compile errors.

•Logical errors.

 

Syntax errors are easy to fix, along with compile errors, but logical erros are the bane of a programmers existence; they are caused when a section of code does not act the way a programmer expects it to.

for c++ www.cplusplus.com is a good reference manual. Bjarne Stroustrups homepage http://www.stroustrup.com/ is also a good place to start with c++. Maybe even get a text book. Try to implement some simple algorithms and get into object oriented programming.

When you feel for it you could try to get into C++ 11 for some multicore programming (it seems to be where we are headed these days). (I usually program for Microcontrollers and other devices called FPGAs, so i don't know much about visual programming. (like opengl and directx). For an easy to use with c++ window manager for making things other than console programs you could try the fltk library with fluid or the Qtk).

Just remember it is fun to program and it is exciting to get code to work, but it is hard work and you can be a little demotivated at first, but when you get something to work it is one of the greatest pay offs ever. Writing good code comes from understanding the principles of the programming language you use. Do try to get a book on algorithms (just an very elementary one so you get the idea of how to develop your own algorithms) good code is also good mathematics.

 

good advice...

also make your code as easy to read as possible (using obvious names for variables and functions and don't litter your code with too many comments)

it will be easier to debug.

programming is about 40-60% designing your programming, maybe 20 % actually writing code, and rest is debugging (what went wrong?)

Programming is hard to get into at first. You will most likely rage quit during your first couple of days. It takes a lot of determination to learn a programming language. I suggest starting with something simple then moving up. You can use Lua for making GMod gamemodes, ROBLOX games or use it to code computers for a mod for Minecraft called ComputerCraft(www.computercraft.info). Python is good aswell. I would suggest learning a scripting language first then moving on to a programming language. It worked for me so I don't see why it won't work for you.

If it's an enginering programing course then it's not a bad idea to pick up a small SOC(System on chip) such as an arduino, or Chipkit32(There are other smaller boards that are cheaper, just can't think of them off the top of my head) then you would get practical development experience and have the type of programing skill(Computer engineer) as that type of programing mostly is IO and raw data from sensors. Game development is mostly* scripting and languages like javascript or unreal engines UDK script which is another form of developing that is more suited for games. Alot of the hard work is handled by the engine vs you haveing to write your own engine for the game your makeing which can be a very complex time consuming task for a beginner. but you could look into C++ development using DirectX those C/C++ skills would transfer to either type of developing you decided to go with, but if you get frustrated starting off in C/C++ is one of the hardest languages to learn and can make experienced professionals pull their hair out so I would go with a scripting language. The only exception being C# which can be used in traditional programming or scripting. best of luck and remember a computer program will always do what you tell it to do, but rarely what you want to do.