View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Discussion 1 - Elspeth Watson

The article I read was http://www.cs.cmu.edu/~caitlin/papers/NoviceProgSurvey.pdf which is tilted “Lowering the Barriers to Programming: a survey of programming environments and languages for novice programmers.” This article was comparing learning languages that help people to get familiar with programming so that when they go onto languages that are more complex and have different goals then learning a language it is easier. The three categories that programmers have to understand while programming are how to express instructions to the computer (e.g. syntax), how to organize these instructions (e.g. programming style), and how the computer executes these statements. Learning languages help a new comer to understand one of these aspects. Some of the programs discussed looked fun for a kid to just play with. One of the languages “Thinkin’ Things Collection 3- Half Time” was something that I played with as a kid and I didn’t even have an idea that I was programming – it was just fun.

Pascal was a program that is now used by Tech for the first language in CS1321. “The first version of Pascal was created in 1970 for use in teaching programming, particularly systems programming. At the time, the other available languages were FORTRAN, COBOL, and Algol, none of which supported the Structured Programming proposed by Dijkstra [Dijkstra, 1969].”

Smalltalk was also discussed. “The first version of Smalltalk was created in 1971 at Xerox PARC as the language for the KiddyKomputer, Alan Kay’s original name for a portable computer designed for use by a child. Where BASIC attempted to provide a simpler programming language by reducing the number of commands and removing unnecessary syntax, the Learning Research Group (LRG) at PARC concentrated on the model of programming. The group wanted to create a programming language with a simple model of execution and a method of programming that could accommodate a wide variety of programming styles. Smalltalk was based around three ideas: (1) everything is an object, (2) objects have memory in the form of other objects, (3) and objects can communicate with each other through messages.” Both Pascal and Smalltalk were under the category of Structuring Programs which means that the makers of the language thought it more important to concentrate on the structure of code and how it is organized rather than on the syntax of short segments of code.

Squeak Etoys was even mentioned under improve interaction with the language “Squeak Etoys are designed to allow children to learn ideas by “building and playing around with them” (Kay) either through interacting with simulations others have built or creating their own simulations (see Figure 27). The Etoys environment provides students with a variety of pre-made objects, from simple shapes to trashcans, and a simple drawing tool with which students can create their own objects. All objects have viewers that contain object-specific information as well as tiles that the student can drag out of the viewer to build programs that control the behavior of the object. Programs can change the position, orientation, size, and appearance of objects as well as play sounds. Users can create simple if-statements in their program, but no other standard control structures are included in the Etoys system. Users can trigger object behaviors based on a variety of mouse events, or the behaviors can be started, stepped and stopped with a set of pre-made buttons users can add to their simulations.”

This article discussed a lot of different languages that help people of all ages get past what ever barrier they perceive in learning programming.

I read Discussion 1 - Vinayak Kashyap page which he also read an article about languages to learn on. That article had more well know languages such as C++. But both articles seem to think that it is best to get the new programmer to understand basic concepts that can be applied to any language. But it seemed that my article looked at more obscure languages that help kids at a young age learn as well.








Links to this Page