derbynet icon indicating copy to clipboard operation
derbynet copied to clipboard

Clarify how to use grouping system and dens in docs

Open nirvdrum opened this issue 3 years ago • 9 comments

I've just taken over as the race coordinator for our pack this year. Last year the coordinator was using Derbynet version 5.0, which he had set up a few years back. I've set up a new Raspberry Pi 4B for this year and went with Derbynet 7.0. I'm finding the grouping nomenclature is eluding me. With the older version we had "packs" and "dens". I assumed in the new system that a "group" would be a "pack" and "subgroup" would be a "den". So I set each of those up from the Racing Groups page.

The first matter that's tripped me up is there's a subgroup automatically created with the same name as the group. Is this a placeholder? Or do I have the relationship between groups and subgroups wrong?

Leaving those in place, I now set everything up as I understand it (side note, but I put "Parents / Siblings" in place and that got truncated -- I'll file an issue for that)

At this point, I think I have the relationships set up correctly. I'm still not sure what an aggregate group is given there's a group/subgroup relationship, but I can just ignore that for now. When adding a new racer, I'm prompted to choose a "den" not a "group" and when selecting the den none of the created groups show up. Instead, there's an option to edit a new thing called a "partition".

Clicking "Edit Partitions" now allows me to add dens:

If I go back to the Racing Group page, now all the dens appear as new groups with an implicitly created subgroup. The color legend at the top suggests the dens should be a shade of brown, but they look to be the same color as the "group" color:

I've read through the quick start guide, which is how I started setting up the racing groups. My experience with the older 5.0 interface is probably influencing my expectations and leading to confusion. But, I'd appreciate any guidance on how to set this up. I'm happy to submit a documentation PR once I have everything set up to clarify any points I found confusing.

Just to recap, our pack runs two sets of races: one for the scouts (belong to a den) and one open to parents and siblings (no affiliated den). Each den has an award for fastest and then the top three in the pack also get a reward. The parents and siblings vehicles are just for fun and they cannot win an award. On top of that we have custom awards like "Best in Show" and "Scout Spirit". I want to make sure I structure this correctly. Complicating matters, due to COVID we're running the heats in limited time slots to reduce the number of people around the track any any given time. The slots are not limited to a single den. I think this might be a good application for groups & subgroups, but I'm uncertain of that. If necessary, I'll create synthetic dens for each time slot.

Thanks again for making this project freely available. I hope my questions aren't taken as criticism. I truly appreciate all the work you've put into the project and would like to contribute back based on my first time race coordinator experience.

nirvdrum avatar Jan 25 '22 03:01 nirvdrum

Sorry for your frustration. You make a lot of valid points.

I made a YouTube video last year that I still need to update, but should help give some clarity on groups, subgroups, and aggregate groups: https://www.youtube.com/watch?v=i_2q8DH_qpU. Briefly, a racing round is populated from a group; cars from different groups don't appear in the same heat. Subgroups let you keep track of subsets of a group for standings and award purposes. Aggregate groups have a few different uses and allow multiple groups to be pulled together, either for standings and awards, or to have "grand final"-style run-off rounds.

What's changed this year is that racers get assigned to "partitions", and the partitions formed into groups and subgroups afterwards. Previously, group and subgroup was part of a racer's identity, so e.g. deciding to run two small dens together as one group meant changing each racer, or, more commonly, re-importing the roster.

I think in your case you want groups to match your slots. As a slot can span multiple dens but you still want to retain den identity, dens become subgroups in this scheme. For "Best in Show" and the like, given that parents and siblings are their own "den", you could use "Bulk" > "Bulk Eligibility" from the check-in page to mark all the parents and siblings as ineligible for awards.

jeffpiazza avatar Jan 25 '22 12:01 jeffpiazza

@jeffpiazza Thanks for the thoughtful reply and pointing me at that video. Both were very helpful.

Where I'm still a bit at a loss is with the racer check-in page. None of the groups appear there, only dens, but dens don't seem to show up in the Racing Group page. If I create a den from the other area, that'll create a new group and I can manage that from the Group Manager, but I don't see any way to see a den.

Generally, we want the scouts to register by den and then interleave the racing, saving parents/siblings for the end of the derby. The COVID restrictions have caused us to break this year's derby up into 30 min. chunks and so we're trying something new where each time slot is first-come, first-served and members of that group will be from different dens. However, we want to present awards at the den level, regardless of racing group. I think what DerbyNet supplies might provide the level of flexibility needed. I just to wrap my head around the mapping a bit better.

nirvdrum avatar Jan 27 '22 05:01 nirvdrum

@nirvdrum Well I tell ya - I am glad I am not the only one struggling w that. : ) I met with the fellow who's taking over from me this year expecting to walk through it all...silly me didn't really look to see what all had changed since v6.

