Sub-topic of Club / Crew / Group / Team
The core question here is:
Which activities should apply to the Crew?
The biggest issue to consider is the situation where someone joining the Crew has already completed the city. This would have the most impact on the Crew, overall.
Another aspect (less of an issue, and more of something that needs to be considered while making the decision) to this is that there are different reasons for each Crew to exist - there could be 1-3 people who want to complete their city together, and there could be a big running group in a large city that want this social layer added to their fun.
Yet another aspect to this is that these decisions also affect if/how competition between Crews plays out. For example - If a CrossFit gym and a TRX gym in a city both create a Crew, then the competition between the two might not be as fair unless they both chose the same start date
(or if the overall decision I make on how all this works makes that decision for them).
After thinking about it for a while, I’ve come up with these options for deciding which activity data to allow in:
A) Everyone’s full history is applied to the Crew
I like this, theoretically, because it allows for a full history view of a Crew’s accomplishments. None of the other options allow for that. On the other hand, if nobody wants that - if that’s not what people are using Crews for - then it’s not actually a benefit.
If a Crew wanted to do something time-specific, then I could work out Crew-specific Challenges where it’s the Crew that joins as opposed to each person. This feels clunky, though, because the default view would be the full history - this could make it odd/confusing for people joining & thinking they were helping finish a city together.
B) The Crew has a start date
field, which sets the earliest activity date for joining members
This has the potential of having all the same problems as A, because the Crew could be created with an early enough start date that would allow for a 100% person to join & ruin all the fun.
This would address the likelihood that there are already groups out there who have been tracking themselves manually some other way for some amount of time. I don’t know if I’m making this up, though, so speak up if this sounds like you.
C) Only activities created after the person joins the Crew are applicable (so a Crew could be created today, and someone could join a year from now & that year of activities would not apply to the Crew)
This is pretty clean, and probably the least intense version as far as all of my work is concerned (it removes the possibility that a Crew is created with tons of historic processing to do). I’m unsure if it places late-joining Crew Members at a disadvantage or if it’s a welcome aspect.
D) Only activities created after the date the Crew was created are applicable (so a Crew could be created today, and someone could join a year from now & that year of activities would apply to the Crew)
This is similarly clean, but could be a bit stressful for very active people joining older Crews.
E) Allow each Crew Member to set their own start date & allow Captains/Owners to adjust people’s date (and also lock it, so the member cannot change it back) (I do not want to build this )
I’m still kind of in an observation state, not really holding a strong opinion yet, but I kind of think that C might be the best place to start.
It does feel like it’s going to be an “all of them” situation, since I imagine many different people will have many different uses/reasons.
Let’s discuss the options … share other options, if you think of any … and after it feels like the options are solidified, I’ll set up a poll to get some solid numbers.