On Fri, 20 Jun 2008, Karen Shaeffer wrote:

On Fri, Jun 20, 2008 at 02:41:42AM -0400, Robert G. Brown wrote:

  c) some mix of mentoring by a guru and working your ass off.  A bright
and motivated person can teach themselves C, but I'll be damned if I
think that they can teach themselves to code C >>well<< in less than
years of painful mistake-driven lessons unless they have a guru or some
other way of learning some of the simple wisdom that makes it possible
to turn out decent, readable, code.  And even with a guru and working
quite hard, it still takes years, just fewer years.

Today it is very straight forward. The 2.6.x linux kernel is an exemplary
body of superb C programming code. All you need is motivation and a network
connection. And the linux kernel email development lists have hundreds of
programming guru's pontificating and standing on soap boxes daily.

I can't tell if you're joking or not...;-)

I usually start newbies off on things that are a bit simpler, like
forming the frequency histogram of the letters in an input text file,
trying to compute the date of Easter for the next hundred years, solving
a set of linear equations, integrating an ODE and writing out the
result for plotting, stuff like that.  After a bit I might move them up
to some code that does some pointer magic or struct magic or both.

I do make them get e.g. King Ables and Graham Glass or Kernighan and
Pike because it is hard to write good C without some knowledge of
Unixoid operating systems and pipes, forks, sockets, systems calls.  But
having them look over kernel source to learn to program -- isn't that a
bit like teaching a five year old to learn to read with the complete
works of Shakespeare or a three inch thick guide to writing, grammar and
style?  Yes, arguably it's all there, but it does help to creep up on it
gradually...:-)

   rgb


Thanks,
Karen


--
Robert G. Brown                            Phone(cell): 1-919-280-8443
Duke University Physics Dept, Box 90305
Durham, N.C. 27708-0305
Web: http://www.phy.duke.edu/~rgb
Book of Lilith Website: http://www.phy.duke.edu/~rgb/Lilith/Lilith.php
Lulu Bookstore: http://stores.lulu.com/store.php?fAcctID=877977
_______________________________________________
Beowulf mailing list, [email protected]
To change your subscription (digest mode or unsubscribe) visit 
http://www.beowulf.org/mailman/listinfo/beowulf

Reply via email to