I might have to take a peek at that video but I agree there's some logic challenges there. Last night I thought I had it, but now I am not sure. : ) I fired it up on my machine a few minutes ago in hopes of documenting it for the new guy and just managed to confuse myself again LOL.

@jeffpiazza I think for me at least the "partition" concept is a bit confusing because we don't generally import a roster, we just enter the kids as they arrive for checkin. In our case, it would be helpful for the Setup/Racing Groups menu to have in there a way to create those partitions. Otherwise it seems we have to do that on the Race Checkin page which I did figure out, but wasn't immediately evident. As always thanks for your hard work on this - it really is a great system.

TheGlobalMind avatar Jan 28 '22 15:01 TheGlobalMind

All good feedback, and I will try to clean this up in the near future. Particularly the point about needing to be able to create a new den (partition) from the Racing Groups page.

jeffpiazza avatar Jan 28 '22 15:01 jeffpiazza

@jeffpiazza , this will be our first year using DerbyNet. I expect it will be terrific. Our pack runs races the same way that I understand @nirvdrum wants to run theirs. From my reading and testing, I understand the way to do this is through aggregates. We have a group for each den, and another for the "Outlaws" (siblings and others). Then there is an aggregate I created and selected all of the dens as members. The aggregate automatically pulls the top three from the den races.

Do I have this right? You might have explained this above, and I missed it. Apologies if that is the case.

sly4 avatar Jan 28 '22 21:01 sly4

@sly4, your use of aggregates to collect dens and exclude "Outlaws" is probably the primary use case for aggregates.

@nirvdrum, I think your "first come, first race" model is probably going to be a challenge to administer, but I think you can get what you need. From your description, each "chunk" is a racing group. Each chunk then needs to have subgroups (partitions) to reflect each racer's den affiliation. So you'd have perhaps a partition of "9:00 Lions" and another of "9:00 Tigers" in the first chunk, and another partition of "10:00 Lions" in the next chunk.

You'd then form aggregates to reconstruct each den (e.g., "Lions" comprising "9:00 Lions" and "10:00 Lions" and so on). Each of these would be an aggregate of subgroups.

Finally, if you're interested in a "Fastest Scout" kind of award, you'd have a "Scouts" aggregate comprising the "Lions" aggregate plus the "Tigers" aggregate and so on.

Results per group ("Fastest 9:00 racer") and results per subgroup ("Fastest 9:00 Lion") are probably not super interesting in this model but they'll certainly be available if you want to recognize them.

jeffpiazza avatar Feb 04 '22 12:02 jeffpiazza

@jeffpiazza Thanks for all your help. I think I have what I need:

I'm still a little iffy on the difference between subgroups, partitions, and dens. Each den belongs to a subgroup with the same name and is the only member of that subgroup. But, if I try making the den the subgroup directly, it's no longer an option during racer registration. I don't think it matters all that much.

Another area I'm a bit lost terminology-wise is relating all of this back to rewards.

I think in my specific case, I just want to set all of these to 0 and control the rewards directly from the aggregate group. I'm not sure how "pack" ties in, unless it just means all the racers. There's nothing on the "Racing Groups" page that says anything about "pack" as far as I could tell.

Anyway, thank you for all of your help. After being snowed out for the past two weekends, we're finally running our derby. I'll let you know how this setup goes. Although, I really hope in the future we don't need to schedule time slots like this. Thanks again!

nirvdrum avatar Feb 11 '22 22:02 nirvdrum

@jeffpiazza As a follow-up, your suggestion on how to run the groups and aggregating sub-dens worked fantastically. The only issue I had was with the parents/siblings. I may have just misunderstood the UI, per #189. I ended up just marking each parent or sibling individually as being ineligible for prizes, but that meant they also didn't show up in the ranked results for the parent/siblings aggregate. Not a big deal though. I was really impressed with how well everything went. Thanks a bunch for the help!

nirvdrum avatar Feb 16 '22 01:02 nirvdrum

Lately I've been wondering if it wouldn't be clearer to substitute the word "segment" for what's presently called a "partition." So we'd say that each racer is in a segment, and then there are different ways to form groups and subgroups out of the segments.

Any opinions from the user community?

jeffpiazza avatar Mar 22 '22 21:03 jeffpiazza