What types of existing code can you use in a development challenge?
There are a few rules that need to be followed when submitting code as part of a contest. Here are a set of guidelines to help you determine if your code is acceptable or not:
1. Third-Party Code/Libraries
We absolutely encourage not reinventing the wheel. However we need to be careful about third-party code/libraries, please note the following:
1. All third-party code must be listed in the challenge specification or be approved by the challenge manager either through the "Contact Form" or in the challenge forums.
2. All third-party code/libraries must be included as a separate library and must include the license in your submission. You can include a link to an online version of the license and library in the readme file with your submission.
3. Submissions that include third-party code without the proper license information will be disqualified if the third-party code is found to be unusable due to license restrictions
2. Open Source Licenses
Please note that challenge contest specs can always overrule these guidelines. Listed below are the most common licenses we come across. They are listed in order of chances of being accepted. Remember you must ALWAYS ask in the forums if you are using a third party library.
d. BSD (older versions are not compatible)
3. What is fair reuse of code?
Any code you submit as part of your solution, you must own. You must not copy code from other libraries or previously written code that has been paid and delivered in other challenges or to other clients. Once Topcoder has paid you for code you are not allowed to reuse it at Topcoder unless it is licensed appropriately or you have received permission.
If you want to reuse code from other sources please follow the previous section: 1. Third-Party Code/Libraries.
4. What are Starter Packs? How are they created? Who owns the IP?
Starter Packs are small sets of code that that can serve as a starting point for application development. Topcoder owns the IP for Starter Packs, and we absolutely encourage you to re-use them for all projects. With Starter Packs, you’ll be able to:
- Jumpstart application development with some solid code that can then be extended and tailored.
- Take advantage of the best solutions out there (from the TC community).
- Demonstrate (in code) some of the most commonly requested features.
- Development of long term patterns that can produce even better results, more quickly.
We've started with an Ionic Starter Pack (running against a Node.js backend) to get some initial feedback. This is just a single Starter Pack, we're looking to extend this concept to create packs for many different purposes.
Check out some or our Starter Packs in Github:
- Ionic Starter Pack
- Node.js Backend Starter Pack
- API Starter Pack
- Continuous Integration Starter Packs
5. Can I reuse code that I wrote from a different challenge?
If the code you submitted wins a prize (i.e 1st, 2nd or 3rd place), then your code cannot be used in another contest for another project. The only exception is if the contest is for the same client / project, then the code can be reused. To be safe, always check with the copilot/challenge manager.
For more details on submission copyrights & intellectual property rights, please see “Winnings Submissions” and “Other Submissions” in the Topcoder Terms & Conditions.