Thursday, August 10, 2017

The Ethical Maintainer: Community Service Award Recipient Glyph Lefkowitz


Glyph Lefkowitz was barely 20 years old when he promised himself, "I am never going to use a proprietary programming language again!" He had been writing a Java application for his first professional programming job, which he had started directly after high school. The firm was a mom and pop shop that sold inventory software. Glyph was hired to rewrite their application for a contemporary platform: Java's Abstract Window Toolkit. With the hubris of the young, he promised, "Sure, I can rewrite your whole application in a new language." He could do it working only four days a week, too, and make time to work on his multiplayer online game.

"I had a pretty terrible experience with Java," he says. In those early days of the Java AWT, on classic Mac OS it leaked a tiny bit of memory every time it opened and closed a window, and in his application, nearly every task a user desired required opening and closing a window. On the constrained Macs of the time, the application would crash after about 100 tasks, often taking the whole OS down with it. The AWT was proprietary, so there was no way to fix the bug himself. "I was fired," says Glyph, "because I was having a nervous breakdown over this."

The Birth of Twisted

Meanwhile, Glyph was also building his multi-user text adventure in Java. He wanted to rapidly experiment with varied gameplay logic, and to avoid constantly restarting the server as he tried new code, he built a system in Java that could load new modules at runtime. When, burned by his Java defeat, he switched to Python, he found that practically all of the Java code required to load modules and execute them simply disappeared.

The switch from Java to Python had another effect, which profoundly determined the direction of Glyph's career. He discovered async.

Glyph's friend James Knight, who would become an original contributor to Twisted, helped with the Python port. The initial code for the Python server ran a thread per player, but Knight used a select call to determine, within each thread, whether it was time to read a message from the player or send one. When young Glyph saw that code he was astonished. "It's doing two things at once! But it's also kind of one thing." After all the bugs he'd battled in his multithreaded Java, he thought, "Couldn't we just do one thing all the time?" He and Knight rewrote the entire game server as a single-threaded event loop. He liked how it simplified the code. Only one thread accessed a shared data structure at a time. His original motivation to use an event loop was not efficiency: rather, it was how much easier it was to make his code correct.

Glyph says that his strength, in his 20s, was knowing what he didn't know. His father is a programmer, and he taught Glyph that most programming techniques are already well-known. Therefore when Glyph and James Knight got their event loop working, Glyph thought, "Someone must have done this before." He searched on Alta Vista and found the ACE project, which included a C++ event loop. Glyph refined his Python event loop based on the best practices he found in ACE, and this became the basis for Twisted, which is now one of the oldest and most influential of all Python libraries.

Based on this early experience discovering that event loops were a well-known technique, Twisted's motto is "no new ideas allowed." Twenty years later, however, Glyph has begun to innovate on the margins. For example, his Tubes library implements asynchronous I/O as "flows" of data with flow control and backpressure. But when it comes to event loops, he says, "There's so much prior art that coming up with new inventions is not worthwhile."

Twisted's Influence On Python

In the second quarter of 2017, the Python Software Foundation recognized Glyph Lefkowitz with a Community Service Award for his work on Twisted and his contributions to the Python community. Nick Coghlan nominated him, saying that Twisted "predates almost all other Python event handling systems by years, and still has by far the most comprehensive set of network protocol handlers." The decade-long journey from PEP 342's generators-as-coroutines, which enabled Twisted's inlineCallbacks feature and Tornado's Futures, to native coroutine support with "async" and "await", began with Twisted. Coghlan says that evolution could be reasonably described as taking the concepts first embodied in Twisted and drawing them ever closer to the center of the language.

