This week our PyDev of the Week is Petr Viktorin (@EnCuKou). Petr is the author of PEP 489 — Multi-phase extension module initialization and teaches Python for the local PyLadies in Czech Republic. You can some of what he’s up to via his Github page or on his website. Let’s take some time to get to know Petr better!
Can you tell us a little about yourself (hobbies, education, etc):
I’m a Python programmer from Brno, Czech Republic. I studied at the Brno University of Technology, and for my master’s I switched to the University of Eastern Finland.
When I’m not programming, I enjoy playing board games with my friends, and sometimes go to an orienteering race (without much success).
Why did you start using Python?
At the university, I did coursework in languages like C, Java, and Lisp, but then I found Python and got hooked. It fit the way I think about programs, abstracted away most of the boring stuff, and makes it easy to keep the code understandable.
After I returned home from the university, I found a community that was starting to form around the language, and that’s probably what keeps me around the language now.
What other programming languages do you know and which is your favorite?
What projects are you working on now?
I work at Red Hat, and the main job of our team is to package Python for Fedora and RHEL. The mission is to make sure everything works really great together, so when we succeed, the results of the work are somewhat invisible.
My other project is teaching Python. A few years back, and without much teaching experience, I’ve started a beginners’ Python course for the local PyLadies. I’ve spent a lot of time on making the content online and accessible to everyone, and over the years it got picked up in two more cities, and sometimes I find people going through the course from home. Now people are refining the course, and even building new workshops and other courses on top of it. Like any open-source project, it needs some maintenance, and I’m lucky to be able to spend some paid time both teaching and coordinating and improving Czech Python teaching materials.
When I find some spare time, I hack on crazy side projects like a minimalistic 3D-printed MicroPython-powered game console.
Which Python libraries are your favorite (core or 3rd party)?
I’m sure Requests appeared on these interviews before: it’s a great example of how a library should be designed.
I also like the pyglet library. It’s an easy way to draw graphics on the screen, and I also use it to introduce people to event-driven programming.
Where do you see Python going as a programming language?
Strictly as a language, I don’t think Python will evolve too much. It’s already a good way to structure code and express algorithms. There will of course be improvements – especially the async parts are quite new and still have some rough corners – but I’m skeptical about any revolutionary additions.
I think most improvements will come to the CPython implementation, not the language itself. I’m hopeful for projects like Pyjion and Gilectomy. I’m involved in a similar effort, making CPython’s subinterpreter more useful. Sadly, it’s currently stalled, but maybe I’ll be able to mentor it as a student project.
What is your take on the current market for Python programmers?
When I finished school, I had no idea I could actually get a job using Python. But it turns out there’s always demand for Python programmers. And I see new projects started in Python all the time. It doesn’t look like the demand is going away.
Is there anything else you’d like to say?
If you visit Czech Republic, look at http://pyvo.cz/en and visit one of our meetups!
Thanks so much for doing the interview!