Online Course any good?
I've bought several books regarding C, C#, and C++ but none of them really teaches me and keeps me interested. I'm currently entering my last year of high school and i want to accomplish something outside of school.
Anyways, what do you guys think about taking an online C++ course? I've browsed through "E-Learning" and it seems alright but I'm not sure if i should try it.
Are there any other methods you can reccomend for learning C++?
I'm learning C++ right now for a job. I think I'm progressing pretty quickly, I have about a month of experience right now.
My method involves getting a textbook and reading chapters start to end. I've never done this before, but it's very helpful. The reason I find the need to read EVERYTHING is because there's simply way too many pitfalls, and often, there's no error message (think accessing outside the limits of an array).
I then write codes and try them using Dev-Cpp to try out any new abilities covered in the text. So when I read about do while loops, I wrote a few to play around with them.
Other than that, surround yourself with people that are better than you. This board is a great place to be. I have a good friend that's great at c++, and while I don't ask him every little question (you learn best by finding the answers yourself), it's nice to have him there for when I'm really stuck.
Also, even though I don't post much here, I read almost every thread. This keeps me up on common problems and exposes me to potential pitfalls. It also shows me how much c++ can really do, and gives me ideas for my own future programs.
Good luck, teaching yourself programming is a great hobby (looks great on resumes). And if you need motivation, every one of my friends (we're in engineering school) who got jobs this summer was asked if they knew c++.
And we're making pretty good money.
I second Shaun's approach. Read, write, learn. After you feel comfortable with the exercises and have gotten familiar with classes, OO, the standard library, etc., write a small application.
And make sure that after you finish your introductory text, you get Scott Meyer's "Effective" books. C++ is a very versatile, powerful language, and it's easy to fall into traps. Scott shows you how to tame the beast and he's very entertaining as well. God bless Bjarne, but his books are dry and clinical.
BTW, the comp.lang.c++ Usenet group (accessible via Google Groups) is a wealth of good information dating back decades.
An online course wouldn't hurt, but how much will it cost? ...I'd say 5 to 10 times the cost of a C++ book would be fair... Say $100 - $250 USD. But, 20 times the cost of a book would be too much for an online class (in my opinion).
A formally structured course can help a lot. Most professional programmers (and many of the experts here*) have taken computer science / programming courses in college. It gives a structured sequence to your study, and the fact that you are graded helps add to the motivation. Heck... just going to class regularly helps with the motivation. The homework, grades, quizzes, and tests give you feedback to let you know how you are doing. When you are learning on your own, it can be hard to know if you are learning enough, or learning the "right things".
I think a class is also helpful if C++ is your first programming language. Most books just teach the programming language without teaching you "about programming". A beginning programming course (in any language) should cover some important overall programming concepts and theories.
And, an in-person class allows you to work with, and learn from, your fellow students.... a huge benefit. And the direct interaction with the instructor can help a lot, especially when you get "stuck" on something.
In general I'm very suspicious of "trade schools", both on-line and 'brick and mortar". A lot of these schools exist mainly to collect student loan money. I'd be especially suspicious if they want all of the money for a series of courses in advance... You should be able to pay for one course/semester at a time.
If you have a nearby community college, maybe you can get in, even though you haven't finished high school. Sometimes you can get both High School and college credit for a community college class. You might check with your school counselor... That kind of thing is their specialty and your counselor probably knows how to get you into a "real" class in a community college or maybe another school.
* I took some programming courses (other languages, not C+) in college as well as an "adult education" class. (But, I'm not one of the experts.)