In 2012, Guido van Rossum began writing asyncio, an async framework for the Python standard library. He collaborated closely with Glyph, as well as Tornado's maintainer Ben Darnell, to incorporate their best ideas in asyncio. He was interested in Twisted's notion of a Deferred, but he couldn't seem to understand it. Glyph says that trying to explain Deferred to Guido "was the worst time I've ever had on a mailing list." Guido wrote, "I really don't get Deferreds. Don't bother pointing me to docs or tutorials; I tried and failed." He said that Glyph's "snarky tone is seriously affecting my ability to process your response." Then he went silent for a week.

Glyph was devastated. He felt like he'd been flamed and ghosted by the founder of the language itself. Then Guido suddenly returned to the mailing list, with what Glyph calls "the most trenchant and keenly observed critique of the Deferred module. It was possibly the best code review I've ever received." It was suddenly clear that Twisted's Deferred would interoperate just fine with the new asyncio event loop. "We were all on board."

Responsibilities of Open Source Programmers

Glyph is distinct among Python programmers for his outspoken views on ethics. In his 2015 PyCon talk he proposed that programmers write a code of ethics, similar to other professions such as medicine and journalism. If we don't, he says, "someone else is going to do it for us, and they are not going to understand our field well enough to do it correctly." Since software is eating the world and it influences nearly all economic activity, we have a grave obligation to write code ethically.

Open source programmers often think we owe our users nothing, because we give away code for free. But this attitude ignores the benefits that we've gained. "Being an open source maintainer has opened all sorts of doors for me," says Glyph. "Whenever anyone does anything with Twisted the credit accrues to me. That's not really accurate, because there are lots of other maintainers like Amber Brown, David Reid, Ashwini Oruganti, Jean-Paul Calderone, Moshe Zadka, and Christopher Armstrong." Regardless, anyone who releases open source code engages in a subtle exchange with users, which obliges the coder to uphold some responsibilities. In my conversation with him, Glyph identified three responsibilities for open source programmers: to make clear promises, to secure our code, and to release code of appropriate quality.

Open source maintainers are uniquely obliged to make clear promises. If a maintainer abandons a project, her main obligation is to announce her departure and to transfer control. "Being an open-source maintainer is not a life sentence," says Glyph. But it is irresponsible to make a worthy piece of software, gain users, then disappear without a word.

We also have a responsibility to protect our personal information security; for example, a Python project maintainer must protect her PyPI account so her users know they won't be hacked when they install her package. That responsibility is shared with the community's infrastructure maintainers, and Glyph cites PyPI as one of the best modern examples. "It doesn't get enough credit because of Python's checkered history with packaging," he says, "but the way Donald Stufft thinks about practical information security, and the other folks who work on PyPI as well, and the resources the PSF has invested there," have laid a foundation for securely distributing open source Python.

And finally, many of us set a low bar for the quality of code that we release: if the project scratched our own itch, we might as well open-source it. In Glyph's opinion, we must more carefully consider the impact of the code we give away, because we can't predict how it will be used. Glyph knows that many of the largest sites run Twisted somewhere in their stack, and he feels the responsibility keenly.

"A lot of our software completely escapes its originating context," says Glyph. The author might intend to release a mere prototype, but downstream packagers come to depend on her code, and other programmers even farther downstream might not know they depend on it at all. Of course, software users share some responsibility for auditing what code they use. "This responsibility is not black or white," says Glyph. "There's small tradeoffs and fractional proportions. It's not 100% yours or not, but you've got to think about it."

Monday, July 24, 2017

2017 Bylaw Changes

The PSF has changed its bylaws, following a discussion and vote among the voting members. I'd like to publicly explain those changes.

For each of the changes, I will describe  1.) what the bylaws used to say prior to June 2017 2.) what the new bylaws say and 3.) why the changes were implemented.

Certification of Voting Members
  • What the bylaws used to say
Every member had to acknowledge that they wanted to vote/or not vote every year.
  • What the bylaws now say
The bylaws now say that the list of voters is based on criteria decided upon by the board.
  • Why was this change made?
The previous bylaws pertaining to this topic created too much work for our staff to handle and sometimes it was not done because we did not have the time resources to do it. We can now change the certification to something more manageable for our staff and our members.

