Honestly, OpenSCAD has a great UI - it's everything else that sucks about it. OpenSCAD's core advantage is that if you can code, then it is so damn simple; cube sphere cylinder variables modules rotate translate (and if you want to be really fancy: hull union intersect difference), that's all you need for 99% of projects and it fights onto a half-page cheatsheet.
The problem with OpenSCAD is that it's fundamentally really dumb; it doesn't have constraints, you usually just create shapes additively but then you have awful Z-fighting because the engine sucks, and the solution is "just barf epsilons everywhere lol" (which is pure cope - that's not a solution, that's an awkward workaround that requires a bunch of pointless busywork (and more importantly, forces you to figure out stuff about your model that you legitimately don't care about) because the engine is incapable).
I would love to see a successor to OpenSCAD that keeps its IDE-style interface (and no, that doesn't mean using pycharm - the beauty of OpenSCAD is that you have a minimal functional DSL and the GUI is built around the DSL and its use-case) but finds an elegant method of integrating constraints, basically anything to do with curves, that sort of stuff.
Openscad does have constraints, they just look different. It is an imperative ui so it has imperative constraints. Most cad programs have a declarative ui and declarative constraints.
However I have to admit, I too would love an imperative ui with declarative constraints. I have a hard time visualizing how that would work, but that is probably because I lack imagination.
SALOME is an OpenCascade frontend that nobody seems to know about, perhaps because it's pitched for CFD meshing. But it's basically a more focused and stable FreeCAD.
> DSLCAD is a programming language & interpreter for building 3D models.
> Inspired by OpenSCAD, it has a language and 3D viewer to simplify the modeling experience.
https://github.com/DSchroer/dslcad