How to improve the competitive programming scenario in India

Ok so lets first divide the people doing CP in India in broadly two categories :

  1. College Students
  2. School Students (Very Few at present)

Lets me talk about college students which form the majority of the class of people doing CP in India. Let me tabulate the possible incentives for a college student to do CP.They are as follows :

  1. Getting a job at google,facebook,amazon etc. and other prestigious companies: However abstract it may seem it is one of the biggest reasons for most college students to do CP. So naturally when it is your biggest reason you only aim at getting an internship/job offer which you might/might not get in your 3rd or 4th year and after that they tend to loose interest from CP. So this incentive is not enough to raise your level after a certain point.

  2. Very few onsite competitions (ICPC/Snackdown/TCO etc. and related onsite competitions) : Ok so this is also an incentive for college students in India to do CP and aim for ICPC(let us take ICPC first) but most of them only target reaching the regionals and not ahead of that plus those who target reaching world finals also only target reaching there…performing there and getting a good rank is something which nobody thinks about.Plus ICPC happens only once an year and hence its excitement is at max for about 30-40 days before the online round(for majority of participants) .Plus the other onsite competetions (There are very few) and they also tend to invite only a very few Indian teams (like in Snackdown very few indian teams are invited for onsites). Beleive it or not but it is a very significant reason- Very few onsite competitions. So the frequency of onsite competitions should be increased by a significant amount and also it will help in spreading the awareness about the essence of CP. Maybe some other onsites may be introduced.

1 Like

@lebron is this the reason https://www.quora.com/Why-do-a-lot-of-successful-competitive-programmers-not-participate-actively-on-CodeChef-but-participate-often-on-sites-like-TopCoder-and-Codeforces

Yep; that describes my subjective point of view - on one hand, I may be wrong about some stuff on that list; on the other hand - I already understand that I even missed a few more points there; and since I got several people messaging me with “You just wrote down what everybody had in mind but didn’t want to say” I believe I got it mostly correct.

2 Likes

I think training is the key word here, and training not just for ICPC but also for science Olympiads. I guess some of the high rated programmers are medallist in some science Olympiads. I read some blogs on CodeForces where some people mentioned that transitioning to CP(competitive programming) after preparing for math Olympiad for several years was easy.

I dont want every school going student to participate in CP(as the curriculum is very bulky in india) but they all can at least have a strong foundation in maths before trying CP, and they can have it by preparing for Olympiads.

2 Likes

Yes, it seems that one reason is that strong math background itself is really, really helpful in CP, and other reason is that having general experience with spending a lot of time on preparation to competition (it may be some other discipline, not even math) often leads to having better self-discipline and being more hardworking during training for CP.

2 Likes

There are very less 7 starer people from india on codechef(i guess 5), we need to increase that rapidly . I mean imagine the situation we have almost 100 people who are 7 starer.There would be a cut throat competition.And in that case even our 7 starer people will try to become better and better.And ultimately coding culture will evolve.So, now the thing comes to ,how
We will make more 7 starer .I am 4 starer and i know the topics which i have to learn like dp ,game theory etc but i am not able to learn them .i have tried to ,but still i was not able to learn .So,what i want is you guys teach us something like a topic and give us a question related on it with 2 or 3 days time , and slowly we all would become better.Also ICPC contest is a team contest and it would be superb if we could have a contest monthly or 2 team contest in a month .And i can guarantee you team contest will have max participation.
Thanks for adressing the issue.

Well, 7 stars arent manufactured somewhere that we can increase that rapidly lol XD

In a cut throat competition, yes your point stands that 7 star people will work hard. But I think thats it :confused: . It may not be the best/most-efficient step for helping to 5 and 6 stars to be 7 stars.

Regarding latter half of your answer,I will say it illustrates the fault in thinking of majority of coders. Let me ask-

“WHY ARE YOU WAITING TO BE SPOONFED?” Internet,resources,everything is at your hand! Look, we can provide the spark to set the fire, after that its on you. We cannot,and SHOULD not, spoonfeed

