[announcement] first version of Toponaming is ready for testing

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
User avatar
Zolko
Veteran
Posts: 2213
Joined: Mon Dec 17, 2018 10:02 am

Re: [announcement] first version of Toponaming is ready for testing

Post by Zolko »

I feel I have to chime in.

First, blaming Uwe completely misses the point. There is a German saying that very well applies to here I think: "Wer kriecht kann nicht stolpern" . He might make mistakes, but it's only because he actually DOES something, as opposed to some big mouths who talk a lot but don't do much.

On the other hand, it can't be denied that FreeCAD has some very serious management problems ...

wsteffe wrote: Mon Jan 23, 2023 8:25 am What a poorly managed program !
... and shooting the messenger because he says – unpolitely – some uncomfortable truth ALSO misses the point.

Now back to the meeting:

Isabel wrote: Tue Jan 24, 2023 9:14 am I also find it rather strange that such meetings are not held publicly.
to be honest, I also don't understand why this meeting was held in such way. I don't feel that anything has been discussed that couldn't have been discussed openly here. It was still refreshing to sort-of meet people, but technically it didn't help. What I find more worrying is :

1) important developers (wmayer, yorick) were not present, so I have no idea whether what has been discussed actually matters. Who gets to decide at the end ? Why bother discussing if those "in power" don't agree ?

2) there seems to be a distinction among some people present that "users" and "developers" are 2 different categories of people, and "developers" don't need to show everything to the user because the "user doesn't need to know". I very strongly disagree here, and have said so, because for me that's the very meaning of open-source. Unfortunately, that part of the discussion didn't make it to the minutes.

3) regarding management, we had discussed months ago an agreement (C4-alike) about how FreeCAD development should be done, and the first decision was to not apply that method to the most important merge taking place, the toponaming. Again, why discuss things if we don't follow through on it ? Specifically, C4 mandates that big problems be broken into smaller pieces. During this toponaming meeting, we have agreed that Sketcher and Part are different problems regarding toponaming. Therefore, I again proposed to break the big problem into smaller bits, and first merge the toponaming stuff for sketcher alone, and then doing the Part/PartDesign bits. Unfortunately, the exact opposite decision has been taken : to continue the merge of PartDesign and then merge EVERYTHING in a big chunk into master. This is contrary to the C4 method that we agreed on, and also in contradiction with common sense. I didn't get any explanation for this decisions

adrianinsaval wrote: Mon Jan 23, 2023 2:17 pm if there was consensus I assume it was deemed doable without causing absurd delays. Also from zolko's post I understand that it's not really about making this file "human readable" but about documenting how it should be parsed and written, this is a sane request
4) there was no consensus, and the documentation part was the only thing that I managed to fight out.
try the Assembly4 workbench for FreCAD — tutorials here and here
user1234
Veteran
Posts: 3345
Joined: Mon Jul 11, 2016 5:08 pm

Re: [announcement] first version of Toponaming is ready for testing

Post by user1234 »

Isabel wrote: Tue Jan 24, 2023 9:14 am I also find it rather strange that such meetings are not held publicly. It sends a repelling signal to possible developers rather than inviting and encouraging them.
That is true, but there also very good reason why do not does this in public.

First, is often not better, because it can take much longer till never ending (also different time zones!), the inputs are much more, which sounds better, but the more, the more extreme they can be, in every direction, even against eachother, then no one is happy with the outcome or the result is the same as in a small group, only with much more time effort and friction from people, they work it their spare time.

Second, many people, therefore also developers, like their privacy and do not like to be in public. That can be because they just do not like it, it can also be, that they are forced to do it because of working restrictions. Not everyone is allowed to work for a FOSS. In my former companies, this was strictly denied (except firefighters and rescue) and you are loosing you job immediately, regardless how good you in your job are. Pure wild guess, jriegel was that sort of case, since there are good indicates for that. Also wild guess, some developers here have fake name for that reason, but i will not comment that further.

