Contents - Cultural View

Contents - Cultural View Contents - Cultural View

culturalview.com
from culturalview.com More from this publisher
14.07.2013 Views

TeachScheme! 296 from each variant, and program code will probably contain a three-way conditional (whether explicit or hidden in a polymorphic dispatch). If the input or output data type has three fields, a test suite will have to specify values for those three fields, and program code will have to refer to those three fields. If the input or output data type has a simple base case and one or more self-referential variants, the test suite should include a base case and one or more non-base cases, and the program code will probably have a base case and one or more self-referential cases, isomorphic to the data type. The technique of recursion, rather than being scary and mysterious, is simply the application of already-learned techniques to a self-referential data type. Organizing the givens is the task of translating the descriptions of data into a program skeleton. Each form of description determines a specific form of program organization. The transformation is nearly mechanical and helps the students focus on the creative part of the task. How to Design Programs is the text book authored by the core of the TeachScheme! group. TeachScheme! and choice of programming language The name TeachScheme! appears to imply that this design recipe requires Scheme (now Racket) and is only teachable with DrRacket. Neither conclusion is true, however. The TeachScheme! members and their students have successfully applied the design recipe in Assembly, C, Java, ML, Python, and other programming languages, not to speak of poetry, geometry, and biology courses. To get started the TeachScheme! project has produced three essential elements: • a series of successively more powerful and permissive teaching languages, which are dialects of Racket, matched to the design recipe but with error reporting matched to the student's level (for example, many things that are legal in standard Racket, but which a beginning student doesn't need, are flagged as errors in the Beginning Student level); • a beginner-friendly, freely-downloadable, pedagogic programming environment, DrRacket, that enforces these language levels; • a curriculum, encoded mostly in the book HTDP and its (draft) successor HtDP 2nd Edition [1] Their choice of Racket reflects their belief that Racket is a good language for a small team with little funding (in comparison to Java) to validate their conjectures. The PLT group has always tried to ensure, however, that the ideas remain portable to other contexts. From TeachScheme! to ReachJava Over the past few years, the team has also created a second part of the curriculum. It demonstrates how the same design recipe ideas apply to a complex object-oriented programming language, such as Java. This phase of the curriculum applies the same design recipe to Java, initially in a functional paradigm, then introducing object-oriented concepts such as polymorphism and inheritance, and then introducing the imperative techniques that are idiomatic in mainstream Java. A part of the team has a grant from the National Science Foundation for conducting field tests in colleges and high schools. Professional-development workshops took place in the summer of 2007, 2008, 2009, and 2010. This part of the project is dubbed ReachJava; the accompanying book is tentatively titled "How to Design Classes."

TeachScheme! 297 TeachScheme! and Bootstrap Recently PLT at Northeastern University and Citizen Schools from Boston [2] have joint efforts to reach out to inner city students with after-school programs. Citizen Schools is a nation-wide organization that matches volunteers with after-school program sites and gets them started with scripted curricula. They have translated the TeachScheme! material into a sixth-grade curriculum and tested it with great success in Boston. [3] The effect on the mathematics courses of this program has encouraged Microsoft to fund a national scale-up effort, developing materials for training teachers and creating sites in Texas, California, and other volunteer cities. External links • TeachScheme! [4] • Racket [5] • How to Design Programs [6] • Bootstrap [7] References [1] http:/ / www. ccs. neu. edu/ home/ matthias/ HtDP2e/ [2] http:/ / www. citizenschools. org/ boston/ [3] http:/ / www. cs. brown. edu/ ~sk/ Publications/ Talks/ Moby-Bootstrap/ [4] http:/ / www. teach-scheme. org/ [5] http:/ / www. racket-lang. org/ [6] http:/ / www. htdp. org/ [7] http:/ / www. bootstrapworld. org/ The Java Posse The Java Posse is a podcast of news, discussion, and interviews about the Java programming language and associated Java technologies. The four regular contributors are Tor Norbye (Sun Microsystems), Carl Quinn (Google), Dick Wall (Google) and Joe Nuxoll (Apple Inc.). [1] By January 2007, the estimated listenership was between 7- and 10,000 people. [2] The podcast was begun in September 2005 and was a successor to an earlier short-lived Java podcast produced by Wall called "JavaCast", cohosted with Brandon Werner. [1] As of December 2007, over 150 episodes of The Java (Left to right) Tor Norbye, Joe Nuxoll, Carl Quinn and Dick Wall recording Java Posse episode #96 in December 2006 Posse have been recorded. The group has also organized the "Java Posse Roundup", an unconference held in Crested Butte, Colorado in 2007 and organized by Bruce Eckel. Sessions from the roundup have been published as episodes of the podcast. Quinn and Wall also co-host the Google developer podcast.

TeachScheme! 297<br />

TeachScheme! and Bootstrap<br />

Recently PLT at Northeastern University and Citizen Schools from Boston [2] have joint efforts to reach out to inner<br />

city students with after-school programs. Citizen Schools is a nation-wide organization that matches volunteers with<br />

after-school program sites and gets them started with scripted curricula. They have translated the TeachScheme!<br />

material into a sixth-grade curriculum and tested it with great success in Boston. [3] The effect on the mathematics<br />

courses of this program has encouraged Microsoft to fund a national scale-up effort, developing materials for<br />

training teachers and creating sites in Texas, California, and other volunteer cities.<br />

External links<br />

• TeachScheme! [4]<br />

• Racket [5]<br />

• How to Design Programs [6]<br />

• Bootstrap [7]<br />

References<br />

[1] http:/ / www. ccs. neu. edu/ home/ matthias/ HtDP2e/<br />

[2] http:/ / www. citizenschools. org/ boston/<br />

[3] http:/ / www. cs. brown. edu/ ~sk/ Publications/ Talks/ Moby-Bootstrap/<br />

[4] http:/ / www. teach-scheme. org/<br />

[5] http:/ / www. racket-lang. org/<br />

[6] http:/ / www. htdp. org/<br />

[7] http:/ / www. bootstrapworld. org/<br />

The Java Posse<br />

The Java Posse is a podcast of news,<br />

discussion, and interviews about the<br />

Java programming language and<br />

associated Java technologies. The four<br />

regular contributors are Tor Norbye<br />

(Sun Microsystems), Carl Quinn<br />

(Google), Dick Wall (Google) and Joe<br />

Nuxoll (Apple Inc.). [1] By January<br />

2007, the estimated listenership was<br />

between 7- and 10,000 people. [2]<br />

The podcast was begun in September<br />

2005 and was a successor to an earlier<br />

short-lived Java podcast produced by<br />

Wall called "JavaCast", cohosted with<br />

Brandon Werner. [1] As of December<br />

2007, over 150 episodes of The Java<br />

(Left to right) Tor Norbye, Joe Nuxoll, Carl Quinn and Dick Wall recording Java Posse<br />

episode #96 in December 2006<br />

Posse have been recorded. The group has also organized the "Java Posse Roundup", an unconference held in Crested<br />

Butte, Colorado in 2007 and organized by Bruce Eckel. Sessions from the roundup have been published as episodes<br />

of the podcast.<br />

Quinn and Wall also co-host the Google developer podcast.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!