1 Like

@o_0 , think a little more on your suggestion. There are many downsides of it as well, and it further promotes the issue of “Losing motivation.” And as I said, I dont see it affecting bulk in any way. We have to take steps so that more people are well versed with CP, there are more good coders from country- for this we need something which affects the bulk. I hope my point came across clearly, thanks! :slight_smile:

@taran_1407-Blaming the education system that much isnt correct, and not productive in my opinion (since we cannot do anything about that). They feel schools should focus of development side of CS (teaching things like Word, Excel in detail for future use, focusing on principle of OOPS in programming etc) and are not wrong in holding those views either. They are just different from ours.

Ultimately the main factors are awarenesss and incentive. If you didnt know arrays till class 12th,then we should treat it as awareness issue than education system. They cant include everything in syllabus

From @lebron 's answer, I think one of the major difference is interaction of people with top coders, and frequency of camps. While I dont know exact number of camps held per year, I can definitely say that they arent much in frequency- and if they are- then again, awareness issue is grave here.

Basically increasing rewards. Yes, the points you said are valid.Not sure to what degree they are implementable, but the concerns are worth addressing.

On site competitions face some issues. Like, proper arrangements for venue, some candidates not coming due to high travelling costs etc.

And we cant say “There arent enough contests held” as well. Join enough number of sites, theres a contest going on at one site or other 85% of time.

The issue boils down to, again, we can only spoonfeed you that much. After that if you lose motivation, or loce incentive, then we cannot do much about it.

Like, in your argument- why are you favoring onsite contest over online ones? One contest or other keeps happening, but not many will participate diligently. Thats the problem. We can provide spark for fire, but thats it.

@lebron okay I may have exaggerated but I only said this because that’s what I heard from other top coders. But still the amount of awareness and enthusiasm about CP in Russia is much greater than in India.

Onsite contests tend to boost motivation much more. Also for a lot of onsite competitions there are usually sponsors covering travel expenses for finalists (at least up to some extend) - so if you manage to organize it this way, it should be really nice.

4 Likes

And regarding reasons for better motivation - well-organized onsite competition is a way to spend time nice, to meet new people etc., there are lots of small pros on this side. Like, what sounds better - “I did CodeChef contest with tourist! And 5 thousand other guys…” or “I was at SnackDown, and I saw tourist himself there”? In countries like Russia top contestants are active part of community, so it’s not a big deal meeting/talking to tourist or Petr etc. even when you are not so strong.

3 Likes

Yeah, it probably was an awareness issue, but don’t you think that the awareness issue is the major roadblock for CP in India? I don’t blame education system at all, but want to convey that the very idea to improve the lower bound of competitive programming would be to create awareness. Maybe holding quaterly contests with prizes, recognition can do the trick. If education system doesn’t include CP, then we have to attract people to CP. No one’s gonna wake up by himself and start doing coding.

The way is to induce people to code :slight_smile:

2 Likes

Yes, I agree with those points. Interaction is bound to have a good effect. Yes, sponsered ones should be feasible for codechef as well. Lets see, I think they can do something in this field.

Yes thats why I explicitly mentioned onsites. There is a way big difference between an online and an onsite in terms of incentive to participate. Plus there are a lot of onsites happening (agreed) but almost all of them are restricted to participation only from that particular instituion.If they are sponsored well and conducted at some good level then it is bound to become popular and will definitely be a boost for all the coders.

Maybe Codechef can coordinate with some of the colleges to make their annual coding contest a national(or state) affair.It will result in bringing all the good coders of that region under one roof and will really be a good incentive for all the coders out there.

Being a college student(I am from NSIT btw) and having organised the annual coding contest of my college I feel the enthusiasm with which the people come for onsite is way greater than that for an online contest (For ex the coding contest of our college was scheduled for 9AM and yet all the good coders of college came to participate.Instead had it been a codeforces div2 or cookoff not these many people would have given that).But again most of the participants were from the instituion itself.