It's not like the switch from WinRAR to 7-Zip, it's a long ordeal of the (possibly already overloaded) designer learning how to do everything over again. There is very little carry-over aside from general design knowledge; and it may take a very long time for that person to become productive in whatever they choose - which by that time their just-learned software package may be the new software package to hate.
All I mean to express is that it takes a lot more than a money investment. F360 only remains dominant because -- pardon the expression -- they have a lot of us by the balls in some way.
I'd love to break free, but those that pay for my design work will be hard-pressed to understand the sudden drop in productivity, the worse deliverables/renderings/the lessened compatibility with file types/the list goes on.
It feels like the competitors need to cover some ground before a reasonable expectation can be made for the people that have to pay the bills with it to move over.
FreeCAD uses OpenCASCADE, because it's the only free option. You will notice that almost no other 3D Program, paid or free, uses it. OpenCASCADE is, compared to Parasolid or ACIS; buggy, broken, incomplete, unergonomic, and obsolete. There is almost no commercial software that uses it - they all find it better to license Parasolid or ACIS despite the heavy royalties those packages require.
This puts FreeCAD in kind of a chicken-or-egg situation. The geometry kernel they use is considered unanimously inferior to the licensed kernels for almost every task, to the point that even people building new CAD programs (like the recent Plasticity beta) don't even consider it as an option. The 3D packages that license the kernels think that rebuilding ~35 years of work with extremely complex math equations requiring dozens, or even hundreds, of PhD-level math professors is too much work to justify not paying a license fee. To them, it's like saying we should rebuild Windows, but it's PhD-level math instead of APIs.
Sage Math and all of it component software succeeded in that. Thus, I don't think it's something impossible.
I'm sure it's unrealistic for a small design house to do it on their own, but that doesn't mean the industry couldn't band together.
I wonder what would happen if everyone donated 10% of their Autodesk licensing fees to a foundation, or if a big shop decided to hire a dozen autodesk veterans for a few years.
In cases where there can be "good enough" solutions that can be achieved with more modest resources and then grow after gaining some traction we have seen some success stories. But for a lot of professional software in specialised markets it's almost an all-or-nothing proposition and that defeats the incremental adoption that has been somewhat successful elsewhere. Even well-capitalised commercial competitors have failed to make dents in the market share of the established giants in some of these industries and the odds are stacked even more heavily against any FOSS effort building up from the grassroots.
I just bought a lifetime license for Alibre CAD, it's for profit closed source but much more usable.
FreeCAD needs a benefactor like CERN for KiCAD to bring it up to speed.
Just the other day I cloned one of these[1] in freecad using the image importing and scaling, quickly made a trace, added a pad and some chamfers, and had it on the 3d printer in about 25 minutes.
I'd love if FreeCAD got a benefactor like you mention.
[1]https://www.amazon.com/TILISMA-Book-Page-Holder-Accessories/...
I want to love FreeCAD, but it is hard to work with for complex designs compared to other tools; topological naming has been an absolute nightmare, but I persevere, it's improving slowly. At least now I'm less likely to have to throw away hours/days of design because I got into a mess.
As a Linux user, my options are slim, so I keep learning FreeCAD, and SCAD, but I'm always a little jealous when I watch a YouTube tutorial of how to do something that takes relative ease in tool X, but is an order of magnitude more complex to do in FreeCAD.
FreeCAD getting a benefactor that can propel it ahead would be huge; donations are great, but my measly donation is barely going to cover the cost of a bug fix.
I enjoy the act of technical drawing and 3d design. Downloading pre-existing models doesn't have the same "I did that" feeling. Especially after a long day at the coding mines, doing some shape manipulation is like brain yoga.
The biggest reason why I love freeCAD is how it's just there. All other cad software has long user agreements, log-ins, subscription tiers. The fact I can just install it and open and get to work somewhat makes up for the odd workflow. I learned AutoDesk Inventor when I was practically a child so I always reached for it when I could get a student license, but after that expired and the cad market started moving fast, I just went to freeCAD.
I don't want to do real work in a browser, I hate browsers. So on Linux its either freeCAD or wine+fusion360.
Right!
I have a cheap 3D printer. It took me over a year to decide that buying it wouldn't mean another white elephant gadget.
So I made myself a list of things I'd always be able to download and print if I never managed to learn CAD. I've barely printed any of them, because I can do my own things already.
God loves the OpenSCAD/code CAD devs I am sure, but it is not really the case that you can just "program" general objects, because real life things are not simple geometrical constructions; there's a lot of arbitrary organic design in them. A lot of compromises and tweaks and useful accommodations, that lead to some hellish maths (and if I was good at maths I'd have a maths degree, not a CS degree).
I decided I would push past the pain points of learning FreeCAD, and I have now become comfortable enough in it, and designed enough real things.
I am borderline religious about the impact the combination of FreeCAD, PrusaSlicer and a cheap 3D printer has had on my ability to reason about physical objects, and make things I have only before imagined. It's incredibly liberating: I am now someone who can make physical things.
Like you I also love that I don't have to think about costs or licences.
FreeCAD isn't perfect but it's not in the same "clearly left behind" category as GIMP. It's more like QGIS: somewhat idiosyncratic but actually quite powerful. It's made my life enormously better.
You basically made a list of reasons why I avoid it, its in a browser, you need a log-in, basically zero ownership of your designs on the free tier, with a jump to $1500/y for the "standard" tier. I know cad programs are difficult to make but damn they make it easy to not want to be their customer.
I typically just use the latest version from the arch repos and it's been smooth sailing.
That just means we have exciting changelogs ahead of us.
In my case, I remember running into some edge cases with parametric designs, but I was overall very happy to not have supported an untrustworthy business.
And, to put my money where my mouth is, I just renewed my donation in Liberapay.
https://www.youtube.com/playlist?list=PLWuyJLVUNtc0UszswD0oD...
freeCAD had a critical issue in topological naming (they are working on a fix as we speak and it's going to be out "soon"), and it's hideously clunky. Basically, when you resize a sketch and that causes more faces to be created it makes all your other stuff go crazy.
You can also use realthunders branch which fixes the naming issue as well.
Mangos videos teach you a bit how to think reasonably though freecads infuriating errors, too. The guy is worth a watch if you want to start using the best open source tool.
freeCAD sucks, until you learn it, and then it works alright. Learn to use data planes instead of sketch on face and the topo naming isn't even an issue anymore.
Datum planes are usually unnecessary; cluttering up a design with a plane per sketch is certainly the wrong way to go about it.
You can place each sketch with the same tools you place a datum plane -- by editing the attachment and attachment position. (You just can't do it at the point of creating the sketch in the same way as you can when creating a plane).
You can then use expressions in those positions, including e.g. the width/depth/length of other objects (using the length of another Pad would be one very common scenario). Or you can use values from a Spreadsheet.
And TNP won't always bite you anyway. It's possibly better to learn how to fix attachment issues than clutter up your design with datum planes.
Learning how to place sketches in arbitrary space is so core to FreeCAD that it's probably worth going through the pain on this.
Datum planes do have uses -- like when you want to attach large numbers of sketches to a single plane, or when you want to model some arbitrary plane without using physical geometry. They are also useful for e.g. cutting holes up to a face (because the plane can substitute for a face)
They are also helpful, I find, when I am using an LCS for some feature.
But quite often you see people trying to work around TNP with a datum plane, only to attach that plane to the same object that will have the TNP.
This tutorial on attachment may help you (it's a bit involved)
https://wiki.freecad.org/Basic_Attachment_Tutorial
But the various Mango Jelly videos about sketch attachments are well worth watching.
Each sketch can be placed independently anyway (offset from its attachment), and you can place them parametrically. So if you want the sketch on the top surface of another pad you can simply set the attachment position with e.g. <<Pad>>.Length referring to that object. Or by using a named reference from another sketch, or whatever.
Local co-ordinate systems can be useful, and sometimes I have added planes attached to those, because setting up attachment in truly arbitrary places is fiddly, but I almost never use datum planes.
TNP isn't usually triggered by resizing a sketch, unless the resizing causes some topology to change -- an edge being added in the edge list before a critical one is what will break attachment. For example if resizing one sketch in a body causes an earlier-numbered edge of a face you're attaching to, to disappear, that will do it, I think.
So generally TNP is something you don't always have to worry about, if you plan your design; sometimes you can attach to faces without concerns.
This isn't actually truly unique to FreeCAD. All CAD kernels have to solve this problem somehow; it's just that they are usually really narrow edge cases rather than big ugly obvious ones!
For me the bigger problem with FreeCAD (that won't go away quickly) is fillets and chamfers. OpenCascade can't allow a chamfer to consume other edges so you often run into difficulties where you have to tweak some measurement by a fraction of a millimetre so it doesn't.
I am getting around that by considering carefully which chamfers are merely presentational and which are effectively structural. The structural chamfers I may solve in some other way -- within the sketch, or with a subtractive operation, or whatever.
I agree with the recommendation for the Mango Jelly videos, and if you're on Facebook, the main FreeCAD group can be useful (Mr Mango Jelly hangs out there).
Another reason why I recommend all 3D artists to learn Blender. Nobody can buy and then kill it off. I'm pretty sure Autodesk would love to do that if they could.
https://solvespace.com/index.pl
I'm considering digging in.
They also provide the geometric constraint solving algorithm separately as a library. Incredible.
Indeed -- it's actually used in the FreeCAD Assembly 3 workbench as a solver (I think that supports switchable/pluggable alternatives now though)
It’s very lightweight and minimalistic, but it’s not the easiest to use and very bare bones. I often have to find new ways of building things to account for the lack of functions, such as filleting an edge. In a way it’s a good thing because it’s hard to over complicate a design with unnecessary features, which I tend to do, but my designs in solvespace aren’t as nice or pretty and everything takes longer than inventor or fusion, but it takes half a second to boot up, I love the UI, and I really don’t need a complicated CAD tool for the vast majority of my projects.
The other caveat is that like any FOSS CAD tool it’s not totally stable and certain actions may get you into a bad state and possibly crash the program, but eventually you get used to it and can work around them (so far as I’ve seen).
If you’re just doing simple hobby projects, I’d say it’s worth trying out but it does take a little time to get used to. For professional endeavors it’s probably not gonna do the job.
I guess one just works through the tutorials until you on your own.
* Regularly swapped itself into a screen freeze. Possibly because it defaulted the swap partition to 1 GB.
* Default boot partition was too small, so it ran out of space for new kernels. I have to manually remove kernels because the auto-remove is too slow to stay below the limit.
* Hibernate doesn't work out of the box. I managed to figure out that I have to install some other cryptically named package, otherwise `sudo pm-hibernate` fails without printing an error message. Then a distribution upgrade removed the required package from the repos. And that's just making the command line tool work, it doesn't add it to the power manager so it triggers automatically after an idle period or when closing the laptop lid.
I encountered similar issues on my gaming desktop running mint (e.g. the nvidia driver wouldn't load for no discernible reason) and steam deck.
Odd that you have partition woes, to me. That said, I have defaulted, for a long time, to not have fancy partition schemes. Where fancy is embarrassingly vague, of course; but the general idea is that extra partitions are largely solving problems from decades past. Worse, it leads to the swap and kernel space problems rather quickly. Though, swap into freezes is new to me.
Hibernate is one that I have heard a ton of troubles with. Largely with laptops. Good luck getting past it.
I am surprised you have had issues with the steam deck. That thing has been rock solid for me. Almost certainly my luck on the games I prefer.
Edit: I do want to underline my point about luck on my part. And good luck to you! I don't claim to have a panacea here. I also don't think it is some failing of anyone that some folks would stick with Windows or other.
I also don't want to recommend Ubuntu (if I had to pick a single reason it would be snap), but from a problem-googleability-index point of view, it's hard to beat. Perhaps Mint, because it's mostly Ubuntu, but without snap (last I checked).
https://news.ycombinator.com/item?id=36549295 has some of my complaints about my work laptop
I have for years used different flavors of Ubuntu and Arch, but must admit, I always had some issues, no matter the distro. Mind you, purely counting the problems, the amount was either comparable or slightly less than what I tended to encounter on Windows installs, but still, I get that adding any issues on top of less familiarity and lower software compatibility is a hard sell for the average person.
Then, I tried Fedora, more specifically Silverblue, for the first time in a while and was blown away. Everything worked. More to the point, I could not break the install even when actively trying to. Software was bleeding edge but stable, the kernel the most current version without issues, immutability prevents even the most idiotic mistake on the user's part, no update ever caused any issue. The concurrent rise of Proton and Bottles for Games made it even more appealing.
Then, something followed that would cement my reverence for Silverblue: At the time, I had recently gotten an AMD Renoir based laptop. Silverblue ran perfectly, GPU acceleration, sleep, connectivity, all out of the box as if the notebook had been designed for Fedora.
Still, I made a Windows install as a fallback. Unlike with Silverblue which, thanks to Kernel support for the GPU, needed no additional configuration, Windows of course required drivers from AMD. Upon installing them, I quickly noticed crashes, instability and resolution issues. Turned out, Windows update had overwritten the newest driver I had installed with an older, incompatible version. No problem, I thought, annoying and not something one should have to troubleshoot on a for-profit OS, but manageable. Used DDU to remove that, installed the current driver, again, overwritten by Windows Update. Repeated the process, this time manually blacklisting the specific update. Still, that got consistently and painfully reset every time there was an update.
I understand that not everyone believes in having full control over their system. I also understand that delivering drivers via Windows Update is a valuable tool for some people. But if those drivers are faulty, taking away any graphics acceleration and causing crashes and you take away my ability to address that issue by overwriting my changes, I have a hard time seeing my money well spent at Microsoft.
Since then, I have migrated away from Windows entirely. It helps that I prefer single player story driven experiences and rhythm games, both being well covered by Proton thanks to the general lack of AntiCheat.
Aside from my Fedora systems, I have a MBP, but Ventura has its pain points as well. Simply, nothing has ever been as rock solid as Fedora Silverblue and, as much as Red Hat is currently heading in the wrong direction[1], I have to give them credit for Silverblue and Fedora Workstation. Those continue to prove more stable than anything I have ever experienced with Windows, macOS or any other Linux distro, regardless of hardware.
[0] https://fedoraproject.org/silverblue/
[1] https://www.theregister.com/2023/06/28/rocky_linux_rhel_ripp...
While free software may not have a marketing budget, its freedom aspect is generally an inherent advantage over other software (no licensing, no user hostility). There may be proprietary alternatives to Aufacity and Gimp, but nobody knows them because the FOSS versions are so easy to get. If there are two largely equivalent pieces of software, one proprietary and the other FOSS, the FOSS one will win. It just has to be good enough.
But it has to be good enough. We shouldn't delude ourselves that Gimp is in the same playing field as Photoshop, for instance; as much as I'd like it to be.
FreeCAD is getting better and getting quite decent for hobby stuff (I still find Fusion much more intuitive, but it's getting alright), but we can't just go "why doesn't everybody switch, they must be dumb", just because we are happy with the functionality.
This isn't specifically directed at you, but a specific FOSS-high-horse attitude I see every now and then and used to hold myself. I think it's something that keeps FOSS from gaining market share by solving real problems people have. I could tell you a bunch of stories of people trying really hard to switch and ending up in a world of pain. We can't hand-wave that away. We have to actually improve the things we want people to use.
This is the key point that is forever being overlooked by FOSS evangelists. Take a look at the most well known FOSS alternatives for everyday software that a lot of people use like a word processor, spreadsheet or graphics package. We have applications like the LibreOffice suite, the GIMP, Inkscape and Scribus. For personal or hobbyist use they're very worthy efforts and it's great that we have these things freely available. But for professional use when quality is essential and time is money they aren't even close.
For years these totemic FOSS products have mostly emulated the style of established proprietary applications but usually without the resources that the developers of those proprietary applications can employ because they're running commercially and charging real money for their products. That inevitably means the FOSS applications tend to have more limited functionality and less work gets done on vital areas like usability and documentation.
Meanwhile if you look at the last few years in the rest of the software industry those kinds of applications have been getting pushed aside anyway. Browsers and online software that fundamentally changes the way we use software have taken over many areas. Products like Figma or Google Docs that have targeted specific markets well and taken advantage of the new platform have enjoyed enormous success even though they didn't necessarily compete 1:1 on features or offer fully compatible import/export with the established native software applications they might appear to compete with.
And in the world of native applications we have the likes of the Affinity suite that was offering more credible competition for Adobe within a few years of the Creative Cloud subscription model being introduced than the much longer-established FOSS products ever have. That's partly because it also costs real money that can fund a full-time professional team to build the product. It's also partly because that team seems to have taken a fresh look at UI ideas - not an area where Adobe's graphics products have enjoyed a great reputation in the past - and managed to come up with something familiar yet also without a lot of the warts.
That's what a successful FOSS competitor needs to do as well IMHO but it can only happen if the people leading the effort have a vision of something that changes the game and enough contributors are willing to help them turn that vision into reality. So far that has been the exception not the rule within the FOSS community. There will always be those who are fans and advocates of FOSS for other reasons and that's totally fine but it's also not enough to shift the professional communities that fund most software development to using and supporting the further development of FOSS instead.
I really want to agree, and I am a big advocate for using Linux exactly because of the hostility from Microsoft, but for most users it definitely is not a drop in replacement. For an average user that is used to Microsoft Office, the difference is simply too big.
It might not be the best example, but just look at how Linus from LTT struggled to get one of the "most user-friendly" distros working.
This is especially true nowadays, as Steam has gone a LONG way to make gaming viable in linux.
Sorry, but that's not a drop-in replacement.
Honestly in this regard, Windows struggles to be a drop in replacement for Linux, not the other way around.
And another thing. I could not get Thunderbolt working on Linux at all. It worked just fine on Windows on that same laptop.
And you would have to reboot on Windows. Rebooting would also restart your display server on Linux, so that is at worst equally as painful as Windows.
> I know very well how Linux works. It is still necessary to run stuff from the terminal from time to time. Even on user-friendly distros like Steam OS - some games will require some tinkering - but they run flawlessly on Windows.
I think you probably choose the command line way to do things because you "know very well how Linux works". The whole GPU driver installation process can be done without knowing what a terminal emulator is. If you choose to take advantage of your existing knowledge, that isn't a flaw of the system.
> Even on user-friendly distros like Steam OS - some games will require some tinkering - but they run flawlessly on Windows.
I have not opened a terminal on my Steam Deck with the intention of making a game work. The most I have ever had to do was copy launch options from steam reviews or ProtonDB. Sure, that's not perfect. And that still leaves a few games unplayable. At this point about 80~90% of games can simply run though, which is way more games than anyone has time to play, and is a sizeable catalog when compared to other gaming systems. It may not be a "drop in replacement" in the sense that it can play 100% of games, but functionally it is a drop in replacement.
> And another thing. I could not get Thunderbolt working on Linux at all. It worked just fine on Windows on that same laptop.
I'm a noob when it comes to thunderbolt vs usb-c vs whatever else looks identical. I dock my work laptop (which runs Fedora) with some usb-c-like dock though and I didn't have to do anything to get it to work. I don't have anything to add other than that anecdote.
Also, it doesn't really matter if 80-90% of games work if the one that you really want to play - doesn't. And some very popular games still don't work on Linux.
Yes - the USB-C standard is a mess. A USB-C port that supports Thunderbolt looks identical to any other USB-C port. In my case, I was trying to use a PCI-E enclosure, and it just refused to work on Linux - no matter what I tried.
In these cases OSS tends to be way more competitive.
Even inside of AWS there are people who believe FOSS will always eventually surpass proprietary software.
If you’re giving put your software for free reusing OSS components makes a lot more sense KHTML -> webkit -> blink
Which is a shame because Maya is actually a very decent product, or at least was until Autodesk bought it. I only actively followed Maya development until around 2018 when I maintained a plugin for it, and back then it was already pretty clear that Autodesk favours milking their existing customer base over investing into their product development.
old school statistical/scientific software offerings like SPSS, Stata, Matlab have been mostly buried by R and Python.
and when was the last time you used a proprietary compiler other than MSVC?
Yesterday, because embedded firmware development is pain writ large
It's rare, but not impossible.