How to improve the competitive programming scenario in India

  • Competitiors from Russia, China excel in Competitive Programming because of their strong mathematical background right from the school days. And in India, people are mostly preparing for JEE and learning all the maths stuff during this time which is also not enough for CP.

  • Most students start CP after getting into college after the first or second semester.

  • Even if a student starts CP in school, he/she has the parental and peer pressure of preparing for JEE. There are not many colleges which admit students on the basis of programming skills.

  • When students think they are not improving, they get demotivated and start doing some projects etc and leave it.

  • Some people which continue doing CP are only doing it for high paying job and don’t enjoy it. These people then complain that they are not improving even when they are trying hard.

So only a few people remain who continue,enjoy and have achieved success in CP.

3 Likes

I got to know about coding stuff when i was in engineering 2nd year and didn’t like it coz i couldn’t understand many concepts and so left it within a year.I have read many codes from different users for different problems and also been active in community grups for learning.But couldn"t learn much. From past 2 years i have dedicated my time for coding and but i m still 1 star…rather than growth i had down fall from 3 star -> 1 star…I don’t know what to read or study extra to reach atlst 5 star…Can any1 guide me what actually is required to solve atlst 5 problems in codechef long challenge.As i read about @ 7_star lebron guy,he made it to this far.please guide me what to learn so that i can solve more problems.I tried asking above 5 star guyies and they seems cocky and don"t wanna help coz they think if they had put effort to reach higher rank why teach other,let them struggle and suffer…(I have contacted @murugurelinout (codechef users) and no help from him)
@lebron : if u can help now it wud be great else i will quit coding coz for me their is no growth as compared to others.

1 Like

Can someone from outside india share how their COACH is helping them in the ICPC preparation.

Apart from all the points that have already been mentioned, I personally feel that the Seats of CS in top colleges should be separated from normal engineering and have a separate Exam, or may be selection through IOI performances. This would definitely Boost CP along with removing the burdens of Rest subjects. Being from CS in IIT i personally feel that i have wasted years of my life behind the prep of JEE where i no longer need any physics and chemistry. If all i want to do is CS, there should be separate track for that… as we have for any other stream. I started CP only in second Semester in my college, and now am in third. I just wish that somebody would have just mentioned me about this in school. I feel that as long as CS is compared with Other engineerings and is done for ‘good placements’ in India, Nothing changes.

When I finished grade 10 in 2014, I had no knowledge whatsoever about programming let alone Competitive programming. I was studying the Maharashtra SSC board syllabus. There was literally nothing about programming in the syllabus. That should change. Coding should be taught in secondary school as an elective atleast and exposure to competitive programming should be offered to interested students grade 9 onwards. Maths skills relevant to programming should also be taught to interested students and finally the school must educate the parents of this competitive programming arena through seminars.

P.S. I was introduced to programming in grade 11(junior college).

Start with not putting all math problems in important contests like ICPC Preliminaries!
Why?
Because its a programming contest, not a math contest. :slight_smile:

6 Likes

Ha Ha.
Just Include Competitive coding in syllabus of IIT-JEE and you will find out thousands of red coders.

7 Likes

I would like to through light on some issue

  1. Lack of awareness: I have seen many students don’t know about competitive programming. Every college should aware student about competitive programming. They may host college contest on regular bases like 2 times in a month, to understand student how fun is programming is.
  2. Tutorials: Tutorials on basic topic should be provided to student. So, student can learn easily. As i seen the basic problem student faces that they dont know how to code in Competitive programming. So proper tutorial is provided for that.
  3. Time consuming: As for beginners there are some problems which are very complicated and difficult to understand and sometimes difficult to implement. It consumes too much time.

At end i would like to say Competitive programming scenario can only be improved by providing awareness and to let them know that way they know how much fun to code is.

1 Like

Hello, Instead of thinking of how to improve, why not think of why it is not in being practiced by many people(students) in India. I am a student and I have very few people in my college who really like to code. There are several reasons:

  1. First thing is, our education system do not bother whether we actually learn coding. What matters is, completing syllabus on time. In the end students take courses outside just to land a job.
  2. There is no coding environment, our theoretical knowledge is seen instead of practical knowledge. Most of the students just by heart the programs to pass the exams.
  3. There are very few events which promote CP, many beginners give CP when they cannot solve complex problems in few available competitions online.
  4. Many of people do not learn CP because they think the companies hiring them will train them anyway so why wasting time on learning on their own.
  5. There is no proper guidance for CP. Even I am struggling learning it on my own. There are very few institutions which have qualified Professors who can guide on CP.

These are common problems I found while networking with many people around my city in events and hackathons.

So if there can be some platform for beginners to start CP from beginning where they can get proper guidance, it will create interest in them. The platform may be just a small club or community.

Or if everyone can decide to guide few people(friends), more people will join automatically. I have my own team, which started with 2 members and it has now grown up to 20+ members in few months, and we are learning CP on our own.

I think point 2 is the most important. There is absolutely no incentive for school students to study computer science. Even if a student wants to enter a technical stream and even if that stream is CS, only his knowledge of physics, chemistry and maths is used to judge his capabilities.

9 Likes

Yes, it is the BIGGEST hindrance, yet we cannot do anything about it :frowning: . Of course, some admissions are offered on basis of excellent performance in CP (Like direct admission in IIIT-H if you get _____ in IOI or perhaps something like that?) but those options are very limited, and risky. Any parent would want his child to study PCM for a secure future.

And I think I didnt even got to the fact that how “placement” is sometimes the only reason one starts CP in college- we need to work on how user can appreciate it.

1 Like

Rewards are only given to Top 10/20 coders. I fail to see how removing reward for those top people going to “motivate” the other thousands of coders behind them.

You are greatly exaggerating it when you say that it is “integral part of education system” in Russia.

Most of children don’t face it at all during their school years, except of those who attend one of the very few specialized schools which put it into their course (and to me it feels like there are maybe 10 such schools over whole country), or they are doing it on their own.

I’m from Ukraine, and situation here is generally similar. I didn’t know about competitive programming almost till the end of 10th grade - so I discovered it a bit over a year before finishing school.

6 Likes

And in my case the reason was not education system, but huge effort on popularization of this activity by guys from the university which I later enrolled - they were ICPC Gold medalists a year before that and they did their best to promote competitive programming.

1 Like

Mate, it’s still better than India. I got to know about arrays at the end of 12th grade!!. I still wish i had got to know about competitive programming earlier.

@vijju123 I clearly emphasized on giving equal privileges to coders of all countries, so as to attract best coders to increase competition, and those 10-20 coders most of the times goes upto rank 80-100, and indian users coming in top-10 in codechef will not even come in top-50 if the good coders start competing at codechef as you can see from codeforces standings of any competition, none of them makes in the top-50.

As a person from outside India I can say that what you pointed out isn’t among important reasons why a lot of strong contestants from outside India don’t participate in CodeChef contests.

3 Likes

@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