This week we welcome Ruud van der Ham as our PyDev of the Week! Ruud is the creator of the Salabim project. Let’s take some time getting to know him a bit better!
Can you tell us a little about yourself (hobbies, education, etc):
I have always worked in the port industry as a professional in the field of terminal planning, algorithm design, data science (although we didn’t use that term yet). Now that I am semi-retired in the south of France I am active as a consultant and as a Python programmer. I graduated from Delft University in applied math, and did a batchelor in Economics at Rotterdam University.
Why did you start using Python?
Actually it was a friend of mine who was doing very interesting projects for the Dutch railroad who introduced me to Python. And although I found the syntax a bit strange, I fell in love with it. With my experience of other languages (see below) it was not difficult to make a quick start.
What helped me enormously was the excellent iPad Python implementation (Pythonista). Actually I do a lot of development more or less simultaneously on iPad and Windows (with Wing IDE).
What other programming languages do you know and which is your favorite?
I started back in the 70’s with Algol at university and Basic on my very first TRS80 computer. I did an enormous amount of programming in assembler (mostly x86), C and professionally Fortran, PL/1 (nobody remembers that one!). And then I developed my own simulation tool ‘must’ in Pascal. Later I did quite a lot of complicated professional work in VBA under Excel.
What projects are you working on now?
I am still working on my salabim package, particularly fine tining the documentation. And I am starting consultancy with my very own product. And I am still learning more advanced features to use in future packages.
Which Python libraries are your favorite (core or 3rd party)?
I like numpy, pandas and matplotlib. And the standard modules collections and array.
How did the Salabim project come about?
I was looking for possibilities for my professional simulation projects which are nearly always done in high end and very expensive dedicated products. Then I found a Python package SimPy but was not impressed and I missed functionality, particular in the API, and animation. So then I started my very own development, based on my previous experience with a Pascal package. Real time animation was rather difficult to realize. After looking at several alternatives I decided to use tkinter as the animation engine. For Pythonista on iPad, I use another technique. I originally supported only Python 3.6, but wanted recently backported it to 2.7 in order to run on PyPy under Windows. And for that reason I also phased out numpy.
What lessons have you learned from running this open source project?
I had no experience with GitHub, PyPI and Sphinx and getting everything together is not really easy. I found that are a lot of resources, but they are not always consistent or even correct.
Is there anything else you’d like to say?
I really love the Python ecosystem and the community.
Thanks for doing the interview!