PyDev of the Week: Mike Muller

This week we welcome Mike Müller (@pyacademy) as our PyDev of the Week. Mike is the creator of Python Academy and has been teaching Python for over 14 years. Mike has spoken at PyCon for several years and was featured on the Talk Python podcast two years ago. Let’s take a few moments to learn more about Mike!

Can you tell us a little about yourself (hobbies, education, etc):

I studied hydrology and water resources and earned a five-year degree from Dresden University of Technology, Germany. After that I went on studying for a MS in the same field at The University of Arizona, AZ, USA. Then I continued my studies of water resources and was awarded a Ph.D. from the University of Cottbus, Germany. I worked in this field in consulting and research for 11 years at a research institute and four years at a consulting office.

In my limited spare time I do some calisthenics, i.e. bodyweight training to keep fit. Pull-ups are fun. 🙂

Why did you start using Python?

I started using Python for my Ph.D. thesis. The objective of the project was to develop a comprehensive water quality model for post-mining lakes. These are large water-filled holes that remain after surface mining and often have acidic or otherwise polluted water. I had to couple multiple numerical models, one each for groundwater, a lake, and geo-hydro-chemistry.

I assessed several programming languages and eventually chose Python. It was in early 1999; version 1.5.2 just had come out. The coupling worked out really well and I finished my Ph.D. so successfully, that I even got an award for it. I open-sourced the code (pitlakq.com), which is used by a few specialists in pit lake modeling around the world. I also teach courses about pit lake modeling with pitlakq once in a while.

What other programming languages do you know and which is your favorite?

I started with FORTRAN, as many scientists do. I also use C and C# when required and tried to learn some Haskell. Of course Python is by far my favorite. After all, I’ve been teaching it for more than 14 years.

What projects are you working on now?

I spend most of my time teaching Python, preparing, organizing, and delivering courses, mainly in Germany and other European countries, occasionally on other continents. I still do some scientific programming and work on my pitlakq model. Currently, I am engaged in a research project, developing a new groundwater model, that allows user-specified boundary condition with a plug-in system. Of course with Python. We are still in the early stages.

Which Python libraries are your favorite (core or 3rd party)?

I spend a lot of time in Jupyter Notebooks. Lately, I started using Jupyterlab. I also use other scientific libraries such as NumPy and matplotlib. I enjoy using pylint, pytest, and openpyxl. The latter makes it easy to read and write Excel files.

How did Python Academy come about?

At the time, I had taught already lessons at a university and had given quite a few presentations. I used Python everyday and got more and more proficient in it. Then I saw a request for a Python trainer. I applied for it, got it, developed the course material, and delivered the training. This grew slowly over several years. In the beginning I only taught a few courses each year. The demand for training continuously increased so that I founded Python Academy to meet the demand.

Do you have any advice for others who would like to become trainers for a programming language?

Love what you do and get really good at it. You should literally dream in the programming language you teach. You should also enjoy digging deep into topics just because they are interesting. I think it is very important to be able to set yourself back to square one. You know all this deep magic about a language. But a student who is new to this language may be totally overwhelmed. So start from the beginning and explain even what seems obvious to you. You should not get tired of repeating yourself.

Is there anything else you’d like to say?

I am both surprised and very pleased about the success of the Open Source movement. In fact, my professional live would be totally different without it.
It feels good to contribute to this huge universe, increasing the world knowledge by a tiny bit.

Thanks for doing the interview, Mike!