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

Автор Errichto, 6 лет назад, По-английски

Which one should we use?

Competitive Programming is used more often but it has stupid abbreviation (Cerebral Palsy and Child Pornography). Some Youtube accounts about Pokemon Go were actually banned for using that because of Combat Points. Here you can read things like "My Club Penguin video had been flagged for sexual content". This also means it isn't cool to write "I'm addicted to CP" in any social media. Urban Dictionary says that SP means Sex Party, but I don't think it's common and at least it isn't something shameful/harmful.

I think the Polish term is "programowanie sportowe" (sports programming) but sometimes we just say English words "competitive programming". The Russian say "Спортивное программирование" (sports programming), in Portuguese it is "Maratona de Programação" (programming marathon). What do you say in your language? In particular, I would like to hear native speakers to state their opinion.

And Sports Programming is arguably cooler.

I'm asking because I want to make videos like "What is Competitive Programming?" and "How to start with ...", "TOP FIVE BEST COMPETITIVE PROGRAMMING PLATFORMS OF 2019, YOU WON'T BELIEVE NUMBER 4" etc. If we prefer Sports Programming, I will use it instead.

EDIT: A huge argument for CP is ofc. that we use it like 99% of time. There are some single occurrences of SP, e.g. "The ICPC is the world’s premiere university sports programming competition" on the ICPC 2019 website, but it's a minority.

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

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

Upvote for Competitive Programming.

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

Upvote for Sports Programming.

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

Downvote to keep Radewoosh at top1 of top contributors.

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

One argument against sports programming can be made saying that this isn't a "sport".

