top | item 47086819

(no title)

sho_hn | 11 days ago

This shows a general problem that FreeCAD still has: Inside an initially off-putting and frustrating UI experience is a really good application trying to get out, but at the moment a new user still has to dig it out themselves.

For example, problems like this one. Or the confusing 3D navigation (switch to Gesture or TinkerCAD mode in the Settings), or the non-interactive view cube. And many other gotchas and paper cuts that can almost all be changed with a few clicks to make it more intuitive, or just more similar to popular competition (e.g. the OpenTheme add-on gets you that Fusion look you see in many FreeCAD tutorial videos).

It's a classic pattern with long-running FOSS projects. The authors get somewhat blinded to the pain because they're used to it, plus change is difficult for the established userbase. There's also a feeling that emulating competitors is surrendering one's own identity, and the idea that some of the rough edges are justified by "the powerfulness". Thus radically changing defaults, streamlining, simplifying and even just matching user expectations is often perceived as "taking the power away" and really difficult to have the daring-do to just do. Even though on the other side of the transition a much larger and happier userbase awaits.

A lot of FOSS projects eventually do mature to the point where they can pull this off, and I think there's real signs that FreeCAD is starting to get there. The upcoming 1.1 release has a ton of modern UI catch-up, such as on-canvas gizmos, and a few good defaults changes.

There's a lot more work to do, but like others I have the feeling that FreeCAD may well be approaching its Blender/KiCAD moment. I suspect becoming a contributor right now could be good fun.

I speak from experience! We've to some extent been on a similar journey with the Plasma desktop.

discuss

order

RankingMember|11 days ago

> It's a classic pattern with long-running FOSS projects. The authors get somewhat blinded to the pain because they're used to it, plus change is difficult for the established userbase.

Thanks for putting into words something I've definitely felt for a long time. It's like a junky old car with broken dash controls- you get used to having to bang on things to make them work, but if someone needs to borrow your car they're like "this is how you live!?".

fainpul|11 days ago

Well said. It seems to me, many FOSS projects suffer from long time contributors which are extremely conservative and don't like any kind of change. Hence every new or improved feature becomes merely a setting (which barely anybody will discover) which is not enabled by default. The UX does only worsen this way because old cruft coexists with its replacement, settings grow fast, the combinatorial explosion of all feature combinations produces tons of bugs and new users will always be turned off by the first use experience.

To make the necessary overhaul, someone with the "power to decide" is needed, which is somewhat incompatible with unpaid open source development. I think this video about Audacity's redesign is informative in this regard:

https://www.youtube.com/watch?v=QYM3TWf_G38

freeopinion|11 days ago

Please be careful about voicing generic complaints in a discussion of a specific product. IMO, FreeCAD 1.0 took some huge leaps in ergonomics. I was surprised about how much work had been done. The workers behind FreeCAD don't deserve lazy sniping that doesn't even apply to their creation.

My guess is that they might appreciate specific criticism. It would probably help focus the work they are doing. But don't generalize them to have all the usual problems everybody else always seems to have. That isn't very helpful to anybody.

skydhash|11 days ago

> To make the necessary overhaul, someone with the "power to decide" is needed,

FOSS is a doer-cracy. If you have a pain point, patch it, and it will go away.

MegaDeKay|11 days ago

> The authors get somewhat blinded to the pain because they're used to it, plus change is difficult for the established userbase. There's also a feeling that emulating competitors is surrendering one's own identity, and the idea that some of the rough edges are justified by "the powerfulness". Thus radically changing defaults, streamlining, simplifying and even just matching user expectations is often perceived as "taking the power away" and really difficult to have the daring-do to just do. Even though on the other side of the transition a much larger and happier userbase awaits.

I think it is unfair to say that they are "blinded to the pain". They are well aware of it from what I've seen of the Dev discussions on Discord. But the vast majority of the devs are volunteers so they can only do so much so fast. There are also some very nice usability improvements as of late that borrow from other programs, like the Solidworks-style navigation settings and the on-screen draggers for pad / pocket / transform type operations. Yes there are tons of preferences and some of the defaults might not be great, but they've added a "Search Preferences" field to help sort through them all. Then there are issues like in the link below where the discussion of how to improve FreeCAD considers comparisons with other pieces of software.

https://github.com/FreeCAD/FreeCAD/issues/19440#issuecomment...

Another point I'll add is their creation of a Design Working Group to help sort through usability issues and generate a consensus for devs to subsequently implement.

tracker1|11 days ago

I would think it would be beneficial to the companies that make 3D printers and CNC machines to help fund some of these efforts... I've found it often takes the input of commercial interests to get general UX improvements into open-source.

ex: really impressed with the direction of Audacity as an example, though I can also understand why a given community would reject such influence from a single org.

sho_hn|11 days ago

> I think it is unfair to say that they are "blinded to the pain".

I mean it more in the sense that it's very difficult to truly conceive of what a new user of the app would stumble over or dislike, if you're very used to it yourself.

Often that means small things that would not be that hard to address become invisible, because there's obvious higher priorities. Other times, things are considered small fries that actually are consistently wrong and need a holistic re-think.

One of the best things to do is to actually watch novice users use your software. This was also a big boost to the "Blender moment", when the Blender studio started inviting over artist and just watched them work in the software. This used to be really hard to do, but has now become a bit easier with screencasting and conferencing tools. I bet FreeCAD is also starting to do more of this.

Thanks for adding additional info! I forgot to mention the Design Working Group as another sign. In KDE we also set up a similar "Visual Design Group" years ago that was behind a lot of the improvements.

ssl-3|11 days ago

I agree with you.

But there's also potential downsides to digging in and fixing the UI.

For instance: I've made a few simple boards with KiCAD. The first one was frustrating as hell and took forever, because my distro had helpfully installed the very latest version of KiCAD.

Meanwhile, the tutorials and videos were generally all about older versions. Which is fine, I guess, except way too many of them didn't even specify a version number.

So I (a complete newb) spent way too much time trying to find nonexistent UI widgets and being mystified that a given tutorial often seemed to be written by someone who was using different software entirely.

(The answer here is, of course, to have decent-enough official tutorials that stay in lock-step with software releases, so as to always get people started on the right page. But doing/enforcing that feels like work, and that's not usually what people want to feel when they volunteer to help write CAD software.)

vablings|10 days ago

The blender moment is required. There is a reason most CAD software looks and operates similarly apart from NX (fuck you nx)

lq9AJ8yrfs|10 days ago

i like the way prusaslicer has a conspicuous setting to enable intermediate and advanced settings so that users can start with a less intimidating setup and opt in to the bells and whistles if and when they are ready.

this pattern could probably benefit a lot of apps