Abstract. In this paper we discuss how computer supported collaborative learning (CSCL) can be deployed to develop new skills and habits in students at university level. These considerations led to the development of an adaptive environment to develop good programming habits. We start by describing the difficulties in teaching and learning programming and more concretely, in making students good programmers. Afterwards, we explain why group work is an adequate approach to learn programming. Next HabiPro, an environment that trains students in Programming is described. The principal features of this system are: It is adaptive: depending on the group features the environment proposes different pedagogic methodologies and different exercises. The tool promotes collaboration and interaction among the students. The pedagogic methodologies are based on reflection, observation, and relation. Finally, we present our conclusions and discuss future work. 1. Learning and Teaching Programming Programming is a subject which is normally taught in the first year of a Computer Science, Computer Engineering degree, or other degrees related to information technology. Programming is characterised by being more practical than theoretical. It is a topic that must be learnt “by doing ” rather than memorising. Many researchers indicate that the information that is received but isn’t used during the learning process, is difficult to remember when we need it [8]. In a procedural topic, like programming, resolving practical exercises is even more necessary than in a declarative topic like, for instance, history. “Procedural learning requires theoretical learning, but not in all cases. To sum up, the application of practical or operative activities and/or the use of information is implied [2]
Is data on this page outdated, violates copyrights or anything else? Report the problem now and we will take corresponding actions after reviewing your request.