Don't get me wrong, I think this is a sport, just like e-sports. But perhaps some people might care that others do not think this is a sport.

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

    I think calling it a sport (just like chess) can only help in getting more people interested in that, or getting companies to sponsor contests.

    Or maybe not, I hope to see a lot of discussion under this blog.

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

      I think calling it a sport (just like chess) can only help in getting more people interested in that, or getting companies to sponsor contests.

      I agree, my vote goes for Sports Programming.

    • »
      »
      »
      6 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится +19 Проголосовать: не нравится

      I've heard that the chess community also faces incredulity when referring to chess as a sport. Wikipedia has this page: https://en.wikipedia.org/wiki/Mind_sport, but I've never heard anyone say the phrase "mind sport" in real life.

      The acronym "CP" is unfortunate. To get around it, I usually abbreviate it as PC, for programming contests. Unfortunately that has a lot of other name collisions (personal computer, political correctness, etc.)

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

        In Brazil there are a lot of close-minded (?) people that argue against calling chess or e-sports in general a sport.

        This however is not a problem for the growth of e-sports in the country, the biggest sports tv network has been transmitting e-sports gaming for a while now.

        Calling it sports programming could help shed some visibility for us and attract newcomers.

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

          Sports programming is misleading because it's not really a sport. A sport is supposed to be brutal and easy to understand. That's why it attracts spectators and fame and sponsors: "Wow, that ball just flew into the goal", "Oh man, that guy looks like he might be dead after that tackle". Yeah, it takes a ton of effort to become the best, but for a viewer it's easy to understand and see how an athlete's amazing skill and practice translates to results.

          On the other hand, competitive programming is nearly impossible to understand, unless you're at a high enough level to tell how top contestants are solving problems. And the most intense thing that can come out of cp is basically "Dang, he submitted with 18 seconds left".

          (In my opinion chess used to not be a sport, but now that any random patzer can boot up stockfish and say "hah, this GM's move just lost him 30 centipawns, he's destined to lose now" while the twitch chat goes wild, it's more accessible and sportlike.)

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

            That is indeed a valid point that I've never seen before.

            All successful e-sports are very easy to watch and understand.

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

            Marketing doesn’t need to be accurate

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

              You're right. In terms of marketing, to me competitive programming sounds way cooler than sports programming.

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

            A sport is supposed to be brutal and easy to understand.

            No it is not. Let's look at the olympic weightlifting for example. It is neither brutal, nor easy to understand. Yes, you can see whether a competitor managed to lift the weight, but you don't really understand how difficult it was to snatch 200kg if you can't even squat half of it. Same in here, you can see whether a contestant's solution got accepted or not, but if you are not familiar with the field, you have no idea whether it was difficult to achieve, or not.

            Competitive/sports programming probably isn't going to attract spectators. But truth is olympic weightlifting, powerlifting and crossfit never managed to be a "let's watch this!" popular (only strongmen competitions get some views) and still, more and more people go to gyms and lift something.

            Because programming and lifting are more than sports — they are lifestyles. Some people compete, some not. Some guys' motivation is just to have a huuuuge rating, some want to win the ICPC, others simply want to be better than their friends and almost everyone hates doing geometry.

            But let's be honest, most of guys visiting the gym just want to get that sweet ass coding job in their favourite tech company.

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

              It seems like the struggle to lift 200kg is intense and brutal, no? And it is easy to understand that the lifter has performed a monumental feat of strength; anyone can see a man lifting a huge weight and think "wow, he is really strong!". It is something that is naturally awe-inspiring because it is a physical task.

              Someone getting AC on a tough problem in half an hour is extremely disconnected from the viewer. Even people who are competitors will probably think "yeah, neat, ok". Of course, top competitors can be equally awe-inspiring, but that requires a much more personal and up-close experience of genius, as opposed to watching some dudes code for 20 minutes and get a green Accepted.

              Eating healthily is a lifestyle but it is not a sport. Neither is competitive programming.

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

        lol our chinese school had mind sports so it's a legit thing. i don't know how accepted it is though

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

We simply use "Olympiad" in Turkey even after high school. IMHO it's really hard to change your habits. We're just getting started to call it Competitive Programming.

Anyway, I'm not sure if this is really up to us. "Competitive Programming" is highly used in communities and also in Wikipedia and books.

But yeah, we should find a solution to the abbreviation.

(I'm red again after a long period so writing unnecessary comments in general.)

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

Sports programming sounds cooler though

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

I've recently started referring to it as "sports programming", particularly when talking to people who have no idea what it is. "Sports programming" seems to better convey the sense of competition (ironically), the timed aspect and the pressure during competition, whereas "competitive programming" is much more ambiguous.

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

In brazilian portuguese is very common to call "Maratona de Programação" (programming marathon) when talking about the ACM-ICPC exam itself. "I'm studying for the programming marathon", for example.

But when we talk about what we do, generally we speak "Programação competitiva" (competitive Programming) too.

By the way i also think that Sports Programming is better =D

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

So the two arguments you have for sports programming over competitive programming are the acronym and that it sounds cooler?

First, if you say something like "I'm making a CP video," I would think it's a Club Penguin video, and I do competitive programming all the time. Saying "I'm making an SP video" is no better. Someone who doesn't know what you're talking about won't know the acronym; You'll have to say the full thing. Someone who does know what they're talking about won't mistake your acronym for something it's not, so it's pretty pointless.

And we competitive programmers aren't cool. Rebranding us would be dishonest and false advertising.

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

    What made U convinced that sports programmers arent cool?

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

      The point is this isn't a real counterargument, because I'm responding to an argument that's not real. But it seems you all are treating both like real arguments.

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

    And we competitive programmers aren't cool. Rebranding us would be dishonest and false advertising.

    Perhaps you'd like a little dose of self-esteem? I don't know about you but some friends from sports programming and I are very cool

  • »
    »
    6 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +42 Проголосовать: не нравится

    The acronym thing is important. "I'm making a CP video" is much worse than "I'm making a SP video" and it's about the other meaning.

    Someone who doesn't know what you're talking about won't know the acronym

    It's bad if they will think it's something else that isn't legal.

    I don't use an acronym expecting random people to understand. But it will still be read out of context from time to time.

    The other thing is how it sounds to other people and I wanted to hear the opinion of native speakers too. KieranHorgan says it conveys the meaning better and I agree — I would use it when explaining the whole thing to a friend.

    The name and its meaning+coolness might affect things like sponsorship. It's sometimes hard to get funds to go to a camp. Companies don't want to just give money to random people. kostka thinks about creating a fund that would get money from companies and then support people going to contests or camps. Maybe companies would prefer to support Sports Programming Foundation rather than Competitive Programming Foundation? "Yeah, we want to advertise by being a patron of a sport about programming." This might be false/stupid, I don't know.

    EDIT: I think your comment is currently the best argument for leaving it as CP btw., even though I don't agree.

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

If my memory is correct, I heard that it's called "Problem Solving" in Korean. I like it because it's closer to what we really do. Maybe "Sports Problem Solving"?

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

    Although it does explain better what we really do, it doesn't look like an appealing name to me, we are programmers after all and we use code to solve problems, programming seems a better fit.

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

    While I like the sentiment, it sounds like we sit around trying to solve Sudoku puzzles quickly.

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

    They even abbreviate the term to "PS" (like Seoul National University's competitive programming group is called "SNUPS"). I had no idea when I heard PS for the first time.

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

    We call it PS. I only say CP when I talk with foreigners. Interesting to hear that it’s only for Korea.

    Possible reasons would be:

    • KAIST had a course named “Problem Solving” which is about ACM competition. It’s at least 20 years old, and it was quite influential in old times. (Unfortunately, in last fall we had a final course.) I suspect this is the origin.
    • Most PS activities revolve around an online judge called acmicpc.net, which is not very competitive (although we have ranking).

    Personally, I think it’s unclear why we should consider it as sports or competition. We just solve problems for own fun. Competitions are fun too, but they are fun cause we solve problems there.

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

I think that

  1. We cannot choose the one and only term for this right now. Many of my friends (and I) still call the international collegiate programming contest ACM, despite we know it's incorrect and the fact that ACM is not its sponsor anymore.

  2. Whatever you call your videos, it's quite clear and explicit what you mean.

  3. Yes, it'd be a pity to be banned for the use of cp abbreviation after similar precedents you are aware of, so better not use this abbreviation.

If you want to use an abbreviation of competitive programming, you may choose, for instance, c/p, cpr, cppr (don't try to concatenate first two letters of each word), but I still think it's unnecessary.

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

    But when you name a video or something bigger like a book/contest/foundation, you can promote the name/acronym. It will cause some people to use that name, especially if it's their first time hearing about SP/CP.

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

    (don't try to concatenate first two letters of each word)

    Indeed, one should concatenate first two letters of the first word and first three letters of the second word

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

The Japanese term is kyogi-puroguramingu..., I mean kyogi-programming. It literally means "competition programming" or "contest programming" or possibly "sport programming" (as the two languages differ vastly, I don't think there is an exact translation).

Meanwhile, as the term is too long, it is mostly abbreviated as kyopro. Everyone including some programming contest assistant tools or the Slack server name uses this term. I bet almost nobody will understand you when you say "CP" to mean competitive programming. They would think it's an abbreviation of computer or something.

Addition: "programming contest" is also abbreviated to procon (less commonly used than kyopro). But it has pros and cons, you know.

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

One of the major plus points of sticking to the conventional nomenclature is higher chances of appearing in SERP (search engine ranking position). You can use the terms interchangeably in the videos.

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

In Jordan we use "Competetive Programming" between us, and usually translate it to Arabic for non-programmers as "برمجة تنافسية" meaning the same.

However, "Sports Programming" would translate way better, "رياضة البرمجة" or "البرمجة الرياضية" is easier to undetatand for non-programmers and sounds way cooler.

The first translates as "The sport of programming". The other translates as "Sports programming".

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

Competitive Programming is used more often but it has stupid abbreviation

Less confusing now that Club Penguin shut down.

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

Algorithm Competition sounds miles better than any of the two.

Beside the awkward abberviation, everybody is a competitive programmer (be it in algorithms, machine learning, or competing to get a raise in his job) :P Being that Kaggle has more traffic than CF and its prize pool dwarves all the other coding contest, the word "algorithm" should be there somewhere in the abbreviation to distance ourselves from the large and rapidly growing ML competing community.

Sports programming just sounds lame, and explaining it to non competitors would make me cringe (no bro, I am an athlete with a keyboard, it's a sport).

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

    Algorithm competition sounds too abstract. Should one submit idea or pseudocode of algorithm? Shouldn't one implement it?

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

Let's make Errichto top1 of top contributors, he worth it.

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

Downvoted this article and all your replies, cause I think Blogewoosh rocks.

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

My favorite word in Finnish is "kisakoodaus" — it means "competitive coding".

In English, "competitive programming" is already established, but you can also use "programming contests" in many cases (like "I'm addicted to programming contests"). I think there is no need to use an abbreviation.

In funding applications etc., I would emphasize the learning part in competitive programming. Not "we will organize a camp for training competitive programming" but "we will organize a camp for learning problem solving and algorithms".

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

you know, I started the trend of using sp instead of cp.

But now I'm considering changing it to Algorithm Contests (the abbr AC is cool).

As you can see I'm always one step ahead of you Errichto :D

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

use CC="Competitive Coding". Problem Solved

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

    When I see the word "coding", I think of some 3 week bootcamp that teaches you how to write a for loop in javascript and claims you'll be on par with top programmers.

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

      Yeah I agree with you.

      But also I think "programming" has a similar sense but we don't think it like that maybe because we're part of competitiv programming community. I remember one of my friends told me the exact same thing you mentioned when I said competitive programming.

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

In my opinion, "sports programming" sounds a bit weird to me (maybe it's just because of my mother tongue).

Grammatically speaking, "sports programming" could refer to "the act of programming a sport", like scheduling a sportive event or something. That's because it's a noun + noun (sports + programming), whereas "competitive programming" is a adjective + noun; the equivalent would be "sportive programming", which sounds weird. I'm not an expert, I think that "sports programming" is not incorrect when replacing the idea behind competitive programming, sometimes a noun can act as an adjective (e.g. "history teacher"), but the other interpretation I mentioned is also possible. In Portuguese, "sports" always behaves as a noun and "sportive" always behaves as an adjective, maybe that's just why it sounds so strange to me.

My suggestion, by the way, is to simply use "competitive programming" and never abbreviate it. xD

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

Problem Solving Programming (PSP) ?

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

What should be the abbreviation for Dynamic Programming then. DP can be even more misleading then CP.

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

Let's brainstorm alternative abbrevations to CP? CompProg? ComProg? ComPro? ProCom?

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

.

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

How about this: Competitive Programming Sports?

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

CP = Competitive Programming

UP = Underage Pornography

Problem solved.

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

1 point to Errichto and he woud be the number one.

Hold the cam guys)

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

elmim

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

YouTube: Pewdiepie vs T-Series

Codeforces: Radewoosh vs Errichto

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

In Bengali, we say Programming Protizogita(Competitive Programming). But I always like to say Sports Programming.

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

Maybe just CMP or CPR?

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

In spanish we say "Programacion Competitiva" which is literally competitive programming. Sports programming would be something like "Programacion Deportiva" which would sound like you are trying to program something related to sports

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

:)

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

In Hindi, we call it "Placements ki tayyaari".

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

In China, we call it "算法竞赛" which means "Algorithmic Competition", or "信息学竞赛"/"信息学奥赛" which means "Olympiad in Informatics". High school students often use "OI" as the abbreviation, while university students use "ACM".

However, when chatting with foreigners, I use "CP" :)

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

How about Athletic Programming ?? At least AP doesn't stand for anything bad.

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

I know this is a very old post now but still can someone please let me know what to prefer Sports or Competitive? I upvote for Sports by the way. Sounds cool.