Computer-aided design (CAD) is now widespread in professional fields such as architecture, engineering, and manufacturing, as well as among 3D printing hobbyists, etc. Both 3D rendering programs like Blender and CAD programs store spatial information in a 3D model. But while 3D rendering focuses on optics and aesthetics, CAD simply stores and conveys information. CAD programs can export human-readable plans/elevations of a house or an input file for a 3D printer.

OpenSCAD is a free and open-source general-purpose CAD program. It is lightweight and requires users to generate 3D models through scripting rather than point-and-click interaction. (Unfortunately, OpenSCAD uses its own scripting language rather than a popular one… but you can always write a Python script to generate the OpenSCAD script. ☺)