ON THE IMPORTANCE OF VISUALIZING IN PROGRAMMING EDUCATION
Peter Bellström, Claes Thorén
2010
Abstract
In this paper we address the importance of visualizing in programming education. In doing so, we describe three contributions to the research field. First we describe an initial study on visualizing the Bubble Sort algorithm. The Bubble Sort algorithm has been chosen since it contains several parts that in the past have been troublesome for several students taking introductory programming courses. Secondly, we describe a design for how visualization can be inserted into programming education. In that design we again use the Bubble Sort algorithm as an illustrating example. Thirdly, we present a classification of four visual programming environments: Alice, BlueJ, Greenfoot and Scratch. In the classification we have positioned each visual programming environment in a matrix comprised of the granularity dimension and the visualization dimension. All three presented contributions to the research field of visualization should contribute to an understanding of abstract programming concepts starting with problem or application instead of syntax. Students lacking scientific mathematics and students taking an introductory programming course based on e-Learning should benefit the most of the presented contributions.
References
- Barnes, D. J., Kölling, M., 2008. Objects First with Java A Practical Introduction using BlueJ. Pearson Education.
- Bayliss, J. D, Strout, S., 2006. Games as a 'Flavor' of CS1. In SIGCSE'06, pp. 500-504.
- Bellström, P., Thorén, C., 2009. Learning How to Program through Visualization: A Pilot Study on the Bubble Sort Algorithm. In Proceedings of the 2nd International Conference on the Applications of Digital Information and Web Technologies, IEEE, pp. 90-94, doi: 10.1109/ICADIWT.2009.5273943.
- Bennedsen, J., Caspersen, M.E., 2007. Failure Rates in Introductory Programming. inroads - The SIGCSE Bulletin, Vol. 39, No. 2, pp. 32-36.
- Bennedsen, J., Caspersen, M., 2008. Model-Driven Programming. In Bennedsen, J., Caspersen, M.E., Kölling, M. (Eds.) Reflections on the Teaching of Programming Methods and Implementations, Springer-Verlag, Berlin, pp. 116-129.
- Booth, S., 1992. Learning to program: a phenomenographic perspective, PhD Thesis, Göterborgs universitet, Acta.
- Caspersen, M. E., Christensen, H.B., 2008. CS1: Getting Started. In Bennedsen, J., Caspersen, M.E., Kölling, M. (Eds.) Reflections on the Teaching of Programming Methods and Implementations, Springer-Verlag, Berlin, pp. 130-141.
- Chamillard, A. T., 2006. Introductory Game Creation: No Programming Required. In SIGCSE'06, pp. 515-519.
- Cooper, S., Dann, W., Pausch, R., 2003a. Teaching Objects-first In Introductory Computer Science. In SIGCSÓ03, pp. 191-195.
- Cooper, S., Dann, W., Pausch, R., 2003b. Using Animated 3D Graphics to Prepare Novices for CS1, Computer Science Education, Vol. 13, No. 1, pp. 3-30.
- Cooper, S., Dann, W., Pausch, R., 2009. Learning to Program with Alice. Pearson Education.
- Dale, N. B., 2006. Most Difficult Topics in CS1: Results of an Online Survey of Educators. inroads - The SIGCSE Bulletin, Vol. 38, No. 2, pp. 49-53.
- Eagle, M., Barnes, T., 2008. Wu's Castle: Teaching Arrays and Loops in a Game. In ITiCSE'08, pp. 245- 249.
- Henriksen, P. & Kölling, M., 2004. Greenfoot: Combining Object Visualization with Interaction. In OOPSLA'04, pp. 73-82.
- Kilbrink, N., 2008. Legorobotar i skolan Elevers uppfattningar av lärandeobjekt och problemlösningsstrategier, Licentiate thesis, Karlstad University Studies.
- Kölling, M., 2008. Using BlueJ to Introduce Programming. In Bennedsen, J., Caspersen, M.E., Kölling, M. (Eds.) Reflections on the Teaching of Programming Methods and Implementations, Springer-Verlag, Berlin, pp. 98-115.
- Kölling, M., 2009. Introduction to Programming with Greenfoot Object-Oriented Programming in Java with Games and Simulations. Pearson Education.
- Kölling, M., Henriksen, P., 2005. Game Programming in Introductory Courses with Direct State Manipulation. In ITiCSE'05, pp. 59-63.
- Kölling, M., Quig, B., Patterson, A. & Rosenberg, J.,2003. The BlueJ System and its Pedagogy. Journal of Computer Science Education, Vol. 13, No. 4, pp. 249- 268.
- Maloney, J., Burd, L., Kafai, Y., Rusk, N., Silverman, B., Resnick, M., 2004. Scratch: A Sneak Preview. In Second International Conference on Creating, Connecting and Collaborating through Computing, pp. 104-109.
- Resnick, M., Maloney, J., Monroy-Hernandes, A., Rusk, N., Eastmond, E., Brennan, K., Miller, A., Rosenbaum, E., Silver, J., Silverman, B. & Kafai, Y., 2009. Scratch: Programming for All. Communications of the ACM, Vol. 52, No. 11, pp. 60-67.
- Robins, A., Rountree, J., Rountree, N., 2003. Learning and Teaching Programming: A Review and Discussion. Computer Science Education, Vol. 13, No. 2, pp. 137- 172.
- Segolsson, M., 2006. Programmeringens intentionala objekt Nio elevers uppfattningar av programmering. Licentiate thesis, Karlstad University Studies.
- Sung, K., 2009. Computer Games and Traditional CS Courses. Communications of the ACM, Vol. 52, No. 12, pp. 74-78.
- Tsai, M-H., Huang, C-H., Zeng, J-Y., 2006. Game Programming Courses for Non Programmers. In Proceedings of the 2006 international conference on Game research and development, pp. 219-223.
Paper Citation
in Harvard Style
Bellström P. and Thorén C. (2010). ON THE IMPORTANCE OF VISUALIZING IN PROGRAMMING EDUCATION . In Proceedings of the 12th International Conference on Enterprise Information Systems - Volume 5: ICEIS, ISBN 978-989-8425-08-9, pages 131-136. DOI: 10.5220/0002871601310136
in Bibtex Style
@conference{iceis10,
author={Peter Bellström and Claes Thorén},
title={ON THE IMPORTANCE OF VISUALIZING IN PROGRAMMING EDUCATION},
booktitle={Proceedings of the 12th International Conference on Enterprise Information Systems - Volume 5: ICEIS,},
year={2010},
pages={131-136},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0002871601310136},
isbn={978-989-8425-08-9},
}
in EndNote Style
TY - CONF
JO - Proceedings of the 12th International Conference on Enterprise Information Systems - Volume 5: ICEIS,
TI - ON THE IMPORTANCE OF VISUALIZING IN PROGRAMMING EDUCATION
SN - 978-989-8425-08-9
AU - Bellström P.
AU - Thorén C.
PY - 2010
SP - 131
EP - 136
DO - 10.5220/0002871601310136