Abstract
AbstractA Computer Science introduction course ought to focus on exciting students about the subject matter and on problem solving through the methodical design of programs. An effective way to achieve both is through the development of functional video games. As most students are interested in video games, their development adds an exciting domain to any introduction to programming. This article advocates that an exciting crowning achievement for students in such a course is the design and implementation of a multiplayer distributed video game. By exploiting a domain that is popular with students, they are taught about design principles, communication protocols, and pitfalls in distributed programming. This article puts forth a successfully used design recipe that places distributed programming well within the reach of beginning students and outlines the use of this design recipe in the classroom. For those teaching beginners, this article presents a model for developing their own distributed programming module. The success of the presented methodology is measured through student feedback on their distributed programming experience. The empirical results suggest that the design and implementation of distributed functional video games is effective and well-received by students. Furthermore, the data suggests that the presented methodology fails to exhibit the gender gap common in Computer Science and is effective regardless of the programming experience CS1 students bring to the classroom.
Publisher
Cambridge University Press (CUP)
Cited by
41 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Introduction to Functional Classes in CS1;Electronic Proceedings in Theoretical Computer Science;2022-07-26
2. Design of Classes I;Electronic Proceedings in Theoretical Computer Science;2022-07-26
3. danceON: Culturally Responsive Creative Computing;Proceedings of the 2021 CHI Conference on Human Factors in Computing Systems;2021-05-06
4. How to make
while
loops iterative;Proceedings of the 9th Computer Science Education Research Conference;2020-10-19
5. Visual Designing and Debugging of Deterministic Finite-State Machines in FSM;Electronic Proceedings in Theoretical Computer Science;2020-08-24