Voting in New PSF Fellow Members
  • What the bylaws used to say
We did not have a procedure in place for this in the previous bylaws.
  • What the bylaws now say
Now the bylaws allow any member to nominate a Fellow. Additionally, it gives the chance for the PSF Board to create a work group for evaluating the nominations.
  • Why was this change made?
We lacked a procedure. We had several inquiries and nominations in the past, but did not have a policy to respond with. Now that we voted in this bylaw, the PSF Board voted in the creation of the Work Group. We can now begin accepting new Fellow Members after several years.
Staggered Board Terms
  • What the bylaws used to say
We did not have staggered board terms prior to June 2017. Every director would be voted on every term.
  • What the bylaws now say
The bylaws now say that in the June election, the top 4 voted directors would hold 3 year terms, the next 4 voted-in directors hold 2 year terms and the next 3 voted-in directors hold 1 year terms. That resulted in:
  1. Naomi Ceder (3 yr)
  2. Eric Holscher (3 yr)
  3. Jackie Kazil (3 yr)
  4. Paul Hildebrandt (3 yr)
  5. Lorena Mesa (2 yr)
  6. Thomas Wouters (2 yr)
  7. Kushal Das (2 yr)
  8. Marlene Mhangami (2 yr)
  9. Kenneth Reitz (1 yr)
  10. Trey Hunner (1 yr)
  11. Paola Katherine Pacheco (1 yr)
  • Why was this change made?
The main push behind this change is continuity. As the PSF continues to grow, we are hoping to make it more stable and sustainable. Having some directors in place for more than one year will help us better complete short-term and long-term projects. It will also help us pass on context from previous discussions and meetings.
Direct Officers
  • What the bylaws used to say
We did not have Direct Officers prior to June 2017.
  • What the bylaws now say
The bylaws state that the current General Counsel and Director of Operations will be the Direct Officers of the PSF. Additionally, they state that the Direct Officers become the 12th and 13th members of the board giving them rights to vote on board business. Direct Officers can be removed by a.) fail of an approval vote, held on at least the same schedule as 3-year-term directors; b) leave the office associated with the officer director position; or c) fail a no-confidence vote.
  • Why was this change made?
In an effort to become a more stable and mature board, we are appointing two important positions to be directors of the board. Having the General Counsel and Director of Operations on the board helps us have more strength with legal situations and how the PSF operates. The two new Direct Officers are:
  1. Van Lindberg
  2. Ewa Jodlowska
Delegating Ability to Set Compensation
  • What the bylaws used to say
The bylaws used to state that the President of the Foundation would direct how compensation of the Foundation’s employees was decided.
  • What the bylaws now say
The bylaws have changed so that the Board of Directors decide how employee compensation is decided.
  • Why was this change made?
This change was made because even though we keep the president informed of major changes, Guido does not participate in day to day operations nor employee management. We wanted the bylaws to clarify the most effective and fair way we set compensation for our staff.

We hope this breakdown sheds light on the changes and why they were important to implement. Please feel free to contact me with any questions or concerns.

Monday, July 17, 2017

Welcome New Board Members

The PSF is thrilled to welcome six new board members, chosen on June 11 during the 2017 PSF Board Election. The PSF would not be what it is without the expertise and diversity of our board, and we look forward to seeing what our new members accomplish this quarter. Read on to learn more about them and their initial goals as PSF Board Members.


Paul Hildebrandt has been a Senior Engineer with Walt Disney Animation Studios since 1996. He resides outside of Los Angeles with his wife and three boys. In his first quarter, he hopes to serve the Python community by better understanding the well-oiled machine that is the PSF and by handling regular board activity. He desires to contribute by focusing on sponsorship and corporate involvement opportunities.


