Clash of Code : Bugs & Improvement

Display the puzzle title in the report page. The reason is that I have 2 notifications of ended clashes and I can’t tell on which one I finished 1st or 2nd.

3 Likes

Might be a too extreme solution to the specific problem that the score would be too broad if we allow such power, nevertheless, everyone would understand such a step, but please consider that the score might be too broad, too, since you have many specific problems to tackle not everyone is even knowing of. This means failing much in one category, but, I’m exaggerating right now, winning in another.
If the target of Clash of Code is to improve on a major scale, then ignoring any score if you turn off some category would be the way to go. (this way, being able to toggle categories wouldn’t make sense either, since it misses the target of CoC, but it would be still fun to be able tho)
But if the target is to improve specific skills, then a more specific score might be the way to go, meaning a specific rating for every different category for which you have the power to turn on or off. However, this will lead to the problem of how to organize this, since you already get a category for every single language, because of code golf. (Java vs Ruby, who’ll win?)
Having such an amount of possible scorings seems to make it overly complicated, doesn’t it?
I would suggest, because I really like the idea of improving in many ways, to use just one overall score, but to calculate that in a different manner, e.g. count less points the more you do specific challenges of the same configuration. It makes no sense to count even more less points if you switch it sometime, since it would be completely different. But even this way, every score should be displayed somehow. Sadly I have no suggestion for this, I suck at design and I think there is… What about a pie-chart? The more same (meaning not so broad) challenges you do, the less percents for the chart you get. The overall CoC score is the sum of every category displayed in that chart multiplied by it’s percentage. Something like that maybe. … Anyways,
Depending on what Clash of Code wants to archive the solution is different, either use one very broad score or a more specific one. If the more specific one will be the way to go, then there will be much more stuff to think of.

About the time shortening feature, I and others find it incredibly frustrating for a couple reasons.

If you’re in a “fastest to code” challenge, then cutting time isn’t really relevant. If you finished first, you finished first, no matter how long the other people take after you. All the cutting time does is “provide an extra challenge” (i guess), but more often it frustrates slower coders as they’ll get cut off in the middle of working. Even though they know they’ve lost, it’s much less annoying to be able to finish and submit at 100% then have a 95% done piece of code that submits at 0% because you couldn’t finish up the key piece to tie it all back together.

For the “code size” challenges, this creates an opportunity for tactics like writing acceptable code then submitting early to try to cut people off, rather than everyone trying to golf their best, which doesn’t feel in the spirit of these clashes.

10 Likes

EDIT : I saw it, thanks. Hope it will be fix asap :frowning:

1 Like

Edit : Already fixed in dev.

1 Like

Recommend the Hofstader-conway sequence puzzle to be a coffee break difficulty rather than a Superfast difficulty

Thanks but for comments about the clash questions, it’s better to leave a message in the feedback form. This thread is more about the game itself.

By the way, thank you all for your help improving the statements, we have received some feedback for approximatively three fourth of the questions. Keep clashing!

//about one of the problems:
yesterday i solved CoC problem (you must answer if this figure is square). I just checked if sides equals and got 100% but figure with equalent sides isnt square - it’s rhombus!
please upgrade tests.

For all players of the clash -> Pick a question never done
IF 0 -> Pick a combo question/mode never done
IF 0 -> Pick a question with the less feedback (BETA ONLY)
ELSE random()
1 Like

Personally, I would like to see some more difficult puzzles for the reflections category. I would like to see more distinct concepts represented. I didn’t find many Dynamic-Programming problems, which I think can be a lot of fun.

I love a lot of the puzzles I’ve seen so far, thank you.

So guys I want to choose game mode - fast or short. Just because I think “shortest” game mode is bad idea in it’s current realization: lenght of your code depends of your programming language a lot and in addition it count length of your comments and “system” lines(like import and so on). But that isn’t the main problem: I think in programming(competive and industrial) code clearness is very important. But in pursuit of short code people makes it unreadable. It is harmful for programmers i think.
//sry for bad english

6 Likes

As a Codingamer i would like it have diffrent levels from easy to extrem hard
so you can pick the right level to fit you (the higher the level the higher the points recived for winning)
As a Codingamer i would like more than just “fastest”,“shortest” and “Reverse” modes

1 Like

What are your suggestions for additional modes?

We have 2 secrets mode :

  • Blind Code -> You can’t compile your code :slight_smile:
  • Babylone -> The programming language is imposed and you can’t change it.

We didn’t release theses mods because a majority of the CG team didn’t find theses mods “fun”

Feel free to send us your mode :stuck_out_tongue:

1 Like

I think the metric of characters in clashes is a very bad idea as it teaches bad habits. In real programming selfdescribing variable and method names make code better readable and maintainable, especially in a team environment where you didn’t write the code. The variable name “numberOfAccounts” is much better than “n”, yet in a clash you get a penalty for using more characters,

Better metrics would be runtime, memory used and readability and just maybe the size of the resulting binary. I can think of very few examples in real life where a couple of extra lines of code are a bad idea if they increase readability, most of the time they don’t even increase the size of the compiled result.

1 Like

In real programming, what’s the purpose of coding the exact same thing with 4 differents peoples in less than 20min? facepalm :slight_smile:

4 Likes

We all agree that in real life, code readability is essential and code size doesn’t matter if the code is more easy to understand and maintain. I understand your point of view, this may teach bad habits.

However you need to keep in mind two things:

  1. it’s a game and code golfing is a very interesting thing because you need to master your language and be very clever/creative in order to reduce the size of your code.

  2. from a technical perspective, it’s way easier to consider the code size than the other metrics you are suggesting :

Your code is compiled and run and different servers that are not all strictly identical. Regarding readability, except for the main languages, there are no tools to compute the quality of the solutions. And for the memory usage, the best way is to write tests that doesn’t work with bad solutions. But we wanted the clashes to be easy so most of the problems can be solve with simple algorithms.

1 Like
In real programming, what's the purpose of coding the exact same thing with 4 differents peoples in less than 20min? facepalm smile

The purpose for real programming is practice. Practice makes perfect, but practicing bad habits results in bad habits.

We all agree that in real life, code readability is essential and code size doesn't matter if the code is more easy to understand and maintain.

IMHO this is the issue. Many people quite new to programming use this webpage to learn and practice programming, and they might not know this and think shorter code is better. Maybe a disclaimer of some sort would help clarify that you shouldn’t normally do this and it’s a for fun challenge.

I understand the technical perspective.

Maybe in the future a readability metric could be possible, it’s more difficult to implement for sure, but some IDEs do check for language conventions, like Jetbrains IDE for java or the ReSharper plugin for VS, you could use something similar. Just in case the Codingame devs run out of ideas :wink:

Yep, there are tools available for Java, C, C++, Python etc. But not for all the languages… And they are far from perfect : there are false positives and you only need to fix what the tool says in order to get a perfect score.

Ah ah :D. We have a lot of cool things under preparation. And one big feature should motivate people to improve the code readability of their solutions.