Content deleted Content added
m WP:CHECKWIKI error fix for #64. Do general fixes if a problem exists. - using AWB (10809) |
|||
Line 10:
of local public schools. His objective was to use functional programming to bring
mathematics alive and to help inject design knowledge into the introductory
[[computer science]] [[curriculum]].
The group raised funds from several private foundations, the US Department of Education, and the National Science Foundation to create
Line 28:
grade school courses on arithmetic and middle/high school courses on
pre/algebra. Teachers program them with rules and run specific problems via
exercises. The key is that students execute purely functional programs.
If we can turn students into teachers that create functional programs and run them
on computers, we can reinforce this content and show students how writing down
mathematics and how writing down functional programs creates lively animated scenes
and even computer games.
Here is an example:
Line 60:
columns where each column contains ''t'' at the top and an appropriate image at
the bottom. That is, if the numbers increase from left to right, then on each image the
red dot is a little bit lower.
Finally the animate line applies the given function, create-image, at the
Line 71:
children would have more fun with such "live" functions than with algebraic
expressions that count the number of garden tiles [see Prentice Hall books for
grades 8-9].
The ProgramByDesign project proposes that both traditional mathematics as well as
Line 90:
photographers. Thus, an introductory course in programming would not be perceived as a
place where students learn about the syntax of the currently fashionable (and soon-to-be-obsolete) programming
languages, but a place where they can learn something widely applicable.
The key design element of the ProgramByDesign curriculum is the ''design recipe''.
It has two dimensions: the process dimension and the data dimension.
Along the process dimension students learn that there are six steps to designing a
Line 116:
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 ProgramByDesign
Line 127:
in Assembly, C, Java, ML, Python, and other programming languages, not to speak of
poetry, geometry, and biology courses. The fundamental idea of ProgramByDesign is to stress programming as a design activity.
This misconception is one of the reasons for the renaming actions taken in 2010.
To get started the ProgramByDesign project has produced three essential elements:
Line 151:
==ProgramByDesign and Bootstrap==
In 2006 PLT at Northeastern University and [[
| url=http://www.boston.com/yourtown/news/dorchester/2011/05/bootstrap_program_pulls_up_rox.html
| title=Bootstrap program pulls up Roxbury, Dorchester middle-schoolers
|