Language Advice

Started by
12 comments, last by nooblet 10 years, 11 months ago

Thanks everybody for your input with this.

@0r0d- It's not that I don't want to learn the material, it's the fact that I get frustrated with myself when I can't grasp the concept initially and eventually give up and blame the resource from which I'm learning the concept, although it's just me not pacing myself. Whenever I program without studying from a book or tutorial, I always have a blast and end up doing it for 12-14 hours straight because I don't realize the time has flown by.

@Ectara - Yeah, I definitely understand what you mean. When I was studying C++, I learned some object-oriented principles, and of course the basics (like variables, functions, blah blah), so when I transitioned into C# it was amazing how much simpler it was to learn and grasp new concepts instead of spending days reading books and tutorials to try and figure out what functions and methods meant tongue.png.

Maybe you picked the wrong tutorials if you became frustrated with pointers?

Here's what I do when I can't seem to understand some programming concept:

For example let's say I am reading on pointers here:

http://www.cplusplus.com/doc/tutorial/pointers/ (it's nicely written so you can check it if you haven't done so already)

If after I code plenty of "programs"(based on the ones in the chapter) I still cannot grasp pointers, I try another tutorial or book. There's no use getting discouraged when you don't understand something or if you can't grasp it fast enough - maybe it wasn't explained the way for you to understand - different people need a different approach to things. So I would recommend you to check up on these links:

(I cannot say that any of these tutorials/books is the best - I think it depends on the person, so you can check them out and find the best ones for you)

C++ tutorials:

http://www.cplusplus.com/doc/tutorial/ - you can download it as a pdf

http://www.learncpp.com/

http://www.tutorialspoint.com/cplusplus/

http://www.cs.wustl.edu/~schmidt/C++/

http://www.cprogramming.com/tutorial/c++-tutorial.html

Books:

http://isocpp.org/get-started

http://www.computer-books.us/cpp.php

http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list

http://www.amazon.com/Sams-Teach-Yourself-One-Hour/dp/0672335670/ref=sr_1_3?s=books&ie=UTF8&qid=1369211609&sr=1-3&keywords=C%2B%2B

(some people recommend these versions though:

http://www.amazon.com/Sams-Teach-Yourself-Days-5th/dp/0672327112/ref=sr_1_1?s=books&ie=UTF8&qid=1369211793&sr=1-1&keywords=Sams+tech+C%2B%2B

http://www.amazon.com/Sams-Teach-Yourself-Hours-5th/dp/0672333317/ref=sr_1_2?s=books&ie=UTF8&qid=1369211793&sr=1-2&keywords=Sams+tech+C%2B%2B

)

http://www.amazon.com/gp/product/1435457420/ref=s9_psimh_gw_p14_d0_i1?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=center-2&pf_rd_r=1XZJA2XBCZA18ZAPEASD&pf_rd_t=101&pf_rd_p=1389517282&pf_rd_i=507846

http://www.amazon.com/Accelerated-C-Practical-Programming-Example/dp/020170353X/ref=sr_1_13?s=books&ie=UTF8&qid=1369212060&sr=1-13&keywords=C%2B%2B

http://www.amazon.com/Ivor-Hortons-Beginning-Visual-2012/dp/1118368088/ref=sr_1_fkmr0_1?s=books&ie=UTF8&qid=1369212096&sr=1-1-fkmr0&keywords=C%2B%2B+ivor+hor

http://www.amazon.com/gp/product/1840784326/ref=s9_psimh_gw_p14_d0_i7?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=center-2&pf_rd_r=1XZJA2XBCZA18ZAPEASD&pf_rd_t=101&pf_rd_p=1389517282&pf_rd_i=507846

http://www.amazon.com/Primer-5th-Stanley-B-Lippman/dp/0321714113/ref=sr_1_7?s=books&ie=UTF8&qid=1369211855&sr=1-7&keywords=C%2B%2B

http://www.amazon.com/Absolute-C-5th-Walter-Savitch/dp/013283071X/ref=sr_1_1?s=books&ie=UTF8&qid=1369212165&sr=1-1&keywords=absolute+C%2B%2B

There are surely many more links that could be added and I'd be happy if the community does so. For now you can try checking out these ones.

P.S. Great thing there is a View autosaved content smile.png - I unintentionally closed the tab I was typing into.

Advertisement

TLDR: Stopped learning C++, went to C#, getting stuck at the "harder" subjects for both languages, and now I'm having trouble deciding if I should continue down C# or start to learn C++ now to make myself a better programmer.

Core programming skill is not about knowing a language. It's about the big picture of solving and managing the complexity of actual problems. Achieving a reasonable level of mastery over some language is just an initial hump you have to get over. With C#, you can get over it much faster than with C++, and the real progress can begin.

So stick with C#. You can (and should) learn more languages later, when you are already a decent programmer. For a beginner, C++ is just about the worst major language.

So stick with C#. You can (and should) learn more languages later, when you are already a decent programmer. For a beginner, C++ is just about the worst major language.


This, I can agree with. I have 100 arguments why C is an easier language for a beginner to learn than C++, but if basic concepts need to be honed first, then I'd recommend C#, Python, or some other language that doesn't deal with the implementation details of the hardware. I started with BASIC many years ago, and I would not recommend it unless you are a mathematician.

Hi everybody,

Thank you all for the advice with this, especially lightxbulb for all of the resources for learning. I wouldn't necessarily classify myself as a "beginner", but I'm not great. I understand functions, classes, the flow of programs, arrays, looping, inheritance, and some other concepts. It's just "mastering" the language where I'm having trouble. Usually, when I learn a new topic for programming, then I immediately go out and create a new project and then get stuck again somewhere and stop learning again. I've made my own 2D games multiple times, and can say I'm a little better than most beginners, but I'm definitely not a great programmer as of right now I don't feel like.

I think what I'll do is do some more studying with C# for a few months. I'll learn some of the other topics for it, such as debugging, event-driven programming, collections, and lambdas (I think that's what they're called?), and then when I feel like I'm a confident C# programmer, I'll start to transition into C++ and eventually make that my primary programming language. I think it'll be easier for me to transition into C++ rather than trying to master it first, plus I really enjoy C# right now just because of how simple it is and how easily everything fits together.

This topic is closed to new replies.

Advertisement