Welcome to the first in a series of interviews with members of the Python community.
If you don’t already know me, my name is Ricky, and I’m the Community Manager here at Real Python. I’m a relatively new developer, and I’ve been part of the Python community since January, 2017, when I first learned Python.
Prior to that, I mainly dabbled in other languages (C++, PHP, and C#) for fun. It was only after I fell in love with Python that I decided to become a “serious” developer. When I’m not working on Real Python projects, I make websites for local businesses.
This week, I’m talking to Mike Driscoll of Mouse Vs Python fame. As a long-time Python advocate and teacher, Mike shares his story of how he came to be a Python developer and an author. He also shares his plans for the future, as well as insight into how he would use a time machine…
Let’s get started.
Ricky: I’d like to start by learning how you got into programming, and how you came to love Python?
Mike: I decided to be some kind of computer programmer when I went to college. I started out in computer science and then somehow ended up with an MIS degree due to some confusing advice I received long ago from a professor. Anyway, this was back right before the internet bubble burst, so there were no jobs in tech when I graduated. After working as the sole member of an I.T. team at an auction house, I was hired by the local government to be a software developer.
The boss at that place loved Python, and I was required to learn it because that was what all new development would be done in. Trial by fire! It was a stressful couple of months of turning Kixtart code into Python code for our login scripts. I also was challenged to find a way to create desktop user interfaces in Python so we could migrate away from these truly awful VBA applications that were created on top of MS Office.
Between my boss loving Python and me having so much fun learning it and using it on the job, I ended up loving it too. We made GUIs with wxPython, reports with ReportLab, web applications with TurboGears, and much more with just vanilla Python.
Ricky: You’ve been writing on your blog, Mouse Vs Python, for over 10 years now. How have you kept so consistent and motivated to write each week?
Mike: I’m not always consistent. There have been some gaps where I didn’t write much at all. There was a year where I had stopped writing for the most part for several months. But I noticed that my readership had actually grown while I was taking a break. I actually found that really motivating because there were so many people reading old posts, and I wanted my blog to continue to stay fresh.
Also, my readers have always been pretty supportive of my blog. Because of their support, I have been committed to writing on the blog whenever I can or at least jot down some ideas for later.
Ricky: You’ve also authored five books to date, with Python Interviews: Discussions with Python Experts being released earlier this year. Having spoken with so many highly prominent developers in the Python community, what tips or wisdom have you personally taken away from the book that have helped you develop (either professionally or personally)?
Mike: I really enjoyed speaking with the developers while working on the Python Interviews book. They were quite helpful in fleshing out the history of Python and PyCon USA as well as the Python Software Foundation.
I learned about where some of the core developers think Python might go in the future and also why it was designed the way it was in the past. For example, I hadn’t realized that the reason Python didn’t have Unicode support built-in at the beginning was that Python actually pre-dates Unicode by several months.
I think one of the lessons learned is how big data science and education are for Python right now. A lot of people I interviewed talked about those topics, and it was fun to see Python’s reach continue to grow.
Ricky: I’ve noticed you’ve started creating YouTube videos again for your Python 101 series. What made you decide to start creating video content again?
Mike: The Python 101 screencast was something I put together as an offshoot of the Python 101 book. While a lot of publishers say that video content is growing in popularity, my experience has been the opposite. My screencast series never had a lot of takers, so I decided to just share it with my readers on YouTube. I will be posting most or all of the series there and probably discontinue it as a product that I sell.
I think I need more experience creating video training, so I also plan to do more videos on other topics in Python and see how they are received. It’s always fun to try out other methods of engagement with my audience.
Ricky: Not only do you do so much for the online community, but you also founded and run your local Python user group. What advice would you give to someone (like me) who might be looking to go to their first local user group meeting?
Mike: Pyowa, the local Python group that I founded, now has several organizers, which is really nice. But back to your question. If you want to go to a group, the first thing to do is to find out where and if one exists near you. Most groups are listed on the Python wiki.
Next, you need to look up their website or Meetup and see what their next meeting is about. Most of the meetings I have been to in Iowa have some form of social time at the beginning, or end, or both. Then they have a talk of some sort or some other activity like mob programming or lightning talks. The main thing is to come prepared to talk and learn about Python. Most of the time, you will find that the local user groups are just as welcoming as the people who attend PyCon are.
Ricky: If you could go back in time, what would you change about Python? Is there something you wish the language could do? Or maybe there’s something you’d like to remove from the language, instead?
Mike: I wish Guido had been able to convince Google’s Android engineering department to include Python as one of the languages used natively in Android. As it is, we currently don’t have much in the way of writing applications for mobile besides Toga and Kivy. I think both of these libraries are pretty neat, but Toga is still pretty beta, especially on Android, and Kivy doesn’t look native on anything that it runs on.
Ricky: I love celebrating the wins in life, big and small. What has been your proudest Python moment so far?
Mike: Personally, I am proud of writing about Python in book and blog form and having so many readers who have found my ramblings helpful. I am also proud to know so many great people in the community who will help each other in many meaningful ways. It’s like having a network of friends that you haven’t even necessarily met. I find this unique to the Python community.
Ricky: I’m curious to know what other hobbies and interests you have, aside from Python? Any you’d like to share and/or plug?
Mike: Most of my spare time is spent playing with my three-year-old daughter. However, I also enjoy photography. It can be challenging to get the shot you want, but digital photography also makes it a lot easier since you can get instant feedback and adjust if you messed it up, assuming your subject is willing.
Is there someone you’d like us to interview in the community? Leave their name below, and they just might be next.