IDE exercises provide students with an Integrated Development Environment - which is basically a software application that makes development easier (we’re using Theia, in case you wonder). You can navigate your project directory on the left, write scripts on the right, open new tabs for new scripts, and execute console commands at the bottom, all on the same view.
Students start in the ~/workspace
directory (~
representing /home/repl
, so students start in /home/repl/workspace
). That’s where all resources that students need to see and use should be placed. Students can use the cd
command in the console to navigate up and down, but they should only need to navigate down.
The script that students are used to seeing in a Normal Coding Exercise is basically what they will see on the right. IDEs allow you to get students to work on two scripts, navigate the directory scripts to find an issue, execute a script in the console before taking another action… It opens a lot of opportunities that are simply not achievable in a Normal Exercise, and provides students with a much more real-life, professional environment than the Normal Exercise cocoon.
Here is an example from Developing Python Packages:
User folders
There should be only one user in your /home
folder: repl
. In /home/repl
, you will find at least the following directories:
/home/repl/config
is empty by default. It may contain configuration files that get executed bystart.sh
. For example, if you’re using Airflow, you would have aconfig.sh
bash script here to update thebase_url
used by the Airflow config to serve when the user session starts, so that Airflow can send automated emails to point links to the right web server./home/repl/start.sh
executes the scripts contained in/home/repl/config
, and runs other configurations commands to set up a stable environment for the students to exercise into. It also executes scripts contained in/home/repl/startup
./home/repl/startup
can contain startup scripts executed bystart.sh
./home/repl/workspace
is where the students work.
For details on how to the anatomy of an IDE exercise, refer to this article.