Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!apple!usc!elroy!peregrine!ccicpg!zardoz!dhw68k!arcturus!evil From: evil@arcturus.UUCP (Wade Guthrie) Newsgroups: comp.lang.c Subject: Re: C expert criteria Message-ID: <5115@arcturus> Date: 23 Jun 89 16:07:59 GMT References: <12280@well.UUCP> Distribution: all Organization: Rockwell International, Anaheim, CA Lines: 74 In article <12280@well.UUCP>, tmh@well.UUCP (Todd M. Hoff) writes: >> What do you need to know to be an expert C programmer? > > There must be some real answers to the question about what makes a > C expert. We all at least have implicit criteria. In the Unix world > I saw a list categorizing 9 levels of Unix expertise. I never thought I would have a reason to repost this, but I saved it anyway. At any rate, here goes a list of categories for C programmers similar to those originally used for unix types: NAME DESCRIPTION AND FEATURES novice - puts "#include " in his code, but is not sure why - has heard of pointers, but has never seen one user - uses the following macros: #define BEGIN { #define END ;} - has had a bad experience with pointers - knows the difference between ' and " knowledgeable - uses: user if(a==b) c = 1; else c = 0; - uses pointers, but only in place of arrays - loves writing code on VMS expert - uses: c = (a==b) ? 1 : 0; - uses pointers comfortably - are jazzed when they find a compiler bug because they found it - has figured out what && and || are for - refuses to write C code on VMS hacker - uses: c = a==b; - writes code which use pointers to functions - writes macros instead of simple functions - uses bitwise operators because they are like assembler - writes simple code with "cat >" and compiles it with "!cc". - uses argv and argc guru - avoids bitwise operators due to portability - are annoyed with compiler bugs - writes code portable enough to port from VMS but doesn't relish the thought - writes libraries that his fellow workmates use - can answer most C questions after a little thought wizard - writes compilers with "cat >" (and they work!) - reads device driver source with breakfast - can tell what question you are about to ask, and answer it - is on a first-name basis with Dennis, Bill, and Ken Wade Guthrie evil@arcturus.UUCP Rockwell International Anaheim, CA (Rockwell doesn't necessarily believe / stand by what I'm saying; how could they when *I* don't even know what I'm talking about???)