Programming - Where to start?

Hey Everyone, I found tek syndicate not too long ago via youtube. This community always seems really helpful and great so I figured I'd dive into it as well.


 I want to learn to code, my goal is to one day be able to produce a video game. While that is a lofty goal and one I know is far off, how does one start? Where does one learn to code? What languages do I need to learn and which are beneficial just to know?


Let me start off with the main question; Where do I start?



I've tried some online tutorials but they are hard to keep straight and while I learn a few things I'm not sure I'm getting the best thing. Would a college course help me to better learn this or would being self taught through internet tutorials and practice be what I need?




How do you keep yourself focused? I can do it, I know, I just sometimes find it hard to stay focused while doing this. Maybe a few minutes break would help during the more tedious exercises?


 I really want to learn. I have a goal, and I want that goal to become reality. I just don't know where to start. Any help would be greatly appreciated.

Hit the books bro, it's the best way to learn. you can't just become a code master over night from youtube tutorials, as much as i'd like that to be the case :/

Lol I didn't expect it to happen over night. I know it'll be work. Where do you find books on this? How do you know which ones will help you the most?

That's some really good advice. I should look into game modding. Scripting languages could be a gateway into something. I'll keep all that in mind, thank you!

Dude, you are wanting to do something where it takes programmers years to actually get to the point of being able to program a game. I know there is a Python Programming book for bigginers that you learn how to create a small interactive game, but if you are wanting to get far as creating an Indie game, then you are going to be putting a ton of time into it. 

I'm not putting down you goals, or your attempt to creat a game, I just want you to realize that its not going to happen overnight, or in a month. You could possibly get something small out in a year, it all really depends on your learning code, and what you are going to stick with. 

I'm a Web Developer, and I deal with programming languages that are used for Websites, and I have dived into Python, and it is something totally different. But if you are able to get the logic down, and able to program libraries that house a lot of your code, then I bet you'll do great. Without school, hit the books, that is really the only way you are going to learn. 

I suggest starting off with a small programming language that is simple to give you the foundation of what an advanced language is going to withhold. Like Java, C++, and Python.

I understand it won't happen in a day, week, or year. I just need to know where to start. Everyone suggests books but how do you know which books are good for this type of thing?

I know my goals are lofty, they're out there. But that's why they're goals. May as well hope for something instead of wondering why games I want aren't created.

I also want to ask for some good tutorial materials to learn for Java, C++, C# and possibly Python. Many hours have been spent browsing the web for solid information but I have been unable to learn properly from most of the online tutorials I have found. I know programming is not an easy task to learn but I did dabble with C++ during High school a little. FYI I dont want Hello world examples as they are easy. Oh and I would prefer online based tutorials but not youtube videos and links to specific  books are welcomed.

if you want to make a game, look into learning somehting like unity. coding your own engine is very very hard. (and time consuming)

 

however, if you do want to learn to code, start with c++. look up an IDE (what you program in) called code::blocks and download the version that comes with mingw. pick up a book on c++ and start coding. there are also youtube tutorials, and ebooks, but having a phisical book is usualy better, as you have to read the material and you cant copy paste, so any errors you make while trying you have to fix (which will help you learn)

 

if you have any questions, you can email me / shoot me a pm. been coding for 4, almost 5 years now...

I basically learned by watching youtube and getting the basics, then as i began coding, I started using documentation and finding new functions and methods

I am not very far along into programming but I can tell you what I've done to get the ball rolling. 

I started slogging away and got discouraged and then a friend turned me on to http://www.codeacademy.com 

it's not perfect but it's a great motivator. You get points for completing lessons and there is an achievement system. It makes learning this stuff feel like a game. 

 

I used it until I got frustrated switch some inconsistency or old info.

then I downloaded notepad++ ( works with most languages and has some sweet plugins.) an started going to town on an idea. I grabbed the latest book on the language I was working on (html5 and css3) and refreshed some basics got someNew perspective.

 

