addressalign-toparrow-leftarrow-leftarrow-right-10x10arrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscontroller-playcredit-cardcrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobe--smallglobegmailgooglegroupshelp-with-circleimageimagesinstagramFill 1languagelaunch-new-window--smalllight-bulblightning-boltlinklocation-pinlockm-swarmSearchmailmediummessagesminusmobilemoremuplabelShape 3 + Rectangle 1ShapeoutlookpersonJoin Group on CardStartprice-ribbonprintShapeShapeShapeShapeImported LayersImported LayersImported Layersshieldstar-shapestartickettrashtriangle-downtriangle-uptwitteruserwarningyahooyoutube

Re: [php-139] skills of a programmer

From: Steve C.
Sent on: Wednesday, January 27, 2010, 2:05 PM
james wrote:
seems to come down to an old hacker pyramid/image i saw a few years back:

script kiddie -- knows how to make websites in dreamweaver (lol) [which applies to some junior level from what i've seen described on this list]
hacker -- junior to mid level programmer that can modify scripts
god -- senior level that writes the scripts
Sounds like about the right time to drag out this classic:

High School / Junior High :
10 PRINT "HELLO WORLD"
20 END
First year in college :
program Hello (input, output)
begin
  writeln('Hello World.');
end;
Senior year in College :
(defun hello
  (print
    (cons 'Hello (list 'World.))))
New Profesional :
#include <stdio.h>
void main(void)
{
  char *message[] = ("Hello ", "World.");
  int i;

  for (i = 0; i < 2; ++i)
    printf ("%s", message[i]);
  printf ("\n");
}
Seasoned Professional :
#include <iostram.h>
#include <string.h>
class string
{
  private:
    int size;
    char *ptr;
  public:
    string () : size (0), ptr (new char('\0')){}
    string (const string &s) : size(s.size)
    {
      ptr = new char (size + 1);
      strcpy (ptr, s.ptr);
    }
    ~string()
    {
      delete [] ptr;
    }
    friend ostream &operator << (ostream &, const string &);
    string &operator = (const char*);
    };
    ostream &operator << (ostream &stream, const string &amps)
    {
      return (stream << s.ptr);
    }
    string &string::operator = (const char *chrs)
    {
      if (this != &chrs)
      {
        delete [] ptr;
        size = strlen (chrs);
        ptr = new char (size + 1);
        strcpy (ptr, chrs);
      }
      return (*this);
    }
    int main()
    {
      string str;
      str = "Hello World.";
      cout << str << endl;
      return(0);
    }
Apprentice Hacker :
#!/usr/local/bin/perl
$msg="Hello World.\n";
if ($#ARGV >= 0) {
  while (defined($arg=shift(@ARGV))) {
    $outfilename = $arg;
    open (FILE, ">" . $outfilename) || die "Can't write $arg: $!\n";
    print (FILE $msg);
    close (FILE) || die "Can't close $arg: $!\n";
  }
} else {
  print ($msg)
}
l;
Experienced Hacker :
#include <stdio.h>
#define S "Hello World.\n"
main() {exit (printf(S) == strlen(S) ? 0 : l);}
Seasoned Hacker :
% cc -o a.out -/src/misc/hw/hw.c
% a.out
Guru Hacker :
% cat
Hello World.
^D
New Manager :
10 PRINT "HELLO WORLD"
20 END
Middle Manager :
mail -s "Hello world." bob@b12
Bob, could you please write me a program
that prints "Hello World."?
I need it by tomorrow.
^D
Senior Manager :
% mail jim
I need a "Hello World." program by this afternoon.
Chief Executive :
% letter
letter: Command not found.
% mail
To: ^X ^F ^C
% help mail
help: Command not found.
% damn!
!: Event unrecognized
% logout

People in this
group are also in: