Fostering Students-Driven Learning of Computer Programming with an Ensemble of E-Learning Tools
Abstract
Learning through practice is crucial to acquire a complex skill. Nevertheless, learning is only effective if students have at their disposal a wide range of exercises that cover all the course syllabus and if their solutions are promptly evaluated and given the appropriate feedback. Currently the teaching-learning process in complex domains, such as computer programming, is characterized by an extensive curricula and a high enrolment of students. This poses a great workload for faculty and teaching assistants responsible for the creation, delivering and assessment of student exercises. In order to address these issues, we created an e-learning framework - called Ensemble - as a conceptual tool to organize and facilitate technical interoperability among systems and services in domains that use complex evaluation. These domains need a diversity of tools, from the environments where exercises are solved, to automatic evaluators providing feedback on the attempts of students, not forgetting the authoring, management and sequencing of exercises. This paper presents and analyzes the use of Ensemble for managing the teaching-learning process in an introductory programming course at ESEIG - a school of the Polytechnic of Porto. An experiment was conducted to validate a set of hypotheses regarding the expected gains: increase in number of solved exercises, increase class attendance, improve final grades. They support the conclusion that the use of this e-learning framework for the practice-based learning has a positive impact on the acquisition of complex skills, such as computer programming.
Keywords
E-learning interoperability Distributed and interactive learning environments Programming and programming languages Teaching/learning strategiesNotes
Acknowledgments
This work is partially funded by the ERDF through the COMPETE 2020 Programme within project POCI-01-0145-FEDER-006961, and by National Funds through the FCT as part of project UID/EEA/50014/2013.
References
- 1.Gross, P., Powers, K.: Evaluating assessments of novice programming environments. In: Proceedings of the First International Workshop on Computing Education Research, ICER 2005, pp. 99–110. ACM, New York (2005)Google Scholar
- 2.Eckerdal, A.: Novice programming students’ learning of concepts and practise. Ph.D. thesis, Uppsala, Uppsala University, Division of Scientific Computing, Numerical Analysis (2009)Google Scholar
- 3.Ala-Mutka, K.: A survey of automated assessment approaches for programming assignments. J. Comput. Sci. Educ. 15(2), 83–102 (2005). http://www.tandfonline.com/doi/pdf/10.1080/08993400500150747CrossRefGoogle Scholar
- 4.O’Kelly, J., Gibson, J.P.: Robocode & problem-based learning: a non-prescriptive approach to teaching programming. SIGCSE Bull. 38(3), 217–221 (2006)CrossRefGoogle Scholar
- 5.Robins, A., Rountree, J., Rountree, N.: Learning and teaching programming: a review and discussion. Comput. Sci. Educ. 13, 137–172 (2003)CrossRefGoogle Scholar
- 6.Esteves, M., Fonseca, B., Morgado, L., Martins, P.: Improving teaching and learning of computer programming through the use of the Second Life virtual world. Br. J. Educ. Technol. 42(4), 624–637 (2010)CrossRefGoogle Scholar
- 7.Lahtinen, E., Ala-Mutka, K., Järvinen, H.-M.: A study of the difficulties of novice programmers. SIGCSE Bull. 37(3), 14–18 (2005)CrossRefGoogle Scholar
- 8.Schulte, C., Bennedsen, J.: What do teachers teach in introductory programming? In: Proceedings of the Second International Workshop on Computing Education Research, ICER 2006, pp. 17–28. ACM, New York (2006)Google Scholar
- 9.Jenkins, T.: On the difficulty of learning to program. In: 3rd Annual Conference of LTSN-ICS, Loughbourgh (2002)Google Scholar
- 10.Gomes, A., Mendes, A.J.: Learning to program - difficulties and solutions. In: Proceedings of the International Conference on Engineering Education (2007)Google Scholar
- 11.Leal, J.P., Queirós, R.: eLearning frameworks: a survey. In: International Technology, Education and Development Conference, Valencia, Spain (2010)Google Scholar
- 12.Queirós, R., Leal, J.P.: A survey on eLearning content standardization. In: Lytras, M.D., Ruan, D., Tennyson, R.D., Ordonez De Pablos, P., García Peñalvo, F.J., Rusu, L. (eds.) WSKS 2011. CCIS, vol. 278, pp. 433–438. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-35879-1_52CrossRefGoogle Scholar
- 13.Vansteenkiste, M., Deci, E.L.: Competitively contingent rewards and intrinsic motivation: can losers remain motivated? Motiv. Emot. 27, 273–299 (2003). https://doi.org/10.1023/A:1026259005264CrossRefGoogle Scholar
- 14.Burguillo, J.C.: Using game theory and competition-based learning to stimulate student motivation and performance. Comput. Educ. 55(2), 566–575 (2010)CrossRefGoogle Scholar
- 15.Siddiqui, A., Khan, M., Akhtar, S.: Supply chain simulator: a scenario-based educational tool to enhance student learning. Comput. Educ. 51(1), 252–261 (2008)CrossRefGoogle Scholar
- 16.Douce, C., Livingstone, D., Orwell, J.: Automatic test-based assessment of programming: a review. J. Educ. Resour. Comput. 5(3), 4 (2005)CrossRefGoogle Scholar
- 17.Romli, R., Sulaiman, S., Zamli, K.: Automatic programming assessment and test data generation a review on its approaches. In: 2010 International Symposium in Information Technology (ITSim), vol. 3, pp. 1186–1192 (2010)Google Scholar
- 18.Tremblay, G., Guérin, F., Pons, A., Salah, A.: Oto, a generic and extensible tool for marking programming assignments. Softw. Pract. Exper. 38(3), 307–333 (2008)CrossRefGoogle Scholar
- 19.Spacco, J., Hovemeyer, D., Pugh, W., Emad, F., Hollingsworth, J.K., Padua-Perez, N.: Experiences with marmoset: designing and using an advanced submission and testing system for programming courses. SIGCSE Bull. 38(3), 13–17 (2006)CrossRefGoogle Scholar
- 20.Wang, F.L., Wong, T.-L.: Designing programming exercises with computer assisted instruction. In: Fong, J., Kwan, R., Wang, F.L. (eds.) ICHL 2008. LNCS, vol. 5169, pp. 283–293. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-85170-7_25CrossRefGoogle Scholar
- 21.Mory, E.H.: Feedback research revisited. In: Handbook of Research for Educational Communications and Technology (2007)Google Scholar
- 22.Daly, C.: Roboprof and an introductory computer programming course. SIGCSE Bull. 31(3), 155–158 (1999)CrossRefGoogle Scholar
- 23.Truong, N.K.D.: A web-based programming environment for novice programmers. Ph.D. thesis, Queensland University of Technology (2007)Google Scholar
- 24.Lee, F., Heyworth, R.: Problem complexity: a measure of problem difficulty in algebra by using computer. Educ. J. 28(1), 85–107 (2000)Google Scholar
- 25.Queirós, R., Leal, J.P.: PETCHA - a programming exercises teaching assistant. In: ACM SIGCSE 17th Annual Conference on Innovation and Technology in Computer Science Education, Haifa, Israel. ACM (2012)Google Scholar
- 26.Rongas, T., Kaarna, A., Kalviainen, H.: Classification of computerized learning tools for introductory programming courses: learning approach. In: Kinshuk, Looi, C.-K., Sutinen, E., Sampson, D.G., Aedo, I., Uden, L., Kaahkaonen, E. (eds.) ICALT. IEEE Computer Society (2004)Google Scholar
- 27.Verdú, E., Regueras, L.M., Verdú, M.J., Leal, J.P., de Castro, J.P., Queirós, R.: A distributed system for learning programming on-line. Comput. Educ. 58, 1–10 (2011)CrossRefGoogle Scholar
- 28.Xavier, J., Coelho, A.: Computer-based assessment system for e-learning applied to programming education. In: Proceedings of 4th International Conference of Education, Research and Innovations, ICERI 2011, pp. 3738–3747. IATED (2011)Google Scholar
- 29.Guerreiro, P., Georgouli, K.: Enhancing elementary programming courses using e-learning with a competitive attitude. Int. J. Internet Educ. 10, 38 (2008)Google Scholar
- 30.Queirós, R., Leal, J.P.: Orchestration of e-learning services for automatic evaluation of programming exercises. 18(11), 1454–1482 (2012). http://www.jucs.org/jucs1811=orchestrationofelearningservices
- 31.Nielson, F., Nielson, H.R., Hankin, C.: Principles of Program Analysis. Springer New York Inc., Secaucus (1999)CrossRefGoogle Scholar