C Hierarchy

Seven Levels of Programmers

novice

  • puts
    #include <stdio.h>
    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 user

  • uses:
    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

more...

Search

Kontextsensitive Werbung
Internet Ratgeber