CPFAQ: Is Competitive Programming Only For Smart People?

Einstein

I’m working on a project this year to build a competitive programming FAQ. This is one in a series of articles describing the research, writing, and tool creation process. To read the whole series, see my CPFAQ category page.

It’s fun to debate the nature vs. nurture / intelligence vs. effort question. Years ago, I started this blog with a post on that subject. In Quora’s competitive programming topic, people have found a multitude of ways to ask Is competitive programming only for smart people? I found the most interesting answers in a question with this unwieldy title:

Can an average IQ person with no competitive programming experience reach Brian Bi’s level in C++ and competitive programming one day just by hard work?

« Continue »

CPFAQ: Will Competitive Programming Success Help Me Get a Programming Job?

Coder

I’m working on a project this year to build a competitive programming FAQ. This is one in a series of articles describing the research, writing, and tool creation process. To read the whole series, see my CPFAQ category page.

Although Quora is by far the most popular venue for competitive programming Q&A, questions do sometimes pop up on other sites. On Stack Overflow, competitive programming questions typically get downvoted and deleted in short order. Reddit has more lenient policies and allows questions to stay up even if users have asked them repeatedly in the past. Here’s one that appeared last week on the CSCareerQuestions subreddit:

Competitive programming, worth dedicating time to it or not?

Do employers value competitive programming at all?

Although the question didn’t get a huge amount of attention — after a few days, it has just three upvotes — the responses covered a range of opinions similar to those expressed on Quora when people ask similar questions there.

« Continue »

CPFAQ: The Quora Approach to Quality Control

Inspector

I’m working on a project this year to build a competitive programming FAQ. This is one in a series of articles describing the research, writing, and tool creation process. To read the whole series, see my CPFAQ category page.

Every website that gets its content from its users has to deal with the problem of quality control. It’s not enough just to ask people to write words and publish everything you get. With that approach, low-quality garbage easily overwhelms useful writing. The most successful websites in this space have come up with unique ways to ensure that their content is worth reading.

« Continue »

CPFAQ: Making a Wiki Look Like Wikipedia

Lua

I’m working on a project this year to build a competitive programming FAQ. This is one in a series of articles describing the research, writing, and tool creation process. To read the whole series, see my CPFAQ category page.

I mentioned last week that I was creating a glossary of competitive programming terms, in the format used by glossaries on Wikipedia. This week, I made the necessary changes to CPWiki to properly render the glossary.

« Continue »

CPFAQ: Defining Competitive Programming Terms

Dictionary

I’m working on a project this year to build a competitive programming FAQ. This is one in a series of articles describing the research, writing, and tool creation process. To read the whole series, see my CPFAQ category page.

It would be useful to have a page in the FAQ for a glossary of competitive programming terms. The Q&A part of the FAQ and the associated wiki discuss terms in detail, but a glossary provides an easy way to look up short definitions of terms that appear in questions and answers. This week, I started to collect a list of terms.

« Continue »

CPFAQ: Unicode in Quora Question Titles

Quotation Marks

I’m working on a project this year to build a competitive programming FAQ. This is one in a series of articles describing the research, writing, and tool creation process. To read the whole series, see my CPFAQ category page.

As I have mentioned in the past, I often use Excel as a quick way to manipulate tables of data, even when that data doesn’t involve numbers and formulas. My Quora tools output data in TSV format, which is easy to import into Excel. But I noticed when importing those files that some question titles have strange characters mixed in with the valid ones, due to an encoding issue. I have been ignoring it until now, but I’d like to fix it.

« Continue »

CPFAQ: Multi-Question Questions

Multiple Shreks

I’m working on a project this year to build a competitive programming FAQ. This is one in a series of articles describing the research, writing, and tool creation process. To read the whole series, see my CPFAQ category page.

When you’re logged into Quora, there’s a link at the top of your question feed that says: “What is your question?” Some people interpret this to mean: “What are your questions?” So we end up with questions like this one: What is ACM-ICPC? Is it necessary to have a team to participate in ACM?

As with most simple questions, the two sub-questions that make up this question have been asked repeatedly on Quora. For example:

So it would be useful to use question merging to clean things up. But we can’t merge one question into two separate questions. Quora policy in this situation suggests choosing the more specific question as a merge target. In this example, that would be the second sub-question, Is it necessary to have a team to participate in ACM? But this is a compromise. There will be a mismatch between the merged question and the answers, since some of the answers will address both sub-questions.

Having seen many of these multi-question questions in the CPFAQ question set, I decided to analyze my question title data to find out more about them.

« Continue »

CPFAQ: Quora Merge Tracker

Merge

I’m working on a project this year to build a competitive programming FAQ. This is one in a series of articles describing the research, writing, and tool creation process. To read the whole series, see my CPFAQ category page.

The Competitive Programming topic on Quora, and related topics, contain thousands of examples of what people want to know about that subject. So it’s the definitive source for deciding what qualifies as a frequently asked question for CPFAQ. But many of these questions are duplicates, which makes it difficult to find the best answers to a question. As I mentioned last week, I have a process for merging some of these duplicates, but Quora automation often works against the process, despite Quora’s stated opposition to duplicate questions. This week, I worked on a basic tool to help me keep track of merges.

« Continue »

CPFAQ: Merging Questions, Part 2

Merge

I’m working on a project this year to build a competitive programming FAQ. This is one in a series of articles describing the research, writing, and tool creation process. To read the whole series, see my CPFAQ category page.

One result of classifying many Quora questions is finding many duplicates. Quora knows about this and provides a Merge function. But as I have written about before, there’s also a content review bot that unmerges questions it thinks are not similar enough. I did some more investigation into this bot’s behavior, which I’ll describe this week.

« Continue »