The Evolution of a Programmer

Going through some of the old emails found this… Sorry if it is too long of the post but it nicely shows some truth about our life.

  • High School/Jr.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 professional
    #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 <iostream.h>
    #include <string.h>
     
    class string
    {
      private:
        int size;
        char *ptr;
     
      string() : size(0), ptr(new char[1]) { ptr[0] = 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 &s)
      {
        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);
      }
  • Master Programmer
    [
    uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820)
    ]
    library LHello
    {
        // bring in the master library
        importlib("actimp.tlb");
        importlib("actexp.tlb");
     
        // bring in my interfaces
        #include "pshlo.idl"
     
        [
        uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820)
        ]
        cotype THello
    {
    interface IHello;
       interface IPersistFile;
    };
    };
     
    [
      exe,
      uuid(2573F890-CFEE-101A-9A9F-00AA00342820)
    ]
    module CHelloLib
    {
        // some code related header files
        importheader(<windows.h>);
        importheader(<ole2.h>);
        importheader(<except.hxx>);
        importheader("pshlo.h");
        importheader("shlo.hxx");
        importheader("mycls.hxx");
     
        // needed typelibs
        importlib("actimp.tlb");
        importlib("actexp.tlb");
        importlib("thlo.tlb");
     
      [
        uuid(2573F891-CFEE-101A-9A9F-00AA00342820),
       aggregatable
    ]
      coclass CHello
    {
    cotype THello;
      };
    };
     
    #include "ipfix.hxx"
    extern HANDLE hEvent;
     
    class CHello : public CHelloBase
    {
    public:
       IPFIX(CLSID_CHello);
     
       CHello(IUnknown *pUnk);
       ~CHello();
     
       HRESULT  __stdcall PrintSz(LPWSTR pwszString);
     
    private:
       static int cObjRef;
    };
     
    #include <windows.h>
    #include <ole2.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include "thlo.h"
    #include "pshlo.h"
    #include "shlo.hxx"
    #include "mycls.hxx"int CHello::cObjRef = 0;
     
    CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk) {
        cObjRef++;
        return;
    }
     
    HRESULT  __stdcall  CHello::PrintSz(LPWSTR pwszString) {
       printf("%ws", pwszString);
       return(ResultFromScode(S_OK));
    }
     
    CHello::~CHello(void) {
      // when the object count goes to zero, stop the server
      cObjRef--;
      if( cObjRef == 0 )
        PulseEvent(hEvent);
      return;
    }
     
    #include <windows.h>
    #include <ole2.h>
    #include "pshlo.h"
    #include "shlo.hxx"
    #include "mycls.hxx"
     
    HANDLE hEvent;
     
    int _cdecl main(int argc, char * argv[] ) {
      ULONG ulRef;
      DWORD dwRegistration;
      CHelloCF *pCF = new CHelloCF();
     
      hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
     
      // Initialize the OLE libraries
      CoInitializeEx(NULL, COINIT_MULTITHREADED);
     
      CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,
          REGCLS_MULTIPLEUSE, &dwRegistration);
     
      // wait on an event to stop
      WaitForSingleObject(hEvent, INFINITE);
     
      // revoke and release the class object
      CoRevokeClassObject(dwRegistration);
      ulRef = pCF->Release();
     
      // Tell OLE we are going away.
      CoUninitialize();
     
      return(0); }
     
    extern CLSID CLSID_CHello;
    extern UUID LIBID_CHelloLib;
     
    CLSID CLSID_CHello = { /* 2573F891-CFEE-101A-9A9F-00AA00342820 */
        0x2573F891,
        0xCFEE,
        0x101A,
        { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
    };
     
    UUID LIBID_CHelloLib = { /* 2573F890-CFEE-101A-9A9F-00AA00342820 */
        0x2573F890,
        0xCFEE,
        0x101A,
        { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
    };
     
    #include <windows.h>
    #include <ole2.h>
    #include <stdlib.h>
    #include <string.h>
    #include <stdio.h>
    #include "pshlo.h"
    #include "shlo.hxx"
    #include "clsid.h"
     
    int _cdecl main(int argc, char * argv[]  ) {
      HRESULT  hRslt;
      IHello        *pHello;
      ULONG  ulCnt;
      IMoniker * pmk;
      WCHAR  wcsT[_MAX_PATH];
      WCHAR  wcsPath[2 * _MAX_PATH];
     
      // get object path
      wcsPath[0] = '\0';
      wcsT[0] = '\0';
      if( argc > 1) {
          mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1);
          wcsupr(wcsPath);
          }
      else {
          fprintf(stderr, "Object path must be specified\n");
          return(1);
          }
     
      // get print string
      if(argc > 2)
          mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1);
      else
          wcscpy(wcsT, L"Hello World");
     
      printf("Linking to object %ws\n", wcsPath);
      printf("Text String %ws\n", wcsT);
     
      // Initialize the OLE libraries
      hRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);
     
      if(SUCCEEDED(hRslt)) {
        hRslt = CreateFileMoniker(wcsPath, &pmk);
        if(SUCCEEDED(hRslt))
       hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);
     
        if(SUCCEEDED(hRslt)) {
       // print a string out
      pHello->PrintSz(wcsT);
     
       Sleep(2000);
       ulCnt = pHello->Release();
       }
       else
       printf("Failure to connect, status: %lx", hRslt);
     
       // Tell OLE we are going away.
      CoUninitialize();
     }
     
     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);
    }
    1;
  • Experienced Hacker
    #include <stdio.h>
    #define S "Hello, World\n"
    main(){exit(printf(S) == strlen(S) ? 0 : 1);}
  • Seasoned Hacker
    % cc -o a.out ~/src/misc/hw/hw.c
    % a.out
  • Guru Hacker
    % echo "Hello, world."
  • 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
    % zmail 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
This entry was posted in Delphi. Bookmark the permalink.

Leave a Reply