# 09 Jan 2020, 04:09PM: Everyone Has Bugs To Report, Everyone Has Bug Reports To Accept:
I was partway through college. I was taking a class about US films of 1939 and their social/historical context. The professor said something in a lecture about Upton Sinclair. I went to his office hours and checked: had he meant Sinclair Lewis? He had! And in the next lecture, he said: I made an error last time, I said Upton Sinclair when I meant Sinclair Lewis in [context], Sumana corrected me, thanks Sumana!
And then several weeks later, we were discussing some movie and I raised my hand and said something about a male character seeming "effete" but I pronounced it like "eff et", like the "ette" part was like how you pronounce the end of "suffragette". I think I'd never heard it aloud before, just read it. Classic autodidact pronunciation mistake.
And Professor Michael Rogin said: what?
And I said: Effete. Like, effeminate.
And he said: Oh, you mean effete! [And he pronounced it like "ef-feet".] But you corrected me about Sinclair Lewis before, so it's fine. And then we carried on the actual conversation and I didn't feel bad. It was like: well, we've both made mistakes and corrected each other, and we're fine, and let's talk about the substantive point now.
I'm using italics instead of quotation marks here because I'm sure my memory is paraphrasing. My point is: Professor Rogin, you made me feel okay about taking that particular bug report, may you rest in peace, and I still remember the nonchalant humility and self-confidence you demonstrated and encouraged in me.
# 02 Jan 2020, 03:53PM: 10+ Years Later:
Back in 2009, my spouse and I edited and published an anthology of original speculative fiction and art called Thoughtcrime Experiments (here's why, and how you can do it yourself).
I wrote some followup posts: a few months later, a little after that, one year later, four years later, five years later. It cheers me whenever I meet one of our authors or artists in person. And I get to brag about the Ken Liu story we published and how (as he keeps saying) TE publishing that story was a huge turning point in his writing career.
There's a newish New York Times piece today about Liu's work as a translator, bridging the worlds of English- and Chinese-language scifi. His experience, fame, and connections as an author of speculative fiction help him advocate for Chinese-language science fiction in Anglophone markets.
We planted seeds more than a decade back, and they're still sprouting.
In the last few years I made, encouraged, and promoted performance art about making technology. This year I'm handing those responsibilities over to others, passing the baton to title of conf and other events, so I can concentrate on my clients, my family, and writing about open source maintainership.
So I've just set a calendar reminder for myself, for 2030, to ask myself: how is the legacy of "The Art of Python" doing?
I don't have a ten-year plan. But I have at least one ten-year question.
# 16 Dec 2019, 01:29PM: An Annotated Bibliography of the Inside of My Head:
A friend suggested:
You know those books that you can’t stop thinking about, won’t shut up about, and wish everyone around you would read? The ones that, if taken in aggregate, would tell people more about you than your resume?
So, per request, this is a "list of books that you recommend over and over... the handful of books that you ENDLESSLY recommend, or refer to, or what have you," but since I have a cold, this is late and somewhat unlinked and VERY non-comprehensive. And I reviewed many of these books at more length in my Reading tag.
Making Software: What Really Works, and Why We Believe It, edited by Andy Oram and Greg Wilson. If you are a technologist, skim at least the table of contents and you'll see something that will help you work better and/or win an argument.
- Getting to Yes by Fisher and Ury: gave me a framework for doing negotiation, including in those moments I might not have realized were negotiations.
- Perfecting Sound Forever by Greg Milner. Here's Scott Rosenberg's review. I listen to music all the time; this gave me a new dimension on which to appreciate it.
- In A Different Voice by Carol Gilligan. How do you reason about your moral choices? What are the ways we might reason differently?
- The Dispossessed by Ursula Kroeber Le Guin. What personalities, dilemmas, approaches would you see and struggle with if you really tried nonhierarchical cooperative modes of making civilization together?
- The Left Hand of Darkness, again by Le Guin. Such a great road buddy story.
- Steerswoman series, by Rosemary Kirstein - my review & recommendation post.
- China Mountain Zhang by Maureen McHugh. Labor, vulnerability, travelogue, queer love, goats on Mars, entrepreneurship, people finding ways to make our lives work in the aftermath of epochal change.
- The Great Arizona Orphan Abduction by Linda Gordon. A fascinating, awful tale interweaved with explanations of ways religion, race, class, gender, and geography played into what happened.
- Dear Genius, the letters of Ursula Nordstrom. Short review here.
- How To Win Friends and Influence People by Dale Carnegie. My memoir/review.
- Slow River by Nicola Griffith. Like China Mountain Zhang, about rebuilding one's life, engineering, learning to have healthy relationships, and making a place for oneself in a massively screwed-up world.
- Producing Open Source Software by Karl Fogel. The basics that every open source software maintainer should know.
- Notes On Nursing: What It Is, and What It Is Not by Florence Nightingale. Nightingale focuses on executive energy, attention, and putting the proper processes into place such that patients (employees) have the resources and quiet they need to get better (do their work). Once you get to a certain administrative level, instead of solving problems ad hoc you have to think strategically. "How can I provide for this right thing to be always done?"
- Bury the Chains: Prophets and Rebels in the Fight to Free an Empire's Slaves by Adam Hochschild. A really inspiring tale of the British abolition of the slave trade and slavery. Reminds us that social justice battles are winnable. And reminds us of the historical connection between civil rights and women's rights. Hochschild specifically wrote to remind us that activists really can achieve what seems impossible. We've done it before and we will do it again. There will be setbacks and challenges and half-steps and repetitions over and over.
- Ben Franklin's Autobiography. So subtle and perceptive about how to change oneself and how to persuade others, and about the folly you'll run into along the way.
- The Great Gatsby by F. Scott Fitzgerald. Empirically a book that fits the brief. Tells me more about how a certain subset of people think every time I read it.
# 04 Dec 2019, 04:46PM: Some More Grants for Open Source Work:
This is a followup to my 2014 post on grants you could apply for.
Several foundations and funders are seeking applicants who are working on free and open source software projects. I am listing a small sample here to illustrate project eligibility and available funding levels. Any financial amounts are in US dollars unless I say otherwise.
About to open
Chan Zuckerberg Initiative's Essential Open Source Support for Science. Open source projects that are in some way foundationally useful to biological and medical researchers.
Deadline: Next round opens 17 December (in 2 weeks). Expect it to take a few months to find out whether you've been selected, then finalize and award. (In the first round, we applied by August 1 and then learned of acceptance in October, with the earliest project start date possible being 1 December.)
Amount: between $50,000 and $250,000, for 1-year projects. In the award I just helped pip apply for, they awarded $200,000.
Mozilla Open Source Support (MOSS) Awards. I have some experience successfully applying for the Foundational Tech track ("supports open source projects that Mozilla relies on, either as an embedded part of our products or as part of our everyday work"), but they also fund "open source projects that significantly advance Mozilla's mission" and "security audits for open source software projects, and remedial work to rectify the problems found".
Deadline: monthly, rolling applications. Expect it to take at least a few months to finalize & award.
Amount: historically between $5,000 USD and $150,000 USD; it's going to be pretty hard to ask for more than $250,000 USD. In the award I just helped pip apply for, they awarded $207,000.
Comcast Innovation Fund. Seeks to "Create or advance important open-source projects".
Deadline: rolling; not sure how long notification/payment takes.
Amount: $150,000, one-year.
NLNet. They are particularly interested in projects that improve the Internet (see their themes).
Deadline: frequently rolling; next is February 1, 2020; notification within a few months
Amount: up to 50,000 euros (about $57,000 USD)
Python Software Foundation. The PSF gives out grants especially for outreach and diversity work, but also funds some other open source work.
Deadline: Rolling. Request money at least 6 weeks before you need it.
Amount: "no set maximum, but..." plus more guidance is in the FAQ.
Open Technology Fund. Several different funds , including the "Core Infrastructure Fund" which "supports the 'building block' technologies, infrastructures, and communities relied upon by digital security and circumvention tools strengthening Internet freedom, digital security, and the overall health of the Internet." Also note OTF's Red Team for security audits.
Deadline: Varies. Initial submissions for the next round of CIF are due January 1, 2020.
Amount: Varies. CIF goes from $5,000 to $300,000. The PSF got $80,000 for PyPI improvements from OTF (I helped write the grant proposal).
OpenHumans. "Explore, analyze, and donate your data -- doing research together!" Grants are available if you "have a project that might help grow the Open Humans ecosystem".
Deadline: "No application deadline: This opportunity remains open while funds last."
Amount: Up to $5,000 USD.
America's Seed Fund -- National Science Foundation -- SBIR | STTR. "Since 1977, America’s Seed Fund powered by NSF (also known as the NSF SBIR/STTR program) has helped startups develop their ideas and bring them to market." "Small Business Innovation Research" (SBIR) and Small Business Technology Transfer (STTR) offers "Seed capital for early stage product development". I only heard of this because their funding supported Kandra Labs, the makers of Zulip.
Deadline: I think there are several different ones depending on the specific solicitation.
Amount: Up to $1.5 million.
Edited 10 December to add: Ruby Together. Thanks, Stephanie Morillo, for the addition! Open source projects that "benefit the Ruby community" are eligible. "We are happy to fund both boring work like triage and bugfixes as well as exciting work like creating new tools that have never existed before."
Deadline: Rolling, reviewed every three months.
Amount: Between $3,000 and $30,000.
The Open Source Center within the Digital Impact Alliance gives out grants. They're interested in helping both projects that specifically target humanitarian/international development needs and upstream software that undergirds that kind of work, funding (in a past round) "Enterprise-Level Quality Improvements", "Multi-stakeholder Collaboration", "Platform Building and Generalization", "Product Consolidation", and "Managing Upstream Dependencies and Downstream Forks". "For as many as 5 grant awards, DIAL anticipates providing up to $900,000 USD total and up to 480 hours total of complementary in-kind technical assistance through participation in the Open Source Center program. This award is expected to span six months of project activity, with an option to extend." They answered some questions in this OSC forum thread.
Maybe Segment will sponsor an Open Fellowship again at some point.
The Open Society Foundation gives out relevant grants.
The Shuttleworth Foundation fellowship applications open on 1 August 2020.
The annual Better Scientific Software (BSSw) Fellowship Program will open for applications in mid-2020.
The Ford Foundation is encouraging public interest technology and points to other orgs doing that funding.
Applying does not have to be too scary
Everyone who applies for a grant has to at some point write their first grant proposal. It will often feel tricky for people who haven't done it before! But it is doable. Asking questions on any relevant forum, looking at sample documents and training resources, and talking to someone who's done stuff like this before (I have) will help.
Try translating application requirements into plainer language to help you understand how to answer them. For example:
"Proposal including Concept for project in consideration of grant objectives and merit criteria": what is it you want to do, and why does it suit the criteria we have set out?
"Budget and Budget Narrative": how much money do you need, and how will you go about spending it?
I do grantwriting, and you can ask me for a free 30-minute consultation to help you figure out what to apply for. Hope this helps!
# 29 Nov 2019, 03:29PM: A Heritage:
I was talking with a friend earlier today about how I've come to understand some different temperaments and skills I inherited from my different parents.
And the specific thing I am reflecting on now is how very into learning and teaching I am, and their two influences showed up differently in my childhood.
My mom was a teacher from the time she was a teenager. She developed curricula, she's worked as a teacher or as a volunteer for so many stints, she's gotten so much pleasure out of regularly meeting and working through a course of instruction with people and helping them grow more capable.
And my late father loved learning, and was an enthusiastic independent scholar of eclectic topics, and loved passing that knowledge on ... anywhere and everywhere was a stage for this sage. In writing, in formal and informal lectures, anytime -- he loved telling you stuff he knew. What a waste it would be not to!
And so here I am.
# 12 Nov 2019, 06:25PM: My New Title, Improving pip, Availability For Work, And SSL (No, The Other One):
A few professional announcements.
Seeking developers for paid contract on pip; apply by Nov. 22
One is that I helped the Packaging Working Group of the Python Software Foundation get funding for a long-needed improvement to pip. I led the writing of a few proposals -- grantwriting, to oversimplify -- and, starting possibly as soon as next month, contractors will start work. As Dustin Ingram explains:
Big news: the Python Packaging Working Group has secured >$400K in grants from multiple funders (TBA) to improve one of the most fundamental parts of pip: its dependency resolver. https://pyfound.blogspot.com/2019/11/seeking-developers-for-paid-contract.html
The dependency resolver is the algorithm which takes multiple constrained requirements (e.g. "some_package>=1.0,<=2.0") and finds a version of all dependencies (and sub-dependencies) which satisfy all the constraints.
Right now, pip's resolver mostly works for most use cases... However the algorithm it uses is naïve, and isn't always guaranteed to produce an optimal (or correct) result.
These funds will pay multiple developers to work on completing the design, implementation and rollout of this new dependency resolver for pip, finally closing issue #988.
Not only will this give pip a better resolver, but it will "enable us to untangle pip’s internals from the resolver, enabling pip to share code for dependency resolution with other packaging tooling". https://pradyunsg.me/blog/2019/06/23/oss-update-1/
This is great news for pip and Python packaging in general. Huge shout out to @pradyunsg for his existing work on the resolver issue and guidance here, and to @brainwane for all her tireless work acquiring and directing funding for Python projects.
If you or your organization is interested in participating in this project, we've just posted the RFP, which includes instructions for submitting proposals, evaluation criteria and scope of work.
If you're interested, please apply by 22 November.
NYU, Secure Systems Lab, and my new title
In further news: I am now a visiting scholar in Professor Justin Cappos's Secure Systems Lab at New York University's Tandon School of Engineering. And I get to use an office with a door, shelves, whiteboards, and so on (per the picture at right). If you contribute to Python packaging/distribution tools and live in/near or sometimes visit New York City, let me know and perhaps we could cowork a bit?
The Secure Systems Lab stewards The Update Framework (TUF) and related projects, and works to improve the security of the software supply chain. The Python Package Index is likely going to implement TUF to add cryptographic signatures to packages on PyPI, and so I've gotten to give TUF's developers some advice to help that work move along. (I won't be the manager on that project but I'll be watching with great interest.) PyPA may also choose to use more of SSL's work in implementing further security improvements to the package distribution toolchain, and I'm learning more to work out whether and how that could happen. Also, Cappos's research on backtracking dependency resolvers has been helpful to the pip resolver work.
Edited 19 Nov 2019 to clarify role.
I'm grateful to get to help connect the Python Software Foundation with more resources and volunteers. Changeset's current and recent projects have mostly been for the PSF. Last month we finished accessibility, security, and internationalization work on PyPI that was funded by the Open Technology Fund, and Changeset's work on communicating about the sunsetting of Python 2.x continues and will go through April 2020.
Availability for one-day engagements in San Francisco in February
But I am interested in taking on new clients for short engagements starting in February 2020. In particular, I will be in the San Francisco Bay Area in mid- to late February. If you're in SF or nearby, I could offer you a one-day engagement doing one of the following:
- developing a contributor outreach/intake strategy
- researching potential funders and writing a rough draft of a grant proposal
- auditing and improving your developer onboarding documents
I'd spend a little time talking with you, then sit in your office and finish the document before leaving that afternoon. (Photo at right provides a sample of how I look while sitting.) Drop me a line for a free initial 30-minute chat and we can talk pricing.
# 04 Nov 2019, 01:56PM: Art of Python Seeking Organizers for 2020:
In May, I chaired "The Art of Python", a festival of arts about programming that took place at PyCon North America. People presented short plays, monologues, songs, and a video remix that explored how it feels to program and play with Python.
I am very glad I did it! But I have to concentrate on other projects now.
I cannot be one of the co-organizers for "The Art of Python" at PyCon North America in 2020; I hope someone else steps forward to lead it so it can take place again. If you want to organize "Art of Python" at PyCon 2020, please submit a Hatchery proposal as soon as possible. The deadline for Hatchery proposals is January 3, 2020. If you are interested but need help to do it, post about that someplace public -- your blog, Twitter, etc. -- and tell me, and if I hear from multiple people, I'll put you in touch with each other.
To help: I have written up a retrospective and HOWTO document about "The Art of Python". It's in two parts: "Why I Did This" and "How I Did This".
As I say in there: I saw a lack. I was not and am not a professional playwright, performer, or festival planner. But I didn't have to be, and you don't either. You don't have to be a professional performer to show what you experience when you're programming -- you just need a stage, and I wanted to create the stage. And now we have. I hope the show goes on.
Thanks to Kim Wadsworth and Leonard Richardson for editing help.