Having used OpenSCAD, Solidworks and NX fairly extensively, I can say that "code-based" solid modelling systems are good for some specific things - anything that is highly parametric, for example: * Gears and sprockets * Fasteners (nuts & bolts) * Electrical components (ICs, etc) For anything else they aren't at all suitable. It's just a million times easier to be able to click on dimensions on the actual sketch and…
Increasing the level of abstraction makes it more rewarding to express the designs in code instead of dragging things with a mouse.