Building Mastodon Bots and Promoting the Community – Part 1

This article was first published on Python-post on Cosima Meyer , and kindly contributed to python-bloggers. (You can report issue about the content on this page here)
Want to share your content on python-bloggers? click here.

I spent the last weeks building two small Mastodon bots with the goal in mind to make contributions by PyLadies and R-Ladies more visible. PyLadies and R-Ladies are global non-profit organizations that seek to empower and promote greater diversity in the coding world.

The project started when I saw a post on LinkedIn that mentioned several data people to follow – all being male. When asked why there wasn’t more diversity on the list, the post author replied that they should get more visible to be recognized – so I decided to do my share here.

What was initially an idea, became the development of two bots (a PyLadies bot and an R-Ladies bot), a curated blog list with awesome PyLadies on it, and me spending hours reaching out to PyLadies and encouraging them to put their blogs on the list. And I can tell you: It’s been great weeks – seeing all the beautiful websites, learning about, and “meeting” new people is always fantastic. It also showed me (once more) how multi-faceted the community is and how much there is to learn! 🤓

I’m planning on writing a series of blog posts that will cover the entire process:

  • Setting up the Awesome PyLadies‘ Blogs Repository (and extending the R-Ladies list)
  • Building Mastodon Bots
  • Deploying Mastodon bots using AWS and GitHub Actions

When I started thinking about the bots, I had (and still have) many ideas in mind. While reposting posts that mention a specific hashtag is more or less straightforward and doesn’t require any additional input – but sharing R-Ladies’ and PyLadies’ blog posts does require a (curated) list with RSS feeds. Luckily there was already the Awesome R-Ladies’ Blog Repository in place that I could use to extend and collect RSS feeds for the blogs by R-Ladies. I contacted all the R-Ladies that were already on the list and asked them for their consent to add their RSS feeds and Mastodon handles.

Setting up the Awesome PyLadies’ Blogs Repository

And this is when also the Awesome PyLadies’ Blogs Repository started 🚀


Alternative text

Screenshot of the Awesome PyLadies’ Blogs repository showing some text (What is this repository about) and images with a list of blogs (arranged as a grid)

I am incredibly thankful that I could build upon the Awesome R-Ladies’ Blog Repository. So here are some credits due: It is deeply inspired by the Awesome R-Ladies’ Blogs Repository (which is the entire underlying basis). Without this repository, I wouldn’t have been able to get so quickly up-and-running with the repository – so all credit goes to them!

What is the repository about?

As mentioned above, the repository relies heavily on the Awesome R-Ladies blogs repository and I can only repeat their words of what the repository is about. The goals include collecting PyLadies’ blogs and making PyLadies more visible. This includes those who identify as a minority gender (including but not limited to cis/trans women, trans men, non-binary, genderqueer, & agender). With your submission, you agree that these entries will be used for the PyLadies’ Mastodon bot, which will post (new) PyLadies’ blog entries to promote the work of PyLadies around the world.

How did I find all the PyLadies?

That was more challenging than expected and I went with various channels.
First, I posted in different Slack groups as well as on Mastodon/Twitter about the GitHub repository and encouraged people to add their blogs to the list. But this didn’t seem to work as well as expected. So I went on and reached out to people individually.
To find people,

  • I browsed past Python conferences and their speakers’ lists, got the names (ideally a website was linked – but often it wasn’t), googled the people and figured out whether they had a website (and a blog), reached out to them (by Slack, e-mail, contact forms, or LinkedIn)
  • I checked who posted about Python conferences on both Twitter and Mastodon
  • I checked Medium, Mastodon, and Twitter and looked for keywords such as “pyladies”
  • I tracked down the GitHub profiles of those who contributed to the PyLadies repositories and looked for blogs
  • of course, I also used ChatGPT (but it didn’t work as well as expected – it gave me lists full of made-up names or made-up websites. I cannot tell whether some of the websites worked in the past but I’m also blaming it on hallucination 😵‍💫 (and also on my prompt writing))

And while I was already on it, I did the same for R-Ladies and also reached out to them 💜 I also extended the Awesome R-Ladies list by reaching out to those who weren’t on the list and encouraged them to join. If you didn’t get a message from me, please feel free to reach out (or add the information yourself, if you want ☺️).

I’m truly sorry if I reached out to you more than once – it’s because, I have to admit, keeping track of so many beautiful blogs is challenging and I think yours should be on the list! ☺️

If you have more ideas, please let me know – I’m feeling a bit like Sherlock who is thinking about new ways how to find people 🕵🏼‍♀️

How do you submit your blog?

It is (hopefully) easy and all described here. In a nutshell, there are two options:

  • Open an issue with your blog info and I’ll create the JSON for you
  • Create a new file and a PR with your blog info (there’s even a short cut link that you can use to create the file)

All details of what can be included and which format is best are provided in the contribution guidelines. If there are problems with the PR, opening an issue, or something else – please feel free to reach out! We’ll make our way through the GitHub adventure together ☺️

If you have a website or blog feed yourself, please feel free to submit it to the repositories! We’re happy about every single contribution ☺️

And as always, I’m more than happy about feedback or suggestions. Please feel free to reach out to me or open an issue! ☺️

To leave a comment for the author, please follow the link and comment on their blog: Python-post on Cosima Meyer .

Want to share your content on python-bloggers? click here.