March 6, 2019

Usable Code in Dev Challenges

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.

a. MIT

b. ISC

c. Apache

d. BSD (older versions are not compatible)


f. GPL

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:

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.

Group 9
Group 9

Recommended for you

Topcoder Review Process

The Topcoder review process helps ensure that materials delivered to our customers are of the highest quality....
Read More E4627031-A283-4694-8843-C0F351FBA3F8

Development Reliability Ratings and Bonuses

Member profiles reflect reliability factors for the last 15 projects in each track. The reliability factor is ...
Read More E4627031-A283-4694-8843-C0F351FBA3F8

Development Challenge Types

Architecture NOTE: This track is being redeveloped. Today you will find more architecture style challenges bei...
Read More E4627031-A283-4694-8843-C0F351FBA3F8