-----Original Message----- From: tclug-list-bounces at mn-linux.org [mailto:tclug-list-bounces at mn-linux.org] On Behalf Of smac at visi.com Sent: Monday, September 13, 2004 7:38 AM To: TCLUG Mailing List Subject: Re: [TCLUG] On-line C Manuals? > I've been away from programming for at least 10 years. > Can "C" be learned from a book or should one take a class? > I loved Assembly Language in school but went to COBOL for the > big bucks... ;-D > > Algorithms and Data Structurs sounds interesting for some reason... > as does "K&R Ansi C" sounds like a strait forward book. > > Any hope for us middle age Linux monkies to pickup these books > and be able to write more then "Hello World"? ;o) > > Sam. Your first step it to take a critical self assessment. Are you the kind of person who can stay with it after the fun wears off and it starts to get a little bit like work? If you *can* stick to it without supervision, dig in! The only reason to take the class is to provide pace and focus. OK - The peer pressure helps. OK - certain employers need this sort of thing. Assuming that you intend to strike out on your own, this method works for me: 1) Get *the* book; K&R in this case. If you like a little more structure in your lessons also get one of the "learn xyz in 30 days" books. 2) Cruise some source code to see how other people use it. The open source community has examples of just about any kind of software you can imagine. Dig in. 3) Try a multi-thousand line program to learn how *you* solve real problems. Repeat #2 when you get stuck. Please resist the temptation -- don't add to the open source projects until you have some sort of idea what you are doing. 4) So how do you know when you are done? When you have finished #3 above, read *the* book (#1 above) cover to cover again. When you can read *the* book from cover to cover and know how *everything* works you can pat yourself on the back and say that you are done. Still have some "iffy parts? Look at the parts that did not make a lot of sense. After spending some time coding you will have developed a feel for how the language gets things done. At this point you should be mentally prepared to see how the missing parts fit in. If that does not do it, there are always resources like newsgroups and online tutorials. You may also see some parts and say something like "Oh, if I had used that it would have been *so* much easier!" If you are like me you will want to try slinging some code to see how the "new" toys work. For what it's worth, I have been coding for 30 years and I keep learning new things about every language I know. 5) Smile. Mark Browne _______________________________________________ TCLUG Mailing List - Minneapolis/St. Paul, Minnesota Help beta test TCLUG's potential new home: http://plone.mn-linux.org Got pictures for TCLUG? Beta test http://plone.mn-linux.org/gallery tclug-list at mn-linux.org https://mailman.real-time.com/mailman/listinfo/tclug-list