One of the labs I give to my Intro to Computer Science students is writing an interesting physics simulation. I started using that lab when we were using the Calico IDE, an educational IDE that comes with some built in goodies like an easy to use physics simulation.
Every semester some students would ask, “Can we do X?” and we’d do the research and find out that, no, Calico did not expose those features of a physics simulation.
Combine that with my desire to switch from the Calico IDE to something that would prepare students more for a full-featured IDE like Eclipse or IntelliJ, and it was pretty clear I wouldn’t be able to use Calico’s physics simulation. Students enjoyed the lab, though, so I didn’t want to just replace it with something else.
A bunch of web searching later, and I hadn’t found anything that matched the Calico physics simulation in ease of use for intro programming students. So I did what any reasonable CS person would do.
I wrote my own.
PyPhysicsSandbox is a physics simulation that exposed complex physics simulation features through an easy to use interface. It’s suitable for use in introductory programming courses that use Python, or for hobbyists looking to learn very basic Python by programming interesting physics simulations.
The library itself is available on Github: https://github.com/jshaffstall/PyPhysicsSandbox
A YouTube channel with a lot of screencasts showing specific features of the library is here: https://www.youtube.com/channel/UCybNk1XwGtiPyiLVitMFmsQ