Thursday, October 12, 2017

Thomas Kluyver, Community Service Award 3rd Quarter 2017 Recipient

People love Python for its ease of use, breadth of modules, and vibrant community. These qualities are made possible by people like Thomas Kluyver who, during the course of his career using Python for scientific research, has identified and implemented various modules, upgrades, and enhancements to Python. He is also an active member of the Python community, attending conferences, participating in his local Python User Group, and contributing his expertise to Python Subreddits.

For these reasons, the Python Software Foundation has awarded Thomas with the Q3 2017 Community Service Award.

RESOLVED, that the Python Software Foundation Q3 2017 Community Service Award be given to Thomas Kluyver for his contributions to the Scientific Python Community. Thomas has also served on many other open source projects and is active on the Python subreddit helping many people in the Python community.

Contributions to Scientific Python

Thomas earned his Ph.D. in plant biology at the University of Sheffield in England. As a scientist, Thomas’ interest in programming stemmed from childhood where he learned QBasic with support from his father. During his Ph.D. program, Thomas became a regular contributor to Jupyter/IPython, working single-handedly to port it from Python 2 to Python 3. This caught the attention of Fernando Pérez, creator of IPython and co-founder of Project Jupyter, who just happened to be looking for a post-doc. “Given his amazing contributions even while he was still a student,” says Fernando, “I was looking for an opportunity to engage him more with the project.” Thomas accepted the offer to work with Fernando at UC Berkeley developing IPython and open source tools for science. Looking back Thomas recalls, “it was a great opportunity for me.” Thomas stayed at Berkeley for 2 years before returning to England for a position at the University of Southampton. There he continues to work on Jupyter and IPython and is also involved in the NGCM Summer Academy, teaching scientists a variety of computational skills in Python.

Contributions to Other Open Source Projects

Thomas has worked on a number of tools outside of his profession as well, such as Flit. Flit is a packaging tool which aims to make it simpler to publish your Python code on PyPI. This tool and the concepts it presents have led to discussions about standard interfaces for different packaging tools to work together better, documented in PEP 517 and 518. Nick Coghlan, a CPython core developer who has worked with Thomas in his efforts to help move the Python packaging ecosystem forward, characterizes Thomas contributions to Flit as “rather than just writing it as a standalone tool, Thomas worked hard to ensure that the underlying interoperability standards also evolved to make it easier to write tools like Flit, and that such tools integrate nicely with frontend installation tools like pip.”

Distributing applications to end users is still a weak point for Python, whereas distributing libraries and developer tools have become better equipped to handle this challenge in recent years. That is why Thomas built Pynsist, a tool to build Windows installers for Python applications. Pynsist can even build a Windows installer from a Linux system, which builds on the work of other projects like NSIS. Fernando says, “considering that Thomas is mostly a Linux user, this is a great example of how he does work that has great value to the Python community even beyond his immediate needs.”

Contributions to the Python Community

Thomas is a regular speaker at Python events around the world such as SciPy, PyData, EuroSciPy, and PyCon conferences. He is also involved in his local Southampton Python User Group. “Basically he's all over the community,” says Fernando, “helping others on the mailing lists, working on IPython/Jupyter, building multiple tools of great value to many, and teaching across a variety of spaces.” Fellow Jupyter/IPython developer and Flit collaborator Matthias Bussonnier agrees saying, “Thomas has always cared a lot about community and has spent hours teaching new contributors how to do things, even if it would take him less time to do them himself.”

Why Python?

Working on the Black Python
When asked why Python is his language of choice, Thomas explains, “It's a beginners language, but it's also a language that many experienced programmers are using to solve real problems. I also like the breadth of domains in which Python is used and the strong open source ethos in the community around Python.”

As if Thomas has yet to prove the full breadth of Python’s domains, Thomas recently participated in the World Robotic Sailing Competition. His team entered in their model sailboat, named the Black Python, which carries a Raspberry Pi to control the sails and the rudder. The Black Python took first place in the 'micro sailboat' class both this year and last. Read more about this project on their blog.

Despite these significant accomplishments, Thomas recognizes the support he has gotten over the years recalling, “I've benefited immensely from other people: from my father helping me to learn programming, to the IPython team welcoming me and bringing me into the scientific Python community, to the thousands of programmers whose open source code I've used.”

Community Service Award Winner 2017Q3 Thomas Kluyver

Monday, October 02, 2017

Python Software Foundation Fellow Members for Q3 2017

We are happy to announce our 2017 3rd Quarter Python Software Foundation Fellow Members:

Aisha Bello 
Brian Costlow 
Carol Willing 
Carrie Anne Philbin 
Cory Benfield 
Damien George 
Daniel Pope 
Daniele Procida 
Dusty Phillips 
Jackie Kazil 
Laura Cassell 
Lorena Mesa 
Łukasz Langa 
Peter Inglesby 
Ruben Orduz

Congratulations! Thank you for all of the contributions you continue to make. We have added you to our Fellow roster online. 

The PSF Fellow Work Group was established in July of 2017. This is the first set of Fellows the Work Group has reviewed and voted on. Since we are a new group, we spent a few months establishing policies and criteria.

The work group voted to review nominees 4 times a year:

  • Q1: January to the end of March (01/01 - 31/03) Cut-off for nominations will be February 20. New fellows will be announced before March 31.
  • Q2: April to the end of June (01/04 - 30/06) Cut-off for quarter two will be May 20. New fellows will be announced before June 30.
  • Q3: July to the end of September (01/07 - 30/09) Cut-off for quarter three will be August 20. New fellows will be announced before end of September.

  • Q4: October to the end of December (01/10 - 31/12) Cut-off for quarter four will be November 20. New fellows will be announced before December 31.

In addition to the schedule, we also voted on the following criteria:

For those who have served the Python community by creating and/or maintaining various engineering/design contributions, the following statement should be true:
Nominated Person has served the Python community by making available code, tests, documentation, or design, either in a Python implementation or in a Python ecosystem project, that 1) shows technical excellence, 2) is an example of software engineering principles and best practices, and 3) has achieved widespread usage or acclaim.

  • For those who have served the Python community by coordinating, organizing, teaching, writing, and evangelizing, the following statement should be true:
Nominated Person has served the Python community through extraordinary efforts in organizing Python events, publicly promoting Python, and teaching and coordinating others. Nominated Person's efforts have shown leadership and resulted in long-lasting and substantial gains in the number and quality of Python users, and have been widely recognized as being above and beyond normal volunteering.

  • If someone is not accepted to be a fellow in the quarter they were nominated for, they will remain an active nominee for 1 year for future consideration.

  • It is suggested/recommended that the nominee have wide Python community involvement. Examples would be (not a complete list - just examples):

    • Someone who has received a Community Service Award or Distinguished Service Award
    • A developer that writes (more than one) documentation/books/tutorials for wider audience
    • Someone that helps translate (more than one) documentation/books/tutorials for better inclusivity.
An instructor that teaches Python related tutorials in various regions
    • Someone that helps organize local meet ups and also helps organize a regional conference.
Nominees should be aware of the Python community’s Code of Conduct and should have a record of fostering the community.

  • Sitting members of the PSF Board of Directors can be nominated if they meet the above criteria.
If you would like to nominate someone to be a PSF Fellow, please send a description of their Python accomplishments to psf-fellow at If you send in your nomination before November 20, it will be considered in Q4. More info is available here.

We are still looking for a few more voting members to join the Work Group. If you are a PSF Fellow and would like to join, please write to psf-fellow at