Cool! Sadly, my TeAm hasn't done subteams in a long time, with one exception: Folding@Home. Now, changing your name on Folding is practically impossible. So, is there any chance you could come up with some other mechanism for that?
This has been long on my plate to implement and I finally got round to getting it started last week and have put it live in it's current (rough) fashion.
I'd asked the boinc dev team a few years ago if they would implement it server side but that's never been done so I've taken it upon my self to make up the rules! We can change them as we go along if there is enough interest.
So, this is a means of belonging to a team whilst also grouping together, logically, with other members of your team. The L'Alliance Francophone have been doing it for a few years by setting their names to contain the subteam/division within square brackets. All I'm doing now is parsing the name from the xml, if it contains square brackets, I take the data from within and populate a 'subteam' field. From that, I rollup to the combined user's subteam based on the majority of names and then combined data from each user in proj/team/subteam is generated. This is also then rolled up into a combined team/subteam table.
Fairly simplistic. There is a drilldown on the teambycpid page to list subteams for that team, and further drilldowns to list users and a project breakdown.
It's NOT finished Most of the backend database/scripting is working but I haven't spent too much time on the frontend at all.
There is a facility to have a 'subteam description' on the pages for each subteam. This is a mimic of the boinc team description which can be entered at each project page which then gets exported via xml to the stats sites. As that mechanism is not available to us, this will be a manual effort right now. If anyone wants to provide me with a description in bbcode/html with a picture or just linked to one, feel free to do it here or via PM/email. The first one was from a SETI.USA subteam named BlackOps with an image you can see in the link..
Cool! Sadly, my TeAm hasn't done subteams in a long time, with one exception: Folding@Home. Now, changing your name on Folding is practically impossible. So, is there any chance you could come up with some other mechanism for that?
Proud member of the friendliest team around, Team Anandtech!
The Queue is dead! (Or not needed.) Long Live George Woltman!
It's only for BOINC projects for now where there is a concept of a combined team at least. Would be next to impossible to code for in the nonBOINC world I'm afraid..
Problem is that there are people being thrown onto Sub Teams when there are no Sub Teams for the Main Team just because they have long had the [] in their User Name for some other reason ... So this means the Main Team won't get their Credit then I assume or am I wrong on that ...
Last edited by STE\/E; 01-30-2011 at 09:18 AM.
There is no change at all to the way BOINC credit is done, that part is all from the xml and I have no intentions of changing that. User credit and team credit is reported as is from the projects. All I'm doing is allowing a mechanism for a user to designate a subteam/division by putting it in their name. I then collect and accumulate the credit based on that. It doesn't interfere at all with the main credits. Would it be better if the subteam was available to be done at the projects themselves and thus exported in the xml, definitely. But I lobbied for it with the BOINC dev team and they would not do it.
If you mean that people are being put into a subteam, if they are NOT on a team in the first place.. perhaps, I'll think on that, might be better to ignore it in that case. I'll run through the scenarios on grouping across projects and see what I can come up with. I did try not to create subteams originally if the team was '0', I think there might be other ways I'll have to prevent though. I don't think it'll matter too much.
Definitely still a few bugs that need ironing out, I always believe in getting it out and letting people find them, especially when it has no affect on anything else..
Credits move with the user if they change their subteam. I don't have anyway of doing it differently without it coming from xml.
So it's all just fun really, little extra way of grouping /shrug.
As long as the Credit goes to the Main Team then that's okay, but it still is forcing some People to change their User Name that they may have had for a long time so that they don't get listed on a Sub Team that doesn't exist ...
Yes that's what I mean, we (The Sicituradastra. Team) had at least 1 person put on 2 different Sub Teams when there are no Sub Teams on the Sicituradastra. Team ...If you mean that people are being put into a subteam, if they are NOT on a team in the first place
Last edited by STE\/E; 01-30-2011 at 04:42 PM.
Nobody is forcing anyone to do anything... without BOINC Dev providing a mechanism for subteam, I have no other way of distinguishing it without using some part of one the fields exported. I chose name as it's the most obvious to use...
Subteams get created regardless based on the username, I'm not going to filter any out if people don't want them. They can be safely ignored if there is no interest in them, they have zero affect on anything else
Well Steve has already mentioned some concernes. Let me add some to it.
There are several issues with your approach that you may not have considered.
1. Some teams, maybe even most teams, don't really see the need for sub teams, and just don't want any more complicated statistics that have no meaning for them.
2. The way you have implemented this feature is totally unrestricted. This opens the door for misuse. Anyone could create new users, join any team and mess up the the teams stats page.
3. Some projects (WCG comes to mind) don't let you change the user name once you have created the account or allow any special characters. While I haven't tried square brackets in WCG chances are that it will not work.
4. The hole feature is based on the assumption that everyone uses the user name field of the project's XMLs the way LAF does. That is not the case. I've have done some processing of the XML stats myself and have noticed that people come up with the strangest names - some stuff that I would never have thought of. Relying on the user name field to have a certain structure (or any structure at all for that matter) is a bad design decision. As Steve has mentioned already, some people have had their names for a long time already. Forcing them to change it is not a nice thing.
5. Some teams just might not want sub teams at all, even if they don't have any influence on the normal stats. Right now there is no way to disable the sub team feature.
6. What happens to subteams when all members have left it. Will they stay on the site ? If so, it will gradually mess up the page.
Quite honestly, looking at your current approach, it appears to be broken by design. It's more of a dangerous hack than a solid design and might lead to all sorts of problems that you haven't yet though of.
If you really need sub teams (although personally I have no idea why anyone would need them) it's going to be much more difficult than a quick scripting hack. It doesn't necessarily have to be supported by the project (as you have mentioned already) but you probably will not get around extending you own database.
A (very) rough design outline could be:
1. Add a subteam flag to the team table of your DB that enables or disables the sub teams for the team.
2. Add a button on the team page to disable the feature - even better: make this feature an opt-in so that teams that are not aware of it don't accidentally have it switched on.
3. Restrict access to this feature to the team founder or some authorized team members to prevent any misuse.
4. Do not try to deduce the sub team information from any data in the XMLs but let the teams actively create a sub team when they want one. (requires more extensions to your database. A list of sub teams for each team and and a reference to the team members that belong to the sub team)
5. Maybe have a vote to find out how many teams would actually use sub-teams and if it's worth the effort ?
mickydl*
Sicituradastra.
PS: I had already written this before Boks last post, where he seems to have made up his mind already, but I couldn't post it because my account was not activated. Still, you should think about some of the topics above.
Last edited by mickydl*; 01-31-2011 at 03:29 PM.
Then ignore them, no-one is forcing anyone to look at the new pages at all...The only overhead is the storage of the data in my databases and that's trivial compared to the more than 1 billion rows of data already there..
I don't see an issue with this, it's unlikely to be widespread and causes no issues whatsoever anyway. If this happened and a team did not like it, they could always remove the user from their team and the subteam would disappear.2. The way you have implemented this feature is totally unrestricted. This opens the door for misuse. Anyone could create new users, join any team and mess up the the teams stats page.
True, but then really it's the overall name that's more important and as long as a user changes it on the majority of their projects it'll roll-up. This is really a problem with WCG and their non standard implementation of the BOINC server software which they are promising to update at some point anyway.3. Some projects (WCG comes to mind) don't let you change the user name once you have created the account or allow any special characters. While I haven't tried square brackets in WCG chances are that it will not work.
I chose the square bracket methodology after talking to a number of users. L'AF and Seti.Germany are the major users of it. SETI.USA are adopting it now. If teams/users wish to utilize it, it's available. If not, it has no affect on any other data anyway and I'm not Forcing anyone to do anything4. The hole feature is based on the assumption that everyone uses the user name field of the project's XMLs the way LAF does. That is not the case. I've have done some processing of the XML stats myself and have noticed that people come up with the strangest names - some stuff that I would never have thought of. Relying on the user name field to have a certain structure (or any structure at all for that matter) is a bad design decision. As Steve has mentioned already, some people have had their names for a long time already. Forcing them to change it is not a nice thing.
Then they don't need to look at the subteam pages. Solution5. Some teams just might not want sub teams at all, even if they don't have any influence on the normal stats. Right now there is no way to disable the sub team feature.
Nope they'll disappear. It's not automatic yet as I haven't switched it on - IMO it's always a little dangerous to have 'deletes' in scripts, so I tend to mark them for deletion and run the deletes offline after a little more checking. I have in fact just done that a few hours ago..6. What happens to subteams when all members have left it. Will they stay on the site ? If so, it will gradually mess up the page.
I can't think of any. Hack, yes, but a completely controlled one. I can easily wipe out current data in seconds with no effect whatsoever on any of the other data. The ONLY tie in to the user stats is in the users name, everything else is completely separate. I work on enterprise databases for a living and I know how to use themQuite honestly, looking at your current approach, it appears to be broken by design. It's more of a dangerous hack than a solid design and might lead to all sorts of problems that you haven't yet though of.
I'm not using them personally, but I've had quite a few requests for them over the years, so I implemented. I originally lobbied the boinc dev team to implement this server side but it was turned down. Again, I agree it would definitely be better if they did but sadly it's not to be. Still on their list though, so maybe, but it's been there a while. Feel free to bring it up with them againIf you really need sub teams (although personally I have no idea why anyone would need them) it's going to be much more difficult than a quick scripting hack. It doesn't necessarily have to be supported by the project (as you have mentioned already) but you probably will not get around extending you own database.
A (very) rough design outline could be:
1. Add a subteam flag to the team table of your DB that enables or disables the sub teams for the team.
2. Add a button on the team page to disable the feature - even better: make this feature an opt-in so that teams that are not aware of it don't accidentally have it switched on.
3. Restrict access to this feature to the team founder or some authorized team members to prevent any misuse.
4. Do not try to deduce the sub team information from any data in the XMLs but let the teams actively create a sub team when they want one. (requires more extensions to your database. A list of sub teams for each team and and a reference to the team members that belong to the sub team)
5. Maybe have a vote to find out how many teams would actually use sub-teams and if it's worth the effort ?
The way you have proposed, whilst perhaps doable would involve a LOT more work. How would I know that a user signed up to the forums here (The id is linked into my stats system) is the team founder for a team? I have no more access to their email address from a boinc project than any other site to be able to prove it. I could actually see a lot more potential for misuse if I started creating forms for various team leaders (if and when I could identify them) to allow them to flag users as members of subteams. And a lot more intervention on my behalf. The day this hobby becomes more like a job is when it stops, like any other thing..
As far as effort goes, this is my hobby, I enjoy doing various statistics, slicing and dicing data, though more so on the database and perl scripting than the web side. The effort for the most part is done.
NHL All-star weekend here in Raleigh, which I was attending/part of in a small way so I was not home much of it Only approved all the new members this morning and deleted the obvious spammers!mickydl*
Sicituradastra.
PS: I had already written this before Boks last post, where he seems to have made up his mind already, but I couldn't post it because my account was not activated. Still, you should think about some of the topics above.
I'll certainly think about the topics, I guess I just can't understand the issue you and Steve have with the data being out there when you don't have to look at it if you aren't intending to use it? I'm genuinely interested in that part, perhaps I'm still not explaining the total separation of the subteam data from the main stats?
For the most part, in mails and PM's it's had a positive reception.
Bok
P.S. I thought I'd go over and register to the Sicituridastra forums but it looks like it's by invitation only..
Anyone can create new users, or join any team already. Stats have no control over any of that.
FWIW. it worked for me on WCG, with no problem at all.3. Some projects (WCG comes to mind) don't let you change the user name once you have created the account or allow any special characters. While I haven't tried square brackets in WCG chances are that it will not work.
Worked fine for me also on WCG ,,,, had no problems at all my MAIN STATS page hasnt changed one bit other then my NAME change,,, stats are still the same....
every credit earned is posting,,,, i see no problem and like the seperation
THANKS Bok for the work put into this...... its a nice change.....
Closing thread ....
Semi-retired from Free-DC...
I have some time to help.....
I need a new laptop,but who needs a laptop when you have a phone...
Now to remember my old computer specs..