This page lists the standard courses that I currently offer on-site. (I also offer many courses online, for individual and group purchase.)
All courses include lectures, a great deal of live coding and demonstrations, and (of course) many hands-on exercises. I’m constantly updating the content of my courses to reflect current best practices, the latest things I’ve learned, and feedback from my previous students.
Participants receive PDF versions of my slides and solutions to the exercises we do in class. In the case of Python courses, students also receive a Jupyter notebook containing all of my live-coding examples.
While I prefer to teach on site and in person, I can provide live training via WebEx or Zoom for remote and distributed teams.
Note: I am often booked months in advance. If you’re interested in having me teach a course, please contact me as soon as possible, to ensure that I can help you when you need it.
Here is a list of the in-person courses I offer:
- Intro Python
- Advanced Python
- Python for non-programmers
- Python for system administrators
- Intro to data science and machine learning in Python (4-day shortened version of the two below courses)
- Python practice workshop
- Introduction to Git
- Regular expressions
- Testing Python code with pytest
- Concurrency with threads, multiprocessing, and asyncio (1 day)
- Design patterns with Python (1 day)
- Type hints and annotations in Python (1 day)
I also offer more than 30 “micro-courses,” most of them 90 minutes long, aimed at specific topics in Python. Most of these are taken from the above courses; they’re perfect for companies who want to sharpen their employees’ understanding of a topic without taking too much time out from the workday. Contact me for a full list of topics that I offer.
Do you want a course that isn’t listed here? Contact me, and let’s talk about the possibilities!