# If there is “a winner for every language” in a code golf challenge, does competitiveness matter?

The consistent attitude with regard to the golf language situation is that for every challenge, each language is a category, and subsequently there is a 'winner' for each language. This is also a very very popular opinion with regard to the new user experience.

There is a problem with this idea. With the exception of a very small percentage of languages, Most challenges have only one answer for each language. You might see where I'm going with this. If there is one winner for each language, and also one answer for each language, then by extension almost everyone is a winner. Anyone with a half-decent answer is never challenged.

By this logic, why is competitiveness important to the PPCG stack?
Does the reason expand beyond "The rules say so"? If not, then why are the rules discouraging competition?

After some confusion of definitions, a formal definition of competitiveness:

Possession of a strong desire to be more successful than others.


source

• Is this a purely philosophical question or are you gauging community opinions before making some proposal? – Peter Taylor Jan 30 at 12:09
• @PeterTaylor the latter – tuskiomi Jan 30 at 18:54
• Why do you say the rules discourage competition? – lirtosiast Jan 31 at 2:53
• @lirtosiast i don't say that. – tuskiomi Jan 31 at 2:54
• oh, is "If not, then why are the rules discouraging competition?" a typo? – lirtosiast Jan 31 at 2:54
• @lirtosiast I'd expect programmers of all people to know what a conditional statement is... – tuskiomi Jan 31 at 2:55
• Just trying to understand the question, and I still don't. Why would there being no deeper importance to competitiveness mean the rules are discouraging it? – lirtosiast Jan 31 at 3:01
• @lirtosiast because If the is not a reason for competitive being important excluding the rules, then the reason must be including the rules – tuskiomi Jan 31 at 3:05
• I think this discussion would be a lot more productive if you just proposed what you want to propose. – Dennis Jan 31 at 3:40
• @Dennis need to know im not overthinking the issue – tuskiomi Jan 31 at 3:53
• Maybe it's just me, but without context, I seem unable to understand what why is competitiveness important? is supposed to mean. – Dennis Jan 31 at 4:14
• @Dennis well, It's not something to be overthought.Why is competitiveness important to PPCG? – tuskiomi Jan 31 at 4:55
• @lirtosiast done. – tuskiomi Jan 31 at 5:46
• If I understand your question, I essentially asked this question 3 years ago. Community opinion can certainly change, but I still think that Martin's response is fantastic. – Nathan Merrill Feb 21 at 21:43

## PPCG code-golf should not be considered an individual competition.

Because PPCG solutions are publicly displayed, many users peek at solutions by others in their language. Suppose Alice, a Jelly programmer, writes a 20-byte answer to some challenge. Bob glances at the byte count, thinks he can outgolf her, and finds an 18-byte solution. Finding it too similar to Alice's and being generous, he leaves it as a comment. Later, Carol studies Alice's answer as well as others' in different languages, and finds an efficient approach that solves it in 13 bytes.

All three users essentially had different playing fields and cannot compete fairly. Due to these asymmetries resulting from the structure of our site, PPCG is flawed as a competition (fair test of individual ability) and should not be thought of as such.

However, competitiveness (trying to outdo others) is very much in the spirit of PPCG. A competitive mindset is not by any means a requirement to contribute to PPCG, but it's an important motive for PPCG contributors. (Other motives include theoretical interest, improving one's code-golf skills, community, etc.)

### Reasons why challenges often have only one answer in a given language

• They don't. If a question is popular and easily approachable, it likely has multiple answers in common production languages. For example Oreoorererereoo has 4 Python and 3 JS answers.

• The author of the first solution is likely to be fluent (to write it so fast) and very active (therefore experienced, therefore skilled), so a refinement of the first solution has a good chance of being the best.

• Each esolang has a small community. In Jelly (currently the best and most popular golfing language), 3-4 golfers combine to write over 80% of Jelly answers. In 05AB1E, Kevin Cruijssen writes the majority of answers, and in a specialized language like Canvas dzaima writes 80% of answers.

• In golfing languages, the solution is sometimes a few builtins. It's hard to golf down a 6-byte answer, and even if you do, it often feels like you haven't contributed enough to post the 4-byte answer as your own.

(I'm not sure of OP's exact question yet, but I tried to give my best answer).

