Over recent years, computer science (CS) teachers and instructor have faced several challenges in assisting students to strengthen their understanding of programming. To make matters worse, existing assessment methods could be more effective in assessing students' programming skills and knowledge, thus entailing a review of issues surrounding the instructions of programming courses. Against this backdrop, the authors accomplished a systematic review of the current literature to identify several socio-cognitive factors that can help develop a learner model for learning programming. Specifically, the Preferred Reporting Items for Systematic Reviews and Meta-Analyses (PRISMA) technique was utilized to identify and select pertinent articles from three primary online databases: Scopus, Web of Science, and Eric. Initially, 401 relevant papers were identified and retrieved, which were further reduced to only 24 articles based on specific selection criteria. As revealed, several demographic factors (such as gender, age, ethnicity, and SES) and socio-cognitive factors (motivation, attitude, and interest) have been shown to wield significant impacts on student learning of programming. The authors' findings of the systematic literature review helped synthesize the learner model's essential elements that must be carefully considered and used. Arguably, the use of such a new learner model can oblige guide instructors to teach programming more efficaciously by crystallizing several students' socio-cognitive backgrounds, which collectively have a significant impact on student learning of programming courses or subjects at the primary, secondary, and tertiary levels of education, especially in the Malaysian educational context.