Why I use OpenSCAD
Posted by John Galt on Nov 7th 2024
I think OpenSCAD is the most unique 3d modeling software, as it's the only one that is text based. Every other CAD program uses the drag and drop model and often have higher learning curves. I've been casually using OpenSCAD for a few years now, but only recently did I become good at it.
There's been a belief that serious mechanical engineering projects need to be done on professional software from Autodesk or Solidworks. These companies charge a high price for their software, and it isn't possible to purchase it outright since they switched to a subscription model. OpenSCAD is free and open source and still has active development. The fact I was able to build an entire rifle from scratch and CNC many parts based on models generated from OpenSCAD proves that it is worth considering over other software.
Because I have a background in programming, I found the learning curve in OpenSCAD to be very small. I was able to use all the advanced features of the software within a week, and I found the documentation to be very good. Since it is all text based, there is no need to find buttons in large drop down menus or toolbars. There is also a lot of example code and libraries on Github that you can use to save time. The fact that the language has many of the functionality found in typical programming languages makes it really easy to parameterize parts, and avoid repetitive tasks. Finally, because it is text based, I was able to use source control software such as Git, and Gitlab to host and share the repository.
As a programmer, OpenSCAD allows you to use a very similar workflow to what I am used to. It is also extremely lightweight on system resources, and I was able to run it on a cheap $500 linux laptop with 8GB of RAM. What's crazier, is the entire source code for the MBAR is just 3500 lines, probably less if I remove all the comments and spacing. The folder is around 114 KB, which is about half the size of a picture of the rifle itself.
Furthermore, some people have pointed out the free speech benefits of OpenSCAD. If you want to share a model of a part, you can just paste the OpenSCAD code somewhere and that text will be protected by the 1st Amendment. Anyone else can just take that text and generate 3d models from that.
I've also made it a point to include the OpenSCAD code for all the parts I've designed and released on this site. This allows the models to be easily modified to suit individual use cases by people who are not necessarily engineers or experienced with 3d modeling, and also serves to increase the self sufficiency of the American populace; to stop the trend of deindustrialization and move the country back to our roots as the world's factory.