Friday 15 February 2013

Hello World

Brian Wilson Kernighan
Brian Wilson Kernighan
My first post started with the line "Hello World"! That line is there for a reason, a reason based on an old tradition, a tradition started by the legendary Brian Wilson Kernighan. 

For those who don't know Brian Kernighan, he is a Canadian computer scientist who worked at Bell Laboratories and contributed to the development of Unix, AWK & AMPL. It is he who came up with the word Unix. He is also famous as co-author of the first book on C programming language. His contributions as an author to computer programming, surpasses every other computer legends!
He is our Guru!

So what is the tradition that am talking about?
Printing the string "Hello World", is the, first program written by almost every programmers. Nearly all programming books start with hello world, and its the same with almost all teachers! Like iPod for any mp3 player, now a days hello world denotes any introductory program or script!
Am sure that by now, few of you might be wondering, why Hello World. And how did Kerninghan start this tradition!!

Four decades back, in 1972, while writing A Tutorial Introduction to the Language B, he scripted the following statements to explain external variables.
main( ) {
 extrn a, b, c;
 putchar(a); putchar(b); putchar(c); putchar('!*n');
}
a 'hell';
b 'o, w';
c 'orld';

Later in 1974, while writing an internal memorandum at Bell Labs for C programming, he added the following C version.


main()
{
  printf("hello, world");
}

The tradition took birth by its inclusion in on of the most influential books in computer science, The C Programming Language. From then, till now, hello world is a programmer's starting point, the introductory program.
It feels awesome to realize that after decades, such a simple program can influence the way we start programming, and above all, a humble computer scientist can guide us in our first steps of a never-ending saga!

And last but never the least, I would like to thank Brian Kernighan for teaching us, how to program!

No comments:

Post a Comment