Dr. Geo has a long tradition on GNU/Linux. It was the first software of this category since 1999. Beginning 2006, it plays nicely on Windows and Mac OSX as well.

In fact Dr. Geo bundle is now distributed as an universal portable application. This means student Bob can use the software on his usb key on the school's Mac OSX, then continue working on an Internet coffee's GNU/Linux workstation, then finish his work at home on his Windows PC. Each time, the same portable app is used. Moreover, when suddenly interrupted, Bob can save the session of his work - like a memory dump - to continue later, on a different workstation or system.

This is true both for interactive geometry activities and programmed geometry sketches. The later feature is a nice extension, an API, to design programmed geometry sketch. Of course the resulting sketches are all interactive. Read this small example. Programming is also available in interactive sketch, the user can plug small scripts in the canvas to do specific computation, for example to compute a curve and a tangent line at an arbitrary position.

Therefore, advanced teachers/students will appreciate the fact that scripting is more like writing math formulas than writing low level programs (no need to do a lot of initialization, for example). To draw an interactive segment and a bissector, you write:

drgeo := DrGeoCanvas new.
s1 := drgeo segment: 0@0 to: 5@5.
drgeo perpendicular: s1 at: (drgeo middleOf: s1).

Last but not least, free software spirit is so much at the heart of Dr. Geo -- you can study, modify and distribute its source code from itself.

Yes! You can modify Dr. Geo from Dr. Geo!

All in all, Dr. Geo is a hacker spirit in a candy box: young learners enjoy using it, when they grow up they can dig in programming and even learn from the Dr. Geo own design.

All pure fun.