Abstract
Active learning in Computer Science classrooms often involves having students solve programming problems in class using a web-based interpreter. Spinoza is one such system which captures all of the student attempts and uses it to provide actionable learning analytics for the instructor. In this paper we present several new pedagogical applications of the log data from Spinoza, including two approaches to team formation and an in depth analysis of the Solve-Then-Debug debugging pedagogy in Spinoza. We provide some initial evidence that the Team Formation strategies may be effective methods for forming either diverse or homogeneous teams. The second application we examine in depth is the Solve-Then-Debug pedagogy in which students who correctly solve a Spinoza programming problem are then asked to analyze and debug the most common errors that the class has made so far on that problem. This is a social debugging process and in this paper we provide a detailed explanation of the learning goals for each step of this pedagogy. We also give an example of how students engaged with one particular Solve-Then-Debug problem. This provides initial evidence that the Solve-Then-Debug pedagogy engages students in effective program bug analysis activity.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Deeb, F.A., Hickey, T.: The Spinoza code tutor: faculty poster abstract. J. Comput. Sci. Coll. 30(6), 154–155 (2015a)
Deeb, F.A., Hickey, T.: Spinoza: the code tutor (2015b)
Deeb, F.A., Hickey, T.: Flipping introductory programming classes using Spinoza and agile pedagogy. In: 2017 IEEE on Frontiers in Education Conference (FIE), pp. 1–9. IEEE (2017)
Deeb, F.A., Kime, K., Torrey, R., Hickey, T.: Measuring and visualizing learning with Markov models. In: 2016 IEEE on Frontiers in Education Conference (FIE), pp. 1–9. IEEE (2016)
Deeb, F.A., Hickey, T.J., DiLillo, A.: Using fine grained programming error data to enhance CS1 pedagogy. In: CSEDU (2018)
Bekele, R.: Computer-assisted learner group formation based on personality traits (2006)
Berland, M., Davis, D., Smith, C.P.: AMOEBA: designing for collaboration in computer science classrooms through live learning analytics. Int. J. Comput.-Supp. Collab. Learn. 10(4), 425–447 (2015)
Berland, M., Martin, T., Benton, T., Petrick Smith, C., Davis, D.: Using learning analytics to understand the learning pathways of novice programmers. J. Learn.Sci. 22(4), 564–599 (2013)
Byckling, P., Sajaniemi, J.: A role-based analysis model for the evaluation of novices’ programming knowledge development. In: Proceedings of the Second International Workshop on Computing Education Research, pp. 85–96. ACM (2006)
Fitzgerald, S., et al.: Debugging: finding, fixing and flailing, a multi-institutional study of novice debuggers. Comput. Sci. Educ. 18(2), 93–116 (2008)
Flieger, J., Palmer, J.D.: Supporting pair programming with JavaGrinder. J. Comput. Sci. Coll. 26(2), 63–70 (2010)
Ihantola, P., et al.: Educational data mining and learning analytics in programming: literature review and case studies. In: Proceedings of the 2015 ITiCSE on Working Group Reports, pp. 41–63. ACM (2015)
Katira, N., Williams, L., Wiebe, E., Miller, C., Balik, S., Gehringer, E.: On understanding compatibility of student pair programmers. In: ACM SIGCSE Bulletin, vol. 36, pp. 7–11. ACM (2004)
MarTin, T., Berland, M., BenTon, T., SMiTh, C.P.: Learning programming with Ipro: The effects of a mobile, social programming environment. J. Interact. Learn. Res. 24(3), 301–328 (2013)
Merceron, A., Yacef, K.: Clustering students to help evaluate learning. In: Courtiat, J.-P., Davarakis, C., Villemur, T. (eds.) Technology Enhanced Learning. IIFIP, vol. 171, pp. 31–42. Springer, Boston, MA (2005). https://doi.org/10.1007/0-387-24047-0_3
Nagappan, N., et al.: Improving the CS1 experience with pair programming. ACM SIGCSE Bull. 35(1), 359–362 (2003)
Prieto, L.P., Holenko Dlab, M., Gutiérrez, I., Abdulwahed, M., Balid, W.: Orchestrating technology enhanced learning: a literature review and a conceptual framework. Int. J. Technol. Enhanc. Learn. 3(6), 583–598 (2011)
Sadeghi, H., Kardan, A.A.: A novel justice-based linear model for optimal learner group formation in computer-supported collaborative learning environments. Comput. Hum. Behav. 48, 436–447 (2015)
Watkins, K.Z., Watkins, M.J.: Towards minimizing pair incompatibilities to help retain under-represented groups in beginning programming courses using pair programming. J. Comput. Sci. Coll. 25(2), 221–227 (2009)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Deeb, F.A., DiLillo, A., Hickey, T. (2019). Using Spinoza Log Data to Enhance CS1 Pedagogy. In: McLaren, B., Reilly, R., Zvacek, S., Uhomoibhi, J. (eds) Computer Supported Education. CSEDU 2018. Communications in Computer and Information Science, vol 1022. Springer, Cham. https://doi.org/10.1007/978-3-030-21151-6_2
Download citation
DOI: https://doi.org/10.1007/978-3-030-21151-6_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-21150-9
Online ISBN: 978-3-030-21151-6
eBook Packages: Computer ScienceComputer Science (R0)