Toggle navigation sidebar
Modern scientific Python tooling
Challenges of academic code
Goals and principles in this talk
Code levels
Integrated development environments
Index
Installing VS Code
Install extensions
How are settings managed
Setting up VS Code
Appearance
Telemetry and user experiments
Spell checking
Python environment
Additional extensions
Keyboard shortcuts
Code formatting
Index
Level 1: Formatting defaults for all your projects
Level 2: Formatting project by project
Additional formatting/linting
Source code regions
Typing and modularizing code
Index
Root-finding solver based on Brent’s method
First step: making a Python script
Second step: script to module
Third step: breaking the code into functions
Fourth step: breaking the data into dicts
Fifth step: dataclasses
Fifth step without comments
Tricky parts of type annotations
Testing
Documenting published code
Index
Level 1: documenting the code using a paper + Jupyter notebooks
Level 2 (or 3?): documenting the code using Sphinx
Additions
Specifying dependencies and publishing code
Index
Python versions
Level 1: requirements.txt, “clone the repo” deployment
Level 2: Use Poetry and Python virtual environments
Python modules
Level 3: Manage compatibility guarantees
Tricky parts
References
Toggle navigation
.md
.pdf
Keyboard shortcuts
Keyboard shortcuts
¶
Print the keyboard shortcuts for
Mac
,
Linux
or
Windows