Packaging Vision and Strategy - Next Steps

It may seem so to you, but it certainly doesn’t seem so to a lot of people that have to package native libraries or CUDA-enabled libraries, for example.

4 Likes

Yes, I considered this before writing the post — a few of other FOSS Ukrainian maintainers pointed this out to me too. There’s indeed bits of the “big land” and the peninsula that are close, even though there’s a body of water in between. But I compared it with other map features as well as how some online maps show the administrative internal borders, and it seems consistent with it. Other places showing land+water division don’t use such bold and dark lines, it seems. Which is why I felt like it’s important to flag this. This might also suggest some data sourcing flaws (a speculation on my side).

I feel like an interactive dataviz on a static website would allow presenting the data more adequately. Also, it could be beneficial to publish the structured stats for better understanding of what’s collected and how it’s clustered.

This would be explained by it being populated much less densely than, for example, the US.

Thanks for your feedback.

Regarding the user documentation, 40% of respondents neither agreed or disagreed that the official documentation is clear and useful. I would have preferred this to be much lower. But I do agree that there are many ways to make Packaging more beginner-friendly including video tutorials and sandboxes.

This feedback will be archived somewhere (not sure where yet).

To everyone who has engaged in this thread- thank you for your feedback.

I have changed the slide containing the world map. I hope this change resolves the issue highlighted above in this thread.

I have also included the individual responses of the survey for anyone who wishes to do a deep dive into the data. I have removed any identifiable data. Please let me know if I have missed anything important.

2 Likes

I’ve personally voted for Discourse, since that it (1) keeps the discussions public which is important IMO, (2) allows for asynchronous participation, and (3) provides a searchable archive for the discussion.

If we do end up doing a virtual meeting (or multiple), I request that the detailed notes be taken at the meeting (example) so that those who didn’t/can’t attend are still able to see what was discussed and what various folks said. :slight_smile:

Thanks for sharing this! It’s appreciated!

4 Likes

Agreed. My reasons for voting for Discourse were the same, plus, it ensures that no-one is excluded for irrelevant reasons, such as availability, unwillingness or inability to interact “face to face”, etc.

(Edited: I meant Discourse, not Discord, which IMO has many of the same problems as virtual meetings, in this context. Doh!)

1 Like

● PyPI banner is one of the best ways to engage with Packaging users.

@smm I think that next time, a similar banner could also be added to the packaging.python.org website too, since this is the place where a lot of people would come with a clear intent to learn about the packaging ecosystem (mostly project maintainers, I think, but the end-users too).

3 Likes

Hi everyone!

I helped @smm write, publish and publicise the survey so have some context to add to this thread.

Which begs the question—what is the intended population the survey was targeting?

We wanted to reach any end user of Python packaging.

Due to our existing communication channels (and based on our experience of previous surveys), we were aware that the data was likely to be skewed towards North America and Western Europe.

To try to address this, we did active outreach to users in Africa, Asia, the Middle East, South America and Eastern Europe. I used the list of local Python groups as a starting point and contacted groups on Twitter, Google Groups (and other mailing lists), Slack, Facebook, Signal etc. You can see an example tweet here:

As the data shows, this had little impact compared to the PyPI banner, but I do think it was worth it because we were able to hear from people we might have otherwise missed.

I strongly agree with @smm’s conclusion that we need to work on global outreach and suspect this is a problem that goes deeper than just packaging and should be done in conjunction with the PSF in their other community outreach efforts (+1 on @webknjaz’s idea of adding a banner to the docs site)

In the meantime, it would be very interesting to analyse the survey data by region to see if there are differences in responses between regions.

I also hope that @smm will conduct follow up interviews with as diverse population as possible to hear unique voices and perspectives. We also collected data about under-represented groups for this purpose.

3 Likes

It would also be interesting to see the data sliced across another dimension: based on the response to “How long have you been using Python packaging tools?”.

If someone wants a fun data visualisation thing to do: It’d be cool to have a notebook/webpage/tool etc that lets one slice/filter the data based on the user demographic question, and visualise the other responses in a similar manner to the report/document. :slight_smile:

1 Like

I would like to thank everyone who participated in this thread and the poll. As Discourse was the most popular choice, we will be facilitating further discussions around Packaging strategy to flesh out the details on this forum. I encourage all Packaging maintainers and contributors to participate in those discussions.

