Editor setup

To use any programming language, you need an editor to type text (programs) into. In theory, this can be any (plain-text) editor.

However, we have some recommendations for you.

Why use an external editor?

We use weblab to give you practice assignments for the course. However, the editor built-in to weblab is far from the best available. Maybe you will find that it is sufficient, which is fine. But it may benefit you to use an external editor, a text editor you have installed on your computer. Some advantages of that are:

  • Better/smarter autocomplete to make programming faster (the one built-in to weblab is very basic and won't help you much)
  • Easy renaming and refactoring of code if you make mistakes
  • Code generation
  • Debugging code
    • Stepping through code line by line
    • Stopping execution at a certain line and the ability to see the values of variables at that moment

We also expect you and your team to use your own editor during the project.

Rust Rover (Jetbrains IDE)

To use it you can get a free student-license at https://www.jetbrains.com/community/education/#students

You will have to download the rust plugin for CLion too. This is easy enough (through the settings menu), and CLion might even prompt you for it on installation. If you can't figure it out, feel free to ask a question in the labs.

Visual Studio Code

Visual Studio Code (not to be confused with "visual studio") is an admittedly more light-weight editor that has a lot of the functionality rust rover has too. In any case, the teachers and TAs have experience using it so we can support you if things go wrong. You can easily find it online, you will need to install the "rust analyzer" plugin, which is actually written in Rust and is quite nice.

Other

Any other editor (vim, emacs, ed) you like can be used, but note that the support you will get from teachers and TAs will be limited if at all. Do this on your own risk. If you're unfamiliar with programming tools or editors, we strongly recommend you use either CLion or VSCode.