PyDev of the Week: Yeray Diaz

This week we welcome Yeray Diaz (@yera_ee) as our PyDev of the Week! Yeray is a moderator on PyPI.org . Yeray also writes a blog and has several projects on his GitHub profile.

Let’s take a few moments to get to know Yeray better!

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

I grew up in the Canary Islands which are off the coast of Morocco but are part of Spain. I was always fascinated by videogames being a fairly sickly kid that spent a lot of time at home. My father did not like video game consoles but he bought an Amstrad PC 1512 (yes, I’m that old) for work. That kind of forced me to learn computers if I ever wanted to play any video games. As computers became more powerful and complicated they kept requiring more skills until I became the resident computer expert in the family and eventually studied Computer Science in my local University.

Why did you start using Python?

I remember a friend from University introducing me to Python briefly, he just started up the REPL and typed 2 + 2 or something like that and showed me the python.org website. I tried to use it for one of my class projects but I didn’t have time to complete it and when I retook the class I chose PHP because it was all the rage at the time. I eventually graduated and worked for a bit as a developer but entered a rebellious phase and decided to become a CG animator.

While I was working in the UK as at a games company called Frontier Developments they switched from 3D Studio Max to Maya. Maya had just added a Python API to interact with it and part of my job was to write scripts to help in animation tasks, so I read through the Python tutorial and really liked it as a language, particularly compared with PHP and the languages embedded in Maya and 3D Studio Max.

Around the same time someone was leaving Frontier Developments and was giving away a copy of a Python book, I can’t remember which one, but it was thick and the cover was partly in Chinese although the text was completely in English. I read the whole book and started doing some more advanced stuff, eventually I discovered Django which I think was just getting really popular and decided to switch careers back to full time development with a focus in Python.

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

I’ve worked professionally with Ruby, Objective-C, JavaScript, and Typescript, all of which have things I like but none of them enough to say I enjoy working with. However, I discovered Elixir some years ago and it really did click for me. I really like its
pragmatism and directness which is something I really enjoy about Python but also the powerful concurrency model that the underlying Erlang VM provides. I wrote an article about their differences and similarities in case anyone’s interested.

What projects are you working on now?

Unfortunately, I don’t have a lot of time for Open Source these days, though my latest project is Sublime REST Client, a plugin for Sublime Text 4 that allows you to send HTTP requests directly from it by typing the HTTP verb and the payload.

Aside from that, I maintain a couple of libraries lunr.py and futureproof, although not as actively as I would like.

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

I would say asyncio is my favourite core library, it was a massive breath of fresh air into the language and spawned many new frameworks and ideas. I wrote a series of introductory articles about it when it first came up which you can find on my Medium page.

My favourite 3rd party library is tough one to pick. It would probably be a three way tie between urllib3, pandas, and attrs. I’ve reached for those consistently over the years and have always been useful and solid in terms of performance and behaviour.

How did you become a moderator for PyPI?

During the development of what is now pypi.org, codename Warehouse, I read request from Nicole Harris, Warehouse’s resident designer, for developers who would like to contribute in the Javascript side of things. Having worked with it and having some spare time I started contributing and slowly started to get involved with the PyPA.

Once the big switch happened we started getting issues unrelated to the Warehouse code and more to do with tasks typically reserved for admins. So the figure of a moderator was introduced and Dustin Ingram asked me if I’d like to be one so I accepted.

Is there anything else you’d like to say?

A while ago I realised that learning Python changed my life. Sounds a bit dramatic but it’s true.

I learned Python right as it was gaining popularity, it allowed me to change careers and get my first development job in the UK as a Python programmer working on Django and slowly branched out to other areas of development because of Python’s ecosystem and extensibility. The rich ecosystem and community were inviting and allowed me to progress further by contributing to Open Source which opened up even more avenues for me.

I’ll always have a special connection with Python.

Thanks for doing the interview, Yeray!