Editors and IDEs#
Why three different tools?#
Each of these editors excels in different scenarios:
Spyder: A Python-focused IDE designed specifically for scientific computing. Excellent for interactive data exploration, debugging, and working with variables in memory.
VSCode: A versatile, lightweight editor that works well for general programming and multi-language projects. Highly extensible with a vast ecosystem of plugins.
Jupyter Lab: Ideal for creating interactive notebooks that combine code, visualizations, and documentation. Perfect for exploratory analysis, teaching, and sharing reproducible research.
For training participants: We recommend installing all three tools before the training. Each session will use the tool best suited to the task at hand, helping you learn when to use each one. This hands-on experience will help you choose your preferred workflow afterward.
For general users: If you’re already comfortable with one of these editors and aren’t attending our training, you don’t need to install the others. Stick with what works for you. However, if you’re curious about different workflows or want to expand your toolkit, installing multiple editors lets you choose the right tool for each project.
Tip
Being proficient with multiple tools is valuable. You’ll naturally gravitate toward Spyder for interactive data work, VSCode for complex multi-file projects, and Jupyter for sharing analyses or teaching.
Spyder#
Spyder is specialized for Python and particularly well-suited for scientific programming with features like an integrated variable explorer, interactive console, and debugging tools.
To install Spyder, we recommand using the Standalone installers (open this link in a new tab).
VSCode or VSCodium#
VSCode is a general-purpose, lightweight editor that has become popular among Python developers due to its excellent extension ecosystem.
Install from https://code.visualstudio.com/download (open this link in a new tab). Alternatively, you can install VSCodium, a community-driven, freely-licensed distribution of VSCode.
We recommand installing VSCodium (open this link in a new tab), a community-driven, freely-licensed distribution of VSCode. Alternatively, you can download a binary built by Microsoft from https://code.visualstudio.com/download.
Warning
On Windows, install VSCode only on the Windows side (not in Ubuntu). You will still be able to launch it from Ubuntu when needed.
Useful tips for VSCode:
VSCodium can be used instead of VSCode. If using VSCodium, install the Settings Sync extension to synchronize your settings.
Launch VSCode from the terminal using
code .(orcodium .for VSCodium) to open the current directory. This is much faster than navigating through menus.Essential extensions: Install the Python extensions from
ms-pythonand theruffextension for code formatting and linting. These significantly enhance the Python development experience.
Jupyter Lab#
Jupyter Lab provides an interactive notebook environment where you can combine code, visualizations, and rich text documentation. It’s particularly useful for exploratory data analysis, creating tutorials, and sharing reproducible research.
We recommend installing Jupyter using Pixi, which ensures all scientific Python dependencies are properly managed:
pixi global install --environment jupyter-ipython `
--expose ipython --expose jupyter --expose jupyter-labextension --expose jupyter-lab --expose jupytext `
jupyter numpy pandas matplotlib ipython `
ipympl jupyterlab-myst jupyterlab-spellchecker jupytext
pixi global install --environment jupyter-ipython \
--expose ipython --expose jupyter --expose jupyter-labextension --expose jupyter-lab --expose jupytext \
jupyter numpy pandas matplotlib ipython \
ipympl jupyterlab-myst jupyterlab-spellchecker jupytext
This installation provides several useful commands:
ipython: Enhanced interactive Python shelljupyter-lab: Launch Jupyter Labjupytext: Convert between notebooks and scripts
Alternative installation with UV
You can also install Jupyter using UV if you prefer:
# Alternative method (only use if you haven't installed with Pixi above)
uv tool install jupyterlab --with scipy,pandas,matplotlib,ipympl,jupyterlab-myst,jupyterlab-spellchecker,jupytext