Usually they teach programming concepts and specific programming languages like C, C++, C#, JAVA, Ruby, PHP, etc. for beginners. But they don't teach stuff that really matters in the long term, they don't prepare you on your journey to become a Great Programmer, they don't teach you the attitude that is required to become great in your craft. This E-book is a compilation of some of the author's blog posts & advice containing some useful piece of practical information to beginner programmers. The content in this book is programming language agnostic – Same principles can be applied to all programming languages.