Regarding managing (here and everywhere), this is always a balancing act. Many (not all) opinions from people here and therefore decisions eliminate each others, so nobody will be always happy to 100%. This is like a polar diagram with versus points, you can not fill the surface 100%.

Greetings
user1234
User avatar
-alex-
Veteran
Posts: 1856
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: [Meeting minutes] Toponaming is ready for testing

Post by -alex- »

Thanks for this feedback.
uwestoehr wrote: Fri Jan 20, 2023 3:56 pm - After this change has been made, @realthunder will add the toponaming feature to PartDesign
Waiting for git pull then test as end user as soon the toponaming feature will be added.
Thank you devs.
aapo
Posts: 615
Joined: Mon Oct 29, 2018 6:41 pm

Re: [announcement] first version of Toponaming is ready for testing

Post by aapo »

Regarding the merging of the Toponaming branch, I have a hard time understanding why was the code originally added to a distinct branch? I mean the consensus was already that the Toponaming features will be added to the master branch anyway, so I believe that it'd have been less painful to take this merge pain as numerous small hits in the master rather than as a huge merge smash (presumably with lots of conflicts). So, it'd probably have been faster to let realthunder have free hands with the master branch, and try to sort it out whenever problems are found. After all, realthunder's work has been quite extensively tested & proven with his own personal fork already, so it's not going to be a dead end.

In my opinion, doing this merge right now, even before adding the PartDesign toponaming, would probably be wisest and save a lot of sweat and tears later.
User avatar
Zolko
Veteran
Posts: 2213
Joined: Mon Dec 17, 2018 10:02 am

Re: [announcement] first version of Toponaming is ready for testing

Post by Zolko »

aapo wrote: Wed Jan 25, 2023 11:56 am I mean the consensus was already that the Toponaming features ...
what part of :

Zolko wrote: Tue Jan 24, 2023 11:26 am
adrianinsaval wrote: Mon Jan 23, 2023 2:17 pm if there was consensus ...
4) there was no consensus...
didn't you understand ? There is no consensus
try the Assembly4 workbench for FreCAD — tutorials here and here
aapo
Posts: 615
Joined: Mon Oct 29, 2018 6:41 pm

Re: [announcement] first version of Toponaming is ready for testing

Post by aapo »

Zolko wrote: Wed Jan 25, 2023 9:35 pm didn't you understand ? There is no consensus
By dictionary definition, consensus doesn't mean that everybody agrees, just that most people agree. My impression is that most developers have agreed that adding realthunder's toponaming algorithm is a development goal. I got my information from the FreeCAD wiki page for 1.0 Development Cycle, where Toponaming is listed as the only big goal for the 1.0 version:

https://wiki.freecadweb.org/FreeCAD_1.0 ... ment_Cycle

"For the 1.0 release there is however only one big goal: Fix the Topological naming problem (in short: Toponaming)" If this is not true, the wiki should be edited accordingly. See also these threads: https://forum.freecadweb.org/viewtopic.php?f=9&t=69496 https://forum.freecadweb.org/viewtopic. ... 10&t=69460
User avatar
uwestoehr
Veteran
Posts: 4961
Joined: Sun Jan 27, 2019 3:21 am
Location: Germany
Contact:

Re: [announcement] first version of Toponaming is ready for testing

Post by uwestoehr »

This is an interesting discussion because of the different mindsets.
Allow me to make some remarks in general:

- How to maintain a project? Look how it is done at your work. There are weekly meetings, Jour-fix or however it is called. You discuss face to face (no matter if remote or not) and in small groups. The meetings have an agenda, a moderator and will conclude with written-down in meeting minutes. Additionally a lot is discussed at the coffee machine, at smoking breaks etc.

