Competitions & Hackathons Description Preparation
Google Coding Competitions Google's Coding Competitions are meant to enthrall, challenge, and test coders around the world. They offer 2 popular choices: Google Kickstart and Google Codejam. Code Jam is Google's longest running global coding competition, where programmers of all levels put their skills to the test. Competitors work their way through a series of online algorithmic puzzles to earn a spot at the World Finals, all for a chance to win the championship title and $15,000 USD. Kick Start is a global online coding competition, consisting of three-hour rounds of a variety of algorithmic challenges designed by Google engineers. Participants can compete in one or all online rounds held throughout the year, and will have the opportunity to develop and grow their programming abilities while getting a glimpse into the technical skills needed for a career at Google. Found on the official Google Website, they have an archive of past questions for you to practice on. Follow the website for official registration days.
Hackathons A hackathon is usually a day-long (can be 36 hours, 48 hours, etc.) coding competition where software programmers, developers, designers, etc. come together to build and design something cool. Even if you have no experience coding, most hackathons offer workshops where they teach mini-lessons led by professionals so you can hone your skills. Mentors are also available 24/7. So if you go to a hackathon without knowing what you want to do, that’s totally fine because you will have these mentors at your service to help and guide you. Sometimes Hackathons will have a specific theme for you and your team of 2-4 to work with, or you may have no theme but different categories of prizes you can work towards achieving. To look for Hackathons to join, search through the following websites: Devpost, MLH, and Eventbrite. Hackathons are often run in-person or virtually, and to prepare you may want to create some projects for fun and learn a variety of languages and how to use certain libraries. Make sure to find a hackathon of your level (high school, university, etc). Some examples of popular hackathons are, Hack the North, Hack the 6ix, and Microsoft Imagine Cup.
Canadian Computing Competition The Canadian Computing Competition (CCC) is a fun challenge for students with an interest in programming. Designed to be both accessible to students with some programming experience and to challenge the keenest programmers at the secondary-school level, the CCC helps students build confidence and grow their ability to design, understand and implement algorithms. There are 2 levels: Junior level — any student with beginner programming skills, Senior level — any student with intermediate to advanced programming skills. Written by individuals online, 5 questions, 3 hours and score out of 75. Participants who score high on the contest may be invited to take the Canadian Computing Olympiad (CCO). Check the Waterloo Website for more information on how to prepare, they suggest reading and preparing various algorithms before the contest.
First Robotics There are a lot of robotics competitions out there, but First Robotics is one of the most prestigious , and, as such, requires a significant commitment (of both time and funding). First robotics would require you to find a pre-existing team, inside or outside of your school, or you can create your own team Students work in teams of at least 10 (along with 2 adult mentors) to design and build an industrial-sized robot (about 150 pounds). They then must program the robot to compete in a sophisticated field game at competitions. Annual team registration fees are usually about $5,000, although fundraising guidance is given.
Project Euler Project Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve. Although mathematics will help you arrive at elegant and efficient methods, the use of a computer and programming skills will be required to solve most problems. The problems range in difficulty and for many the experience is inductive chain learning. That is, by solving one problem it will expose you to a new concept that allows you to undertake a previously inaccessible problem. So the determined participant will slowly but surely work his/her way through every problem. The intended audience include students for whom the basic curriculum is not feeding their hunger to learn, adults whose background was not primarily mathematics but had an interest in things mathematical, and professionals who want to keep their problem solving and mathematics on the cutting edge.
Math Competitions Participating in a mathematics and computing contest helps students develop invaluable skills, like creative problem-solving and big-picture thinking. There are many prestigious math competitions run by various institutions that are recognized and considered when you apply to top computer science universities in Canada and USA. The most popular, ranked by difficulty: UWaterloo Math Competitions, AMC, and Canadian Open Mathematics Challenge. By checking the official website of these competitions you will be able to find past contest papers to study from and practice with. Depending on the difficulty of the competition you may have to learn a lot of advanced mathematics. Specifically, to prepare for the AMC and Canadian Open Mathematics Challenge it is recommended that you read the Art Of Problem Solving Introductory and Volume 1 books.