Paper Outline

From Earlham CS Department
Jump to navigation Jump to search

Outline of the paper


- Traditional teaching methods allow for a student and teacher to engage in a dance where the teacher presents material and the student opens a textbook and thinks about the concepts presented in class while doing homework. One of the problems that many students have with this approach is the lack of ability to interact with the material. To learn about a particular aspect of computer science, it is usually necessary for students to, in some way, write their own minimal implementation of a protocol and dance with the compiler and text-editor until they can begin to get a sense computing in general (and the particular problem specifically). As visual creatures, this leaves a lot of burden upon the students to come up with their own visual layout in their minds.

- Wolfgang Christian, a professor at Davidson College came up with the notion of physlets (literally PHYSics appLETS) to aid in the visualization of and interaction with different physical concepts. Physlets allow students to change different aspects of a fundamental problem and see how their change affects the outcome. There now exists a compendium of physlets. What does not exist is a compendium of CSlets.


- The aim of these CSlets is to build upon the notion of Christian's physlets. In the science realm, visualizing how a phenomenon works at a core level is often the most difficult task in learning a concept. Students learning (calculus) integration often stumble over the "bitsification" process, just as students learning about pointers in programming bumble over allocation of memory.

- Creating CSlets comes from a desire to work within or around a framework of extensibility and usability. The concept of an "<INSERT_SUBJECT_HERE>let" is, by its very nature, extensible. All that needs to be done to have a certain concept explained by a "-let" is to write a "-let" to explain it. One need not worry about trying to find the right place in which to fit a certain bit of content: just write a CSlet and let it be its own context.

- The idea of usability is a little bit more fluid, and up to the creator of the "-let". A "-let" should usable by students: it should allow students to interact, and see how a change affects a phenomenon. I want these CSlets to enable students to, in effect, begin to answer their own questions by /seeing what happens/.

Ideas of Implementation

- This section will mainly be a list of ideas for implementation. As it is currently well before I have even completed one CSlet, these are all options.

- As I am writing this as a student at Earlham College, I would like to find ways for my CSlets to be usable by some of the faculty here. This means that I might tailor the ideas and what I pick towards classes that are taught here, especially that which might be taught in

- Basic programming: Introduction to pointers (perhaps as pertains to C or Java -> is there something more general?)

- I'm thinking of something as regards a blank screen and suddenly bits of it clear up as memory is allocated.

- Basic networking: probably an introduction to Hamming codes

- I'm wondering if there's a way to make it mathematically analagous to a picture of some sorts. (Obviously, the answer is "yes" in simple pixelation form, but how about a picture that actually means something to the human brain?)

- Basic databases?

Intentions for Use

- alongside current curriculums and inside

Implementation Decisions and Details

- This section is about the actual decisions and details that were made. It must be written after completion of an applet.

Initial Reactions to the CSlets

- This part will be written after I have done an initial trial with my CSlets.

- The trial will consist of teaching a group of students a couple of concepts with my CSlets. Ideally I would have two separate groups to whom I'll teach these concepts. Group one would be taught a "traditional" way, while group two would be taught using my CSlets.


- Success? Failure? Why?

- What worked?

- What would I change?

- method of implementation of CSlets?

- actual implementation of CSlets?

- method of research as pertains to two groups?