• "Suppose Jelly, an Alice programmer" :P – ASCII-only Jan 31 at 8:55
• This showcases why teamwork is important, but why is competitiveness important? why is it important to have the drive to be above average in the context of PPCG? – tuskiomi Feb 1 at 3:04
• @tuskiomi Stepping back from "why" to "is competitiveness important [as a core value/principle of our site]", competitiveness motivates many people to contribute to PPCG, but there are many other motivations: theoretical interest, improving one's code-golf skills, community. I don't consider competitiveness a requirement by any means to contribute to PPCG. – lirtosiast Feb 1 at 3:20
• @lirtosiast then you should include that in your answer. – tuskiomi Feb 1 at 3:22
• @tuskiomi Done. Would you please tell us your proposal though? I feel like you have 4 imperfect answers, and I'm afraid that you might misconstrue our answers to justify some proposal we wouldn't agree with. – lirtosiast Feb 1 at 3:37
• I have the majority of answers in 05AB1E? Really? xD Maybe in the past 2-3 months, but before that/in total Adnan and @Emigna certainly have more than me. :) – Kevin Cruijssen Feb 1 at 13:15
• @ASCII-only I suppose Jelly is a weird name – Jo King Mar 18 at 9:55

why is competitiveness important?

It's not, really. We need some kind of scoring criterion, and going by byte count is simple, objective, and easy to measure in (almost) every language, but is still enough of a departure from the way code is normally written that it poses a unique challenge.

That most languages don't get more than one answer on a given question really doesn't matter. Trying to get a program as short as possible (or, in many cases, trying to simply write it in the first place) is entertaining regardless of whether there are other people for you to compete with.

If you're using a language which neither (1) has enough competition for your taste, nor (2) is inherently fun to golf in even without competition, might I suggest switching to a different one?

• Well, It's not as much about the language as the fact that nearly all competitors are uncontested. – tuskiomi Jan 30 at 5:37
• The point is that an answer being competitive is a virtue independent of whether or not it's actually competing with anything else. (Plus, if it's actually not that competitive of an answer, chances are it will be contested soon enough!) – Unrelated String Mar 15 at 6:43

The consistent attitude with regard to the golf language situation is that for every challenge, each language is a category, and subsequently there is a 'winner' for each language. ... If there is one winner for each language, and also one answer for each language, then by extension almost everyone is a winner.

I agree with you that this interpretation is a problem, but there are more useful interpretations.

1. If you trawl through the early days of meta, I think you'll find various discussions about language handicaps, but all proposals for them were abandoned as unworkable. The concept that languages don't compete against each other may in part be a reaction against these proposals: handicaps are unnecessary because direct comparisons are unnecessary.

2. We require entries to make a serious attempt to optimise for the winning criterion. This is sometimes phrased as "entries must be competitive", and the concept that languages are incomparable helps to clarify that this doesn't automatically disqualify more verbose languages from code golf. (I suspect that you're thinking of suggesting a change to this rule, but I won't preempt).

3. I think it may also be used from time to time to justify not selecting an accepted answer. When the shortest answer is a one-byte built-in then IMO the question is poor, but some people have different attitudes or don't realise what built-ins exist and yet don't want to reward a 'no-effort" answer over one which took a lot of effort.

• i agree with all but the third point. there should be no such burden of knowledge on challenge writers – tuskiomi Jan 31 at 8:27
• I'm not sure I follow you. The thing you say you disagree with is my comment on why that point should be irrelevant, not the point itself. (FWIW I don't agree with the point. I record it as an observation, but I think that in an ideal world it would be completely irrelevant). – Peter Taylor Jan 31 at 8:44

# Competitiveness does matter

Anyone with a half-decent answer is never challenged.

Incorrect. If it's decent but not at the level of "very good", generally people will comment improvements, or (rarely) submit their own if they use a significantly different approach. Just because they don't have their own answer does not mean they aren't competing.

then by extension almost everyone is a winner

Incorrect, see above. Anyone that contributes to the best solution, or even comes up with an identical solution, is a winner. It's just that the Stack Exchange system is not the best indicator of this.

and also one answer for each language

For easier challenges, there is generally only one approach. For harder challenges, very, very few people attempt it because of the sheer amount of effort involved. Also keep in mind that certain people enjoy certain types of questions - and challenges are generally very different, and generally require different tools/methods/a different way of thinking to golf.

Furthermore, consider the sheer number of languages of the submissions. PPCG is a relatively (very) small Stack Exchange community, and I'd say the number of active users is only several times larger than the number of active languages. Considering the fact that not everyone will attempt every challenge, I doubt there are more than a few people who golf in a certain language that look at any given question.

• you don't really refute the everyone is a winner point. you even add more people to the pool and tell me I'm wrong because the number of winners is bigger than i thought.. – tuskiomi Jan 31 at 9:13
• @tuskiomi Of course, the question you're asking is "does competitiveness matter"... it can still matter and everyone can be a winner – ASCII-only Jan 31 at 10:49
• no, the question is "why does competitiveness matter" – tuskiomi Feb 1 at 3:02