I create free and open-source software with scientific and technical applications. One of my objectives is making it easier to write scientific and technical documents. I like to include executable code in my documents, so that things like plots and tables can be generated automatically. Documents can write themselves – at least in part. You may be familiar with this approach from software like Jupyter notebooks, Sweave, knitr, or Org-mode Babel. My own contribution is PythonTeX, which focuses on superior integration of Python (and other languages) in LaTeX documents. I am currently working on similar software that will initially focus on Pandoc Markdown.
minted are the two
major LaTeX packages for typesetting computer code with syntax highlighting.
I have been maintaining and developing
minted since 2013.
minted both use Pygments for
syntax highlighting, so there is some overlap. I have made many improvements
minted (and PythonTeX) code typesetting. Several of these are
implemented in my
I teach undergraduate physics at all levels. I frequently use PythonTeX to generate randomized assignments for my students (typically with automatically generated solutions for me). RandAssign is a Python package I created to automate this process. I also incorporate Python programming in my upper-division classes, especially Mechanics and Mathematical Methods for Physics. Programming exercises are common during class and as part of homework, typically using Jupyter notebooks.