Friday, December 09, 2016

"Kurt Doesn't Drop The Ball": Thanks For Kurt Kaiser's 10 Years As PSF Treasurer

"We were all amateurs," recalls Guido van Rossum. In the early years of the Python Software Foundation, its founders were more interested in writing code than running a nonprofit. Guido says they only loosely tracked who had access to the bank account and who was responsible for filing paperwork on time. There were some close calls, and the foundation nearly missed some deadlines. That changed when Kurt Kaiser became treasurer, ten years ago. "Kurt straightened all that out."

When Kaiser took over the job, the PSF was a small foundation giving out a few thousand dollars a year in grants. The accounting was handed over to him without much explanation or support; he learned the system and grew it to what it is today. The PSF now awards dozens of grants a year totalling over a quarter million dollars. The foundation accepts money from PSF sponsors, PyCon sponsors, members, and donors; it provides financial aid to hundreds of conference attendees, covers fees, and acts as a fiscal sponsor to groups like PyLadies, lending its nonprofit status to these smaller organizations. Kaiser manages all these transactions. When processes become routine, he automates them with code. Board member Diana Clarke says, "He's more than just your typical treasurer; he's a developer plus treasurer."

Kurt Kaiser was a physicist throughout his career, and picked up Python as a hobby. His first great contribution was the code he wrote for IDLE, the development GUI that comes bundled with Python. At first he was a user and contributor to the project, but that changed in the wake of conflicts among its maintainers. "After the combatants of the IDLE war withdrew," says Guido, "Kurt became a lead developer. He had a much smoother personality." When the PSF needed a new treasurer, Kaiser was entrusted with the role. "He just got so into the cause," says Director of Operations Ewa Jodlowska. "He believed he was helping the greater good by helping the PSF."

This year alone, through the end of October, the PSF has awarded $260,000 to more than 50 entities. Kaiser administers this swelling stream of grants. The work is not all routine: a recent grant to PyCon CZ, for example, required special handling, because Czech bank account IDs have a different format than American accounts. Some grants pose extraordinary hurdles, like the PSF's support for a PyCon in Zimbabwe. Kaiser researched the United States' financial embargo of Zimbabwe, and the PSF concluded it could not sponsor the conference, but it could still lend support by sending a keynote speaker.

Each year, a new Board of Directors brings new ideas for funding Python advocacy, but these ideas can raise knotty questions about financial rules. According to Diana Clarke, it is tempting to balk at these complexities and simply say no, but Kaiser is always willing to research new options that meet the community's changing needs.

The PSF's mission is to advance the Python language, and increasingly it uses Python as a vehicle for promoting access to computer science for women, minorities, and members of underserved groups. For example, the PSF collects money on behalf of PyLadies, which allows them to operate under the PSF's nonprofit umbrella without going through all the paperwork. Clarke says, "The PyLadies auction raises money and then turns that around in the form of scholarships, and Kurt is the one who enables that. It's a nontrivial amount of work and it's very important."

The PyCon Financial Aid program is another way the PSF spends money to promote access to computer science. Guido van Rossum says, "What better use of that money, than to pay for people to come to the conference who couldn't otherwise come, people who are a good investment for the community?" The PSF awards $100,000 in scholarships to help people come to PyCon from all over the world. Kaiser administers these scholarships one-on-one: he disburses money, collects receipts, and receives conference write-ups from recipients.

When Diana Clarke worked with Kaiser at PyCon, she was struck at his singular role in the conference. He has to carry a briefcase of cash, and he manually writes hundreds of checks to ensure attendees receive their awards. Instead of being free to attend talks, Kaiser often sits in the hallway to be available when scholarship recipients need to pick up their money.

Kurt Kaiser is among the PSF's longest-serving officers. As Diana Clarke says, "He does so much for us, and most people don't have a lot of insight into what he does." On his tenth anniversary as treasurer, the PSF congratulates him and thanks him. From its early years as a small foundation through today, Kaiser has been a consistent and reliable steward of the organization's finances.  "For a long time Kurt was the only stable point," says Guido. "We know that Kurt doesn't drop the ball."

From left: Kurt Kaiser, Ewa Jodlowska, Meagan Sneeringer, Doug Napoleone, 

Hannes Hapke at The Multnomah Whiskey Library in Portland OR, PyCon 2016

Monday, October 24, 2016

Power Of "We": PyCon CZ Keynote Speaker Ana Balica

Next week Ana Balica will give her first keynote, but she isn't nervous. At least, not yet. "I definitely will be before going on stage," she says. "That’s a natural response; you can’t help it."

Balica is a Django Developer at Potato, a web agency in London. Although she is only two years out of university, she's making a name for herself as a programmer, community leader, and conference speaker. This month at PyCon CZ in Brno, Czech Republic, she presents "Humanizing Among Coders," a talk that describes five aspects of effective communication. "I hope it will get people talking about how they communicate, and believing they can make a difference by being empathetic."

