# A program for making competition schedules



## Roman (Mar 15, 2016)

Hi cubers!
I am intended to write a program that can make a competition schedule based on the information about events, rounds for each event, number of competitors for each round and an organizer preferences (like, 3x3 finals are most likely to be the last event taking place, and MBLD/FMC have to be in the first half of the day). I have been talking to delegates and the main problem here is you never know in advance how many competitors will come (registered guys can not appear, and some other people can register in the very last moment), though I wanted to make the soft possible to create the schedule as early as it can be created. I also have a thought that the organizer can use it first to create a provisional version of the schedule and then maybe update it slightly (using this soft again) according to a new information about the number of competitors.
Let me know what do you think.
Thanks.


----------



## biscuit (Mar 15, 2016)

I think it's a fabulous idea. If you set a competitor limit, then I don't think it's a big deal. Make sure it's a bit more conservative, and if an organizer thinks it's too conservative, they can change it.

Something you should include is a level of scrambler availibility. That was something the delegates I have been talking too about my upcoming comp were a little worried about, and advised I add a little time to a couple of events that we may have issues with scrambler availibility.


----------



## mikebolt (Mar 20, 2016)

This project might have what you're looking for:

https://github.com/cubing/ccm


----------



## Calode (Mar 20, 2016)

ccm is far from just a scheduling program. And that's not even the direction it will be continuing in. It's not what he may have been looking for.


----------



## suushiemaniac (Mar 20, 2016)

I've thought about doing something like this before, but I quickly stumbled upon some problems.

1) Which competition model would you use? They way competitions are held here in Germany largely differs from the 'American' competition model using runners/callers. And then afaik the Japanese model is again somewhat different... (although I'm not too sure about that, correct me if I'm wrong)
From my experience, these different models would require different schedules, at least to a certain degree.

2) Which schedules would you use to calculate constants for your program? Because automatically generating schedules eventually boils down to having a constant c and then multiplying the number of competitors n by c. I mean there is certainly more to it (see 1.) but at least for some base data you would have to do regression to find constants...


----------



## Roman (Mar 20, 2016)

I have been thinking about it a lot and I made a conclusion that rather than having auto schedule generator, it will be more practical to make a visual application where you can drag and drop "event" elements on the timeline, then correct it / move it / add more events until you finally got a great schedule. Generating can be an additional feature. But then it's just a lot of frontend work, not for me. If anyone decides to implement that, it would be great.


----------



## jfly (Mar 21, 2016)

(I'm Jeremy Fleischman, the lead developer of CCM, and the leader of the WCA software team)



mikebolt said:


> This project might have what you're looking for:
> 
> https://github.com/cubing/ccm



Wow, good eye, mikebolt! For those of you watching, CCM is what powers the currently unused live.cubing.net. We added a pretty cool (IMO) schedule creator. It's not automated, just a Google Calendar style UI that knows what events you're running, and how many rounds of those events you plan to run:











Roman said:


> I have been thinking about it a lot and I made a conclusion that rather than having auto schedule generator, it will be more practical to make a visual application where you can drag and drop "event" elements on the timeline, then correct it / move it / add more events until you finally got a great schedule. Generating can be an additional feature. But then it's just a lot of frontend work, not for me. If anyone decides to implement that, it would be great.



We actually would like to move the schedule stuff from CCM to worldcubeassociation.org itself. See https://github.com/cubing/worldcubeassociation.org/issues/278. If anyone is interested in working on this, please reach out to [email protected]!


----------



## Roman (Mar 21, 2016)

jfly said:


> For those of you watching, CCM is what powers the currently unused live.cubing.net. We added a pretty cool (IMO) schedule creator. It's not automated, just a Google Calendar style UI that knows what events you're running, and how many rounds of those events you plan to run



This is exactly what I've been looking for! Thank you for letting me know.


----------



## Roman (Mar 30, 2016)

I tried live.cubing.net but it has the same issue as Google Calendar: the minimum increment is 30 minutes (not even 15), and in live.cubing.net I can't even create events that last shorter, unlike the google calendar:






Obviously some events can last less than half an hour (like 2x2 final on small comps, opening ceremony etc).
I have been searching through all kind of online scheduling tools but none of them satisfies my needs. Can someone please help me to find one? I will be very grateful to you. You will also help other organizers, there's no need to prove that we need such tool.


----------



## Joel2274 (Mar 30, 2016)

Kind of off topic, but can you find competitions other than stuff like this or WCA website? I really want to go to a competition but all I can do is check WCA every once in a while


----------

