Systems and methods for developing computer algorithm solutions by conducting competitions
First Claim
1. A system for automatically identifying solutions to a problem statement by conducting a competition, the system comprising:
- a communication module for electronically inviting via a communications network a plurality of potential participants to participate in a competition provided over the communications network, the competitions having a predetermined start time and end time, and for electronically receiving indicia of interest from potential participants;
a contest server comprising at least one memory storing computer-executable instructions, and at least one processing unit for executing the instructions stored in the memory, wherein execution of the instructions results in an application comprising;
(i) a submission receiving subsystem for electronically receiving software-based submissions from participants after the start time and prior to the end time of the competition,(ii) a testing engine for;
(a) after the start time and prior to the end time, automatically performing interim evaluations of the received software-based submissions by executing, using a processor, each received software-based submission using first test data as input and assigning points to the participants based on the interim evaluations,(b) for each received software-based submission from a participant, selecting respective second test data for the participant based on a performance of the received software-based submission in at least one of the interim evaluations of the received software-based submission, and(c) after the end time, automatically performing final evaluations of the last software-based submission received from each participant by executing, using a processor, each last software-based submission using the second test data selected for the participant as input and assigning points to the participants based on the final evaluations, and(iii) a winner identification subsystem for automatically identifying as the winner the participant who submitted the submission that received the greatest number of points during the final evaluations; and
a data store for storing the received submissions.
1 Assignment
0 Petitions
Accused Products
Abstract
This invention relates to a method and apparatus for providing a coding competition. In one embodiment, a method for providing a coding competition includes transmitting a coding problem to contestants, receiving computer code created by a contestant, determining a response of the computer code to test data, and evaluating the response of the computer code to the test data. In another embodiment, a method for evaluating a skill level of a contestant includes electronically communicating a coding problem to contestants, electronically receiving a software program in response to the coding problem from one of the contestants, evaluating the received software program, awarding points to the contestant based on the received software program, and determining a rating for the contestant for the competition based on the number of points awarded to the contestant.
140 Citations
20 Claims
-
1. A system for automatically identifying solutions to a problem statement by conducting a competition, the system comprising:
-
a communication module for electronically inviting via a communications network a plurality of potential participants to participate in a competition provided over the communications network, the competitions having a predetermined start time and end time, and for electronically receiving indicia of interest from potential participants; a contest server comprising at least one memory storing computer-executable instructions, and at least one processing unit for executing the instructions stored in the memory, wherein execution of the instructions results in an application comprising; (i) a submission receiving subsystem for electronically receiving software-based submissions from participants after the start time and prior to the end time of the competition, (ii) a testing engine for; (a) after the start time and prior to the end time, automatically performing interim evaluations of the received software-based submissions by executing, using a processor, each received software-based submission using first test data as input and assigning points to the participants based on the interim evaluations, (b) for each received software-based submission from a participant, selecting respective second test data for the participant based on a performance of the received software-based submission in at least one of the interim evaluations of the received software-based submission, and (c) after the end time, automatically performing final evaluations of the last software-based submission received from each participant by executing, using a processor, each last software-based submission using the second test data selected for the participant as input and assigning points to the participants based on the final evaluations, and (iii) a winner identification subsystem for automatically identifying as the winner the participant who submitted the submission that received the greatest number of points during the final evaluations; and a data store for storing the received submissions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method, implemented on at least one computer, for automatically identifying solutions to a problem statement by conducting a competition, the at least one computer comprising:
-
at least one memory storing computer-executable instructions; and at least one processing unit for executing the instructions stored in the memory, wherein the execution of the instructions results in the at least one computer performing the steps of; electronically inviting via a communications network a plurality of potential participants to participate in a competition provided over the communications network, the competitions having a predetermined start time and end time, and for electronically receiving indicia of interest from potential participants, electronically receiving software-based submissions from participants after the start time and prior to the end time of the competition, after the start time and prior to the end time, automatically performing interim evaluations of the received software-based submissions by executing each received software-based submission using first test data as input and assigning points to the participants based on the interim evaluations, for each received software-based submission from a participant, selecting respective second test data for the participant based on a performance of the received software-based submission in at least one of the interim evaluations of the received software-based submission, after the end time, automatically performing final evaluations of the last software-based submission received from each participant by executing each last software-based submission using the second test data selected for the participant as input and assigning points to the participants based on the final evaluations, automatically identifying as the winner the participant who submitted the submission that received the greatest number of points during the final evaluations, and storing the received submissions. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification