On Jun 20, 2008, at 11:12 AM, Mike Davis wrote:

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.

Thanks,
Karen


Linus made this statement or a very similar one at a Linux Expo at Duke back in 1998. In his version, he included the advice that if you wanted to write good code, you should start by reading good code. Then he went on to recommend the linux kernel.

Reading code is IMHO one of the most important parts of learning to write good code. It doesn't matter if the target language is f77, C, or even (gulp) java. Reading well written code will help one to understand how to construct it.



Mike
_______________________________________________
Beowulf mailing list, Beowulf@beowulf.org
To change your subscription (digest mode or unsubscribe) visit 
http://www.beowulf.org/mailman/listinfo/beowulf

There are many positive things to say about the Linux kernel, but "good code" is not one of them.

Well that is too broad an indictment - There is good code in there, but the level varies widely. Have you <<looked>> at the TTY drivers? Have you counted the number of "<< 9" s in the block code? Tried to figure out which includes are actually active? Tried to figure out which of the 17 ways to do
something is the "approved" one?

I have one of the copies of the "Lions" book - the annoted sources for V6. That is good code. Written by one or a very few exceptional programmers, not an agglomeration of a zillion patches.

And don't get me started about the ways in which Linux is ill suited to HPC. . . . well actually that
would be a pretty good debate for this forum.

The kernel is very reliable compared to pretty much anything, and that is worth a lot, but it isn't the place
to learn programming style.

-Larry





_______________________________________________
Beowulf mailing list, Beowulf@beowulf.org
To change your subscription (digest mode or unsubscribe) visit 
http://www.beowulf.org/mailman/listinfo/beowulf

Reply via email to