Python and Ana Balica first met while she was studying software engineering at the Technical University of Moldova. Although the school focuses on C and C++, she tried out Python as a sort of snack on the side, and got hooked. After she graduated she spent her "gap year" enjoying two adventures at once. The first adventure was traveling Asia and Europe. Since she felt free of any responsibility, she went on a second adventure concurrently, expanding her skills with the "Learn IT Girl" mentorship program online. Her project for Learn IT Girl was an alphabet game for children that ran on Android phones. She built the first prototype with Kivy so she could write more Python.

A Shared Network for Women in Computing

Balica was a Google Summer of Code participant twice as a student and once as a mentor. Her project for GSoC was to create a new online platform for Systers. Systers is a community of over 3,000 women in tech, the largest such group in the world. Anita Borg founded Systers in 1987 as an email list for women in “systems”, but it has grown and diversified into a dozen subgroups such as Latinas in Computing, Black Women in Computing, and many others. In 2014 Balica began building a Systers Portal with Python and Django to give all these members and subgroups a unified platform to share news.

During her gap year, Balica continued to hack on the portal. "While I was traveling I had plenty of free time, so I was constantly doing something, improving things, adding new features." She returned to GSoC the following summer to mentor students who joined the project. Systers leader Rose Robinson was the portal's guiding visionary; she says Balica's coding ability is exceptional, and her leadership was crucial to the project's success. "When teams are in four different time zones, challenges are heightened, but Ana was never phased."

The Launch of a Speaking Career

Balica's first conference talk was at DjangoCon Europe, in Wales in June 2015. At first, she didn't intend to speak at the conference. She was filling out the registration form when she noticed the offer of free mentorship for new speakers. She could get help inventing a topic or structuring her talk. The DjangoCon organizers wrote on the site, "We don’t want to be proud because we had a lot of superstar speakers at our conference. We want to be proud because we were the conference where you began your superstar speaking career."

Ola Sitarska was Balica's mentor for her proposal. Sitarska says, "I was impressed with the level of detail she went into, and only advised about what the organizers might be looking for, as she didn't need much help!" Balica says about Sitarska, "I wrote her a couple of paragraphs and her response was three times longer, with a lot of encouragement a lot of little tips." Balica's talk on Django mixins was accepted and she had a blast presenting it to the audience.

Ever since that talk, Balica's speaking career has been accelerating. She attributes it to a snowball effect; she'd never intended to give so many talks. PSF director Anna Ossowski saw her speak at DjangoCon the following year, about testing with mocks. "It was excellent to see her on stage. She had a Shakespeare theme and it was more like an acting performance than giving a talk."

Code and Compassion

At PyCon CZ next week, Balica will give her first keynote, "Humanizing Among Coders," about making teams welcoming and productive for everyone. She'll offer five methods to improve our interactions, each illustrated with a story.

Her talk begins with beginners. How do we make them comfortable and mentor them? "Being a good mentor takes energy and it’s very, very complicated," she says, "and sometimes open source is not even the safest playground for beginners."

When we join a company or a large project, inevitably we confront a challenge that school did not prepare us for: legacy code. Balica says, "I want to talk about how people throw around criticism like, 'Oh, Mark wrote that. That was horrible.'" Blaming past coders is easy, and it excuses us from making the effort to understand why they made the choices they did. If we resist that temptation, we gain the power to understand the past and build a better future.

According to Balica, direct communication is the best way to build a culture of trust. "Being passive-aggressive is terrible," she says. In her keynote she'll illustrate direct communication with a parable, about a veteran coder named Mărioara reviewing a patch from a new contributor, Özlem. (Balica favors Eastern European names for the people in her parables.) When the veteran Mărioara sees flaws in the novice Özlem's patch, she fixes them herself before merging it, rather than telling Özlem what must be improved. Özlem is discouraged. She worries she isn't contributing to the project.

It would be better, in Balica's view, if Mărioara asked Özlem why she made the choices she did, and told her frankly how she needs to amend her code. Özlem is still in charge of her patch, in this scenario, and she gains insights about her craft that will ultimately make her a master engineer.

The final insight Ana Balica will share is the power of the word "we." Whether discussing a bug, an outage, a great new feature, or a punctual release, she advises us to attribute it to the team. "Simply use the 'we' pronoun. Slight difference, but it works."

By her friends' and colleagues' accounts, Balica herself is a role model for humanizing coding. Ola Sitarska works with her now at Potato in London. She says, "Ana is so friendly the room starts to shine whenever she enters it. She leaves people lovely handwritten notes on their desks." Anna Ossowski adds, "When I see her at a conference, she always comes right up to give me a hug and ask how I’m doing."

It might sound like Balica has empathetic coding all figured out, but her keynote won't offer pat answers. "I don't want just to give beautiful quotes on slides," she says. "I'm making the audience think deeper and come to their own conclusions."

Learn more about Ana Balica: