Assembly3, A2plus, Assembly4? Get united!

Discussion about the development of the Assembly workbench.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
BassMati
Posts: 98
Joined: Sat Oct 06, 2018 11:39 am
Location: Germany Bielefeld
Contact:

Re: Assembly3, A2plus, Assembly4? Get united!

Post by BassMati »

Zolko wrote: Tue Oct 15, 2019 9:26 pm
BassMati wrote: Tue Oct 15, 2019 2:13 pm … idea of what "assembly" is: …
I'm not sure I understand the use-case … You can thus make an Assembly4 Model, put there a master sketch with LCS mapped to some points/vertices, have multiple App::Parts …
Hold, please, I'm not that fast … I was only thinking loud about what the meaning of the word "assembly" for me, in the context of FC, while working through your thread "assembly without solver". Intent was to make it easier for people to follow my state of mind.

By the way, I'm learning a lot from that thread!
User avatar
Petert
Posts: 124
Joined: Tue Dec 01, 2015 9:27 pm

Re: Assembly3, A2plus, Assembly4? Get united!

Post by Petert »

The OP made a post from the heart.
I totally agree with him.


1) Would be really nice when the developers would unite and make one assembly together. Would lift FreeCAD to the next level and make it a much more serious design software.

The fragmentation caused by all the different approaches to the assembly problem are counter productive and should not really happen.

I was a long time user of Fusion 360, that was not perfect either a few years ago. But they seem to manage the development cycle a bit better. I understand that all the effort here is done by volunteers. But that is kinda the point I am trying to maken, combined efforts would lead to a faster development cycle.

There is a design document that @realthunder (of assembly 3 fame) refers to, if everybody would use that I guess most assembly solutions could be made compatible.
https://www.freecadweb.org/wiki/Assembly_project
https://github.com/realthunder/FreeCAD_ ... iki/Design


2) And it would be great if this "https://www.freecadweb.org/wiki/Topolog ... ng_problem" was solved. Then FreeCAD would be a real parametric tool and beginners would not be disappointed that such a basic thing is still not working properly. (for most people it is a game stopper, it is so illogical that your design turns to crap when you change an early measurement)


I was involved in a few open-source projects and do know how it works.
I understand that this comment might seem a bit harsh, even rude. But I have the best intentions and know that being honest and forth right will get better results then sugar coating.
I am a refugee from Fusion 360. Switched over to FreeCAD and am spreading the word. After years of very little progress I switched again to another solution. I wish you all the best!
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: Assembly3, A2plus, Assembly4? Get united!

Post by Kunda1 »

Petert wrote: Sat Dec 21, 2019 1:07 pm The fragmentation caused by all the different approaches to the assembly problem are counter productive and should not really happen.
This is obviously ideal. But since there was an arrested development when it came to Assembly, several different individual with different styles of management stepped up (by their own volition, not because some project manager told them to do so) at different times to solve the issue. Now we have 3 different ways to approach assembly. 3 different facets that somehow can inform each other. With necessity, a strong enough want, and some 'elbow grease' - these three approaches may become more compatible.

This is open source and while we love to see steps in the direction of FC making its mark on the CAD/CAM world, there is no rush or hard deadline. "It's done when it's done" is the FreeCAD motto.
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
vocx
Veteran
Posts: 5197
Joined: Thu Oct 18, 2018 9:18 pm

Re: Assembly3, A2plus, Assembly4? Get united!

Post by vocx »

Petert wrote: Sat Dec 21, 2019 1:07 pm ...
The fragmentation caused by all the different approaches to the assembly problem are counter productive and should not really happen.
...
There is no fragmentation. Because free software is not intelligent design, it's evolution.

Originally there was Assembly2. As this project died out, A2plus continued that same philosophy. Then realthunder came around and produced Assembly3 almost single handedly. Later Zolko saw how it could be done in a different way and created Assembly4, using some tools created or Assembly3.

All these attempts were initiatives created by individuals who wanted to solve a particular problem. They weren't intended to be the definite solution of assembly, and to steal the users of the other workbenches. They are attempts, prototypes; they are used and evolve. Right now Assembly3 is about 2 years old, and Assembly4 is barely one year old. That is a very short time to decide if they will be the definite solution or not.

Truth is these workbenches are still in development, and are still being tested by users, old and new, to see what works best. We don't plan this because it just grows naturally. If it's a good solution it will be used by many, if it's not a good solution, it will die down. That's evolution.

Also, FreeCAD still has a relatively small developer community. You seem to think that all developers can get together and plan this together. It's really not that easy because we aren't that many, and everybody is working on their own niche. As I said, Aseembly3 and Assembly4 have been basically the product of single individuals.

