This site was created as a place for people to write simple computer programs in the context of exploring mathematics.

A few reasons drove the development of this site.

The first

is that in today's technologically-based, machine driven society, our youth must learn to use computers for more than a hub of digital media. No matter what their field of study, the computer will play a central role. Be it in research or development, to really make progress, one must invariably program a computer, in one form or another. Further, this programming will be, at least loosely, tied to the principles and logic of mathematics.

the second

In terms of programming,is that the modern operating system is an extremely difficult environment under which to program. We think this is a big turn off for most people, kids in particular. These days, it's simply too hard to get a computer to "do something." Are you really going to sit a beginner in front of Xcode? Visual C++? A Unix prompt? No way. And, is popping up an "about box" in JavaScript really going to interest people in programming?

Print

input

We grew up programming the first home computers, like the TRS-80s. When you turned these on, you had no choice but to start programming them, because they didn't really do anything else. And the programming made sense.would put something on the screen, andwould read keys from the keyboard.

circle(0,0,5)

As we look at computer programming environments today, we wonder what ever happened to the being able to typelikeand seeing a circle drawn on the screen at (0,0) with a radius of 5?

line(0,80,0,-30)

The "instant response" type programming environments, at least for beginners, are hard to find. We believe such simplicity can draw beginners into programming because once you have the circle (which is a "head") you can do afor the "body," and you are on you way to programming a stick figure on the screen!

Third

, we've noticed that math offers a badly needed context for learning how to code. Likewise, coding offers a badly needed context for learning things about mathematics. You can learn math through coding, or coding through math, and this is our the core theme of our lessons. As A.A. Stepanov said in his book on generic programming, "The separation of computer science from mathematics greatly impoverishes both."