Interested in contributing a Sphinx community survey #13331
Replies: 9 comments 21 replies
-
I don't have a ton of feedback other than maybe having some thoughts on the questions. Happy to give them a peek once we have them put together. Otherwise this seems great, thanks for the initiative! Probably seems worth pinging @AA-Turner and other Sphinx folks as well? |
Beta Was this translation helpful? Give feedback.
-
The current state of what we wrote is We hope that with a yaml definition this will help iterate of fix via problems via PRs, |
Beta Was this translation helpful? Give feedback.
-
This is great cheers guys, yeh unfortunately I got pretty busy after #12443 and was able to push it forward 😅 But with you guys helping to do this I'm sure we can gather some really useful feedback 🙏 Haven't looked at your technical solution just yet, may have comments on that a little later |
Beta Was this translation helpful? Give feedback.
-
This is very generous, thank you.
I have no opposition in principle to a survey, though I don't personally have the time to organise the administration, beyond approving the questions. My initial reaction is that the issue tracker is a reasonable sample of what people currently care about, namely that (1) Sphinx is not fast enough, (2) autodoc and autosummary can be improved, (3) Hence, if we ran a survey I would want to get different (actionable!) insights, especially from those that don't use Sphinx or have stopped using it. For example:
As much as this information is nice to know, though, it would be good to have agreed goals for what information we're seeking, and what decisions this will inform. I think such a survey should also make efforts to target both open-source (where we have a lot of visibility) and use in industry (where I'm aware Sphinx and competitors are used, but we have far less insight). Survey design is not my speciality, though!
Luckily, the questions are defined in YAML (or TOML!), so this can use a standard review process. I would also be happy to do a PEP/RFC-style review with questions written in a reST document, which might avoid the constraints of the question definition DSL. Once again, thank you for both proposing the idea and for volunteering your firm's time to take forward this effort. I am very grateful, and aware that opportunities like this are few and far between. Thanks, |
Beta Was this translation helpful? Give feedback.
-
I realise that perhaps our expectations were not entirely clear:
@AA-Turner seems a number of the bullets you listed as things you'd like to know are covered in the draft survey we shared above https://github.com/Quansight-Labs/typeform-yaml-survey/blob/main/sphinx-survey.yml (yay!)
I agree. One of the goals of running this as a collaborative community effort is to reach a broader and more diverse group of users. This will also help us ensure this effort is valuable and helpful to the wider ecosystem (Sphinx maintainers/project, theme maintainers, infrastructure folks like RTD, etc.).
I agree here, too. I will come back later and add some thoughts here. |
Beta Was this translation helpful? Give feedback.
-
Thank you all for taking the time to reply! From what I'm hearing, it seems like there's openness to review what we have and move forward.
I also entirely agree. So wonderful to hear this. I made the current draft questions based on the following. Let me know if this would be easier to give feedback on another way.
|
Beta Was this translation helpful? Give feedback.
-
Here's some feedback on the questions at https://github.com/Quansight-Labs/typeform-yaml-survey/blob/main/sphinx-survey.yml - title: 'What documentation engines do you use?'
multiple: true
other: true
choices:
- 'MyST'
- 'Docusaurus'
- 'Mkdocs'
- 'JupyterBook'
- 'Sphinx'
- 'None'
- 'I don’t know' Do things like Hugo, Astro, Pelican, Nikola, Eleventy etc count as doc engines? perhaps add a few more to the list? See also https://jamstack.org/generators/ and https://jamstack.org/headless-cms/ - title: 'Where do you deploy your documentation pages?'
multiple: true
other: true
choices:
- 'GitHub Pages'
- 'Netlify'
- 'Read The Docs'
- 'My institution has its own deployment' Some others: Vercel, Cloudflare Pages, DigitalOcean, Hetzner, Render, Vultr. - title: 'What is the main reason you use Sphinx?'
other: true
choices:
- 'Python API documentation generation (docstrings)'
- 'Narrative documentation'
- 'Educational materials'
- 'Other projects in my ecosystem were using Sphinx'
- 'Someone on my team knew how to use Sphinx'
- 'I joined a project that was already using Sphinx'
- 'Sphinx’s ease of use'
- 'Sphinx’s performance'
- 'Sphinx’s stability'
- 'Sphinx’s release schedule' For me, an important feature of Sphinx is being able to reference to other pages/sections, even if they move. And also across Sphinx sites with intersphinx. - title: 'What theme(s) do you use? Select all that apply.'
multiple: true
other: true
choices:
- 'Whatever comes with Sphinx by default'
- 'Alabaster'
- 'Read The Docs'
- 'Pydata Sphinx Theme'
- 'Material design'
- 'Something else/I don’t know' Let's also add Furo and maybe Python Docs Sphinx Theme. |
Beta Was this translation helpful? Give feedback.
-
ThemesI recently scaped the GitHub stars for the themes listed at https://sphinx-themes.org/. This should be a good first guess for the choices. The top 10 are:
I suggest to include everything up to including Material Reason for using Sphinx
For the first three, I'm not clear whether they fit in or what they mean. The feel more like "What are you using spinx for?", which should be a separate question. The API documentation generation can additionally stay here but I suggest to rephrase as "API documentation generation from docstrings and links to that API docs" or similar. I would probably leave out the last 3: All of them are not primary concerns. They have to be good enough to make a project usable, but they are not the key criterion whether to choose a project. I'm missing:
docutils
I don't understand the question. docutils is an underlying technology of Sphinx. For an end user all that is exposed is the ReST language defined by docutils. Is that what we're aiming at? Otherwise docutils is IMHO an implementation detail and only relevant for Sphinx and extension developers. sphinx internals
This is surprisingly specific. A regular user doesn't search for Sphinx internals. By definition they should not have to care about internals. Is this targeting sphinx developers, possible contributors, extension developers? Why do we specifically care are? OtherStakeholder type
RatingDoes typeform support likert or rating scales? I'd like to have insights into preference (How important is ...) and satisfaction (How satisfied are you with ...) on topics like
|
Beta Was this translation helpful? Give feedback.
-
Feel free to send PRs against the Yaml file, I'll see if I can integrate some of those changes. My fear with too many options is they start to go out of the screen, and will discourage responders.
IIRC it should have:
I just have not implemented the yaml-to-typeform API for the rating ones. I also have only implemented basic yes/no jumps if we want jumps, but having jumps make designing surveys quite harder. |
Beta Was this translation helpful? Give feedback.
-
Hello, all! I’m reaching out on behalf of Quansight Labs members who work on documentation projects across the ecosystem. We use Sphinx on many of the projects we work on and would like to make time to contribute to the Sphinx community. We’re also interested in getting a better sense of who uses Sphinx (and who doesn’t) and what does and does not work well for them, so we’ve drafted the beginnings of a community survey. The data from this survey would be shared publicly and, ideally, used as a collective resource to make decisions about Sphinx and related documentation tooling easier by basing them on community feedback. I’ve been told that this previously came up in a meetup in 2024 (#12443).
Right now the survey it is set up to work with Typeform and has been written as a YAML file. We want this to be a collaborative effort and are looking for feedback to turn this draft into something the whole community wants to see.
If you want some examples of what publicly shared data looks like for projects like this, you can explore the jupyter/surveys repo (some of which I’ve worked on before).
Do you have a review process you prefer for non-code contributions like this? I am also happy to open a PR or schedule time to meet if that’s easiest.
I’ll check in again in a week if I don’t hear anything by then. Thank you in advance!
(I've also been told to @melissawm, @Carreau, @trallard, @humitos, @ericholscher, and @hugovk)
Beta Was this translation helpful? Give feedback.
All reactions