This is a program I started thinking of during my first course in mathematics for teachers. Well, actually my brother and I talked about it about ten years ago, but I never actually planned to make it.
The main idea here is to be able to take the abstract of mathematical thinking, and making a few simple tools to play with, so that a person can se how the maths react. It's like playing whith anything else, you learn how things react to certain things; when you kick on a ball it goes away, when you pour salt into water and stirres a bit, it becomes invisible etc. Whith the mathematical thinking of dividing, adding etc, there haven't been so many tools to play with. People who later became great mathematicians are the few who have been able to make these tools in their own heads, and the great techers the ones who have been able to stimulate their pupils to do so.
When thinking of a computer program for use in school, I want to make one that does what a teacher can't do, or at least is very hard to do. I don't want to make a program where the pupils will sit and train simple calculations, where the only excuse for having it on the computer is that it's funnier or doesn't take that much time from the teachers work. Sure, such programs have their place too, but that's not the purpose of this one.
This program is going to be the frame for playing with mathematical operations just like in any practical subjekt; it will provide a laboratory with math instead of chemicals!
This will be done first by just getting simple operations like two numbers combined with one mathematical operation (a * b), shown with vertical vectors (arrows). There will be a third vector showing the result. The manipulation is the ordinary up/down-arrows, and all should be colour-coded. With tha case of multiplication of integers, the result-vector would be a number of vectors of b length, besides the full one. All vectors are shown besides a scale.
Later, there will be interfaces with other visualisations, like coins, square-areas etc. More than two numbers will be supported, as well as graphs.
Miscellanous: