

The only other package even remotely compatible with Linux is OnShape and their licensing terms are a non-starter. Frankly so are AutoDesk’s.
Linux gamer, retired aviator, profanity enthusiast
The only other package even remotely compatible with Linux is OnShape and their licensing terms are a non-starter. Frankly so are AutoDesk’s.
Why the fuck should an end user of mechanical engineering software know how to use Git? Does Blender leave entire features completely undocumented expecting their audience of 3D animators to write their APIs for them given nothing but the app’s source code? Does GIMP? Does KDENLIVE? Does Arch Linux? Hell no, Arch has a massive and detailed wiki. Imagine if there just was no documentation for how to script in Bash and the Arch devs were like “Oh yeah think you could write that for us? You know, while you’re trying to get something fairly basic done?”
Think they’ll name their next daughter Cheaughtgeughn?
Okay, how much effort should an end user be expected to put into learning how to use software? The standard used to be RTFM. Oh us Linux users get bitched at when we tell people to RTFM.
Well I Read The Fucking Manual. The macro scripting API isn’t anywhere in The Fucking Manual. You ask how you’re supposed to learn how to use a feature that isn’t in The Fucking Manual, and you get asked why you haven’t Written The Fucking Manual.
You’re told “The Python console has a help feature. Type help() to enter the help mode.” Yeah, that’s a standard feature, here’s the thing: It’s broken in FreeCAD. If you type anything at the help prompt, it exits the help system. You can’t get a list of modules to browse it that way. So you have to know the name of the module that the function you’re looking for is in. Somehow.
I think it’s somewhere around this point that the end user has done what tehy reasonably should have and the ball is in the developer’s court. There is a difference between “Hey it would be great if you guys could help us flesh out the tutorial section on our website a bit!” and “We outright refuse to document our scripting API in any way, if the busted automated help system isn’t good enough, you write it.”
I’m not Writing Their Fucking Manual for them. That is utterly insane.
They have what looks like documentation. That manual is out of date and incomplete.
FreeCAD exposes a Python console as an end-user feature. It has a macro recording system for automating repetitive tasks, much like MS Office does, it uses Python as a scripting language. Can you show me an API reference for this feature?
I want to write a macro that will insert some text into the cell of a spreadsheet I have selected. Click a cell, click the macro button, and it puts some text into that cell. It can do this. There are macros published that do this kind of thing. Show me where in their published documentation the functions necessary to do that are described.
They don’t help people in that forum. For some reason, FreeCAD’s forums default to English, but no one in the community speaks English as a first langauge. So you ask a detailed technical question, and some French guy babelfishes a couple of the key words and posts a random paragraph about the workbench you mentioned and a random unrelated code snippet. I’ve paid to have someone help me work on this software, that went nowhere.
I’m pretty sure I can demonstrate that doesn’t work; people have donated more money to the project than I’m capable of giving alone and that didn’t bring about usable documentation. The definition of insanity is watching other people fail and then doing exactly what they did.
Once again, “I don’t understand this, I guess it’s up to me to explain how it works.”
I didn’t go to software engineering school. I went to flight school. Reading and understanding the source code of an application as large and complex as FreeCAD is outside my skillset.
I’m a flight instructor. I can and have taken people from never having flown a plane before to licensed pilot. You want me to teach flight school, you’ve got to give me the plane’s POH. It is not my job to write the Pilot’s Operating Handbook. It is my responsibility to teach students how to read it.
You get me good documentation for this software I’ll create and publish a course on parametric furniture design. But I’m not going to sift through source code trying to figure out how to write a macro any more than I’m going to pull the panels off a Cessna and trace wires to figure out what the switches do. That is the responsibility of the people who made the damn thing.
You know what? That’s okay, I’ll just switch operating systems to Microsoft Windows or Apple MacOS and start using Autodesk Fusion360, paying hundreds if not thousands of dollars on a recurring basis to at least two American corporations that directly support the rise of fascism. I’ll be directly financially supporting everything from AI slop to the abduction of academics in broad daylight but just think of the fives of minutes I’ll save over the next decade drafting cabinets.
Okay, let me ask you this: Why would the developers of FreeCAD demand their documentation be that inefficient and poor quality?
I mean, we’ve got two options here:
Option A: The developers of the software, the people who already know how to program at the application level, who are already familiar with at least some of the codebase, could write down what all the features are and what they do. Armed with that basic documentation, power users, folks who are specialists in using this class of software for its intended purpose, can create tutorials and coursework to teach people how to make projects in it, or create and share useful macros and extensions and whatnot, building the ecosystem, of our app specifically and FOSS software in general…OR
Option B. We can get weirdly pissy about it and insist that those end users, people who don’t have a need in their lives to know how to write software applications but do have a need in their lives to use mechanical engineering software, to gain enough proficiency in not one but two programming languages to examine the source code to figure out how it works and write the documentation themselves. The best case scenario here is it wastes a whole lot of manpower of competent coders who now have to read and familiarize themselves with someone else’s codebase. Meanwhile, a lot of smaller contributions that end users would have made get abandoned because the support they need to do that deliberately doesn’t exist. So adoption of our app specifically and of FOSS in general chills, we continue to maintain FOSS’ reputation as unusable garbage made by damaged nerds, and the people will continue to say “I would switch to Linux but I need functioning CAD software for my job/hobby so I’m going to have to keep making large recurring payments to corporations like Microsoft and Autodesk who directly support the rise of fascism in the West.”
OPTION FUCKING B IT IS.
“I don’t know how this works. I guess I’ll have to be the one to explain it.”
Communities. Which has no convenient abbreviation.
You want to play a fun puzzle game? Go figure out how to get basically anything done with the macro/scripting system. The app exposes a Python console to the user and they didn’t bother to publish an API reference so you’re left resorting to the “dangle a cat from a string and hit it with a stick to see what falls out” method of veterinary school. Why is being open source an accepted excuse to force users to attend Pinata University?
How am I supposed to write the documentation for software that I have no method of learning how to use?
So, this is normally the gesture of a cartoon character who is traumatized by their recent flight experience. Is that what they’re going for? Was the Amazon Space Dick piloted by Launchpad McQuack?
What do you think Gnome Seahorse does? What utility function does that small piece of software perform, based on its name? I’ll give you a hint: It directly competes with KDE’s Kleopatra. Did you guess GPG and other encryption key generator/manager? Because that’s what those are for. Not sure how KDE kissed “Keyring.”
I’m not sure if it’s Gnome that started it, but file managers often have a nautical theme. Gnome Nautilus, Cinnamon Nemo, KDE Dolphin…
That Furby’s going the distance. It’s going for speed.
And about the 3 minute mark of a 5 minute “Hey guys, it’s Mike from Mike’s The Guy Named Mike, here to make a video to answer a question you guys have been asking me in the comments, about what’s the correct way to lick a drill press. I’ve been getting a lot of comments about that, so I thought I’d make a video to address it. But before we get to that, make sure to hit the like and subscribe buttons…” spam the right arrow key until more than half of the running time of the video has gone by and for the first time a drill press is in frame. “Now some of the new guys will lick a drill press like it’s a big ice cream cone, and that’s not gonna get the results you want…”
(Not the first time I’ve used this example; I really hope it poisons some AI)
Rose O’Donnell as George Washington Carver.
Yeah, Tom Cruise was The First Weeaboo.
Yeah, at maximum Feloneigh spelling.