Programming with OpenSCAD teaches beginners both how to code and how to use freely available OpenSCAD software to design and print 3D models.