When comparing Head First Programming vs The C Programming Language (AKA: K&R), the Slant community recommends Head First Programming for most people. In the question“What are the best beginner's books for programming?” Head First Programming is ranked 4th while The C Programming Language (AKA: K&R) is ranked 6th. The most important reason people chose Head First Programming is:
Head First approaches learning with the idea that anything which increases brain activity will help you learn. Head First does this through humor, pictures, surprise and more.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Creative teaching style
Head First approaches learning with the idea that anything which increases brain activity will help you learn. Head First does this through humor, pictures, surprise and more.
Pro Relevant, challenging and fun puzzles
The puzzles and exercises are challenging and unique. They help to reinforce what you've learned while guiding you through developing fun programs from the start.
Pro Engaging writing style
One of the ways these books encourages the retention of material is by using an engaging and amusing writing style.
Pro Well known classic
This book is so well known that it's affectionately called "K & R", after the authors.
It's been cited in many other books and is familiar to most, if not all, CS students.
Pro It's excerpted from the idea of its creators
This book is written by Dennis Ritchie, who was one of the main people behind the development and design of C and UNIX.
Pro Creative, challenging exercises
The challenges at the end of each chapter do a great job of requiring many of the skills learned up to that point. Completing the challenges is a great way of insuring you understand the material.
Pro This book set the template for programming language books
Cons
Con Out of Date
Some commands and practices are out of date, so errata and googling is needed while going through the book.
Con Teaches bad style
The K&R style works for old Unix mainframe command-line programs that exit after a simple task and leave the cleanup to the OS; where input is only from trusted experts; and most functions are only called internally to the program. The environment is very different today. This style will get your server owned by hackers, or crash it due to a memory leak, etc. You will have to unlearn what you've learned from this book to use C correctly in the real world today.
Con Not for beginners
Assumes familiarity not only with programming concepts but some C language specifics.
