I write from a place of love and respect for the UK Python programming community. Some of what follows may make painful reading (sorry). But I want to be clear: if you misconstrue my words as aggressive, nasty or hurtful, then you have completely misunderstood my intent. I will never knowingly be a source of vindictive pain.
I'm going to shine a light on the (usually hidden) problems I have encountered in the UK Python community over the ten years that I've been volunteering.
It's hard to do this without appearing as if mud slinging or trying to diminish the considerable public-facing achievements of the UK Python community in doing genuinely wonderful things. I am anxious to avoid a situation that undermines all the good stuff.
But only by highlighting and acknowledging such hidden problems can action be taken to address them. I hope you bear with me as I try to find the words to explain things in a constructive, non-confrontational yet honest way.
The problems of which I speak are many in number and range from the institutional (a woman of limited means put into the humiliating position of having to beg for financial support), and petty (describing the John Pinner awards as "just a popularity contest") to plagiarism (members of the community claiming the work and intellectual property of others as their own) and an exercise of power and control for organisational gain (a sponsor taking steps to exclude others from fully participating in a community event -- they threatened to pull out if they didn't get their way). Sadly, I have a list as long as my arm full of such things.
Above and beyond these problems are personal attacks, slights and snark aimed directly at me (more on this later). Having said that, I want you to know that I bear no ill-will nor grudges.
I'm necessarily vague about the details: I don't believe finger pointing or blame is a useful or constructive way forward. Far better to honestly and constructively highlight such problems in the hope that they are acknowledged and can be avoided in the future.
If you're thinking, "that's not the UK Python community I know", then I am happy for you. You know the joyous, supportive and friendly place that welcomed and sustained me as a new Python programmer in 2007. I wish you good fortune and hope you cherish, advance and grow this aspect of the community.
However, such problems are themselves problematic because they are so often hidden. Furthermore, I've observed that those involved often don't appear to realise they are causing a problem. Upon reflection, I believe such situations are caused by a lack of just one thing: compassion (an awareness of and sympathy for another's feelings and suffering, mixed with a pro-active desire to help).
So my plea to members of the UK Python community is to show more compassion.
If you remain unconvinced of my plea, I want to explain what happens when we lack compassion.
Over the past three years I have grown despondent about the problems I have encountered in the UK's Python community. This past year the feeling became unbearable, to the extent that I sought professional help to deal with mental health problems solely arising from my contact with the UK Python community.
Last weekend a straw broke the camel's back and, after a considerable amount of thought and reflection, I finally decided to publicly reveal how I felt via Twitter. I'd been sitting on a huge amount of pent up frustration and sadness, and there needed to be a controlled release. I came to the realisation that only by "coming clean" and honestly describing my feelings would I be able to heal, move on and allow my life to return to some normality.
To say the reaction has been "interesting" is an understatement.
I'd like to start by thanking the many people who took the time to reach out with kind messages of support. You are the best of us, and the reason why the UK Python community is often an amazing place. Your compassion and thoughtfulness is an example to us all. Thank you.
However, I was reduced to tears of hurt by the initial reaction of one member of our community who went for the jugular (and it saddens me deeply that this reaction was "liked" by a number of other people in the UK Python community). I have been asked to justify my feelings to others (how dare I feel this way about the UK Python community) and I have had my words picked over in public leading to unwanted, unhelpful and upsetting comments.
These latter reactions inadvertently demonstrate why I've been feeling despondent. They show a complete lack of compassion and suppress hoped-for constructive dialogue or catharsis.
My despondency and poor mental health is directly linked to encountering and dealing with an excessive number of such problems: a sort of death by a thousand paper cuts.
"But why didn't you reach out for help?" you may ask.
I was rebuffed when I tried to find support from several individuals in the UK Python community. This led me to a downward spiral of frustration, self doubt and sadness: "What have I done to deserve this? Am I such an obnoxious person that people would refrain from showing support? Why am I not able to speak of my pain?"
I felt a complete failure, rejected and disempowered by the whole situation.
My only choice has been to step away from the UK Python community. It's not the ending I would have wanted and it makes me feel extraordinarily sad.
But my tweets brought acknowledgement from others in the international Python community. I'm not on my own in encountering such problems or the associated feelings of despondency. This is definitely not only a UK Python issue. My far flung friends highlighted patterns, features and common ground which, in turn, helped me realise, "I am not the only one".
Personally, by speaking of these things I feel I have turned a corner and have felt a great sense of release, although I still carry a huge amount of sadness and pain about how things turned out. For what it's worth, I hope people in the UK Python community never treat one of their own like this ever again.
What will I do next?
For me, this boils down to a positive assertion, through deeds and words, of humanity, honesty, compassion, patience, love and respect. What that entails depends on all sorts of complicated variables: who, what, where, when and how a situation is. Ironically for a conversation about a programming community, it's not a case of following an algorithm -- I'll have to exercise that unique and precious spark which means I'm not an unfeeling machine: my humanity.