2017 is drawing to a close and we are super-excited to start the official Python Developers Survey 2017!
We’ve created this survey specially for Python developers who use it as their primary or supplementary language. We expect the survey findings to help us map an accurate landscape of the Python developer community and to provide insight into the current major trends in the Python community.
Your valuable opinion and feedback will help us better understand how different Python developers use Python and related frameworks, tools and technologies. We also hope you'll have fun going through the questions.
The survey is organized in partnership between the Python Software Foundation and JetBrains. After the survey is over, we will publish the aggregated results and randomly choose 100 winners (from those who complete the survey in its entirety), who will each receive an amazing Python Surprise Gift Pack.
Tuesday, September 26, 2017
Monday, September 25, 2017
PyLadies is an international mentorship community for women that use Python. Started with a grant in 2011, PyLadies has continued to bring women into the Python community through a variety of methods, including hosting events in local PyLadies chapters as well as offering a grant opportunity to attend PyCon. One woman in particular has contributed to PyLadies' success, for which the PSF recognized her as a Community Service Award recipient for the 2nd Quarter of 2017:
RESOLVED, that the Python Software Foundation Q2 2017 Community Service Award to Lynn Root for her work as the founder of the San Francisco Chapter of PyLadies, a member of the Django Software Foundation, and as a tireless volunteer at PyCon.
PyLadies in the early days, the Start of the San Francisco Chapter
If you can name one person associated with PyLadies, it is Lynn Root. Lynn’s relentless support, organizing, and evangelizing on behalf of PyLadies is known by many. “Lynn’s enthusiasm and passion for bringing more women into tech are well complemented by her organizational skills, which were especially needed at pivotal moment in early PyLadies history. Lynn helped grow PyLadies into, what is now, a global organization that’s had a huge impact on the Python community,” PyLady Esther Nam, one of the founders of the PyLadies Los Angeles chapter, explains.
In late 2011, Lynn began learning to program, as some of graduate programs she was considering required her to have some programming expertise. “I reached out to San Francisco’s Women Who Code to organize a Python study group,” Lynn recalls, trying to find like-minded women to join. She had used Python in a weekend hackathon and found it to be a beginner friendly language. The following year, in 2012, PyCon was held in Santa Clara. “Lynn reached out and organized a carpool of Bay Area Pythonistas to attend the conference”, Esther remembers. PyLadies from the first chapter in Los Angeles attended, where Lynn met with them to learn more about PyLadies. The next month, she founded the San Francisco chapter. Lynn continued to act as a principal organizer for PyLadies San Francisco for the next four years.
Growing PyLadies in the Global Community
Overlapping with her time as PyLadies San Francisco lead organizer, Lynn championed other significant projects including the creation of `pip install pyladies`, the PyLadies open source kit for new organizers. The development of open source tools for PyLadies has been instrumental in getting the word out about PyLadies. Lynn was able to use these tools to help start international PyLadies communities in Stockholm, Zagreb, and Brno.
Lynn also took an active role in bringing PyLadies content to PyCon. During Lynn’s first term on the Python Software Foundation Board of Directors in 2013 to 2014, Lynn helped plan and run the first PyLadies Charity Auction at PyCon. Months of work go into organizing the charity auction; it requires donations to be procured beforehand, besides auctioneering on-site. The inaugural PyLadies Charity Auction raised $10,000.00 USD for PyLadies. Commenting in a 2013 press release about the auction, Atlanta PyLadies founder Laura Cassell explains, “we're all so resourceful already that I suspect this money is going to go a long way towards helping women who want to get into the industry. I'm still a little misty-eyed at the whole thing, to be honest."
Besides her PyLadies work, Lynn has been a speaker at PyCon four times, PyCon Lightning Talk Chair since 2014, frequent session runner, and recurring PyCon volunteer.
PyLadies Benevolent Dictator for Life?
I asked Lynn if she has ever been called the PyLadies Benevolent Dictator for Life (BDFL). Lynn shook her head, she does not see herself in that fashion. But it is hard to refute the strong footprint she has left on the PyLadies community. Lynn has written several Python open source tutorials, like the web scraping with scrapy and postgres, that are often used in PyLadies workshops and are highly visited (over 65,000 times to date this year!), and has spoken at PyCons around the world: EuroPython, PyCon Finland, and PyCon Brasil. Lynn was the original PyLady I consulted with when starting the PyLadies Chicago chapter in 2014.
From founding her local PyLadies chapter, to volunteering at PyCon, to catalyzing other initiatives like the Django Software Foundation, Lynn has been an unwavering advocate for women in the Python community and for the broader Python community itself. The thing that Lynn says has been most satisfying for her as a Python community organizer and advocate has been the rise of women in Python. “In 2012 only 8% of speakers at PyCon were women now in 2017 we have approximately 33%”.
With the rise of PyLadies at PyCon and throughout the world, it’ll be exciting to see what comes next for the PyLadies community and for those that have helped make PyLadies such a tremendous success.
Monday, September 18, 2017
The PSF is excited to announce its first ever membership drive beginning on September 18th! Our goal for this inaugural drive is to raise $4,000.00 USD in donations and sign up 3,000 new members in 30 days.
If you’ve never donated to the PSF, you've let your membership lapse, or you've thought about becoming a Supporting Member - here is your chance to make a difference.
Join the PSF as a Supporting Member or Donate to the PSF
You can donate as an individual or join the PSF as a Supporting Member. Supporting members pay $99.00 USD per year to help sustain the Foundation and support the Python community. Supporting members are also eligible to vote for candidates for the PSF Board of Directors, changes in the PSF bylaws, and other matters related to the infrastructure of the foundation.
To become a supporting member or to make a donation, click on the widget here and follow the instructions at the bottom of the page.
We know many of you already make a great effort to support us; you volunteer your time to help us keep our website going, you join working groups to help with marketing, sponsorship, grant requests, trademarks, Python education, and packaging. Even more, you help the PSF put on PyCon US, a conference we couldn’t do without the help of our volunteers. The collective efforts and contributions of our volunteers help drive our work. We will forever be grateful to the people who step forward and ask, “What can I do to help advance open source technology related to Python?”
We understand that not everyone has the time to volunteer, but perhaps you’re in a position to help financially.
We’re asking those who are able, to donate money to support sprints, meet ups, and community events. Donations support Python documentation, fiscal sponsorships, software development, and community projects. They help fund the critical tools programmers use every day.
If you're not in a position to contribute financially, that's ok. Basic membership is free and we welcome anyone who would like to join at this level. Register here to create your member account, log back in, then complete the form to become a basic member.
What does the PSF do?
- We fund great projects. So far this year we have approved over $200,000.00 USD in grants to over 140 events worldwide. We’re on track to surpass last year’s total of $265,000.00 USD in grants to 137 events in 45 different countries.
- We organize and host PyCon US. This year’s event brought together 3,389 attendees from 41 countries, a new record for PyCon! Our sponsors’ support enabled us to award $89,000.00 USD in financial aid to 194 attendees.
- We celebrate awesome Python contributors. Community Service Awards are given out quarterly, honoring individuals who support our mission.
- We implemented a trial Python Ambassador program that we hope to expand in the next year. This program provides funding for a dedicated Pythonista to travel locally to perform Python outreach.
- We provide fiscal sponsorship support for Python projects, where the PSF collects targeted donations and reimburses expenses on that projects' behalf.
- We support Python programmers worldwide by funding sprints and workshops that enable people to work on Python-related projects that advance the mission of the PSF.
Here is what one of our sponsors has to say about why they contribute to the PSF:
“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, Vice President at O’Reilly Media and Chair of OSCON
Lastly, if you’d like to share the news about the PSF’s Membership drive, please share a tweet via the tweet button here:
Tweet for the PSF Membership Drive
Or share a tweet with the following text:
Donation & Membership Drive @ThePSF. Help us raise $4K and register 3K new members in 30 days! http://bit.ly/2h3dxpb #idonatedtothepsf
We at the PSF want to thank you for all that you do. Your support is what makes the PSF possible.
Thursday, September 14, 2017
By Anwesha Das
February 2017 marked the beginning of a new journey for a new regional Python Conference - PyCon Pune.
PyCon is the meeting place for community. It gives Pythonistas an opportunity to come out of the virtual world and meet the real people behind the nicknames and the handles. It gives them an opportunity to learn new things and share their knowledge with others.
Considering the vast geographical territory of India, a single PyCon event wasn’t sufficient. PyCon Pune offered the Python community another chance to interact.
It was a four-day event; the main conference on the first two days and development sprints the second two. It was a single-track event, so all 550 attendees could attend all the sessions.
The inside story:
Pune, also known as the Oxford of the East, is amongst the fastest growing cities in the Asia Pacific region. Pune witnessed this PyCon at a hotel called Amonora, the Fern. The venue was beautiful, and we were grateful to have it: just a few weeks before the conference began, we were afraid we would have no venue at all!
The event had been located at one of oldest engineering colleges in Pune, but the venue canceled two weeks prior to the conference. Not quite the kind of news any organizers would like to hear, last minute (I can vouch for that, I was one of them).
Python Software Foundation then extended its hand to help. Team PyCon Pune as well as the Python community in India cannot thank the PSF enough for this.
PyLadies in PyCon Pune:
The PSF has always been a huge supporter of PyLadies. This time, they offered to share their booth with us. PyLadies had a huge presence at the event. From volunteering, to management, PyLadies were there everywhere. Yes, “Python is for girls.” And if we PyLadies need support in the face of a crisis, the PSF is there to hold us.
United we stand:The first ever thing that we decided for the conference was the quote to be used on the conference t-shirt.
“Came for the language, stayed for the community”, by Brett Cannon
This set the tone of the conference. The conference is a completely volunteer-driven event: the website, finance, AV and the overall management were run by volunteers, celebrating the community in the truest sense. Help poured in from pythonistas worldwide. The logo was designed by Ryan Larch from Australia. Python communities from all over India along with Python Pune and PyLadies worked tirelessly together to make the event a success. These people keep the soul of Python (the community and language) alive.
Day 1 and Day 2 of the main conference:
With a welcome note by Kushal Das, the chair commenced the conference. The first keynote was by Honza Král. He talked about his journey in the open source world. It was interesting to know about his hurdles and how he overcame them. It is also always inspiring to see at masters were students once too. Next, Anand Chitipothu taught us to write beautiful code.The post-lunch session began with the keynote by the “official Perl guy” of the Python community, John “Warthog” Hawley, who described the path from software to hardware hacking.
The day ended with an enchanting experience - a keynote by Pravin Patil, a teacher who uses Python to teach Physics. Python plus Physics plus a Laser equaled magic in his presentation.
Katie Cunningham began Day 2, followed by the Economics Professor Stephen Turnbull. He has helped to develop Ghostscript, XEmacs, Python, and GNU Mailman. He offered a word of encouragement to us saying, “You can help develop Python - and you should!” After lunch, Nick Coghlan delivered his keynote. He discussed “opportunities and challenges in open collaboration.” The last keynote talk was by Terri Oda, about security in the open source world.
This led to the end of the main conference. The mentors for the dev sprints spoke on what they were going to work on. An open feedback session marked the close of the main conference.
Day 3 and Day 4 of the Developers Sprint
For sprints, the conference moved to the Red Hat office in Pune. A dozen projects added features and fixed bugs during the final two days of the conference. The sprints had proven to be the most popular portion of the conference: Tickets had sold out within a week.
The Red Hat office looked like a hackerspace over the weekend. People were coding, learning, having fun and celebrating Python. It was the first ever dev sprint experience for more than 95% of the attendees. It took most of the people to some time to understand what is going on and how they could participate.
Slowly folks started flocking around different mentors. There were good number of people gathering around Nick—many Pythonistas have a dream to become CPython core developers. More than 10 patches were submitted to the language. Web.py, ElasticSearch, Django, es-django-example, OpenCabs, Pagure and micropython held sprints as well. The actual number of patches submitted can be found here.
I took shelter in the micropython and hardware room, where we were worked on fun bunny boards with esp8266 devices. John was there guiding us, changing our lives (my life for certain) with blinking LEDs. The best surprise came at the end. He gave each of us a bunny board. What a lovely souvenir to take home!
The conference is intended to give people the feeling of community. The event is over but the spirit is hasn’t diminished. Please join us next year for PyCon Pune 2018, February 8 - 11.
Wednesday, September 13, 2017
It has been three years since I first learned about PyCon. I watched some workshops and talks and I was amazed by how inviting, open and inclusive the community was. In fact, that was one of the key aspects that inspired me to learn Python, use it, help build the Python community here in Mexico.
Fast forward to the beginning of this year: I was contacted by the organizer of LinuxChix in Mexico, who is also member of PyLadies, with the idea of organizing a PythonDay in Mexico. This first PythonDay, she suggested, had the purpose of bringing a PyCon to Mexico. We eventually found another woman who shared the same ideal and we set about working to bring the Mexican Python community to an event that, hopefully, inspired them to be better Pythonistas the same way the first PyCon i witnessed did to me.
We first wondered how big of a community we had in Mexico. Despite being involved with Python for three years I barely knew the people or meet ups, apart from PyLadies, in Mexico devoted to the language. We figured that with Mexico being a country of 130 million there was large chance there would be a sizable population interested in Python. Along the way we discovered that the Python community in Mexico is not only vast, but also scattered across the nation. These reasons only encouraged us more to organize a PythonDay, it would be a great starting point to bring together the community.
Who came to PythonDay Mexico
We selected June 10, 2017 as the day for the first PythonDay Mexico. People from all over the country came to meet their fellow Pythonistas and listen to the amazing talks we selected for this year.
Initially we expected about 160 people, but we could not have been farther off! Over 400 people registered for the event and in its peak, approximately 300 Pythonistas were in attendance. We were glad to learn that 30% of the attendees in the event were women, which is not a high number, but in comparison to the roughly 15% of women in technology it gives hope to learn that many women are interested in programming.
Attendees traveled up to 1270 miles to attend PythonDay Mexico. In terms of geography there were attendees from Sinaloa, Jalisco, Hidalgo, Nuevo Leon, Puebla, Mexico City and Yucatan and every one of them was excited to hear the talks and workshops as well as to meet other Python lovers.
During the event we did not have any incident or complaint; everybody followed and honored the Code of Conduct lending to a greatly collaborative. Honestly we could not have asked for a better audience. But then again, Python communities all over the world are like this, awesome.
A Global Selection of Python Speakers
PythonDay Mexico had an amazingly diverse set of speakers. We had people from Paraguay, India, USA, Italy, Germany and Mexico. Even if our speakers could not be physically present, they made efforts to actually engage and interact with the audience in their remote presentations. Many of our remote speakers are a part of the Python Software Foundation Board of Directors like Naomi Ceder, Trey Hunner. Board member Lorena Mesa gave her talk in person.
Topics covered by the talks and workshops included data science, machine learning (e.g. deep learning), CPython, Python core development, Python in web development, Python extensions in other languages (Rust, Go), Testing, building bots with Python and getting Python ready for production. The range of topics permitted a bit of something for everyone.
We at PythonDay want to thank everyone that helped make this possible. The organizers spent many months talking, planning, getting funds and convincing people that Mexico is a great place for Python. The PSF was a major player in the making of this event, given that not only were they one of our major sponsors but were also a wonderful source of speakers, advice and even promotion of the event. Of course the speakers and volunteers were also a huge part of the success of this event. Finally, the event would not have been possible without the attendees, without them the event would only have been a bunch of speakers and swag.
Our mission after PythonDay Mexico is to bring a PyCon to Mexico and to keep connecting all the people interested in Python within Mexico with programming and events. For PyConMx we are actively seeking volunteers and organizers, if you'd like to help us or learn more you can contact us at email@example.com or firstname.lastname@example.org, we really hope to hear from you!
Wednesday, August 30, 2017
Python in Nigeria
In 2015, the PSF sponsored the first Python event in Nigeria - the Codesses Workshop in Lagos. In 2016, the number of events increased to 13, and there have been 28 events funded so far in 2017! What has happened in the last 2 ½ years to create such a demand for learning Python in this part of the world?
I spoke with Aisha Bello about this. She serves as vice-chair for the Python Nigeria community. She has helped co-organize and support a number of Django Girls workshops in Namibia and Nigeria, and also co-organizes PyLadies Nigeria. Aisha is enthusiastic about the Python community, with a strong desire and passion for social change, women’s tech education and empowerment in Africa. She currently works as an Associate Systems Engineer for Cisco Systems.
Sharing his thoughts as well, is Chukwudi Nwachukwu, PSF Board Director, and Team Lead Integrations, TechAdvance. He is also a volunteer member of the PSF Grants Work Group, helping to review requests from Africa and all over the world. He has also been invited to speak at PyCon NG in September. When I asked why he’s passionate about Python, he said, “Python is easy on the brain and I thank Guido [van Rossum]for such a concept.”
Python + Community
|Smart Girls Project|
According to Aisha, Python is popular in Nigeria because it’s one of the easiest ways to learn programming. Knowing how to code opens up many career options. The advantages of open source software are becoming more well-known in this region, and have allowed the community to grow because they’re not tied to any one vendor. She notes: “What we have is community. It means a lot to people that there is a common place or forum where they’re not afraid to share their struggles and ideas with people with like minds. We took the Python language and community and made it our own.”
|Django Girls Lagos|
Chukwudi believes that “the recent urge for more women to be in the workforce of Nigeria through IT has been a huge factor in the growth of Python programming. The Federal Government of Nigeria has also keyed into this drive by choosing Flask as a framework of choice to be taught in their Npower programme.” In addition, Django Girls events nationwide, startup companies incorporating Python as part of their stack, and IT companies training people to code in Python, have all made Python a leading programming language in Nigeria.
Funding for Events
Aisha and Chukwudi agree that getting funding for events in Nigeria is challenging. Often, it’s startups that come forward to help sponsor events. Aisha believes that “By creating more awareness and putting ourselves more out there, we’re hopeful things will change. Organizations like Github, the PSF, and the Django Software Foundation believe in us, and sponsor our events even when no one else will.”
Fortunately, the Django Girls Foundation offers help through their Organizer’s Manual and a template for how to run a workshop: the Coaching Manual. These documents provide a framework to help groups get started. Having a professional-looking proposal goes a long way toward convincing organizations to support these events.
Many of the participants of these workshops have gone into IT careers, received internships, become mentors, organized workshops, and are actively involved in helping out the community. Outreach to girls in primary and high schools is working too. Girls are learning to program in Python, and most importantly, they’re learning how to use the tools to continue in their journey toward a career.
One very real example is what Abocoders did in collaboration with DjangoGirls in Lagos. Girls who had been displaced from their homes due to Bokoharam in the North were able to learn about computers and programming. In addition, they each got a refurbished computer to use during and after the workshop.
#GirlCodersRock came out of one of the events. An attendee of a Django Girls event in Nigeria is now an intern at TechAdvance, where Chukwudi works. She’s now coding Python full time. There are many Python-related jobs being advertised right now in Nigeria - Google Nigeria and Upperlink are hiring, and Alljobs.ng has 40+ listings. It looks like the trend will continue.
Chukwudi has seen a large increase in members both on slack channels and mailing lists. The community is very excited about the first PyCon Nigeria, September 15-16, 2017, in Lagos. It’s the largest gathering for the Python community in Nigeria, and is organised by members of the Python Users Nigeria Group, a nonprofit organisation dedicated to advancing and promoting the use of the Python programming language in the country.
|Django Girls Lagos|
Chukwudi suggested that I speak with a woman he mentors, Hamdalah Adetunji, about her road to a career in programming. She explained: “It is all a step towards growth and progress, but I hope one day in the near future, I get to do more than wish I wasn't the only female on the team. I hope to mentor women to give back the amazing support I have received all through my journey, and also let them know they can be anything they want to be as long as they are focused and determined."
Thursday, August 10, 2017
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 TwistedMeanwhile, 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 PythonIn 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 ProgrammersGlyph 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
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:
- Naomi Ceder (3 yr)
- Eric Holscher (3 yr)
- Jackie Kazil (3 yr)
- Paul Hildebrandt (3 yr)
- Lorena Mesa (2 yr)
- Thomas Wouters (2 yr)
- Kushal Das (2 yr)
- Marlene Mhangami (2 yr)
- Kenneth Reitz (1 yr)
- Trey Hunner (1 yr)
- 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.
- 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:
- Van Lindberg
- 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.