Teaching Programming Fundamentals to Modern University Students

Anton Bogdanovych, Tomas Trescak


In this paper we investigate how teaching programming to the modern generation of students, “digital natives” who grew up with Google and Facebook and do not know the world before the Internet, can be improved through a highly visual game-like approach. Many programming teachers report that modern programming students have short attention span, lack concentration and have poor motivation to learn programming. We show how we were able to improve the motivation of students and their marks by changing the study program so that the entire entry-level programming course (Programming Fundamentals) is being taught using a visual set of in-class examples and assignments. The paper presents a set of successful teaching patterns that helped to convert one of the most hated subjects in our school into a subject that many students loved and were able to master. The corresponding statistics suggests that one of the key achievements of our approach is a dramatic change in students’ motivation to learn programming, which has resulted a significant improvement in their overall results and was noticeable in the follow-up subjects.


  1. Bennedsen, J. and Caspersen, M. E. (2007). Failure rates in introductory programming. SIGCSE Bull., 39(2):32- 36.
  2. Bergin, S. and Reilly, R. (2005). The influence of motivation and comfort-level on learning to program. In Proceedings of the 17th Annual Workshop of the Psychology of Programming Interest Group, pages 293- 304, University of Sussex, Brighton.
  3. Csikszentmihalyi, M. (2002). Flow: the classic work on how to achieve happiness. The Random House Group Ltd, London, UK, 2 edition.
  4. Dann, W. P., Cooper, S., and Pausch, R. (2011). Learning to Program with Alice (W/ CD ROM). Prentice Hall Press, Upper Saddle River, NJ, USA, 3rd edition.
  5. Deterding, S., Sicart, M., Nacke, L., O'Hara, K., and Dixon, D. (2011). Gamification. using game-design elements in non-gaming contexts. In CHI'11 Extended Abstracts on Human Factors in Computing Systems, pages 2425-2428. ACM.
  6. Gaskin, R. (1998). The Philosophy of Peter Abelard by John Marenbon. Cambridge University Press. Philosophy, 73(2):305-324.
  7. Koelling, M. (2010). Introduction to Programming with Greenfoot: Object-Oriented Programming in Java with Games and Simulations. Prentice Hall, University of Kent.
  8. Koster, R. (2013). Theory of fun for game design. ” O'Reilly Media, Inc.”.
  9. Moore, W. G. (1968). The tutorial system and its future, by Will G. Moore. Pergamon Press Oxford, New York,, [1st ed.] edition.
  10. Moskal, B., Lurie, D., and Cooper, S. (2004). Evaluating the effectiveness of a new instructional approach. In Proceedings of the 35th SIGCSE Technical Symposium on Computer Science Education, SIGCSE 7804, pages 75-79, New York, NY, USA. ACM.
  11. Palfreyman, D. (2008). The Oxford tutorial : 'Thanks, you taught me how to think', volume 2nd. OxCHEPS, Oxford.
  12. Pattis, R. E. (1981). Karel the Robot: A Gentle Introduction to the Art of Programming. John Wiley & Sons, Inc., New York, NY, USA, 1st edition.
  13. Pine II, B. J. and Gilmore, J. H. (1998). Welcome to the experience economy. Harvard Business Review, pages 97-105.
  14. Prensky, M. (2007). Paragon House.
  15. Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., Millner, A., Rosenbaum, E., Silver, J., Silverman, B., and Kafai, Y. (2009). Scratch: Programming for all. Commun. ACM, 52(11):60-67.
  16. Schank, R. C., Berman, T. R., and Macpherson, K. A. (1999). Learning by doing. Instructional-design theories and models: A new paradigm of instructional theory, 2:161-181.
  17. Small, G. W. and Vorgan, G. (2008). iBrain : surviving the technological alteration of the modern mind. Collins Living, 1 edition.
  18. Vassileva, J. (2008). Toward social learning environments. IEEE Trans. Learn. Technol., 1(4):199-214.
  19. Victor, B. (2012). Learnable programming : designing a programming system for understanding programs.

Paper Citation

in Harvard Style

Bogdanovych A. and Trescak T. (2016). Teaching Programming Fundamentals to Modern University Students . In Proceedings of the 8th International Conference on Computer Supported Education - Volume 2: CSEDU, ISBN 978-989-758-179-3, pages 308-317. DOI: 10.5220/0005809403080317

in Bibtex Style

author={Anton Bogdanovych and Tomas Trescak},
title={Teaching Programming Fundamentals to Modern University Students},
booktitle={Proceedings of the 8th International Conference on Computer Supported Education - Volume 2: CSEDU,},

in EndNote Style

JO - Proceedings of the 8th International Conference on Computer Supported Education - Volume 2: CSEDU,
TI - Teaching Programming Fundamentals to Modern University Students
SN - 978-989-758-179-3
AU - Bogdanovych A.
AU - Trescak T.
PY - 2016
SP - 308
EP - 317
DO - 10.5220/0005809403080317