In my current physics course the professor wants us students to solve some programming assignments in Python. For this task the popular Jupyter notebook is used, as it provides an already set up programming environment, so that nobody has to explain to the Windows users which demon they have to bribe to install python on their sad excuse of an operating system or what a plain text file is.
Since I personally prefer to not open a web browser, or even write code in one, I searched for (and found) a solution to turn a Jupyter notebook file into a PDF:
jupyter nbconvert --to PDF notebook.ipynb
Now I can comfortably work on assignments in my preferred programming environment: vim plus a PDF viewer.