Eric Holscher is co-founder of Read the Docs and Write the Docs, where he works
to elevate the status of documentation in the software industry. He has hiked 800 miles of the Pacific Crest Trail, and spends most of his spare time in the woods or traveling the world. His wish is to focus on sustainability and to create a new initiative that will bring in sponsors who are focused on the sustainability of the ecosystem such as PyPI, Read the Docs, and pip.


Marlene Mhangami is the director and co-founder of ZimboPy, an organization that teaches Zimbabwean girls how to code in Python. Through her organization she has worked with the organizers of Django Girls Chinoyi and Harare, as well as PyCon Zimbabwe to grow the use of Python locally. Her goals for the quarter are to help connect, support, and represent issues relevant to Pythonistas in Africa. She will seek to increase the number of PyCons in the region and facilitate the inclusion of women and other underrepresented groups.


Paola Katherine Pacheco is a backend Python developer and organizer of Python groups such as PyLadies Brazil, PyLadies Rio de Janeiro, Django Girls Rio de Janeiro, Pyladies Mendoza and Python Mendoza. She runs a YouTube channel where she teaches Python in Portuguese. Her goals this quarter are to energize Python events for the Brazilian and Argentine Python communities, and to increase diversity by promoting education and events to women and underrepresented groups.


Kenneth Reitz is the product owner of Python at Heroku. He is well-known for his many open source software projects, specifically Requests: HTTP for Humans. He seeks to contribute towards the PSF's continued optimization of its operations, increase its sustainability, and the sustainability of the entire Python ecosystem.

Thomas Wouters is a long-time CPython core developer and a founding PSF member. He has worked at Google since 2006, maintaining the internal Python infrastructure. His immediate goal is to get reacquainted with the PSF procedures and the matters the board attends to, both of which have changed a lot since he last served on the Board of Directors. Longer term, he would like to work on the awareness of the practical side of the Python community: the website, mailing lists, and other help channels like IRC, as well as actual code development and services like PyPI.

Friday, May 19, 2017

2017 Frank Willison Memorial Award Goes To Katie Cunningham And Barbara Shaurette

Every year the Python Software Foundation awards the Frank Willison Memorial Award to a member(s) of the Python community. The purpose of this award is to recognize the outstanding contributions that Python community members have made having began as an award, “established in memory of Frank Willison, a Python enthusiast and O'Reilly editor-in-chief, who died in July 2001”.

The Python Software Foundation has awarded the 2017 Frank Willison Award to Katie Cunningham and Barbara Shaurette in recognition of their work creating Young Coders classes.  Cunningham and Shaurette have gone above and beyond making the Young Coders teaching materials freely available.

The program began at PyCon 2013 in Santa Clara and was an immediate success. The follow-up blog post is the second most popular post in PyCon's history by a wide margin. Additionally the event was one of the most talked about topics of the 2013 conference.

Lynn Root and Jesse Noller pitched the idea to Cunningham asking her to lead it. Cunningham  then reached out to Shaurette seeking her assistance, or as she said, “Omg help!”

Shaurette has experience teaching early childhood education. Her experience teaching younger students came in handy as she reworked materials used for adult classes into the materials the program uses today. The class includes Raspberry Pis, keyboards, and a mouse that the students were allowed to take with them, along with two books Python for Kids and Hello World! Computer Programming for Kids and Other Beginners.

The first class for students aged 10 to 12 did not go without hitches.  That year there were a lot of technical issues with the Raspberry Pis. Noah Kantrowitz saved the day helping Cunningham and Barbara getting the Raspberry Pi’s set up. “The setup is a little complex, but he set the guidelines for what equipment we use, and how we plan the classroom every year,” Shaurette said.

“There were moments setting up that I said, ‘I don’t know if this is going to work,” Cunningham  recalls.

That first class was eight hours. Then Katie and Barbara wrapped up and did it again the next day for a second a time with a whole new class.

By the end of the first day it was already a noted success. “The enthusiasm around it was insane. People were so excited that we were doing it. We were off in our own corner and not central to the conference, but people were stopping by and peeking in,” Cunningham  explains.

