Discussion: FreeCAD is not ready for 1.0

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
vocx
Posts: 5206
Joined: Thu Oct 18, 2018 9:18 pm

Discussion: FreeCAD is not ready for 1.0

Postby vocx » Tue Feb 18, 2020 5:47 am

This post about the new constraint solver by DeepSOIC made me think about this topic again.
triplus wrote:
Thu Feb 06, 2020 7:38 pm
Thanks for the report and indeed, best if you take a break for a while. Next development cycle will likely be FreeCAD 1.0 oriented and your work should fit nicely in it. ...

It's done when it is done, as for future planning. I somehow feel that the maximum amount of time, dedicated to FreeCAD 1.0 development cycle, should be 2 years. ...
Why are we rushing to call the next version already the 1.0 version?

There is a pull request opened almost a year ago just to announce that the 1.0 version is surely upon us, #2048. But why? What's the rush?

In my opinion, FreeCAD is still a few years away from being a true 1.0 software.
- App_Link is still being investigated by everybody who is using Assembly3 and Assembly4. There isn't enough people right now who have tested these workbenches. New ideas and methods to work with them are still coming. Realthunder has several commits still waiting in the queue to solve some issues introduced by his branch, and Werner of course needs time to solve the issues he identified previously.

- The topological naming problem is still not solved. The solution to this could come in the next cycle, 0.20, after extensive code changes and modifications, just like it happened with the LinkMerge. That will require another year of tests and fixes. See realthunder's Topological Naming, My Take.

- The documentation is still far from complete. New tools in Path and TechDraw are still being added regularly. Moreover there is a ton of power user and developer documentation that hasn't been significantly updated in years. Most code examples in the Power users hub and Developer hub are quite old and untested with a modern version of FreeCAD. I myself have made thousands of edits over the past year, and I am still not satisfied with the state of the documentation of the workbenches I use the most, like Draft, Arch, TechDraw, PartDesign. Also, Yorik was planning of moving the documentation to some git-based platform instead of a wiki. That takes time as well.

- The FreeCAD API, https://www.freecadweb.org/api/, is still lacking severely. We still need to find a way for documenting Python workbenches better, either with Doxygen, or using Sphinx+Doxygen (Breathe).

- I have mentioned in the Draft subforum that to me a 1.0 version could come at the soonest in five years, that is, 2025. We need significant time to refactor some code, and establish some more rules governing FreeCAD, including the use of looo's FreeCAD enhancement proposals (2), or things like the Workbench-Starterkit (2, 3). I'd also like to propose a more Pythonic interface for the functions, so that they follow PEP8. In the Draft subforum I have mentioned that the old functions could be retained as aliases of the new functions, but eventually we could break this compatibility (in about five years, in the hypothetical 1.0 version).

- I still think there is some value in defining and polishing a set of standard or core workbenches, in order to build FreeCAD around those. The fact that both Ship Workbench and Plot Workbench are now external to FreeCAD means that this was somewhat of a good idea. We should keep in the master repository only those workbenches that are truly central to the objectives of the program, and not just any workbench.

A previous thread where some of these ideas were discussed is name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91. I didn't give my thoughts in that thread, but I think it was interesting, and a good read despite the heated arguments at times.

On the topic of the version, I personally prefer to do a simple jump, 0.20, 0.21, 0.22, etc. And when we feel we are ready, then move to 1.0. But let's not rush it.
Always add the important information to your posts if you need help. Also see Tutorials and Video tutorials.
To support the documentation effort, and code development, your donation is appreciated: liberapay.com/FreeCAD.
triplus
Posts: 9475
Joined: Mon Dec 12, 2011 4:45 pm

Re: Discussion: FreeCAD is not ready for 1.0

Postby triplus » Tue Feb 18, 2020 10:59 am

Hi @vocx

I am prepared to discuss this, as such discussion would likely happen in March anyway. But if this is the thread we will have such discussion please change the title to be more neutral.
User avatar
easyw-fc
Posts: 2915
Joined: Thu Jul 09, 2015 9:34 am

Re: Discussion: FreeCAD is not ready for 1.0

Postby easyw-fc » Tue Feb 18, 2020 11:04 am

triplus wrote:
Tue Feb 18, 2020 10:59 am
But if this is the thread we will have such discussion please change the title to be more neutral.
+1000
I was going to open a new thread with a correct title ;)
User avatar
bitacovir
Posts: 1169
Joined: Sat Apr 19, 2014 6:23 am
Contact:

Re: Discussion: FreeCAD is not ready for 1.0

Postby bitacovir » Tue Feb 18, 2020 11:29 am

triplus wrote:
Tue Feb 18, 2020 10:59 am
please change the title to be more neutral.
+1

Maybe what you need is to reach a consensus about the minimum requirements for a FreeCAD 1.0
- You could create a proposal of list with all missing features , solved conflicts, suggested to be implemented for 1.0 version.
- Then, call for voting for the essential/minimum ones for the 1.0 version (or use another mechanisms to select the most important ones)
- And then, you could estimate a time needed for this essential minimum requirements to be implemented or solved.
::bitacovir::
===================================
One must be absolutely modern.
Arthur Rimbaud (A Season in Hell -1873)