2 Likes

Sorry for necroposting, but I was looking back at this after Conda released the results of a similar survey recently. I was wondering about the details of the survey and thought maybe @smm and/or @nlhkabu could provide some info.

To what extent did outreach go into large, diffuse communities of beginners, learners, or others who do not necessarily travel in “developer” circles (i.e., may not read project mailing lists)? I’m thinking here of things like reddit (r/Python and r/learnpython, maybe even r/programming), IRC, and especially StackOverflow (although I’m not sure exactly how the latter could be reached).

In my experience these are places where there are lots of users with an interesting and valuable perspective that is less pre-shaped by knowledge of Python’s history, tools used in other languages, etc. They are also often low-engagement users who can be difficult to reach through “discussion” type channels (e.g., Python user groups) because they often only participate when they have a question about something going wrong, but for this reason they may know a lot about what kinds of things go wrong and what could be better.

An additional question is whether there was a specific effort to advertise the survey in communities oriented towards alternative tools (e.g., conda, poetry), as these users often may be less engaged with channels oriented towards the standard tools.

Yes, and how about directly on python.org and/or docs.python.org?

That’s great to hear. Was the survey itself available in other languages?

This is a great point and something that struck me as well. In particular it makes me question the slide where among the “takeaways” it lists “PyPI banner is one of the best ways to engage with Packaging users.” I don’t think that is clear at all, at least not without significantly more detail about where and how the survey was advertised.

I think surveys are a promising way to take the pulse of the Python community as a whole, and I’m kind of bummed I missed the lead-up to this one. It was mentioned on another thread that future packaging discussions might include more surveys, so I’m interested to see what can be learned from this one, not just about the results, but about the process of conducting the survey itself.

Hi @BrenBarn - thanks for reanimating this discussion :slight_smile:

The main outreach was focused on bringing in a wider range of voices based on location (rather than experience or tool use) - so I spent a lot of time reaching out to local user groups in an attempt to hear voices from the international community. We had seen that past survey responses were very heavily skewed to North America, so wanted to try to address this.

I was very disappointed (but not surprised!) that the survey results showed most responses came from PyPI. It made me feel that the outreach work I did was not impactful. Having said that, I do think that it’s important to broaden our outreach efforts to make sure that different groups have an opportunity to provide feedback, even if they remain in the minority.

re: reaching out to those who don’t travel in “developer” circles, and communities oriented towards alternative tools → this wasn’t something that we focused on, but that’s not to say we shouldn’t have - just that we didn’t have a heap of time (or people) to do the outreach work.

re: translating the survey - this was discussed, but we decided that we didn’t want to delay the survey launch to wait for translations.

To move things forward, I’d be happy to collaborate with you (and anyone else interested) to build up a document or spreadsheet on best practices for community outreach. The following documents might provide a good starting point:

  1. Spreadsheet I used for community outreach for the last survey
  2. pip UX documentation
2 Likes

Thanks, that is useful info. Interesting to see that you did try Reddit but had some problems. It looks like there was a lot of effort to reach into a wide range of communities, which is great to see because so often that’s not done or even thought about.

I do find it interesting that so many responses came from PyPI, as that seems like a classic example of a site that many people use without often visiting it (e.g., they just use it via pip). So to me the fact that it accounted for so many responses suggests either the responses were skewed to a certain type of user, or people are visiting PyPI for reasons that would surprise me. This isn’t a criticism of the survey, though, rather just something that informs how we interpret the results. Perhaps if there are future surveys we can think more about how to get more uptake in large, diffuse communities.

Speaking as an end user, I only ever use pip to download packages (i.e. I don’t manually download anything from PyPI), but I do regularly use PyPI to reach “official” links for packages I’m using – github, documentation, homepage, etc. Sometimes I choose use PyPI for this end on purpose, but sometimes it’s just that PyPI is the first Google result.

7 Likes

I also use PyPI’s Web UI regularly to check what “files” are present
for a given release (in order to see what platforms a project is
providing wheels for), to review the release history of a project
(CI jobs just broke and the traceback implicates this project, did
they make a new release around the time the errors started?), or to
look at other metadata (particularly Python version requirements).

4 Likes