Once the kids were let loose to experiment, they tried all sorts of things.  “I don't think you'd ever see that kind of experimentation in a classroom full of adults, who would more likely do everything in their power not to break their computers,”  Shaurette wrote of the kids’ ability to learn, write, and run code.

The second day was a whole new class, but this time it was a group of 13 to 16 year olds, and just as successful. “One thing that I find is how energizing the kids get at the end,” Cunningham said.

Not long after that, Young Coders was approached by the PyOhio and PyTennessee organizers. Both conferences have held Young Coders nearly every year since.  Brad Montgomery has taken over responsibility in PyTennessee, but  Cunningham  still runs the workshop at PyOhio.

Since the start of the program  Cunningham  and Shaurette have taught over 400 kids!

We thank Cunningham and Shaurette  for their work in actively promoting and teaching Python to a new generation of programmers.

Thursday, May 04, 2017

Attending PyCon 2017? Consider Becoming a Sponsor!

As PyCon approaches, we would like to invite attendees and members of our community to join the Python Software Foundation as a sponsor. Your generous support enables the PSF’s mission to promote, protect, and advance the Python programming language.

Thanks to our current sponsors, some of our recent accomplishments include:

  • Organizing successful PyCons. Last year’s event brought together 3,388 attendees from 49 countries, a new record for PyCon! Our sponsors’ support enabled us to award $94,000.00 USD in financial aid to 142 attendees who would not otherwise have been able to attend. This year we were able to  expand upon our financial aid by awarding $111,653.00 USD to 194 attendees.
  • Hiring more staff. In addition to adding more blog writers to keep the public aware of the most recent PSF news, we have added an IT Manager to help maintain our growing infrastructure, as well as an additional accountant to deal with the high demand of requests for financial support from all over the world.
  • Funding great projects. So far this year we have approved $70,000.00 USD in grants to over 60 events. At this rate 2017 will surpass last year’s total of $265,000.00 USD in grants to 137 events in 45 different countries.
  • Acknowledging awesome Python contributors. Community Service Awards are given out quarterly, honoring individuals who support our mission. Read about recent CSA recipients on our blog.
  • Implementing a Python Ambassador program. This program provides funding for ambassadors to travel locally to perform Python outreach. This is currently in trial mode in South America and is going very well. If the trend continues, we will expand this program to additional locales.

We plan to continue our efforts in the coming years by developing fiscal sponsorship support for Python projects, implementing a Customer Relationship Management system to better communicate with individual PSF members, and continuing to support Python programmers worldwide.

We love to hear from happy sponsors about why they contribute to the PSF. Here are what a few have to say:

"ActiveState is proud to be a founding member and continued supporter of PSF. We recognize how important Python is for developers, IT administrators and data scientists--it continues to evolve and grow in popularity as a very powerful language with many use cases. We're excited about its future and helping the foundation's goal in advancing the language."
- Bart Copeland, ActiveState President & CEO

“Sponsoring PSF brings tremendous opportunities for the entire Python community to actively participate, connect, and engage in many meaningful ways. It’s an opportunity to enrich the language by encouraging active dialogue on future directions, and to nurture compelling new ideas and projects, support the accompanying logistics and infrastructure needs, and uphold the open source values of the community. Intel continues to foster innovation with Python and is committed to contributing to the growth of this vibrant ecosystem.”
- Sonali DeSouza, Product Manager - Intel® Python & Scripting tools team

“‘Work on stuff that matters’ is one of O’Reilly’s core principles, and we know how very much open source matters. The open source community spurs innovation, shares knowledge, encourages growth, and creates industries. The Python Software Foundation is a prime example of the power of open source, showing how focused, thoughtful, and consistent efforts can create  a community whose impact extends far beyond meetups and lines of code. O'Reilly is proud to continue to sponsor this great foundation."
- Rachel Roumeliotis, Strategic Content Director at O'Reilly and Chair of OSCON

