Thread: Problems with Programming Terminology is hindering learning process.

  1. #1
    Registered User
    Join Date
    Jan 2011
    Posts
    4

    Problems with Programming Terminology is hindering learning process.




    Hello everybody,

    I'm desperate to know how I can get over this learning curve. I should tell you that I have been exposed to programming before (Qbasic, HTML, CSS, ASM, C++) but it has all been very basic stuff. I've been trying to self teach myself code for years now and I still can't fully grasp it yet. I LOVE programming and all it has to offer, but the language used is hard to understand. This sounds stupid because my first language is english. But all the programming books/e-books that I've started to read make me want to put them down because they become hard to understand when explanation of a concept is being layed out. The other day I remembered a term (Recursion) from an article I was reading that made me stop because They didn't explain it thoroughly enough for me. I understand that computers are dumb and when programming you have to code every action that is taken by the user and machine. But isn't there a book that tells you exactly how you should create a function? And things like "destroying" a function, that sounds cool but it also tells me that functions need to be created and destroyed I never new that. What is that principle? I can learn pretty fast if the language does not require you to understand riddles because that is what i feel like I'm reading books with alot of riddles. Jeez! I don't spend enough time at my computer in front of and c++ ide to advance in my quest. It's beacuse I draw a blank and don't know where to begin, I certainly have ideas but can't code those ideas. Maybe i need to read more? I want to learn OOP but i wish there was a stupid, simple explanation i could use that would make sense. I dunno, maybe reading this rant one of you could remember how you learned code and share it with me. Ive lots of ideas for programs, plugins, API's but I lack rudimentary knowledge of my language. Please Help!

    Thank-you

    GYes777

  2. #2
    and the Hat of Guessing tabstop's Avatar
    Join Date
    Nov 2007
    Posts
    14,336
    Don't treat a textbook/reference book like a novel. If you're not ready to read a chapter five times, then you're not ready to learn the topic.

  3. #3
    Algorithm Dissector iMalc's Avatar
    Join Date
    Dec 2005
    Location
    New Zealand
    Posts
    6,318
    "destroying a function" makes no sense, in regards to procedural programming languages. "Create a function" probably just means "write a function".

    Recursion - stackoverflow.com

    Cant help much without knowing what terms you don't understand. What can we tell you that you cannot get answers from Google for? "Please tell me everything" gets you next to nothing.
    My homepage
    Advice: Take only as directed - If symptoms persist, please see your debugger

    Linus Torvalds: "But it clearly is the only right way. The fact that everybody else does it some other way only means that they are wrong"

  4. #4
    -bleh-
    Join Date
    Aug 2010
    Location
    somewhere in this universe
    Posts
    463
    you have to write code to learn code.
    "All that we see or seem
    Is but a dream within a dream." - Poe

  5. #5
    and the Hat of Guessing tabstop's Avatar
    Join Date
    Nov 2007
    Posts
    14,336
    Quote Originally Posted by iMalc View Post
    "destroying a function" makes no sense, in regards to procedural programming languages.
    I'm pretty sure he was reading about destructors. What he got out of it....

  6. #6
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    What 'terms' are you having problems with? Your post is extremely vague. We cannot assist you if you do not have a specific question.

  7. #7
    Algorithm Dissector iMalc's Avatar
    Join Date
    Dec 2005
    Location
    New Zealand
    Posts
    6,318
    Quote Originally Posted by tabstop View Post
    I'm pretty sure he was reading about destructors. What he got out of it....
    Wow, then his failed attempt at putting it in his own words suggests that he understood less than nothing of it.

    When you don't understand what you're reading - stop reading. You learn to program by doing!
    My homepage
    Advice: Take only as directed - If symptoms persist, please see your debugger

    Linus Torvalds: "But it clearly is the only right way. The fact that everybody else does it some other way only means that they are wrong"

  8. #8
    Registered User
    Join Date
    Jan 2011
    Posts
    4
    Thanks guys for all your input! I apologize for being vague when I was talking about my problems with C++.

    The terms or phrases used in textbooks really are oversimplfied and sometimes mean the same thing twice, am I right? For instance:

    "invoking", "iteration", "convention", "arguments=variables?", "function prototypes?", "constructors", "members" etc

    Some of the examples provided usually introduce a topic but then introduce something else that hasn't been covered, that really makes me mad!

    Maybe I do need to re-read the books again and again, but isn't there child-like books on c++ programming that can get me up to snuff in as little as a week?

    I really want to start this API and Web mashup as my beginnning to learning the language. Hope this helps.

    Thanks again,

    GYess777

  9. #9
    Registered User rogster001's Avatar
    Join Date
    Aug 2006
    Location
    Liverpool UK
    Posts
    1,472
    well maybe its just not your game if you have such problems with the lingua franca- however i recommed the c for dummies or c++ dummies books as it will gradually introduce the terms you are going to encounter. also you have to think of it like any trade, in carpentry or building for example- noggins, what the hell is that?? well its just a piece of wood used for support in a floor frame. point is when u know about building floor frames you start talking about noggins
    Thought for the day:
    "Are you sure your sanity chip is fully screwed in sir?" (Kryten)
    FLTK: "The most fun you can have with your clothes on."

    Stroustrup:
    "If I had thought of it and had some marketing sense every computer and just about any gadget would have had a little 'C++ Inside' sticker on it'"

  10. #10
    Registered User
    Join Date
    Jun 2005
    Posts
    6,815
    Quote Originally Posted by GYes777 View Post
    The terms or phrases used in textbooks really are oversimplfied and sometimes mean the same thing twice, am I right? For instance:
    It depends on your textbook. Some textbooks over-simplify to the point of meaningless. Some use the same word to mean different things at different times. Some terms do actually have a meaning that depends on context.

    Quote Originally Posted by GYes777 View Post
    "invoking", "iteration", "convention", "arguments=variables?", "function prototypes?", "constructors", "members" etc
    The first three of those are english words - the only thing that happens in programming is that those words are interpreted in a particular context.

    Invoking just means "causing to happen" - invoking a function means calling the function. Invoking some section of code means causing that code to be executed.

    Iteration just means "to repeat". In a programming language, there are usually constructs to make things happen repetitively, until some condition is met (repeat until we stop).

    Convention is just an accepted way of doing or representing something. The C++ language itself is a convention. The way the compiler translates code into an executable (eg passing data to functions) relies on a convention - otherwise there would be no predictable way for any code to produce the intended results.

    The other terms you describe have particular meanings. For example, in C++, a constructor is a particular function called in the process of creating an object in order to initialise that object.

    Quote Originally Posted by GYes777 View Post
    Some of the examples provided usually introduce a topic but then introduce something else that hasn't been covered, that really makes me mad!
    That is either a sign of a badly written book, or a of book that is written with an assumption you already know something.

    For example, most books about baking cakes - by convention - assume you know how to use an oven. If you don't know how to use an oven, you will find books about baking cakes very frustrating.

    An advanced textbook will often assume you have read - and understood - more basic textbooks. If you start reading an advanced textbook before you understand the basic ones, you will be very frustrated.


    Quote Originally Posted by GYes777 View Post
    Maybe I do need to re-read the books again and again, but isn't there child-like books on c++ programming that can get me up to snuff in as little as a week?

    I really want to start this API and Web mashup as my beginnning to learning the language. Hope this helps.
    It's possible you've picked up a book that assumes you know more than you do (in fact, from your questions, I suspect this is what you have done). It's also possible that you have picked up a badly written book.

    There are no "child-like" books on C++. There are some good introductory texts. However, I suspect your problem is that you think things are easier than they are. Writing a web mashup in C++ is not something you can expect to do in a week - C++ does not work at that level. It's something you might consider after you have a few months (or, if you're under a tight deadline, a few years) experience with C++ and also with various libraries and tools relevant to that job.

    However, if you're expecting to be "up to snuff" in a week, you will be disappointed. I've used C++ professionally for well over a decade and there is a lot that I don't know about it.

    There is only one approach to getting up to snuff in C++. Hard work.
    Last edited by grumpy; 01-08-2011 at 05:14 PM.
    Right 98% of the time, and don't care about the other 3%.

    If I seem grumpy or unhelpful in reply to you, or tell you you need to demonstrate more effort before you can expect help, it is likely you deserve it. Suck it up, Buttercup, and read this, this, and this before posting again.

  11. #11
    Algorithm Dissector iMalc's Avatar
    Join Date
    Dec 2005
    Location
    New Zealand
    Posts
    6,318
    arguments: The things that you pass to a function, inside its brackets.
    variables: The named things that hold data, like numbers (e.g. int x).
    function prototype: A line that describes what a function is called, what its arguments are, and what its return type is etc.
    members: The variables that belong to a class.

    These kind of terms are all very easy to understand if you do a quick google of them.
    Last edited by iMalc; 01-08-2011 at 10:16 PM.
    My homepage
    Advice: Take only as directed - If symptoms persist, please see your debugger

    Linus Torvalds: "But it clearly is the only right way. The fact that everybody else does it some other way only means that they are wrong"

  12. #12
    -bleh-
    Join Date
    Aug 2010
    Location
    somewhere in this universe
    Posts
    463
    Here's pretty much the learning process of C/c++:
    1. write some code, get compiling errors, then fix it.
    2. write some more code, get run time errors, then learn to fix it.
    3. write some more code, get no errors but wrong answers, then fix it some more.
    Last edited by nimitzhunter; 01-08-2011 at 07:44 PM.
    "All that we see or seem
    Is but a dream within a dream." - Poe

  13. #13
    Registered User
    Join Date
    May 2009
    Posts
    4,183
    Here is an C++ Glossary I ran across last week
    C++ Glossary

    Tim S.

  14. #14
    Algorithm Dissector iMalc's Avatar
    Join Date
    Dec 2005
    Location
    New Zealand
    Posts
    6,318
    Quote Originally Posted by nimitzhunter View Post
    Here's pretty much the learning process of C/c++:
    1. write some code, get compiling errors, then fix it.
    2. write some more code, get run time errors, then learn to fix it.
    3. write some more code, get no errors but wrong answers, then fix it some more.
    That's so accurate that I just had to LOL
    My homepage
    Advice: Take only as directed - If symptoms persist, please see your debugger

    Linus Torvalds: "But it clearly is the only right way. The fact that everybody else does it some other way only means that they are wrong"

  15. #15
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by GYes777 View Post
    I'm desperate to know how I can get over this learning curve.
    Don't feel bad. I've been where you are... and worse.

    I've some programming experience with Pascal and lately I've been working my way through the intracacies of C... It's all good and so far most of it is making sense to me. I've even got some freeware out there I've written in C.

    But, when I load up VC and try making sense of C++ I am the proverbial windshield bug... I get to a certain point and then this old brain just freezes right up. Objects, Classes, etc. just don't make any sense to me... I'm sure it's simple but so far I've never seen an explaination that makes any sense whatsoever to me. And, I assure you, it's not for the lack of trying.

    C++ strikes me a like Linux... There is good reason to learn it, especially considering how Windows is slowly moving to an all OOP interface. But you really do need to know somebody. You need someone you can call who will make sense of it for you and show you how things work... because it's for certain you aren't going to get it from the documentation.

    In both cases the books, tutorials and "how tos" seem to all be written for people who know the broader strokes and are stuck on the specifics. But if you don't get the bigger concepts and ideas, all those tiny little specifics aren't going to help you one little bit. These are documents written by people who already know the language (or OS) for people who already know the language (or OS)... They're not written for someone who has never even tried programming before. They start at a level far too high for the totally uninitiated to even hope to understand.

    Now don't misunderstand this... I would love to learn C++ and have tried many times. But I always end up in the same place... "Why do I need a class here" and "What exactly does this accomplish"... I get how a class is put together, I get some of how you use them... but I don't for the life of me understand why I need them... They just don't make any sense to me.

    When I try C++ I end up feeling like the apartment dweller who's just been sold a rototiller...
    Last edited by CommonTater; 01-09-2011 at 12:38 AM.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Tidying up Code and Compile Problems
    By suchthefool in forum C Programming
    Replies: 3
    Last Post: 08-11-2009, 02:42 PM
  2. Machine Learning with Lego Mindstorms
    By DavidP in forum A Brief History of Cprogramming.com
    Replies: 14
    Last Post: 01-30-2009, 02:34 PM
  3. learning Templates.. having problems..
    By MegaManZZ in forum C++ Programming
    Replies: 4
    Last Post: 09-14-2008, 04:53 PM
  4. restarting process
    By Bleech in forum Windows Programming
    Replies: 3
    Last Post: 11-29-2007, 02:07 AM
  5. Problems with child process creation
    By Niloc1 in forum C Programming
    Replies: 0
    Last Post: 02-09-2003, 02:52 PM