Skip to content

Python IDEs

On this page, you will learn about various Python IDEs. An IDE (Integrated Development Environment) is a program dedicated to software development. It usually provides an editor designed to handle code (with, for example, syntax highlighting and auto-completion) as well as features such as build automation, code linting, testing and debugging. This can significantly speed up your work.

If you don't have an IDE yet, we recommend you go with Visual Studio Code (see below).

Visual Studio Code

VS Code is a full-featured IDE available for Linux, Mac OS X, and Windows platforms. Small and light-weight, but full-featured, VS Code is configurable for almost any task. It can easily be downloaded from the official VS Code page.

Installing Python support in VS Code is very accessible: the Marketplace is a quick button click away. Search for Python, click Install, and restart if necessary. It will recognize your Python installation and libraries automatically.

PyCharm

PyCharm is a highly popular and feature-rich IDE for Python development, appreciated by both beginners and experienced developers alike. Its robust set of tools, intelligent code assistance, and seamless integration with popular frameworks make it a valuable asset for Python programmers, enabling them to write high-quality code efficiently. It can easily be downloaded from the official Jet Brains page.

Remote Debugging

Create a sbatch script (e.g. remote-debugging.sh), where you specify options for the resource requirements, such as the desired number of nodes, memory allocation, and time limit for the job.

#!/bin/bash

#SBATCH --ntasks=1
#SBATCH --qos=low
#SBATCH --job-name="debug"
#SBATCH --gpus-per-task=0
#SBATCH --cpus-per-task=2
#SBATCH --mem=10G
#SBATCH --time=12:00:00
#SBATCH --no-container-entrypoint
#SBATCH --container-mounts=/data/bodyct:/data/bodyct
#SBATCH --container-image="dockerdex.umcn.nl:5005#clemsgrs/slide2vec:v1.1.1"

while getopts p: flag
do
    case "${flag}" in
        p) PORT=${OPTARG}
        ;;
    esac
done

HOSTNAME=$(hostname)

/usr/sbin/sshd -p ${PORT}
echo "sshd service started on ${HOSTNAME} @ port ${PORT}"
sleep 1d

Pick an access port (e.g. 5574) and kick off the previous script from oaks-lab via:

sbatch remote-debugging.sh -p <port>

Exposing a port in your container enables your IDE to communicate directly with the running Docker container. This allows you to run debug sessions from your IDE inside the container. Make sure to configure your IDE as described in the instructions below.

VS Code

Once you have completed the steps above, you can take a look at the following page on how to connect your running container to VS Code.

PyCharm

Once you have completed the previous steps, follow the PyCharm tutorial.