What we need is a bigger community of users. Some of those users will become power users and developers. Then those developers will be in a better position to realistically contribute to the code. Right now there are many users and power users who want things, but there are relatively few developers who can actually implement them.
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.
Mark Szlazak
Posts: 439
Joined: Tue Apr 04, 2017 6:06 pm
Location: SF Bay Area, California

Re: Assembly3, A2plus, Assembly4? Get united!

Post by Mark Szlazak »

vocx wrote: Sat Dec 21, 2019 7:36 pm
Petert wrote: Sat Dec 21, 2019 1:07 pm ...
The fragmentation caused by all the different approaches to the assembly problem are counter productive and should not really happen.
...
There is no fragmentation. Because free software is not intelligent design, it's evolution.

Originally there was Assembly2. As this project died out, A2plus continued that same philosophy. Then realthunder came around and produced Assembly3 almost single handedly. Later Zolko saw how it could be done in a different way and created Assembly4, using some tools created or Assembly3.

All these attempts were initiatives created by individuals who wanted to solve a particular problem. They weren't intended to be the definite solution of assembly, and to steal the users of the other workbenches. They are attempts, prototypes; they are used and evolve. Right now Assembly3 is about 2 years old, and Assembly4 is barely one year old. That is a very short time to decide if they will be the definite solution or not.

Truth is these workbenches are still in development, and are still being tested by users, old and new, to see what works best. We don't plan this because it just grows naturally. If it's a good solution it will be used by many, if it's not a good solution, it will die down. That's evolution.

Also, FreeCAD still has a relatively small developer community. You seem to think that all developers can get together and plan this together. It's really not that easy because we aren't that many, and everybody is working on their own niche. As I said, Aseembly3 and Assembly4 have been basically the product of single individuals.

What we need is a bigger community of users. Some of those users will become power users and developers. Then those developers will be in a better position to realistically contribute to the code. Right now there are many users and power users who want things, but there are relatively few developers who can actually implement them.
IMHO, generally there isn't anything particularly great with a dumb evolutionary approach over a intelligent coordinated communal approach. In fact the latter is slower with designs and produces results that aren't optimal. Since there are only 3 people/groups working on these now, it is a good time for them to work with each other before more cooks jump into the kitchen. They are even now talking to one another and i hope more of this happens.
chrisb
Veteran
Posts: 54177
Joined: Tue Mar 17, 2015 9:14 am

Re: Assembly3, A2plus, Assembly4? Get united!

Post by chrisb »

vocx wrote: Sat Dec 21, 2019 7:36 pm Because free software is not intelligent design, it's evolution.
You describe here nothing more than the common process of a community development and I admit that much in FreeCAD was developed that way.
But that's not the only way, as I have seen in some other places here; humans are capable of more. I wouldn't have started this thread if I had accepted that FOSS can only be developed that way. What you describe is an enormous waist of programming power, because two of three solutions are developed and may finally not be used.
That's why I asked for a discussion here, not only between the developers, but between users knowing other systems, theoretically skilled people, engineers, power users and, of course, the developers.

I know that every developer has programmed towards a solution according to his personal needs and convictions and I know that it is extremely difficult to throw away something where many many hours and days were invested to produce it, be it artwork, a wooden chair, or software (which can incorporate artwork too).
But nevertheless it was worth a try and I was delighted to see that some intertwining has already started.

After all I didn't want a meta discussion about different Assembly developments, I was hoping for a fruitful discussion about Assembly itself and how it should finally be.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: Assembly3, A2plus, Assembly4? Get united!

Post by looo »

Mark Szlazak wrote: Sat Dec 21, 2019 11:44 pm IMHO, generally there isn't anything particularly great with a dumb evolutionary approach over a intelligent coordinated communal approach.


Talking about optimization strategies... Local optimization always has the potential to get stuck at one point. So some diversity is unavoidable to overcome such difficulties. In my eyes it's great to have 3 different approaches available. Now it should be rather easy to select which fits best into freecad, if different approaches should coexist and so on.
In my eyes simple trying to reproduce existing solution 1. won't work because of missing insights and 2. might not result in a good solution for freecad.

