-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
time_multiplier(s)? #349
Comments
Maybe a little late, but not too late 😄.
Yes.
Yes.
Mainly that we had gotten some feedback that the original names were hard to understand.
👍
I think very much so.
True, but it's very little more code.
Which is very easy because the name also changed. The old default value was a very old regret of mine, I think the old defaults (esp.
Again, it's very little, but true.
This I disagree with. If you're being strict, problem is legacy if
What kind of "random changes"? Again, see above how to strictly determine if a package is legacy.
Absolutely not!
I disagree with this claim for the reasons above. Note that I'm only disagreeing with some of your points. I can still very much see the general point that the benefits (easier to understand names and better defaults) are not worth the cost (having to learn the new names, longer names and more updates needed to tooling). I don't think the cost is very high, but I agree that the benefits are not huge either. I'm definitely open to revert. What do others think? |
Ok, so just to clarify my main point here: even though it is properly defined when which multipliers are used my problem is that it is confusing that things with the same meaning but different names and default values exists for different versions... (which i still think will end up in a weird mixture that people and tooling will (try) to handle somehow) Anyway, my preferred change would be to revert this (and just keep the new explanation). This makes stuff more backwards compatible and i think neither the old names nor the old default values are that bad (sure the new ones would be better but that is not enough for a change). Even if there is a consensus for the new names I would still want to keep rid of the |
I very much agree with our change of the default values. I don't think the name change was necessary but I see where the complaints came from. Since version is changing alongside it, there is no compatibility issue really. |
I would be sympathetic to the argument that the cost is high for little gain if this were an isolated, minor revision to the spec. But that's not the case: this draft is a major revision with many changes all over the place. People will already need to consciously familiarize themselves with the changes and update their problem package templates. We might as well take the opportunity to make the package format easier to use and to fix old mistakes---it's now or "never" (in many years, whenever the next major revision takes place.) As I see it, there will be some short term pain that will quickly be forgotten (as people copy-paste example problem templates that have all of the new names in them), in exchange for long-term gain (less misuse of the time multipliers due to confusion about what they mean, and due to naive use of inappropriate default values). |
Maybe to add: I'd be ok with renaming the nested time_multipliers
ac_to_time_limit: 2.0
time_limit_to_tle: 1.5 if we have a clearly better alternative. But just to give our reasoning for this nesting (which we discussed quite a bit):
ac_to_time_limit_multiplier: 2.0
time_limit_to_tle_multiplier: 1.5 which doesn't gain you so much in typing. |
I am a little late to the party but i have a few questions regarding
time_multiplier(s)
.ac_to_time_limit
exactly the same as the legacytime_multiplier
time_limit_to_tle
exactly the same as the legacytime_safety_margin
Now assuming that these are indeed the same I can see that the new names are easier to understand and that the new defaults might be more reasonable but i don't think that that is a sufficient justification.
I want to argue that this is not a good idea and we should undo the changes:
As a tool writer:
As a Judge:
time_multipliers
?)To clarify this a bit more: Not only do i now live in a world where i can never be sure what default values are used (because tooling decides if this is legacy or not and some tooling will take more time to implement the new format) also random unrelated changes could somehow influence if the problem is detected as legacy or not and therefore change the default values.
For example it could happen that adding a
uuid
suddenly changes this from a legacy to a new problem and therefore changing the timelimit... So i can only be safe if i actually specify the new keys even if i want the new default values.The text was updated successfully, but these errors were encountered: