Skip to main content

Abstract

This work presents the results of some summer stages for high school students, for the first introduction to computational thinking and programming. Differently from other approaches, our experiences are characterized by: (i) a full week of lessons and exercises, for gradually developing a small but complete and original project, (ii) an objects-early methodology, (iii) the choice of a dynamic videogame as the main programming project, and (iv) the availability of few small and focused examples, as source files, for students to start building their own application. At the end, the students’ anonymous opinions about the stage, and their own projects, were collected and analyzed, for improving future similar activities.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    The framework and all teaching material is available at http://www.ce.unipr.it/stage/.

  2. 2.

    The delivered projects, in their original form, are also available at http://www.ce.unipr.it/stage.

References

  1. Caton, H., Greenhill, D.: Rewards and penalties: a gamification approach for increasing attendance and engagement in an undergraduate computing module. Int. J. Game-Based Learn. 4(3), 1–12 (2014)

    Article  Google Scholar 

  2. Ceder, V., Yergler, N.: Teaching programming with python and pygame. Apresentado na PyCon (2003)

    Google Scholar 

  3. Cooper, S., Dann, W., Pausch, R.: Alice: a 3-D tool for introductory programming concepts. J. Comput. Sci. Coll. 15(5), 107–116 (2000)

    Google Scholar 

  4. Dawson, M.: Python Programming for the Absolute Beginner. Cengage Learning, Boston (2010)

    Google Scholar 

  5. Deterding, S., Dixon, D., Khaled, R., Nacke, L.: From game design elements to gamefulness: defining gamification. In: Proceedings of the 15th International Academic MindTrek Conference: Envisioning Future Media Environments, pp. 9–15. ACM (2011)

    Google Scholar 

  6. Ferrari, A., Lombardo, G., Mordonini, M., Poggi, A., Tomaiuolo, M.: OOPP: tame the design of simple object-oriented applications with graphical blocks. In: Lecture Notes of the Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering, LNICST, vol. 233, pp. 279–288 (2018)

    Chapter  Google Scholar 

  7. Ferrari, A., Poggi, A., Tomaiuolo, M.: Object oriented puzzle programming. Mondo Digitale 15(64) (2016)

    Google Scholar 

  8. Greenberg, I., Kumar, D., Xu, D.: Creative coding and visual portfolios for CS1. In: Proceedings of the 43rd ACM Technical Symposium on Computer Science Education, pp. 247–252. ACM (2012)

    Google Scholar 

  9. Howland, K., Good, J.: Learning to communicate computationally with flip: a bi-modal programming language for game creation. Comput. Educ. 80, 224–240 (2015)

    Article  Google Scholar 

  10. Kelleher, C., Pausch, R.: Lowering the barriers to programming: a taxonomy of programming environments and languages for novice programmers. ACM Comput. Surv. (CSUR) 37(2), 83–137 (2005)

    Article  Google Scholar 

  11. Kölling, M.: The problem of teaching object-oriented programming, part 1: languages. J. Object-Oriented Program. 11(8), 8–15 (1999)

    Google Scholar 

  12. Leutenegger, S., Edgington, J.: A games first approach to teaching introductory programming. ACM SIGCSE Bull. 39(1), 115–118 (2007)

    Article  Google Scholar 

  13. Overmars, M.: Teaching computer science through game design. Computer 37(4), 81–83 (2004)

    Article  Google Scholar 

  14. Perkel, J.M.: Pick up python. Nature 518(7537), 125 (2015)

    Article  Google Scholar 

  15. Prayaga, L., Coffey, J.W., Rasmussen, K.: Strategies to teach game development across age groups. In: Design, Utilization, and Analysis of Simulations and Game-Based Educational Worlds, pp. 95–110. IGI Global (2013)

    Google Scholar 

  16. Price, T.W., Barnes, T.: Comparing textual and block interfaces in a novice programming environment. In: Proceedings of the Eleventh Annual International Conference on International Computing Education Research, pp. 91–99. ACM (2015)

    Google Scholar 

  17. Repenning, A.: Agentsheets®: An interactive simulation environment with end-user programmable agents. Interaction (2000)

    Google Scholar 

  18. Shein, E.: Python for beginners. Commun. ACM 58(3), 19–21 (2015)

    Article  Google Scholar 

  19. Silveira, I.F., Mustaro, P.N., Silva, L.: Using computer games to teach design patterns and computer graphics in CS and IT undergraduate courses: some case studies. In: Brazilian Symposium on Computers in Education, vol. 1, pp. 490–499 (2007)

    Google Scholar 

  20. Sweigart, A.: Making Games with Python and Pygame. CreateSpace, North Charleston (2012)

    Google Scholar 

  21. Vassilev, T.I., Mutev, B.I.: An approach to teaching introductory programming using games. In: Proceedings of the International Conference on e-Learning, vol. 14, p. 246 (2014)

    Google Scholar 

  22. Wing, J.M.: Computational thinking. Commun. ACM 49(3), 33–35 (2006)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michele Tomaiuolo .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Tomaiuolo, M., Angiani, G., Ferrari, A., Mordonini, M., Poggi, A. (2019). A Week of Playing with Code, the Object-Oriented Way. In: Di Mascio, T., et al. Methodologies and Intelligent Systems for Technology Enhanced Learning, 8th International Conference. MIS4TEL 2018. Advances in Intelligent Systems and Computing, vol 804. Springer, Cham. https://doi.org/10.1007/978-3-319-98872-6_8

Download citation

Publish with us

Policies and ethics