Along the way its been friends and this community that have helped with whatever question I've had. And the bigges motivator for me is figuring out solutions to problems that pop up or that I accidentally make.  Work on things that are important to you. It makes it all so much more fun. 

 

Learn the basic concepts first. Those basic concepts can be then applied to pretty much any language, the actual language you use will be based on your goal and the platform, not necessarily your personal preference. Get a good book ("The C Programming Language" by Kernighan and Ritchie is a good choice) and read it before attempting to write anything.Then read it again. Then you will understand the techniques and terminology that will be used in tutorials and you will also learn good coding practices. Writing code is easy, writing good structured code is what you should be aiming for. Get a good IDE. While you can program most languages using just a text editor and a command line compiler it is a major pain in the ass.

Another good place to start is to start looking at the code of open sourced games and games you are allowed to decompile, like say Minecraft is a good place to learn Java. Just look into book like someone said before me. A third option is to goto college, you'll learn things there but it'll be a bit pricy.

note: I don't know how to code, but from experience with html (yes, I know it's not code, but the same principles apply), these are my reccomendations:

 

as for starting language, I suggest C++. it's one of the most widely used languages out there.

I reccomend starting out with a good IDE, such as what ztrain reccomended. it's a pain to use a text editor, even for html, probably more so for code.

how you learn is something that is up to you. everyone learns differently. try online youtube tutorials and websites, and if it doesn't work for you, you can get a book. maybe find a friend who codes, and see if he will help you get started. one thing that is pretty much universal is that you learn best by doing. the more you code, the better you will get. try experimenting with different aspects, see how it affects it.

don't grind. take regular breaks while coding, and don't spend an entire day on one thing. work for an hour or 2 at a time, otherwise, you will get tired and burn yourself out.

if you are really serious about it, and want a career in coding, then college is your best option. computer science is the field/major, and is offered at many 4 year colleges.

 

I completely disagree with you.

 

HTML is a way to save data. Programming is transforming data. They have nothing in common and I can't think of any principle which applies for both.

I suggest either Python or C for the start. Python will teach you how to think to solve a problem, C will teach you how the computer and your kernel/OS work. C++ is somewhat in between so you could do both but not good.

It might be a pain to use a text editor and an IDE might look usefull and not so much pain at first but it has a few drawbacks which I find to strong to use it. As long as an IDE works like you expect it to work it might be a little bit better than a plain text editor but as soon as something starts to conk out you're fucked up because it hides all the important stuff. Which leeds me to the other point... it's bad if you want to understand what's going on. All the magic might be nice to have but it will hinder your learning experience and you lose the fine control.

 

It's just my humble opinion.

I was not saying they were similar at all; in fact, I was not even talking about either, rather about how one likely goes about learning them. I was saying is that how you learn programming is likely similar to how you learn html.

if you want to learn c++ go here http://www.youtube.com/course?list=ECAE85DE8440AA6B83

or look around his channel for other languages.

I am a big fan of Bucky Roberts, he makes programming not only fun, but also very intutive, if you like this one, he also has C# which is more windows desktop application based, but can also be used for the web with asp.net

if c-based languages (c, c++, c#, php, javascript) are overwhelming right now you can try some alternatives

as for python, there is a nice python tutorial at http://trypython.org

a language I picked up recently that I have grown very fond of is ruby: http://tryruby.org

edit: actually i just found that Bucky even does UDK (Unreal Developer Kit): https://www.youtube.com/course?list=ECFF967D7CA020E636

 

as for what to start with, you can really start anywhere, programming has some concepts you have grasp, once you do, you can move into a language for the environment you wish to work in.  I started as a visual basic 3 16-bit windows, then made websites with html, css, and javascript for years, now i use linux and develop web applications.  Doesn't matter where you start, just get started :D

Try edx.org or coursera.org free online classes from some universities. I think a intro to python class started about a week ago on edx.org. Try that! :D

Hope this can help, he makes some good videos https://www.youtube.com/user/thenewboston

Check out 3dbuzz.com. They have a awesome Member sponsor class for C# and C++, and they even have a Unity course using C# to make a video game.