Gerald Futschek
Vienna University of Technology Institute of Software Technology and Interactive Systems Favoritenstrasse 9, 1040 Vienna, Austria futschek@ifs.tuwien.ac.at
Abstract. We show that algorithmic thinking is a key ability in informatics that can be developed independently from learning programming. For this purpose we use problems that are not easy to solve but have an easily understandable problem definition. A proper visualization of these problems can help to understand the basic concepts connected with algorithms: correctness, termination, efficiency, determinism, parallelism, etc. The presented examples were used by the author in a pre-university course, they may also be used in secondary schools to help understanding some concepts of computer science.
1
Introduction
In autumn 2005 the Faculty of Informatics at the Vienna University of Technology started to offer a pre-university course [1] (propaedeutic course), similar to other universities, e.g. [2], for all applicants who intended to start one of the bachelor studies in Informatics. This course addresses all beginners and has many-fold reasons: 1. 2. 3. 4. 5. Lack of pre-knowledge, what is Informatics after all Lack of pre-knowledge, how computers work Lack of pre-knowledge about algorithms Lack of pre-knowledge about programming Lack of sufficient knowledge in mathematics
These facts were observed by our lecturers and were confirmed by a survey of our beginners. Although these topics are part of the secondary school curriculum and should be known by all students passing secondary school, most of our beginners have not enough skills and pre-knowledge that is necessary to start a university study in Computer Science. The consequences were a very high drop out rate during the first study year and a low success rate in the topics Programming and Algorithms & Data Structures. The pre-university course should overcome
References: 1. Propädeutikum in Informatik (prolog), Lessons held at Vienna University of Technology: www.informatik.tuwien.ac.at/prolog 2. Loidl, S., Mühlbacher, J, Schauer, H.: Preparatory Knowledge: Propaedeutic in Informatics. In Mittermeir, R.T. (ed.): From Computer Literacy to Informatics Fundamentals. Lecture Notes in Computer Science, Vol. 3422. Springer-Verlag, Berlin Heidelberg New York (2005) 104-115 3. Snyder, L. Interview by F. Olsen "Computer Scientist Says all Students Should Learn to Think 'Algorithmically '," The Chronicle of Higher Education, May 5, 2000: http://chronicle.com/free/2000/03/2000032201t.htm/ 4. Mudner, T., Shakshuki, E.: A new Approach to Learning Algorithms. In Proceedings of International Conference on Information Technology: Coding and Computing. (2004) 141-145