“Delivering digital projects in Python is the core of our business; it solves the needs of our clients. The PSF does a fantastic job of protecting and investing in the future of Python. Sponsoring the PSF is how we not only give back for the past, but also protect our future.”
- Steve Hawkes, Director, Blanc LTD

If you value what we do at PSF, we hope that you too will consider becoming a sponsor. For details about PSF Sponsorship and to get started, please visit our Sponsors page.

Thursday, April 27, 2017

Brian Costlow, “the quietly amazing rock” Python volunteer: Community Service Award Recipient

Brian began volunteering unofficially, when he threw out a pile of pizza boxes. He was at PyOhio in 2009 when, as Brian recalls, “Lunch was delivered pizza and the organizers had to clean up after the conference. I felt bad that I had attended a great event, entirely free, so I started to help them sweep the floors and throw away the pizza boxes." The next two years Brian worked the conference as a volunteer. In 2012 he joined the organizing committee and he went on to chair the conference in 2014, 2015, and 2016.


The Python Software Foundation is pleased to present Brian Costlow with the 2017 Quarter 1 Community Service Award for:

RESOLVED, that the Python Software Foundation award the 2017 Q1 Community Service Award to Brian Costlow for his work organizing PyOhio, chairing PyOhio, and for being the head volunteer for PyCon US captioning.


A Jack-Of-All-Trades PyOhio Organizer


“I was working in IT for a large printing and media company when I started to use Python for a number of projects. I joined the Ohio Python Mailing List and when the planning for the first PyOhio began, I made plans to attend,” Brian recalls. Regrettably Brian was unable to attend the inaugural PyOhio conference. He did, however, attend the second PyOhio, where his volunteerism began with a simple act of cleaning empty pizza boxes. Since 2010 Brian has worked alongside PyOhio organizers like Catherine Devlin and Eric Floehr, the founder of the Central Ohio Python User Group, chairing the conference, recruiting workshops, seeking new speakers.


Katie Cunningham, one of the leaders of the Young Coders project, first met Brian when he invited Young Coders to join PyOhio. During their first year Young Coders encountered a few technical hiccups. Cunningham recalls, “Brian wasn’t fazed. He helped keep the room together." She adds that “he is one of those quietly amazing people who quickly goes from someone you know to someone you couldn't do without. In an industry rife with people who tend to be a bit flighty, he's a rock”.


On a personal note, I first attended PyOhio in 2015 as both an inaugural speaker and attendee. I was terrified. Following my talk I had the pleasure to meet Brian. He was excited to hear about my experience as a novice speaker and we continued our discussion after the conference. Brian has been continuously interested in learning how to recruit more women and underrepresented individuals to both attend and speak at PyOhio. What makes PyOhio unique as a place to begin one’s speaking or Python career is the simple fact that PyOhio is free to attend. According to Brian, PyOhio never deliberately set out to be accessible, “it just happened organically because the Python community really is a community, and we all wanted to give back to the community that gave so much to us”.


Continuing to Give Back at PyCon through Captioning


Brandon Rhodes, PyCon 2016 and 2017 chair, reached out to Brian a year early in 2015 seeking assistance with captioning. Brian, mindful of Rhodes's support for PyOhio, says, “Brandon has always been a great friend to PyOhio. So when he was selected as chair for PyCon 2016 and 2017, I reached out and said if there was anything I could help him with, I would gladly do it."


Captioning was a remote volunteer position in 2015. “Brian first helped out in Montreal and then took the lead in 2016 at Portland. Every year Brian takes part in the process, takes careful observations, and notes what works and what doesn’t,” Ewa Jodlowska explains. Given some of Brian’s feedback and other lessons learned at 2015 the PyCon organizing team opened to turn the captioning position into a staff position. “We learn lots year after year and make several improvements thanks to Brian's involvement,” Jodlowska adds.