My personal web site
My GitHub repository
My old Blog
Mini Airflow Tunnel Project
User avatar
bernd
Posts: 10973
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Discussion: FreeCAD is not ready for 1.0

Postby bernd » Tue Feb 18, 2020 8:21 pm

+1 in the regard of the title

the 1.0 depends on your needs. For me FreeCAD has passed 1.0 years ago. Most of the points you mentioned would be great for FreeCAD but they are not as important for me and what I use FreeCAD for.

I am tyred of telling people "No FreeCAD is not beta for what I would like to use it and to show it to you. In this special workflow FreeCAD is years in front of most commercial CAD. Most of them will even never ever reach some tool we have had in FreeCAD for years."

1.0 is just a number but it would make things much much more easy to spread FreeCAD especially in buissiness.

I would not care about the version number if I would not spread FreeCAD to other people, but just use it for myself.

jm2c
User avatar
bernd
Posts: 10973
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Discussion: FreeCAD is not ready for 1.0

Postby bernd » Tue Feb 18, 2020 8:23 pm

voxc would be good if you would read.some of this one https://forum.freecadweb.org/viewtopic.php?f=8&t=34923
User avatar
bernd
Posts: 10973
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Discussion: FreeCAD is not ready for 1.0

Postby bernd » Tue Feb 18, 2020 8:26 pm

User avatar
bernd
Posts: 10973
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: Discussion: FreeCAD is not ready for 1.0

Postby bernd » Tue Feb 18, 2020 8:27 pm

especially this https://forum.freecadweb.org/viewtopic. ... 10#p294546 and this https://forum.freecadweb.org/viewtopic. ... 20#p294666

EDIT: on the second link you may need to scroll two posts up to come to my posts ...
JulianStirling
Posts: 45
Joined: Sun May 29, 2016 2:19 pm
Contact:

Re: Discussion: FreeCAD is not ready for 1.0

Postby JulianStirling » Tue Feb 18, 2020 9:14 pm

I think it really depends on what you use CAD to do.

If you work somewhere and your job is to design a load of parts that will fit together. Assemble them in CAD and check nothing clashes. Make a technical drawing including lots of hole call-outs, properly speccing tollerances, parallelism, etc. for external workshops. And then needing to modify parts to improve performance. This is a very common usage of CAD and it is not there for this.

Part design hole wizard regularly gives the wrong sizes. The hole information (such as thread and depth) doesn't make it through to TechDraw. Many thing that a professional workshop would need specifed in a technical drawing are not possible. It is unclear which assembly tool to use and how long it will be maintained as they are not part of core. Then when you come to do iteration two you get hit by toponaming issues.

This is not to say FreeCAD is bad. It is wonderful. TechDraw is improving at lightning speed, part design does most of what one needs except reliable holes, and hopefully Toponaming is more robust in realthunder's branch. When I worked at NIST (part of the US government) I used FreeCAD because I was frustrated with learning new CAD systems as I moved between groups, but I regularly hit a wall and had to send STEP files to others to make technical drawings.

This argument of "it is v1.0 for my workflow" is pretty meaningless. It would be good to talk to people in MechEng departments and see what features they would need. Sure some are in love with one program, but many people have used multiple programs. To shut down all criticism as "they don't want to learn our workflow" is not going to convince people to engage if you wont engage with them.

For this argument of v0.20 v v1.0 it makes sense to look at something like Inkscape which is used by loads of scientists to create their figures for publication even though many have access to proprietary software. Look at all the papers from LIGO. Inkscape are still not 1.0 because they have a clear roadmap and they will be 1.0 when they reach certain goals.

If the topic of v1.0 keeps coming up perhaps it is time to have a roadmap? To seriously discuss the pain points that come up often and ask if they are a "wont fix" because our flow is different, or if they are things which have workarounds but the feature/fix should be on the roadmap?
User avatar
Zolko
Posts: 1097
Joined: Mon Dec 17, 2018 10:02 am

Re: Discussion: FreeCAD is not ready for 1.0

Postby Zolko » Tue Feb 18, 2020 9:34 pm

JulianStirling wrote:
Tue Feb 18, 2020 9:14 pm
It would be good to talk to people in MechEng departments and see what features they would need.
that's easy: stability and reliability. All other features are more-or-less present in FreeCAD, some better (Path WB for example is awesome) some less so (assembly), but what is really impossible to deal with in a professional environment is the instability of FreeCAD: it bugs on small things, it hangs the entire desktop on long STEP imports, it crashes like M$ Word in a bad day, the UI is inconsistent between workbenches, there is no good measurement tool ... it's unusable for any serious work. And we didn't even touch on secondary things like BOM, CoG, PLM...

FreeCAD is a (very) nice toy, but only that.

For v0.20, FreeCAD should do a feature-freeze and concentrate exclusively on stability and user interaction. If that succeeds, then we could talk about v0.9 and aim for 1.0. Going for 1.0 today would be a bad joke.
try the Assembly4 workbench for FreCAD v0.19
install with Tools > Addon Manager > Assembly4 — tutorials here and here