So in the end global optimization (like evulutunary and random processes) are necessary to overcome the problems not solveable by the more straight forward local optimization. One example is the car industry which optimized everything to such a great point just to realize that there is a more efficient/sustainable way of driving: biking. (Don't take it too serious, I know this is a hot topic...)

But I believe in the end solving global optimization tasks is the real problem we are facing. And if you look at algorithms which try to do so, you will find strategies which are based on evulutunary theory.
So in the short run local optimization will lead to better output, but in the long run we need diversity and some kind of randomness to solve problems.

Just my 2cent.
Mark Szlazak
Posts: 439
Joined: Tue Apr 04, 2017 6:06 pm
Location: SF Bay Area, California

Re: Assembly3, A2plus, Assembly4? Get united!

Post by Mark Szlazak »

looo wrote: Sun Dec 22, 2019 5:48 am
Mark Szlazak wrote: Sat Dec 21, 2019 11:44 pm IMHO, generally there isn't anything particularly great with a dumb evolutionary approach over a intelligent coordinated communal approach.


Talking about optimization strategies... Local optimization always has the potential to get stuck at one point. So some diversity is unavoidable to overcome such difficulties. In my eyes it's great to have 3 different approaches available. Now it should be rather easy to select which fits best into freecad, if different approaches should coexist and so on.
In my eyes simple trying to reproduce existing solution 1. won't work because of missing insights and 2. might not result in a good solution for freecad.

So in the end global optimization (like evulutunary and random processes) are necessary to overcome the problems not solveable by the more straight forward local optimization. One example is the car industry which optimized everything to such a great point just to realize that there is a more efficient/sustainable way of driving: biking. (Don't take it too serious, I know this is a hot topic...)

But I believe in the end solving global optimization tasks is the real problem we are facing. And if you look at algorithms which try to do so, you will find strategies which are based on evulutunary theory.
So in the short run local optimization will lead to better output, but in the long run we need diversity and some kind of randomness to solve problems.

Just my 2cent.
One section of what you wrote seems to contradict the other section. Sorry but I cannot make any sense of it.

All three approaches have overlap but some if not all are fundamentally different and inadequate. Working together can help in synthesizing their strengths. Working alone will lead some to dead-ends and waste time. Evolution takes time and only produces good enough results for the context it finds itself in and that means in significantly different context it will likely fail. It seems in our three cases we have two in a part-linking context and one in a part-copying context. But all three are at least unified in very similar constraints context but focusing on their specific ways of doing them. Here communal intelligent design is a much better way to go than uncoordinated and incommensurable evolutions.
User avatar
Petert
Posts: 124
Joined: Tue Dec 01, 2015 9:27 pm

Re: Assembly3, A2plus, Assembly4? Get united!

Post by Petert »

Mark Szlazak wrote: Sun Dec 22, 2019 11:39 am communal intelligent design is a much better way to go than uncoordinated and in-commensurable evolution.
I am very happy to learn, from one of the postings, that all authors are speaking to each other and are moving forward.
That is the great spirit that is called Open Source.

Didn't mean to stir up such commotion. And I never intended to learn about some esoteric software development ways where the ground rules were faulty. Common sense dictates that a joint effort, of equally gifted persons, will always surpass the outcome of the one person. I still do not get the ramblings about evolution suddenly working in another way. We do not want a Darwin finch, we want a viable bird that can survive everywhere.


Let me thank all the individuals that make FreeCAD such a great tool. I salut you sirs.

Very excited to now know that great things will arise out of the collaboration of these great individuals. Looking forward to seeing them make FreeCAD even better then it already is.



https://en.wikipedia.org/wiki/Darwin%27s_finches
I am a refugee from Fusion 360. Switched over to FreeCAD and am spreading the word. After years of very little progress I switched again to another solution. I wish you all the best!
vocx
Veteran
Posts: 5197
Joined: Thu Oct 18, 2018 9:18 pm

Re: Assembly3, A2plus, Assembly4? Get united!

Post by vocx »

Mark Szlazak wrote: Sat Dec 21, 2019 11:44 pm ...
IMHO, generally there isn't anything particularly great with a dumb evolutionary approach over a intelligent coordinated communal approach. ...
Evolutionary strategies are great, introducing randomness is a great way to reach to solutions that nobody thought before. The very process of open source software is basically an evolutionary strategy in the software development world. Read again what looo says.
In fact the latter is slower with designs and produces results that aren't optimal.
I think you are contradicting yourself here. You said "latter", therefore you mean "intelligent coordinated communal approach is slower with designs and produces results that aren't optimal."

I thought you meant the opposite, that evolution is slower and sub-optimal.
Since there are only 3 people/groups working on these now, it is a good time for them to work with each other before more cooks jump into the kitchen.
The issue is you cannot force anybody to talk to each other. Each person will listen to whomever they want; there is no way to force this collaboration. It's wishful thinking, "they should talk". Well, sure, that's obvious. But still, every person will develop what they feel like, and what scratches their particular itch.
They are even now talking to one another and i hope more of this happens.
What exactly do you mean by this? What is the concrete example you are talking about?
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.
Post Reply