Nov 25, 2016

Blog: Getting started, Why K&R is the best book on C programming?

Blog #1: Getting started, Why K&R is the best book on C programming?
On November 25th 2016 @ 8:20 I have decided that - "I would write a blog daily". My idea is to write on something interesting and fun. It will be on wide range of things including but not restricted to books, technical topic, personal, philosophical, god, daily routine or YouTube videos… My idea is Writing daily would lead to creative life and I can hone my writing skills to too. Making it public is to take criticism and to improve.

Today i will write on my favorite book C Programming by Brian Kernighan and Dennis Ritchie. I am working as Software Engineer working on Embedded Software for ~10 years now. With the word Embedded comes my affection to "C" Language.
I was introduced to C during by 8th standard (Year 1998)(First year of high school). During those days there no curriculum of programming in school. But i had good number of Acquaintances working as Software Engineers, and their suggestion for vacation is to "learn computers and programming". Then i was made to join course on "Basics of computer and programming in C". I used to daily go 4 km peddling my cycle to institute for 6 weeks. At that age my interest was gaming; playing console based games such as Dave, Contra etc. I used Blue screen Turbo C compiler and editor.
When I joined my Engineering that is when Programming became serious. Even though I did my engineering in Electronics and Communication i was interested in programming a lot. I was introduced to K&R book by one of my senior (Year 2003) and i bought a copy of it immediately. I have to admit that i never read the book from start to end. But i have read most part of it many time (~ 10 times). I read the introduction of the book i felt the information density is very high and needed most concentration. Really liked the idea of giving the birds eye view in introduction of language before giving details. Most of my friend did not past the 1st chapter. Along with reading this book I wrote some simple C program not just example given in the book. I still remember writing program like "Who wants to be Crorepati" (Who wants to be millionaire), snake (game), line based text editor so on. There was no internet connection in my PC those days, had to go to College lab for that. Not much resources like http://ocw.mit.edu/ other programming sites like http://www.geeksforgeeks.org/ or https://www.topcoder.com/
I used to read and re-read the book and makes many notes in the side. Each read used to highlight to me some part which i had ignored previously. Information density is so much that you need to read it more than once. I participated in several programming quiz held in Collage and used to do well. Most of questions become easy once concepts are clear. I remember one of senior telling me that "Questions are several, concepts are limited". Hence understand the concepts you will do well with questions. K & R helped me getting this concepts very clearly. I had weird thought process of "What would compiler do ?"; it helped me a lot. By my 3 year of Engineering; i started conducting C classes and C quizzes. This increased my understanding a lot as setting question and conducting classes are lot difficult. I still cherish reading K&R time and again, i still own a copy.
I highly recommend K&R.
For any-one interested can also read my series of Tutorial articles on C programming here - http://www.harishnote.com/p/c-programming.html
Do share your thoughts in the comment section bellow.

No comments :

Post a Comment