1.
Serth, S., Staubitz, T., Teusner, R., Meinel, C.: CodeOcean and CodeHarbor: Auto-Grader and Code Repository In: Shaffer, C., Brusilovsky, P., Koedinger, K., and Edwards, S. (eds.) SPLICE 2021 Workshop CS Education Infrastructure for All III: From Ideas to Practice. p. 5. 52nd ACM Technical Symposium on Computer Science Education, Virtual Event (2021)
The Hasso Plattner Institute (HPI) successfully operates a MOOC (Massive Open Online Course) platform since 2012. Since 2013, global enterprises, international organizations, governments, and research projects funded by the German ministry of education are partnering with us to operate their own instances of the platform. The focus of our platform instance is on IT topics, which includes programming courses in different programming languages. An important element of these courses are graded hands-on programming assignments. MOOCs, even more than traditional classroom situations, depend on automated solutions to assess programming exercises. Manual evaluation is not an option due to the massive amount of users that participate in these courses. The paper at hand presents two of the tools developed in this context at the HPI: CodeOceantextemdash an auto-grader for a variety of programming languages, and CodeHarbor, a tool to share auto-gradable programming exercises between various online platforms.
2.
Steinbeck, H., Teusner, R., Meinel, C.: Teaching the Masses on Twitch: An Initial Exploration of Educational Live-Streaming In: Proceedings of the Eighth ACM Conference on Learning @ Scale. pp. 275–278. ACM, Virtual Event, Germany (2021)
Streaming games and entertainment content are established formats on large portals like YouTube and Twitch. Educational streams have not yet reached the same popularity. Consequently, the existing research of gaming streams by far exceeds the research of live-streaming lectures. In this paper, we contribute first insights regarding this area, outline the status quo of the edu-streaming ecosystem, and highlight common approaches and characteristics. Through a descriptive study of 100 popular gaming streams, we systemize the inductively found features and approaches that are seen in both ecosystems. With a further focus on 20 educational streams, we highlight features such as synchronous community building and on-stream interactivity. We project the main differences between the core characteristics of MOOCs and educational streams. Finally, we propose further research directions for the emerging field of public, synchronous online education.
3.
Serth, S., Teusner, R., Meinel, C.: Impact of Contextual Tips for Auto-Gradable Programming Exercises in MOOCs In: Proceedings of the Eighth ACM Conference on Learning @ Scale. pp. 307–310. ACM, Virtual Event, Germany (2021)
Learners in Massive Open Online Courses offering practical programming exercises face additional challenges next to the actual course content. Beginners have to find approaches to deal with misconceptions and often struggle with the correct syntax while solving the exercises. The paper at hand presents insights from offering contextual tips in a web-based development environment used for practical programming exercises. We measured the effects of our approach in a Python course with 6,000 active students in a hidden A/B test and additionally used qualitative surveys. While a majority of learners valued the assistance, we were unable to show a direct impact on completion rates or average scores. We however noticed that users requesting tips took significantly longer and made more use of other assistance features of the platform than users in our control group. Insights from our study can be used to target beginners with more specific hints and provide additional, context-specific clues as part of the learning material.
4.
Teusner, R.: Situational Interventions and Peer Feedback in Massive Open Online Courses, https://doi.org/10.25932/publishup-50758, (2021)
Massive Open Online Courses (MOOCs) open up new opportunities to learn a wide variety of skills online and are thus well suited for individual education, especially where proffcient teachers are not available locally. At the same time, modern society is undergoing a digital transformation, requiring the training of large numbers of current and future employees. Abstract thinking, logical reasoning, and the need to formulate instructions for computers are becoming increasingly relevant. A holistic way to train these skills is to learn how to program. Programming, in addition to being a mental discipline, is also considered a craft, and practical training is required to achieve mastery. In order to effectively convey programming skills in MOOCs, practical exercises are incorporated into the course curriculum to offer students the necessary hands-on experience to reach an in-depth understanding of the programming concepts presented. Our preliminary analysis showed that while being an integral and rewarding part of courses, practical exercises bear the risk of overburdening students who are struggling with conceptual misunderstandings and unknown syntax. In this thesis, we develop, implement, and evaluate different interventions with the aim to improve the learning experience, sustainability, and success of online programming courses. Data from four programming MOOCs, with a total of over 60,000 participants, are employed to determine criteria for practical programming exercises best suited for a given audience. Based on over five million executions and scoring runs from students' task submissions, we deduce exercise difficulties, students' patterns in approaching the exercises, and potential flaws in exercise descriptions as well as preparatory videos. The primary issue in online learning is that students face a social gap caused by their isolated physical situation. Each individual student usually learns alone in front of a computer and suffers from the absence of a pre-determined time structure as provided in traditional school classes. Furthermore, online learning usually presses students into a one-size-fits-all curriculum, which presents the same content to all students, regardless of their individual needs and learning styles. Any means of a personalization of content or individual feedback regarding problems they encounter are mostly ruled out by the discrepancy between the number of learners and the number of instructors. This results in a high demand for self-motivation and determination of MOOC participants. Social distance exists between individual students as well as between students and course instructors. It decreases engagement and poses a threat to learning success. Within this research, we approach the identified issues within MOOCs and suggest scalable technical solutions, improving social interaction and balancing content difficulty. Our contributions include situational interventions, approaches for personalizing educational content as well as concepts for fostering collaborative problem-solving. With these approaches, we reduce counterproductive struggles and create a universal improvement for future programming MOOCs. We evaluate our approaches and methods in detail to improve programming courses for students as well as instructors and to advance the state of knowledge in online education. Data gathered from our experiments show that receiving peer feedback on one's programming problems improves overall course scores by up to 17%. Merely the act of phrasing a question about one's problem improved overall scores by about 14%. The rate of students reaching out for help was significantly improved by situational just-in-time interventions. Request for Comment interventions increased the share of students asking for help by up to 158%. Data from our four MOOCs further provide detailed insight into the learning behavior of students. We outline additional significant findings with regard to student behavior and demographic factors. Our approaches, the technical infrastructure, the numerous educational resources developed, and the data collected provide a solid foundation for future research.
5.
Dobrigkeit, F., Matthies, C., Pajak, P., Teusner, R.: Cherry Picking - Agile Software Development Teams Applying Design Thinking Tools In: Agile Processes in Software Engineering and Extreme Programming textendash Workshops. pp. 201–206. Springer International Publishing (2021)
Design Thinking (DT) is an established approach to conceptualize software products before starting the product development work. Research suggests that software development can benefit from a continuous integration of DT throughout Agile development processes. However, practitioners and researchers lack an in-depth understanding of which tools from the ever-growing DT toolbox are suited to support software development teams and their processes and how these tools can be applied to the teams’ daily work. As initial steps towards closing this knowledge gap, we present our experiences from testing five different DT tools from a previously developed toolbox with four Agile software development teams. Each team chose three tools to apply to their product, problem, and context during a workshop. We present summarised findings regarding the use cases, benefits, and challenges of these tools as experienced by the participants. Overall, the teams welcomed the DT tools and were able to independently apply them to achieve the desired effects, e.g., to highlight user needs, find product issues, and discover team challenges.