Re: [vox] [OT] Learning to program
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [vox] [OT] Learning to program
On Sunday 25 August 2002 13:38, Micah Cowan wrote:
> matthew johnson writes:
> > Found that very interesting too :).
> > Thanks for sharing!
> > To learn to programming, which is the best way? I'm an OK learner by
> > myself, but not the best (find it better and easier to have a teacher
> > who knows his or her stuff to ask the annoying questions to).
> It's cheapest to learn on your own - but effective *only* with the
> proper materials. You may find it best to do this, and have people on
> hand who are knowledgeable for just answering questions.
Sounds great, but how does that compare to someone who learnt to program
whilst studying as part of a degree? I did try one of those courses that you
can sign up just to do programming, but it lacked any real depth, plus they
kept going over the same ground again and again (how many times can you write
the same program in class, sure glad I emigrated out of there before getting
hit with a large bill lol) .
> USENET can be a *humongous* educational asset - but you need to adapt
> to its bizarre culture. In particular, newsgroups like comp.lang.c are
> *incredibly* helpful, but also hold to the older style of newsgroup
> interactions - they stick to a lot of the "standard" USENET rules
> which have been abandoned by many newcomer USENET groups. It is
> necessary to read all FAQs before attempting to post to USENET, and
> always read the group for at least a couple weeks before attempting to
You mean RTFM...I know some older USENET people can get crusty :).
> Learning a programming language and learning to program are very
> different things - many people who know a language (or even three)
> don't know very much about programming. A good text, such as
> Sedgewick's "Algorithms in C", is necessary for learning to program
> (unfortunately, that book, as well as many others, assumes already
> that you know a particular language). Many of the best books on
> programming presuppose knowledge of a language, so that may be where
> you should begin.
Algorithms? How important is math to programming? Actually...Can you learn
good math whilst programming?
> I'd recommend learning C, as it seems to be the most
> frequently-relied-upon language by the really good programming
> books. Most of what you learn of C can also be carried directly over
> to C++, should you decide to take that up as well - though there are
> several things you will also need to unlearn. There is simply no
> substitute for K&R2 - Kernighan and Ritchie's "The C Programming
> Language", 2nd Edition. There are many, many books on C available out
> there, and most of them suck. Supplement what you find in the book by
> interacting with comp.lang.c and/or alt.comp.lang.learn.c-c++.
Learning C...Rings a bell, not a book I have (course I took was C and C++). I
do have learning Perl though, but will investigate learning C (waiting for
Nerdbooks to say soemthing :)).
> Once you have some strong C knowledge, you might move onto "C
> Unleashed", by Heathfield et al. It was written by some of the most
> active participants to comp.lang.c, and covers a wide range of
> interesting topics, including some important, general programming
> concepts, in *very* easy-to-understand layman's terms. Once you've
> come to terms with that, tackle Sedgewick for some heavier
> stuff. Sedgewick's C style is not great, but it suffices to
> demonstrate the algorithms, which are the heart of his book(s).
At what point will you have strong C? Is it easier to get better by hacking
someone elses code and then compiling it to see what affect your changes
> C on its own is quite useful in the UNIX/Linux world; but these days
> C++ seems to be in somewhat higher demand for systems programming. C++
> has some disadvantages to C in a few respects, and also throws in a
> lot of what some might consider to be little more than cruft; but it
> also makes a few serious contributions: in particular, error handling
> is exponentially easier (IMHO) using exceptions; and templates offer
> tremendous leaps forward in generic programming (though not if you
> compare it to Ada). At any rate, it's worth learning at least
> something about C++ at some point.
From my lessons C++ seems to stand out as one I remember more, cout was easier
for me to comprehend rather than printf (if I am correct on this last one,
mkaybe not having %f or %c or whatever took that load off). And the main
differences were using <stdio.h> vs <iostream.h>. Of course there was
inheritence to deal with in C++ and classes, but it just seemed cleaner code.
Perhaps getting in a group might help, plus stop being a lazy git would help
too, ater a day at work nothing quite beats taking a nap, followed by playing
vox mailing list