Another Newbie Question: C or C++

Louis LeBlanc freebsd at keyslapper.org
Wed Nov 12 09:27:41 PST 2003


On 11/12/03 12:09 PM, yo _ sat at the `puter and typed:
> >I would recommend not trying to learn C or C++ by yourself from a book.
> >The fastest (and best way) to learn the right stuff is to take coursework 
> >from a university or community college.
> 
> Not that I like disagreeing for no good reason, but I wholeheartedly 
> disagree with that statement.
> 
> >If the courses are any good, you'll get feedback, and you'll be paced
> >and challenged with projects designed to help you learn.
> >
> >Going it alone in an unguided environment will only familiarize you
> >the lesser aspects of a language, if you last that long. The difficult
> >and most important aspects of the language (like pointers, virtual 
> >functions, references) will become almost insurmountable trial-and-error 
> >obstacles if you try to teach yourself.
> 
> If you want to get a lower paying and boring job programming in C/C++ for 
> whatever reason and have a piece of paper that says you can have that job, I 
> recommend wasting 4-6 months taking a course in your spare time to learn 
> C/C++. If you want to be top of your game and learn C/C++ without wasting 
> time on topics that take you a minute to understand, get a good book, 
> practice the topics you have learned at your own pace, get numorous code 
> examples for things you may want to do (sockets, GUI, OpenGL, ncurses, 
> threading, kernel interfacing) from the glorious and infinite internet and 
> emulate good programming style (using const qualifiers in C++, using 
> #defines in C, etc.). Also be prepared to teach yourself because you may not 
> always be prepared for a job you may find yourself with; learn how to easily 
> learn and use external libraries.
> 
> The best programmers will teach themselves. A statement that may be on the 
> borderline of opinion to fact by constant example. After all the first 
> programmer, in fact, taught herself.
> -Rian Hunter

I seem to remember another common saying: "A person who is self taught
has a fool for a teacher"

Not that I entirely disagree with your statement, but the "first
programmer" if I understand your meaning, never presented her first
attempt for approval to the current codeset - at least I didn't get
the memo.  All I have is the secondhand publishing of several
different, and mostly conflicted sets of operating instructions, most
of which are even self conflicting.  So self taught isn't necessarily
right the first time - unless the docs are all forged :)  Then again,
I could be entirely mistaken about your meaning, so feel free to
ignore my babble before flaming (in fact, please do :).

Besides, every person is different.  Some people need some degree of
structure to focus them.  Others do better on a 'spur of the moment'
schedule, where they spend time learning when it will be productive.
I go for a walk down the middle of these perfectly valid, if
fundamentalist, approaches.  A person who only learns in school never
learns outside of school.  OTOH, a person who avoids structured
learning environments will have a hard time in other structured
environments.

Most of my C++ knowledge was gained in school.  My much more extensive
C knowledge was entirely self taught.  Yes, I do have the occasional
pointer mishap, but I doubt there are many people who don't.

Lou
-- 
Louis LeBlanc               leblanc at keyslapper.org
Fully Funded Hobbyist, KeySlapper Extrordinaire :)
http://www.keyslapper.org                     Ô¿Ô¬

Old Japanese proverb:
  There are two kinds of fools -- those who never climb Mt. Fuji,
  and those who climb it twice.


More information about the freebsd-questions mailing list