This week we welcome Trey Hunner (@treyhunner) as our PyDev of the Week! Trey writes a programming blog which is worth your time checking out. He is quite active in his local Python community as well as the worldwide community. Let’s spend some time getting to know Trey.
Can you tell us a little about yourself (hobbies, education, etc):
I found web development in grade school, went to school for computer science, and have been doing web consulting since 2010.
I co-organize our local Python, JavaScript, and Ember.js meetups and teach programming to adults (through workshops and study groups) and kids (through an after-school program).
I also help maintain some open source libraries and I contribute to open source projects when I can. I often pretend that the open source code I use is under my control and that the developer is an acquaintance. I do this because I find it easier to contribute when I’m willing to look at the code and communicate with the developers (politely and graciously of course).
Why did you start using Python?
In 2009, a friend asked if I could help make a website with Python. We didn’t use Django initially, but we eventually switched to it after using it on another project.
I found DjangoPackages.com, djangosnippets.org, and pyvideo.org incredibly helpful during my adventures in learning Python/Django. I have also relied very heavily on third-party Django apps in most of my websites, especially when I was just getting started. I learned how to use GitHub and write pull requests through fixing bugs and adding features to open source Django packages I used.
What other programming languages do you know and which is your favorite?
I’ve played with a lot of languages, but I’m not fluent in many. With enough Googling I can write Ruby, C, Java, Haskell, and Scheme.
For favorite language, I’m tied between Python and JavaScript.
Python is my favorite for command-line scripts and back-end web apps. Python has wonderful syntax, a rich standard library, and a very large ecosystem of third-party libraries.
JavaScript is the language of front-end web development which is the majority of what I do. I used to do full-stack web development, but I prefer front-end most because I like working close to the user.
Due to my transition to front-end development, I am re-discovering my place within the Python community and I have been spending more time assisting Python projects on front-end development.
What projects are you working on now?
I am working on a couple fun side projects, most of which aren’t ready yet. I made http://Unicode.Party recently because I couldn’t find a good search engine for unicode emoji characters.
I am also spending time developing curriculum and teaching at a local after-school program for kids, called The League of Amazing Programmers. We’re working on developing web curriculum to teach HTML, CSS, and JavaScript.
Which Python libraries are your favorite (core or 3rd party)?
I like unittest.mock (mock on PyPI unittest.mock in Python 3.4) for monkey-patching and mocking in my tests. I like requests for making HTTP requests. I also like flake8 for code style enforcement and cookiecutter for creating new Python/Django projects.
Is there anything else you’d like to say?
Practice empathy every day. Our brains are adept at in-group thinking and empathizing with those outside of our groups takes effort. Online, in the workplace, at tech events: always be empathizing.
Thanks!