Блог пользователя Ari

Автор Ari, история, 3 года назад, По-английски

TL;DR: The most reasonable solution to the problems vs. questions debate is to use none of the currently accepted terms.

As we have seen many times, particularly over the past few days, the task of assigning a label to the activities we perform as competitive programmers is a bigger problem than one might think at first. Time and time again we have seen people questioning what we should call our activities, often to the point of eliciting some rather harsh responses.

To give some context to this discussion, I will focus on two of the terms that members of the community have adopted over the years, problems and questions. (Sorry task lovers! You have some fine points for sure, we frequently talk about subtasks rather than subproblems or subquestions after all :P). All quotations here are posted anonymously, but if you want to claim ownership of one of them or have one removed, just tell me. If you are familiar with the arguments, feel free to skip to the final section of the blog.

The semantic argument

Cause question is just a wrong word for describing algorithmic problems. Question is meant to be shorter and in some sense more lightweight like "could you pass me the salt?" or "why is the sky blue?". When you are given whole story and presented a convoluted statement "problem" or "task" seem much more appropriate and serious and everybody except Indians recognizes that difference. It's not like it is fundamentally wrong, but it somehow feels worse

Quiz sounds like something that can contain questions, because you can answer them. There can exist even algorithmic questions like “what’s the complexity of Dijkstra algorithm?” but problems request something like “write a code which solves this problem”. There is even a difference between “solve this problem” and “how would you solve this problem?”, where the first one is a request and the second one is a question. On a quiz you can give an answer to a question, but on a contest you would rather call it a solution than an answer.

2 synonymous words do not need to have the exact same meaning. It's true that "problem" and "question" both test knowledge. But "problem", especially in competitive programming, also tests skill, and "question" does not.

The gist of this argument is that the terms "problem" and "task" refer to a significantly more complex pursuit than the word "question", which makes them more suited to the complex intellectual pursuit of solving algorithmic problems. Even though language is highly dependent on the context in which it is used, and I personally believe that dictionaries and the like should be descriptive rather than prescriptive, here are some dictionary definitions (from Merriam-Webster) to give context to this argument.

I believe the definitions closest to what we are looking for are 1a and 1b.

Here I believe the first definition is the one we are looking for.

There is another different semantic argument, which I admittedly was not familiar with until yesterday, which is about how the words we use sound in the context of full sentences. One part of this is simple. If you were presented with the blanks "_____ problems", "_____ tasks", and "_____ questions", you would likely come to something similar to "solve problems", "complete tasks", and "answer questions". As "solving" is most similar to what we consider we do in competitive programming, it might seem more correct. The second part of this is a bit more subtle. Consider the sentences

Codeforces has 6651 problems

Codeforces [problemset] has a lot of problems

This is a perfectly normal assertion for a competitive programmer, and yet to an outside observer, it can be interpreted as saying that Codeforces is an extremely flawed website with an inadequate problemset. Point is, the other meanings associated to words matter, and for something like this the word "question" does not carry the negative connotation that "problem" does.

The racial argument

The first screenshot is enough. "question" instead of "problem" or "task" — Indian detected.

Wat? No, it doesn’t work like that. People do grammar mistakes, but I’ve noticed that this one is made mostly by Indians.

I'm American, and I say "problems". However, it's my impression that "questions" is a common term in much of the Indian competitive programming community, and I don't think it's right for a high-rated, influential member of our community to use their platform to constantly point it out and make fun of it. Indian English is different from American English or British English, but it's just that -- different, not wrong.

There is another angle to this question, which is a significantly bigger problem, and as unfortunate as it is, the task of describing the context of this debate would not be complete without discussing it. It is no secret that many members of this community are heavily biased against members from India (see blog posts such as this and this).

Why does this happen? Well, the use of terms such as questions instead of problems, or other terms such as giving or writing a contest is one of many stereotypes associated with competitive programmers from India, the majority of which are negative and perpetuated by the constant mention of them by members of the community. Even if one doesn't have extensive knowledge of the community it takes no more than a few simple google searches to realize how overwhelming the distaste towards Indian users in particular is.

One may argue that pointing out the use of "questions" instead of another term is not racist, as the distaste doesn't come from any particular race or nationality. However, context matters, and the mention of such terms as "Indian English", combined with the generalized distaste towards the Indian community gives additional meaning to such callouts, which is not reasonable to ignore.

The solution

Luckily, the English language is vast, and we don't need to restrict ourselves to one or two words. Let's take a look at theasaurus to try to find some other terminology that we can use. When I search "problem" and look at the relevant meaning, I get the following terms:

There are many great terms in here (man, that twister sure was difficult!). But of all of these, I believe the first one listed, bugaboo to be the best. Here is my analysis of this term:

Pros

  1. The word itself sounds extremely funny.
  2. According to theasaurus, it is one of the most relevant synonyms of "problem".
  3. Moreover, if you look the word up in more traditional dictionaries, you will find multiple definitions which range from being completely unrelated, to nonsense, to straight-up contradictory. This is to say that very few people know what the word means, thus freeing us from any associations such as problems being complex and questions being simple or whatever.
  4. The word is very uncommon, which means it is very unlikely for users from either native English or international communities to know the word, freeing it from racial associations.
  5. It's just really funny lol. "I solved four bugaboos last round".

