Introducing Paul Everitt, PyCharm Developer Advocate
Please welcome our new PyCharm Developer Advocate, Paul Everitt! He brings a ton of experience from the Python and web worlds so we couldn’t miss the chance to interview him. Get to know Paul in this short Q&A.
Hello Paul and welcome to the JetBrains team! For those who don’t know you, can you tell us a bit about yourself and your background?
I’m Paul Everitt, long-time Python and web guy. In the early 90s I was a young Navy officer, which was a great experience, not the least in that I wound up working on the “Navy Internet,” which around 7 people understood. In 1993 I started www.navy.mil. At the time it was listed, it was one of around 200 public web servers. I needed a scripting language for the predecessor of CGI. There was a Perl book, but that’s not how my brain works. I downloaded the Python tutorial and taught myself using an 80286 laptop that I hauled to France, visiting my later-to-become wife. Really, it’s surprising she ever talked to me again.
Some Python-related stuff: I attended the first workshop in 1994, bootstrapped the Python Software Foundation and Plone Foundation, started an open source company in 1994 which released the first open source application server (Zope), got around $14M in venture funding, left to live in France for four years, then formed a consulting company with the creators of Pyramid.
So I’m old. My wife and I have a son and daughter. We live in Fredericksburg, Virginia, where I also coach girls’ lacrosse, the fastest sport on two feet. I have an unhealthy addiction to watching my college’s football (American flavored) team. I’m a dog, not a cat.
How did you find out about the Developer Advocate role for PyCharm and what interested you the most about the position? What will be your role and responsibilities?
Like many others in Python over the years, I tried multiple times to kick the Emacs habit, but all the other Python editors and IDEs generated more pain than they alleviated. I heard about PyCharm and decided to try one more time, expecting to be disappointed. It was a wonderful experience from the get-go, which was truly a surprise, so much that I started badgering people during my speeches to use it. I met Dmitry Filippov at a PyCon, then saw him again, then saw him again, and grew to appreciate how he did things. He invited me to give the first PyCharm webinar, which was quite fun.
I haven’t worked for someone per se since my Navy days, but a few months ago, I realized I wanted to get out of consulting and work with a team on a product that one could be proud of. At the same time, Dmitry reached out to me about becoming PyCharm Developer Advocate. There really wasn’t any product that I was as passionate about as PyCharm, and I’ve enjoyed the team over the years, and the responsibilities are just what I was looking for. Really, it was the opportunity I most wanted but didn’t know existed.
I have always enjoyed people as much as writing code, particularly listening and helping explain. Python has changed since the 20 or so of us met at NIST in 1994. The growth is staggering. As it reaches the mature part of the market, tools like PyCharm are exactly what the mainstream needs. It’s an exciting time.
Tell us more about your experience with PyCharm and what you’ve been working on.
I have been a paid customer for years, primarily using it for Pyramid web applications. Around 2 years ago I started doing polyglot Python projects, with the front end moved out to things such as AngularJS. Because of PyCharm and JetBrains’ multi-tool story, I was just as productive outside of Python as inside of Python.
For Pyramid I did a good bit of documentation writing for the tutorials. This was also a breeze in PyCharm.
What are your favorite PyCharm features that you can’t imagine working without?
It’s funny, the first thing that got me to stick with PyCharm was tabs. As an Emacs guy, I just didn’t want to switch buffers all the time, which made me look at IDEs. But other tools had something in their tabs that, after ten minutes, would rub you the wrong way. I found, and still find, that PyCharm pays attention to the small details and refinements on tabs in ways that other tools don’t. It’s reflective of the mindset that I think PyCharm has, where things aren’t just done, they are done well, and stay done. It’s a trait that has to be part of a product company’s DNA and culture, and it’s the kind of trait that pragmatic, professional developers demand. They don’t want to fiddle, except when they do, and when they do, they want it to work, no alarms, no surprises.
Beyond that, I’ve been impressed at how well PyCharm has kept up with the leaps forward in Python and the Python community. I’m also intrigued by PyCharm Edu and that kind of outreach.
How much time did it take you to learn PyCharm from scratch? Do you think it’s worth investing your time in learning the tool?
I had several iterations of taking long chunks of time off from work and immersing myself in PyCharm, on both the Python side and the JavaScript side. In some cases you are unlearning old habits. In other cases, you are absorbing techniques that have been around forever, but you never got around to learning. There’s still a bunch of goodness in PyCharm that I haven’t scratched the surface on.
I absolutely think it is a wise investment. Similar to paying for PyCharm itself. I’m a professional, and customers expect me to be effective. Buying a quality tool and updating my skills with it are obviously part of the profession.
What trends do you see in Python as a language? Where is it heading? What’s your opinion on latest changes?
I’m from a web background, and there, Python now exists in a polyglot environment with JavaScript as a first-class citizen. PyCharm is a boon in this reality. This is an area in my job that I’m interested in: helping to explain this ‘polyglot’ future to the Python community. It’s fun seeing ES6, ES7, etc. and all the ways (e.g. async/await, list comprehensions, imports) that Python and JavaScript are lining up.
In a larger sense though, I think Python ease-of-learning has wrapped up its position as the first language to start with. That has a huge number of implications for the next 3-5 years. In a way, I think getting Python 3 behind us (and with 3.4, I think that tipping point was reached) was crucial. People can start with Python 3.
The asyncio and async/await additions show that Python is capable of maturely evolving to cover modern uses without becoming un-Pythonic. That’s a challenge when you reach a dominant position. It’s hard to move.
If we look at the modern Python web frameworks, what trends do you see? Which is your favorite one?
I’m a Pyramid guy, and so I’m happy to see that it’s chugging right along with a bigger community and regular releases. But I find the whole field of Python web frameworks fascinating. Django has been able to keep current and evolve while keeping tremendous popularity, and also helping spawn the biggest improvement in Python, which is diversity in the community. Flask continues to grow and spawn a huge number of interesting and mature add-ons. Beyond that, the landing and evolution of async in Python 3 is stirring the pot in exciting ways.
Python is an open-source project and everything around it is open source as well. In your opinion, how does the open-source concept influence and shape the enterprise software? Have you used any open-source projects in your professional career?
As mentioned above, I’m an oldster when it comes to open source and business. We didn’t really do a good job coming up with an open source business model that would churn out the big bucks required when you get funding. Recently I’ve seen some high-profile Python people starting to get jaded about open source and business. Some people seem to expect long-term quality software, for free, and then expect you to write their project for them in StackOverflow, and berate you when you don’t.
I’m eager to get started with this. What’s the best PyCharm can be? What’s the biggest impact we can make on the most important audience? Can we go even further on the motto of “Develop With Pleasure”? Fun times indeed.
Thank you for the interview, Paul!
We’re thrilled to have Paul on our team and wish him the best of luck as a Developer Advocate! If you catch him at a conference, go ahead and ask all your questions. Follow and ping him on Twitter, too.
Develop with Pleasure,
PyCharm team