Most Programming books are written as programming-language manuals. Since teaching notes originate from these very books, they invariably carry the same deficiencies. This approach is devoid of cognitive dose. It has therefore turned learning programming into a boring subject. This book provides a solution to this problem by employing simple concrete models called RAM diagrams to present the material for novices. The approach emphasizes on the basics to ensure that every aspect is clearly understood with absolute ease. Learning programming can be fun.