This is the player's guide for the RunCode persistent site. Here you'll find most of what you need to know to get started competing on the site, as well as working toward mastery of your language of choice.
To your left you'll find links to the sections in this guide. If you have trouble finding anything, let us know at admin AT runcode DOT ninja.
All that's really required is a basic text editor and a sense of humor. Learning to code takes time, but with some consistency its just like learning anything else. However, in order to properly test your code before submission you'll want to install a compiler (or interpreter) for your language of choice (see Supported Languages). We strongly reccomend you compile/run your code before submitting.
A nice-to-have would be choosing an editor that offers syntax highlighting for your chosen language, and line numbering. Beyond that, coders are generally very particular about their editors because they spend so much time in them.
For those of you that don't already have a preference and would like some suggestions, the following text editors are all excellent options that won't cost you a dime.
It really doesn't matter what OS you use to write your code. If it can write text and save it to a file, it will work. It is important to keep in mind though what type of machine your code will be graded on. Although we try our best to filter carriage returns from your code using the
dos2unixutility, you may still have issues with your program's logic. Just keep in mind that a new line on Windows requires a carriage return
\rcharacter to move the cursor to the first column as well as a newline
\ncharacter to start a new line. Linux simply uses
\nfor new lines without the need for carriage returns.
For most submissions, we run your code in an isolated Linux container (Ubuntu 16.04) with no network connectivity whatsoever (except for the loopback address). The one exception is that, when support is restored, we will run C# submissions on a native Windows container with, likewise, no network connectivity except for the loopback address.