- FreeCAD is a volunteer project. Nobody is fulltime employed, only some maybe get a grant to work on a specific topic for some weeks. Everybody involved has another background, has a family, a job, might be retired or whatever. Nobody is forced to follow rules how to work for FreeCAD, for example to meet weekly. Every developer is also free to make a break for weeks or months. Besides this, most persons only know code of certain workbenches. Therefore FreeCAD cannot be maintained like a company.

- I started to organize meetings face to face, in smaller groups. There is now a quarterly meeting of the core team. Of course people of the core team are free to join or not. The meeting minutes are public. The meetings are in the core team because you cannot discuss with e.g. 50 persons the same time. One of the best-practice meeting rules is that there must be time that every participant can speak at least once and as moderator you should encourage everybody to speak at least once. Another best-practice is that a meeting is productive when it does not exceed on hour, maximum 1.5 hours.
Every meeting should have agenda in advance to set the goal of the meeting. And when the goal is to discuss the internals of in this case Toponaming, then you invite persons who had already a look at the code and can state about it.

- As said FreeCAD is a volunteer project. Everybody is free to work for it. You can also organize meetings, interviews or even conferences. The FPA for example organized a conference at FOSDEM in Brussels next week. Another group organized a hackathon beginning of March in Hamburg, some persons interview other developers at YouTube, FreeCAD has since some month an interesting official blog etc. So please either join existing work groups, associations or start own actions.
wsteffe
Posts: 461
Joined: Thu Aug 21, 2014 8:17 pm

Re: [announcement] first version of Toponaming is ready for testing

Post by wsteffe »

uwestoehr wrote: Thu Jan 26, 2023 2:54 pm How to maintain a project? Look how it is done at your work. There are weekly meetings, Jour-fix or however it is called. You discuss face to face (no matter if remote or not) and in small groups. The meetings have an agenda, a moderator and will conclude with written-down in meeting minutes.
One problem I see is that the meeting discussion is not properly documented in the minutes.
I was not there but I can non believe that all discussion may be described in those 4 lines.

It should be nice to have a wide consensus among developers about what should be done with RT toponaming code.
I.M.O the biggest stumbling block is the little bit oscure documantation of the algorithms and of the data structures used in the RT implementation. I tried to read the page https://github.com/realthunder/FreeCAD_ ... -Algorithm, but I had a hard time to grasp all the logic.

My proposal is to try to make a new (owned by community) wiki page covering the same topic. We may start from the RT wiki page trying to answer (with the help of RT) all the doubts/questions expressed by the FC community.
The first question could be:
1) What information is stored in the ElementMap files and which is the related syntax ?
madcello
Posts: 48
Joined: Fri Apr 22, 2022 7:00 pm
Location: Portugal, Arraiolos

Re: [announcement] first version of Toponaming is ready for testing

Post by madcello »

Please Dear Programmers, keep up the amazing work that is changing the world of parametric design to be accessible for people that not even dream that this was possible!

Thank you very much!
Learning is a passion.
Hologram
Posts: 201
Joined: Thu Nov 03, 2022 3:05 pm

Re: [announcement] first version of Toponaming is ready for testing

Post by Hologram »

Only posting regarding the meetings with reference to how things are done in Blender, which I think is a pretty well-managed project:
Blender's meetings are semi-public, you just don't meet publicly, because people can interfere with the meeting process (trolls). What you want is to have a clear agenda and talking points so that attendees can prepare for the meeting. You don't want to waste valuable developer time.

The meetings are organised as follows: meetings get announced bi-weekly (usually), unless there is a need to meet more often. After each meeting, the meeting notes are posted in a dedicated forum section. This lists everything that was discussed/ agreed upon and serves as means to communicate with the community on the direction of the project. Users are encouraged to read these notes instead of participating.
These meeting notes then list who were present (so you can see who made decisions on what) and it sends out an invite for the next meeting (date and time). Any developer who wants to join, sends a message to the meeting organiser, who then gets back to you. This allows to prepare an agenda and ensures every topic that needs to be addressed can be addressed.

So basically this corresponds to Uwestoehr's points.
Post Reply