Ah, I see. You are nitpicking on "knowledge". I could change it to "skill", but then one can nitpick about that. Even if I found the most precise word, you can still nitpick since it is an absolute statement. So, stop nitpicking and see that the point is that with more practice, acquisition of knowledge, etc, many things become easier to do. Sure, you can find corner cases where this is not true, but so what?No, that's exactly my point... I know exactly how to paint a room in such a way that it can look very good... I just can't do it. I have the knowledge, I'm just not skilled in the craft. My hand is not steady enough, my eyes are not strong enough to pick up certain details... yes, I can improve that with practice, but it has nothing to do with knowledge and I'll never be as good as someone who is naturally gifted at it.
Look up a C++ Reference and learn How To Ask Questions The Smart WayOriginally Posted by Bjarne Stroustrup (2000-10-14)
No, I'm sorry, you don't see. Knowledge and skill are not interchangeable words. Knowledge is the understanding of a process while skill is the ability to achieve that process. One is incorporated in the other. If you wish you can even go by the Merriam-Webster definitions:
Knowledge - The fact or condition of knowing something with familiarity gained through experience or association
Skill - The ability to use one's knowledge effectively and readily in execution or performance
As you can see... knowledge is integrated into skill. However, just simply having the knowledge does not make you able to use it. That's what I was "nitpicking" about... The fact is, there are people out there that know all the ins-and-outs of C++ and on paper could answer any syntax question you could throw at them. That doesn't mean there isn't some kid out there that can write better, more efficient programs without half the knowledge of the language that the first guy has. Skill is something completely different and while it can be improved... it also tends to have a much harder cap than knowledge does. Now, I'm done arguing about this as it has nothing to do with the original topic.
Anyway... as for the original topic... again, I don't mean to scare you. You, like most people, I'm sure are capable of achieving great success in programming as long as you stick to it and learn the language at your own pace.
Sent from my iPadŽ
Ok, so the only skill required to write a great program is typing? You're telling me the only difference between an MIT CS student and one from a CS program at a community college is how many programming books they've read or how much of what they've read they managed to take in? You honestly don't believe that some one can know the nessasary tools and syntax for programming and not be able to use them in making a good program? Skill is not only phsyical... just because you can't type and you know the basic syntax and perhaps you know all of the design patterns that are already proven efficient doesn't mean you'll be a great programmer.
Now, honestly, I don't think the topic deserves to be closed because the OP deserves any input he can get... so let's not side track this and agree to disagree... if you want to believe that knowing everything there is to know about programming will make you the most perfect programmer in the world, then that's fine by me.
Last edited by SlyMaelstrom; 11-01-2007 at 12:26 PM.
Sent from my iPadŽ
Yes. You also need some KNOWLEDGE of what you are doing.
Yes. If you can't make a "good program," then you lack knowledge.You honestly don't believe that some one can know the nessasary tools and syntax for programming and not be able to use them in making a good program?
If you're not writing good code, then you don't have the KNOWLEDGE. As you point out, knowing the syntax is not enough. What I'm saying is that in this field, knowledge and skill mean the same thing because the relevant activity occurs in the head, not out in the "real world."Now, honestly, I don't think the topic deserves to be closed because the OP deserves any input he can get... so let's not side track this and agree to disagree... if you want to believe that knowing everything there is to know about programming will make you the most perfect programmer in the world, then that's fine by me.
So you basically amount anybody doing anything in programming that you didn't think of as "Oh... they know more about programming than I do." You've never once though... "Oh... this guy is more intelligent than I am and no matter how much I know about programming, I don't think I would have ever thought to do that." Well, what can I say... I admire your confidence in your intelligence. I wish I could honestly believe that if I had a complete knowledge of programming then I could program anything as perfect as it could be programmed.
Sent from my iPadŽ
I think the point laserlight is trying to make is that knowledge IS the relevant skill in programming. In fact in most things including painting the same applies. Just because you saw someone paint a room, and you know that you put the brush in the paint and rub it on the wall doesnt mean you 'know how to paint'. A great deal of the knowledge of how to paint is kinesthetic. The same applies with programming. You can read all the theory you want; until you punch out a few lines of code and solve the resulting bugs, you dont 'know how to program'. But ultimately all the skillful work is taking place in your head and hence is what would traditionally be called knowledge. The only physical skill necessary is as she said, the ability to type the code in and press BUILD. The only physical skill necessary to paint is the ability to move your arm up,down and side to side.
OK, technically the ability to see is of great benefit, but not absolutely necessary (in either case).
Alright... well, I guess I'll I'd say is that what you would traditionally call knowledge is not what I, literally all of the people I've talked to in real life about this, or almost any credible dictionary would traditionally call knowledge. Knowledge is not a skill and it's not the ability to process something in your head. I never said knowledge isn't required to program nor did I even suggest that it wasn't highly important to programming. I just said that having an extensive amount of it in any given trade wouldn't necessarily make that trade easy as laserlight's "proverb" suggested. However, now I am just nitpicking... so as I said in previous posts, if everyone else is fine with ending this conversation then so am I.
Sent from my iPadŽ
>Just did Three Tutorials... They took awhile to comprehend.
>Like I think almost two hours?.. Is that too long?
Two hours? I was writing compilers after fifteen minutes with K&R. I had my first blockbuster operating system finished, marketed, and earning me millions within the hour. There's clearly something seriously wrong with you.
>Or is it normal to comprehend programming slow at first?
Despite what the "for Dummies" books will try to sell you, programming is very hard. It takes time and practice to grasp the concepts and apply them effectively. In fact, it's not unusual to spend decades learning C or C++ and still not comprehend everything.
>My self-esteem is low when it comes to this stuff ugh.
I'm like that too, but it's a good thing. If you don't question your abilities, you aren't pushing your limits.
My best code is written with the delete key.
I think we know the definitions very well, but you forgot that I was merely trying to paraphrase what I remembered from my lecturer's quip. I had no intention of being pedantically correct. It was a joke, after all, so the truth is not in the letter, but in the spirit of the joke.No, I'm sorry, you don't see. Knowledge and skill are not interchangeable words. Knowledge is the understanding of a process while skill is the ability to achieve that process. One is incorporated in the other. If you wish you can even go by the Merriam-Webster definitions:
Knowledge - The fact or condition of knowing something with familiarity gained through experience or association
Skill - The ability to use one's knowledge effectively and readily in execution or performance
As you can see... knowledge is integrated into skill. However, just simply having the knowledge does not make you able to use it. That's what I was "nitpicking" about... The fact is, there are people out there that know all the ins-and-outs of C++ and on paper could answer any syntax question you could throw at them. That doesn't mean there isn't some kid out there that can write better, more efficient programs without half the knowledge of the language that the first guy has. Skill is something completely different and while it can be improved... it also tends to have a much harder cap than knowledge does.
So, you have taken a quip out of context. Go ahead, you are correct and can collect a drink from my lecturer the next time you see him and convince him he is incorrect by his choice of words that I remembered him using
Look up a C++ Reference and learn How To Ask Questions The Smart WayOriginally Posted by Bjarne Stroustrup (2000-10-14)