De Lemos, Marilza Antunes [UNESP]De Deus Lopes, Roseli2014-05-272014-05-272011-12-01Proceeding of the International Conference on e-Education Entertainment and e-Management, ICEEE 2011, p. 320-325.http://hdl.handle.net/11449/72852The present article describes the challenges programming apprentices face and identifies the elements and processes that set them apart from experienced programmers. And also explains why a conventional programming languages teaching approach fails to map the programming mental model. The purpose of this discussion is to benefit from ideas and cognitive philosophies to be embedded in programming learning tools. Cognitive components are modeled as elements to be handled by the apprentices in tutoring systems while performing a programming task. In this process a mental level solution (the mental model of the program) and an implementation level solution (the program) are created. The mapping between these representations is a path followed by the student explicitly in this approach. © 2011 IEEE.320-325engcognitive toolmental modelprogramming learningprogramming patternsCognitive componentsCognitive toolProgramming tasksTeaching approachesTutoring systemEducation computingPhilosophical aspectsApprenticesChallenges of programming apprenticeTrabalho apresentado em evento10.1109/ICeEEM.2011.6137816Acesso aberto2-s2.0-84857283569