7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science...
-
Upload
milton-lloyd -
Category
Documents
-
view
218 -
download
3
Transcript of 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science...
![Page 1: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/1.jpg)
1
7
Anup Kalbalia – Lead, CodeChef
![Page 2: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/2.jpg)
2
7
Role of Competitive Programming
in
Computer Science Education
![Page 3: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/3.jpg)
3
7Competitive Programming?
(also called)
Sports Programming
“Competitive programming is a mind sport usually held over the Internet or a local network, involving participants trying to program
according to provided specifications.” - Wikipedia
![Page 4: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/4.jpg)
4
7
The core – Online Judge
![Page 5: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/5.jpg)
5
7Two most basic tasks that an
online judge can help teachers:
1. Evaluation of Assignments
2. Plagiarism Detection
Online Judges
![Page 6: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/6.jpg)
6
7 Things bundled around an online judge:
1. Support on many programming languages - Focus on solving problems than learning a language.
2. Carry it anywhere - online
3. Plagiarism Detection
4. Ratings - performance monitoring
5. Institution wise data
6. Editorials
7. Problem search on different topics + difficulty levels
8. Discussion Forum - community help
Online Judges
![Page 7: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/7.jpg)
7
7
Some Popular Online Judges
• CodeForces
• SPOJ
• Topcoder
• HackerRank
• CodeChef
![Page 8: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/8.jpg)
8
7
Some Judges that you can use offline
• PC^2
• DomJudge
• Mushak
• cms (IOI grader)
![Page 9: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/9.jpg)
9
7
Most popular programming competitions
• ACM ICPC
• International Olympiads of Informatics
• Google Code Jam
• FacebookHackerCup
• CodeChef SnackDown
![Page 10: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/10.jpg)
10
7
ACM ICPC
![Page 11: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/11.jpg)
11
Me – in December 2003 @ IIT Bombay
![Page 12: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/12.jpg)
12
7
Yet another Contest Platform?
Why?• Launched in 2009. With a specific
objective to improve the programming scenario in India.
• By building a global community of programmers
• CodeChef is not just a contest control system. It has grown into a vibrant community
![Page 13: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/13.jpg)
13
7
Some Statistics
• 6.5+ million submissions to various problems.
• 2,00,000+ registered users spread across the globe
• 5000+ educational institutions and 200+ countries use our platform.
• 800+ contests hosted in the last 5 years.
• 3500+ problems based on ACM ICPC and IOI.
• Problems available in 3 different languages - English, Russian and Chinese.
![Page 14: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/14.jpg)
14
7
Features
• Robust online judge back-end in partnership with SPOJ with extremely consistent execution run-time.• Support for 50+ languages/compilers.• A web interface making it very usable, portable, easy and friendly to use.• An online IDE with user driven customization, that self destructs all submitted solutions• Plagiarism Detection• Ratings - Institution wise filters• Verdict by email• Tagged problems sorted by topics and difficulty levels • Practice Section • Elaborate Editorials for every problem• Discussion Forum• Translated Problem Statements in Russian and Chinese• Scalable - Capacity can be increased by adding additional servers• Secure judge environment - has access restriction based on IP/usernames.• Fault tolerant – No single point of failure• Runs on the cloud - no infrastructure headache. Just needs an Internet connection.• Ability to write custom validators.• On the fly re-judge facility.• Moderation of comments/announcements/solutions for contest admin.• Host your own contests - Free for use for any one• 24-hour online/call support. • ICPC Integration • and many more….
![Page 15: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/15.jpg)
15
7
Technology Stack
• Runs on the cloud - AWS
• MySQL
• Nginx
• PHP
• Memcache
![Page 16: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/16.jpg)
16
7• Host your contests
• Go For Gold
• CodeChef for Schools
• Evaluation platform for universities
• Course Curriculum – IIIT Delhi
• Campus Chapters
Community building and Initiatives
![Page 17: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/17.jpg)
17
Go For Gold - 2010
![Page 18: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/18.jpg)
18
![Page 19: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/19.jpg)
19
7Institutions using competitive
programming:• IIT’s
• IIIT Hyderabad
• IIIT Delhi
• DA-IIACT
![Page 20: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/20.jpg)
20
7
IIIT D & Competitive Programming
• Admission in MTech Course based on performance of our Long Challenge Score
• Lab assignments
• Extra marks in subjects like
• Introduction to Programming
• Data Structures
• Design and Analysis of Algorithms
• A 2-credit elective course on Competitive programming.
![Page 21: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/21.jpg)
21
7 What all you can do?
• Use it for Lab assignments
• Extra marks for our contests
• Use Teaching Assistant – students
• An elective course on competitive programming?
• Create content and contribute towards the community
![Page 22: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/22.jpg)
22
7Demo
http://www.codechef.com/ITP2014/
![Page 23: 7 1 Anup Kalbalia – Lead, CodeChef. 7 2 Role of Competitive Programming in Computer Science Education.](https://reader033.fdocuments.in/reader033/viewer/2022052701/56649dd95503460f94acdf25/html5/thumbnails/23.jpg)
23
Thank You
Anup [email protected]
+91 9320060499
http://www.facebook.com/CodeChefhttp://www.twitter.com/codechef