Hello, as the title says, I'm wondering where to start learning programming and also if I should learn several languages at once. I've played around in Java, and now I'm mostly in c++, because I like the language, structure and that it's widely used in games.
I'm currently learning from the site "www.udemy.com", on a beginner course to c++. I've read a lot on learning to program, and it seems that most if not all recomend books. A few also recomends python as the beginning language. I do understand that python probably is easier to learn, but is it worth learning it first?
I'm currently studying chemistry, so I have very little time to learn anything else. The reason I want to take up programming, is because I want to create games/software, and maybe continue with this path. I know that I'm at least going to work for 2 years to get my degree in chemistry, before I even consider going back to school for programming.
So the bottom line is:
1. Recomended books for learning programming
(note that English is my second language)
2. How to study. Like reading then programming, or programming, reading then programming etc.
3. How long would it take before I can expect results? I'm guessing 4-5 months, then a year or two before I can start on real games/software.
4. Is it important to know what everyting is called? I know the basic names like for loop and function and such, but when it comes to more spesific names like "assigned value" or "return type" or "object", and such. Do I need to know absolutly everyone, or is this something I can learn as it comes? I know the basic prinicpal of "object", but if someone said to find a string that is an object (not sure if that even makes sense) I wouldn't know what to do.
5. Do you need to be quoute on quoute "smart", to learn programming? I'm considered smart by just about everyone I know, but I can't say I really feel smart. I have great grades, mostly A's and B's, but then again, I do study a lot to keep those grades. I'm also learing this in my native language, which makes it a lot easier. On the contrary, I'm learning programming on my own, in my second langugage, with the help of a dedicated online community.
Thank you for taking the time to read all this and sorry for poor grammar and most likely a lot of misspelling.
First of all, id like to say that im surprised no one replied to your post by now.
OK, you seem like you are pretty hardworking, and since you seem pretty smart as well, I would say : Screw python, go straight to c++. Its really a superior language in many ways, while its a bit more difficult, the results will be A LOT more complete and rewarding.
To know (and i say "know", not master) the base language of c++ could take you a few months. Its really just about getting comfortable with the language, which takes the most time. I would recommend videos on youtube over books, they seem to be less stressful, less intimidating, and more visual.
Here are some AMAZING youtube videos / video series that I used and even still use a bit now.
-Buckys C++ Programming Tutorials (by Thenewboston)
- And once you have finished most of those tutorials look at this one hour lecture on the ENTIRE base c++ language (its great for brushing up):
- C++ Programming (by Derek Banas)
Now you are ready to move on to gamedev, look up SFML c++ library, you will find TONS of tutorials, and a lot of books as well.
Note: to answer your questions, watch the videos or read each section of a book, then code. You can start doing nice looking games in 4-5 months if you work to it. You can start out knowing nothing then come out knowing everything. you need to be persistent and a pretty good problem solver to program well, not a genius.