Cons

None whatsoever.

So yeah, that's it, by adopting a different term, we can free ourselves from this seemingly endless debate and use the time we save to be happier instead. Of course, I don't expect the community to adopt this term soon, or ever, but for those of you willing to join me, I look forward to solving a lot of bugaboos with you in the upcoming rounds!

Thanks for reading, and remember, your waifu is real and she loves you.

  • Проголосовать: нравится
  • +1178
  • Проголосовать: не нравится

»
3 года назад, # |
  Проголосовать: нравится +18 Проголосовать: не нравится

It's dreadful what little things lead people to misunderstand each other.

  • »
    »
    3 года назад, # ^ |
      Проголосовать: нравится +10 Проголосовать: не нравится

    Well if a community that is supposed to be "backwards" and have had a long history of oppression somehow finds its voice to say that it feels uncomfortable for being belittled just because they have had their own way of saying things in English is "dreadful", then so be it.

»
3 года назад, # |
  Проголосовать: нравится +213 Проголосовать: не нравится

downvoted because of anime propaganda

»
3 года назад, # |
  Проголосовать: нравится +96 Проголосовать: не нравится

I'll go with "sixty-four thousand dollar question" from now on, thanks.

»
3 года назад, # |
Rev. 3   Проголосовать: нравится +152 Проголосовать: не нравится

My vote is also for bugaboo.

Just imagine an official announcement

"This round will have 5 bugaboo."

  • »
    »
    3 года назад, # ^ |
      Проголосовать: нравится +5 Проголосовать: не нравится

    If we start using the word bugaboo, we must make sure we use the correct plural form directly from the start. Otherwise we will be stuck with people incorrectly pluralizing it forever. According to Oxford Languages, the plural of "bugaboo" is "bugaboos".

»
3 года назад, # |
Rev. 4   Проголосовать: нравится +148 Проголосовать: не нравится
Spoiler
»
3 года назад, # |
  Проголосовать: нравится +320 Проголосовать: не нравится

As a bugaboosetter, I approve this message.

»
3 года назад, # |
  Проголосовать: нравится +108 Проголосовать: не нравится

Imagine when Codeforces does change the term into bugaboo, like, for example, April 1st.

»
3 года назад, # |
  Проголосовать: нравится +48 Проголосовать: не нравится

This really made my day.

Imagine the looks on the faces of recruiters when putting that on your CV: "I am great at solving bugaboos"

»
3 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Can someone help me in solving this bugaboo?

»
3 года назад, # |
  Проголосовать: нравится +77 Проголосовать: не нравится

name of the waifu?

»
3 года назад, # |
  Проголосовать: нравится +175 Проголосовать: не нравится

I don't think it's about technical correctness. First of all, there are arguments for using "problems" (like if a questionnaire consists of questions then a problemset consists of problems) and for using "questions" (like a question is by definition a generalized problem and is therefore also a proper term). Second, there are many more mistakes one can do; for example, I can miss article and many people will notice this, but I doubt anyone will ever mention it.

I also don't think that it's about racism, but it's closer to the essence of the phenomenon. This whole question/problem thing is all about annoying people. So why are people so irritated by "questions"?

Of course, "because these commenters are stoopid indians" is hardly an answer. I'm pretty sure that not only don't people seriously think something like that, they probably also don't feel this way. Yes, there certainly are racists everywhere, and it's not a good thing, but in this case, I think, it's about indicators which put tags onto people. Using questions instead of problems. Being gray. Having an anime profile pic. Using orz. Necroposting. Mentioning nutellas without a proper reason. Editing their own comments 9 times to something neutral because the first revision got a lot of dislikes. Insert yours.

These indicators are not always rational -- clearly, there are a lot of smart and nice people who watch anime. Sometimes these indicators may actually (with high statistical probability) mean something. But, as Mateusz said:

I've noticed it observing all the top people on Codeforces/Atcoder. None of them uses the word "question" instead of "problem"/"task".

Once one notices such correlations, this instantly leads to a logical implication: uses question => likely not a top competitor. Probably Indian, if this tendency is also observed. Or because of stereotypes, or for any other reason. Probably also starts sentences with lower case, puts spaces before commas and doesn't finish with a dot. But our mind doesn't work like this, and we don't remember that, w.h.p. the commenter is from India and not very high rated and is not Shakespeare, but what is left is just something negative, and we are irritated.

And it wouldn't become such a meme if not because of tendency. I, for myself, really hate these orz threads, especially if the left hand side of orz is a mentioned person. And if I ask myself why, I'll probably answer something like "because you think that there is something interesting in this hot live thread, and there is a chain of orz's", or "because they mention all these people", or "because they orz to orz and not to express actual respect", or come up with other logical reasons. But it'll only explain why I don't like it, and why I'm irritated is (no matter how much I want to say "because they are fucking stupid spammers I hate them") actually because once this army (of people I haven't ever read anything useful from -- negative property) overforced this meme a little too much, and this remained in my brain as a statistical fact.

