Computer programming is considered as a difficult area of study for novices. One of the reasons is the main focus of the curriculum presented in an introductory programming (IP) course which emphasizes more on the programming knowledge (syntax and semantic) of the programming language. This study introduced a new teaching curriculum in the IP course which focuses on different skills required by the novices. We compared the IP course materials based on the traditional and new approaches against five categories. The result shows that the new approach encourages both the programming knowledge and problem solving strategies, and promotes deep learning. Furthermore, it discourages programming shortcut (Problem statement → Code), and support three-step approach (Problem statement → Solution Plans → Code) in solving a problem statement. The new approach also promotes algorithmic thinking in the IP course by paying equal attention on the problem solving strategies.