|
ABSTRACT
Traditional first year computer science courses teach the principles of computing using the basic features of some chosen programming language such as C, C++, Java, Ada, Scheme, Eiffel, etc. Abstraction and encapsulation focus on entities such as algorithms, functions, data structures, classes, objects, and closures that can be built directly on top of the raw language. If a facility such as windows and graphics is not directly available in the language then it is not used. This means that student exercises tend to look inward at computer science issues rather than outward to the exciting applications that show the breadth and power of computing.
The fundamental thesis of this article is that teaching students in the framework of powerful toolkits is essential to maintain student interest and is pedagogically important precisely because toolkits are a rich source of examples that illustrate the principles of computation. We hope to convince computer science faculty that the use of toolkits is imperative in a modern first year curriculum.
We will first discuss in general why toolkits are important. We will spice this discussion with some simple illustrations and with references to the use of toolkits by faculty at other institutions.
We will then describe the toolkits we have developed at Northeastern University and explain both what they do and why they are pedagogically valuable. We will see how toolkits enable students to do more interesting and effective work and how principles of design and algorithms can be demonstrated by the key components of the toolkits.
We will conclude with some general remarks and explain why the arguments made against toolkits do not have sufficient weight to change our conclusions. We will also give the web site address where our toolkits are available.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
 |
2
|
|
 |
3
|
|
 |
4
|
Joe Bergin , Ken Brodie , Marta Patiño-Martínez , Myles McNally , Tom Naps , Susan Rodger , Judith Wilson , Michael Goldweber , Sami Khuri , Ricardo Jiménez-Peris, An overview of visualization: its use and design: report of the working group in visualization, ACM SIGCSE Bulletin, v.28 n.SI, p.192-200, 1996
|
 |
5
|
Cynthia Brown , Harriet Fell , Viera Proulx , Richard Rasala, Instructional frameworks: toolkits and abstractions in introductory computer science, Proceedings of the 1993 ACM conference on Computer science, p.195-200, February 16-18, 1993, Indianapolis, Indiana, United States
[doi> 10.1145/170791.170829]
|
 |
6
|
|
| |
7
|
|
 |
8
|
|
 |
9
|
|
| |
10
|
Horstmann, C., and Cornell, G., Core Java 1.2, Vol. 1, Prentice-Hall, 1999.
|
 |
11
|
|
 |
12
|
|
 |
13
|
Thomas Naps , Joseph Bergin , Ricardo Jiménez-Peris , Myles F. McNally , Marta Patiño-Martínez , Viera K. Proulx , Jorma Tarhio, Using the WWW as the delivery mechanism for interactive, visualization-based instructional modules (report of the ITiCSE '97 working group on visualization), The supplemental proceedings of the conference on Integrating technology into computer science education: working group reports and supplemental proceedings, p.13-26, June 01-05, 1997, Uppsala, Sweden
[doi> 10.1145/266057.266062]
|
 |
14
|
|
 |
15
|
|
| |
16
|
Proulx, V., Fell, H., Rasala, R., and Brown, C., Interactive Animations in Computer Science, in Proceedings, Frontiers in Education '93, 23rd Annual Conference (Engineering Education: Renewing America's Technology), November 6-9, 1993, Washington, DC, IEEE Press, 786-790.
|
 |
17
|
|
 |
18
|
|
 |
19
|
|
 |
20
|
|
 |
21
|
Richard Rasala , Viera K. Proulx , Harriet J. Fell, From animation to analysis in introductory computer science, Proceedings of the twenty-fifth SIGCSE symposium on Computer science education, p.61-65, March 10-12, 1994, Phoenix, Arizona, United States
|
 |
22
|
|
| |
23
|
|
 |
24
|
|
| |
25
|
|
| |
26
|
Stein, L., Rethinking CS101: Innovations In Introductory Computer Programming {textbook to appear}.
|
| |
27
|
|
 |
28
|
|
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE conference on Design automation
Gwo-Dong Chen
, Daniel D. Gajski
|