Tools That Help You Write Better Code
by
Fri, Jan 16, 2026
1 PM – 2:30 PM EST (GMT-5)
Private Location (sign in to display)
Registration
Details
Pre-Workshop Instructions: Most of the workshop will be demonstration. It is recommended to have the ability to run Python code and install packages on your latptop. This can be accomplished by (1) having a local installation of Python (e.g., Anaconda Python), or (2) using the Adroit cluster. For (1) see these directions. For (2) request an account on Adroit at least an hour before he workshop (VPN required if off-campus). Additional details for Adroit can be found in this guide.
More Software Engineering Training
Below is the full line-up of the Winter 2026 software engineering training by Research Computing:
Good Practices for Research Software Engineering on 1/12
Intro to Version Control with Git and GitHub on 1/12
Attaining vim Fluency: Edit as Fast as You Think on 1/13
Creating Reusable Python Code: From Notebooks to Scripts to Packages on 1/13
How to Package and Publish Your Python Code on 1/14
Gotcha! How to Write Software Tests to Improve Code Quality on 1/14
Debugging and Profiling Code in Python on 1/15
Continuous Integration and Continuous Delivery (CI/CD) with GitHub Workflows on 1/15
Tools That Help You Write Better Code on 1/16
Introduction to Software Reverse Engineering with Ghidra on 1/16
More Training Workshops
See the entire Research Computing Winter 2026 training program.
Speakers
Henry Schreiner
Princeton University
Henry Schreiner is a Computational Physicist / Research Software Engineer in High Energy Physics. He received his Ph.D. in experimental high-energy physics from the University of Texas at Austin. Henry is working on a three year project to develop simpler compiled packages for Python using Scikit-build. He is also an admin of Scikit-HEP, and also the lead web developer for IRIS-HEP and Scikit-HEP. Henry is also a maintainer/core developer for pypa/build, scikit-build, cibuildwheel, pybind11, and Plumbum for Python, and primary author of CLI11 for C++. He is also the author of a variety of CMake, GPU, and Python training courses and classes. He is also currently co-teaching APC 524.