exercism / docs

Exercism's docs. View them at Exercism's website, not on GitHub.
https://exercism.org/docs
43 stars 92 forks source link

Update average run time #430

Closed ErikSchierboom closed 1 year ago

ErikSchierboom commented 1 year ago

There are two reasons for this change:

  1. Having the average run time as a float gives the impression of being exact, whereas the actual run time wildly varies due to a wide variety of reasons (e.g. how busy it is on the server). That fractional component will almost never actually conform the real situation.

  2. jq is often used to work with track config.json config files (e.g. to add elements to it), and it will remove any trailing .0 fractional part from a number, which caused configlet lint to fail. Those JQ scripts then have to work around this by manually adding .0 to it.

ee7 commented 1 year ago

Also, when configlet fmt supports the track-level config.json file, this PR raises the questions:

The answer to both questions should be the same, because configlet fmt -u should only format things that configlet fmt complains about.

So we have two options:

Things are simpler if the type of everything is known at compile time. So I think this PR isn't worth it. Thoughts?

ErikSchierboom commented 1 year ago

that requires an Exercism-wide PR, which probably isn't worth our time.

Well, why not? Should be easy enough.

if a track gets down to very low average run times, the difference between e.g. 1.0 and 1.5 may be meaningful enough.

It won't be though, as there are many other factors that influence the average run time, like how crowded our servers are. People won't notice a difference of half a second.