This short text contains some quickstart instructions for participating in Automated Testing challenges on Topcoder. These challenges utilize Docker to test your code solutions. This allows you to use any programming language or library you want to develop your code. No particular knowledge is required to participate, so don’t be afraid to jump in!
Additionally, participating in these challenges gives you hands-on experience in using Docker containers - a highly sought-after technology skill nowadays. Reaching a good rating on Topcoder Code challenges and proving you can work Docker might be just what you need for that next gig, job or promotion!
The steps below assume you have Docker installed on your machine. Follow the link to install Docker before reading further.
Roughly, these are the minimum steps you need to follow to take part in a Docker-testing based challenge at Topcoder:
Download one of the sample submissions provided as part of the challenge
Modify the code files in the submission. You may add your own files and re-structure the code if you see fit. Make sure you keep the Dockerfile and entrypoint file as provided - no need to touch them
You are provided with a testing script as well. Follow the readme-file and run the commands provided, they will allow you to run your full code solution for your own testing purposes while developing
Submit the code folder as requested on the challenge, with your modified code files, and keeping the included Docker files
That’s it.
For most contestants, just modifying the code files normally and keeping the original Docker-related files is enough, and no specialist knowledge is needed to participate.
If you are already more comfortable with working on Docker, you can also modify the Dockerfile and entrypoint if needed, for example to completely change the language or technology used by the submission. The automated tester only requires the right folder that contains a Dockerfile, which it will build and run for testing - thus any programming language can be used for such Docker-based challenges. You need not worry about this, though, unless you are already very comfortable with creating your own Docker images and want to do things your own way.
You can also check out this video for an overview of Docker used in RDM challenges at Topcoder:
For further information, check out these resources:
Check out all of the Docker-tagged articles on the Thrive article database.
A highly detailed RDM walkthrough is provided within this Thrive article.
The Wikipedia page for Docker gives a great high-level overview of what Docker is and how it works.
For learning more about Docker, and to learn skills required for using it, such as writing Dockerfiles, the official Docker docs are a great starting place.
The best way to learn is by doing, so check out the Topcoder Community Events Calendar for the next RDM round, and take the leap towards becoming a Docker and Rapid Development pro!