And then people who use "questions" feel offended, and they reply in anger, and then they receive an answer that, of course, nobody states that all Indians are useless and stupid, and that the initial idea was an innocent fact that nobody from the top was observed using questions, and then there are accusations of racism, and ratism, and why questions is incorrect, and why questions is correct, and then the Jerry Springer show begins. Because one group of people tells the other how they feel, and the other group responds with counter-arguments why the first group is wrong (as if they shared their thoughts and not feelings).

Long story short. I don't claim that there is no racism on CF. I don't claim that the majority of Indians will probably achieve nothing in competitive programming. I also don't claim the opposite of this. I don't claim anything, in general, about any group of people, be they Indians, low-rated, high-rated, negative-contribution, orz-ers and so on. All I did is shared my thoughts on the nature of the whole question-problem argument. And probably I'm wrong.

»
3 года назад, # |
  Проголосовать: нравится +156 Проголосовать: не нравится

While we're at it, let's solve the Solution vs Answer debate also, it's causing bugaboos to a lot of people.

  • »
    »
    3 года назад, # ^ |
      Проголосовать: нравится +21 Проголосовать: не нравится

    Screenshot-20210527102214-1920x1080

    In order to match the uniqueness of "bugaboo", how bout choosing "retort". Sounds so cool when you say to friend, ye homie, I think your retort to this bugaboo is wrong. :clown:

    • »
      »
      »
      3 года назад, # ^ |
        Проголосовать: нравится +16 Проголосовать: не нравится

      Your friend checks whether you have a fever or something ^_^ (If he doesn't know about bugaboo vs bugaboo debate)

»
3 года назад, # |
  Проголосовать: нравится +16 Проголосовать: не нравится

sauce?

»
3 года назад, # |
Rev. 3   Проголосовать: нравится -44 Проголосовать: не нравится

*war between problem, question, and task exist

*nobody...

*absolutely nobody...

*not even a single soul...

a weeb that say waifu is real : BUGABOO!

problem, question, and task : understandable have a good day

»
3 года назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Currently Me!

»
3 года назад, # |
  Проголосовать: нравится -6 Проголосовать: не нравится

Alternative to the word problem is "query."

I am solving a query.

»
3 года назад, # |
  Проголосовать: нравится +29 Проголосовать: не нравится

Or we could use the word "sixty-four thousand dollar question" so that everyone feels like they're so rich =))

Statistics:

  • tenkei would be the richest person at 403.648.000 dollars.
  • Vjudge and Luogu would be the richest "companies" in the Codeforces universe, with each got a revenue of around 1.6 to 2 billion dollars:

  • »
    »
    3 года назад, # ^ |
      Проголосовать: нравится +23 Проголосовать: не нравится

    Or we could use the word "sixty-four thousand and one dollar question" so that everyone feels even more rich.

    • »
      »
      »
      3 года назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      Or we could use the word "one million dollar question" so that everyone feels like they are the winner, not just failing the last bugaboo of Who wants to be a millionaire and only come home with sixty-four thousand (and one) dollar :))

»
3 года назад, # |
  Проголосовать: нравится +107 Проголосовать: не нравится

Ari won

hint
»
3 года назад, # |
  Проголосовать: нравится +25 Проголосовать: не нравится

Bugabooset mission passed successfully respect!!

»
3 года назад, # |
  Проголосовать: нравится +171 Проголосовать: не нравится

Is this April 1st?

»
3 года назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится
»
3 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

ARI orz

»
3 года назад, # |
  Проголосовать: нравится +4 Проголосовать: не нравится

Just contributing some information here .

»
3 года назад, # |
  Проголосовать: нравится +23 Проголосовать: не нравится

commenting to be a part of history :)

»
3 года назад, # |
  Проголосовать: нравится +21 Проголосовать: не нравится

Imagine getting asked what a "bugaboo" is while you're trying to explain what Codeforces is during an interview

  • »
    »
    3 года назад, # ^ |
      Проголосовать: нравится +32 Проголосовать: не нравится

    Me: Let me explain. It's like something you don't have an answer. So you're trying to find the answer.

    Interviewer: You mean a Question/problem?

    Me: No you can't use those words. That's racist.

»
3 года назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Pople who have not read this blog will be shocked after seeing bugaboo everywhere !! Bugaboo orz

»
3 года назад, # |
Rev. 4   Проголосовать: нравится -15 Проголосовать: не нравится

Why not enigmas or mind bogglers?

»
3 года назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится

While I can't argue that bugaboo is perfect, why not "puzzle"?

»
3 года назад, # |
  Проголосовать: нравится -7 Проголосовать: не нравится

why did it change back to PROBLEMSET again :(

»
4 месяца назад, # |
Rev. 2   Проголосовать: нравится -9 Проголосовать: не нравится

Some more suggestions