Brian continues to work with the captioning staff team. He says, “If someone wants to get involved, just reach out to Ewa or me, we're always open to suggestions for improvement!"


Brian Costlow, by his willingness to work behind the scenes on jobs big and small, demonstrates the spirit of Python's community. It’s about supporting one another and always looking forward to doing things better and bigger that makes the community so vibrant.


croppedhead.jpg

Look for Brian at PyCon 2017! He may just want to share with you some exciting ways you can help with PyCon captioning in the future.

Friday, April 21, 2017

Community Service Award Recipient Ian Cordasco

The Python Software Foundation depends on its board of directors in order to function. Board members are elected every year by PSF voting members in a process run internally by non-board members. Ian Cordasco has been the PSF’s Election Administrator since 2015, volunteering his efforts for this important role. Cordasco is also a valuable member of the Python community, frequently mentoring newer coders and supporting their Python endeavors. For these reasons, the PSF is delighted to award the 2017 QA Community Service award to Ian Cordasco:


RESOLVED that the Python Software Foundation award the 2017 Q1 Community Service Award to Ian Cordasco for his contributions to PSF elections and active mentoring of women in Python community.


PSF Elections


Cordasco began as the PSF’s Election Administrator during a time of turmoil. “The first year I ran the election was something of a nightmare,” he recalls. Due to unforeseen circumstances, the previous Election Administrator stepped down on short notice and was unavailable to relaunch the election efforts. “Many people did not get ballots via email as they should. Some people were accidentally excluded from the voting rolls. Further, there was a lot of confusion because I stepped in at the last minute.” Without the aid of documentation and prior experience, Ian threw himself into the cause. The PSF has since reviewed, solidified, and documented the election procedures.


Since his dramatic start as Elections Administrator, Cordasco’s work with PSF elections has been much smoother. Mark Mangoba, PSF’s IT Manager, works closely with Cordasco during the election process. Mangoba notes, “Ian is a great volunteer. He does an excellent job with the elections, assuring that all votes are accounted for and that there is no fraud or issues of any kind.” Cordasco has also gotten creative with how he manages elections. For example, to reduce bias, he uses Python code to break ties and to randomize the order in which candidates appear to voters. Additionally, those that work with Cordasco describe him as an enjoyable collaborator. Mangoba explains, “Ian is energetic and thoughtful. His passion and enthusiasm for the PSF shows through, he’s always available to help and answer questions.”


Mentoring


Cordasco has a history of going out of his way to support and encourage female developers. When Carol Willing, a developer for the Jupyter project, wanted to work on the Requests library, she got in touch with Cordasco. “We worked together on the project and my first commit to the Requests library got accepted!” Cordasco later wrote a fantastic post about it on his blog.


Cordasco has also found newer coders to mentor at Python events, such as Anna Ossowski. “I met Ian at PyTennessee 2015, a day before I was scheduled to give my very first ever conference talk. Ian’s encouragement and support helped me a lot and it’s thanks to him and Carol [Willing] that I had the confidence to go up on stage and deliver my talk.” But his support didn’t stop there, Ossowski goes on to say, “every week he would reserve an hour for me where we would program together, he would answer questions, and just generally help me with any programming issues I experienced. Ian helped me get the PyLadies Remote website up and running, something I would have never managed without his help.”


Adrienne Lowe, a developer at Emma, has also enjoyed Cordasco’s support and encouragement. She recalls, “He models the kind of developer that we all want to be in terms of being encouraging and open.” She continues, “he sets himself apart by being genuine, welcoming, and happy to explain anything from simple things to more complex concepts, all in an ego-less way.”


The Python community as a whole is very lucky to count Cordasco as its member, and we hope he continues to help others contribute and achieve their goals.


CSA 2017 Q1 Winner Ian Cordasco

In his free time, you can find Cordasco blogging on his website, riding his bike, or reading books.