I would personally prefer to work with a language-based CAD than a strictly graphical one. Especially for parametric kinds of objects. Now that 3D printing is going mainstream, I am certain that new and interesting things are still to come in CAD.
Curious. How much experience do you have with any form of CAD? Is the preference based on that you tried graphical CAD software and you found them lacking, or is it based on imagining how they might work?
Last week at the hackspace someone asked me to quickly design a manifold which holds together a scuba mouth piece, a 48mm diameter valve and a nato 40mm screw fitting. They wanted to minimise the internal tidal volume of the manifold, while keeping enough clearance for the tubes connected to it. We ended up connecting the 3 fittings in a Y-shape and lofted the pipes together. Without seeing the resulting shape I can’t even start to guess how many edges it would have. And I have no idea how I would refer to which edges i want filleted. How would you approach something like that with your prefered method?
I have a lot of experience with openscad. I design a lot of small, simple-to-moderate parts. I want to use something like fusion instead, but the GUI learning curve is a huge blocker for me.
I'm not a CAD professional, I can't seem to find the time to watch hours of video to get the basics down. With code based CAD, the way to start is usually obvious. When I run into a blocker, I search online, find examples, and try them out. Then, crucially, I copy and paste code snippets into my design, and modify them, to solve my problem.
In a GUI cad tool, I find that I spend most of my time hunting for buttons in the UI, often finding UI layout discrepancies between my version and whatever video I found.
In code, I do have to repeatedly solve little trig or geometry problems, and I'm always aware that a constraint based GUI tool would eliminate that completely. But I always know that I can just spend five minutes with pencil and paper and get it done, whereas switching to fusion means adding an hour or more of work to multiple designs.
I really want to design more effectively, with better fillet flexibility. But for my simple tasks, the barrier to becoming productive in a GUI is just too high.
I believe the "command palette" in e.g. VS code solves this well, perhaps a GUI cad with that would be workable for me.
Maybe what would really help me, is a larger more complex project which I can develop over a longer time in fusion while I learn to use it. Too bad I don't have anything that naturally fits that bill.
To me it sounds like it would be worth it for you to learn the basics of Fusion or FreeCAD. You would probably quickly recover the hours spent on learning with increased productivity.
I recommend going through some basic tutorial (written or in video form) to build a simple part. The tutorial should teach view navigation, drawing and constraining a sketch, extruding or rotating it to create a 3D body, modifiying that with chamfers / fillets, creating sketches on top of that to add or cut away parts, add holes, create patterns from features. I don't think you need to learn surface modeling at this point. After that you should be good to go on your own projects. You will still need to look up how to do something (as you do now), but that will improve quickly.
I'm hitting the same problem, getting stuck on simple things in FreeCAD mostly because I'm a novice and don't have hours and hours to watch videos and learn.
I'm generally very much for open-source software, but after my brief experience with FreeCAD and Fusion, I think if I'm going to sink 10+ hours into learning one of them, it will be Fusion. I bookmarked this recently and plan to try it out but have not yet started: https://www.youtube.com/playlist?app=desktop&list=PLrZ2zKOtC...
I adopted bosl2 recently, it's wonderful! Anchoring is a huge improvement, which does eliminate a lot of that work. But it's a very large library and I am slowly expanding my knowledge of it.
I've also been asking myself what people do with programmatic CAD. I've used OpenSCAD once to create a simple, cylindrical object, but about 80% of the things I create (using conventional CAD, like Fusion 360) would be way too complex for that. And even the simplest shapes are just much faster to create and modify in Fusion.
Maybe this is the "everything looks like a nail" problem for programmers who have never tried CAD?
I recently used this https://makerworld.com/de/models/1765102-10-inch-mini-rack-g... to generate various mounts for my home lab mini rack. The idea is that everything needs to fit into the same width of rack, but every device is slightly different so custom creating these becomes annoying quickly. This generator was a godsend
So the appeal for you, as the "user", is that you can easily customize the parameters which are made customizable by the designer and get a suitable model without requiring proprietary software (or any software at all). I can see the appeal of that.
But I assume the designer spent quite a lot of time, creating this in OpenSCAD and make it customizable. He was also restricted to making shapes which are easily described in OpenSCAD, where he might have gone for a more elaborate design if it was easy to do.
For me, I've never done well w/ traditional 3D CAD (need to find time to try Moment of Inspiration 3D), and I've been working on wood joinery where a test joint which was 1" x 2" x 1" took some 20 minutes to do CAM, and created a ~120MB file --- programming the tool movement directly seems a better approach, so I've been working on:
Agree with this. I've tried the various programmatic CAD options before, and creating initial shapes is relatively easy, but figuring out how to refer to parts of those subsequent shapes - to e.g. modify further, or build from, or connect to other shapes, is really complex and clunky.
Neither is 3D printing going mainstream nor do I see any reason why it would push people away from industry standard CAD software.
CAD is already complex. Why would giving those people an extremely underpowered programming language, which makes creating even the simplest 3D models a chore, cause change in the CAD world.