|
| 1 | +# Documentation Community Team Meeting (June 3, 2025) |
| 2 | + |
| 3 | +## Roll call |
| 4 | + |
| 5 | +(Name / `@GitHubUsername` _[/ Discord, if different]_) |
| 6 | + |
| 7 | +- Adam Turner / `@AA-Turner` |
| 8 | +- Bartosz / `@bswck` |
| 9 | +- Blaise Pabon / `@blaisep` / `controlpl4n3` |
| 10 | +- Carol Willing / `@willingc` |
| 11 | +- Ee / `@EWDurbin` / `@ee.durbin` |
| 12 | +- Jeff Jacobson / `@jwjacobson` |
| 13 | +- Joe Kaufeld / `@itsthejoker` |
| 14 | +- Kattni |
| 15 | +- Keith / `@KeithTheEE` |
| 16 | +- Lufti Zuchri |
| 17 | +- Ned Batchelder / `@nedbat` |
| 18 | +- Panagiotis Skias |
| 19 | +- Petr Viktorin / `@encukou` |
| 20 | +- Trey Hunner / `@treyhunner` |
| 21 | + |
| 22 | +## Introductions |
| 23 | + |
| 24 | +> If there are any new people, we should do a round of introductions. |
| 25 | +
|
| 26 | +Several new attendees were present, a round of introductions were made. |
| 27 | + |
| 28 | +## Discussion |
| 29 | + |
| 30 | +### Translation |
| 31 | + |
| 32 | +[Carol]: |
| 33 | + |
| 34 | +> There's been lots of activity over the past 2 months about translations. It's great |
| 35 | +> that we have strong interest in translation. 🎉 |
| 36 | +> |
| 37 | +> Building on the helpful work of Julien Palard and others on |
| 38 | +> [PEP 545](https://peps.python.org/pep-0545/) eight years ago and stewarding |
| 39 | +> translations since then, we discussed briefly at the CPython Language Summit to |
| 40 | +> revisit any process modifications that may be beneficial moving forward. One of the |
| 41 | +> key process changes that the core team found beneficial (some languages are already |
| 42 | +> doing) was to expand the coordinator role from an individual to more than one |
| 43 | +> individual when there is interest. |
| 44 | +> |
| 45 | +> Here's a [baseline doc](https://hackmd.io/@willingcn/Synk3LXWgl) to bootstrap |
| 46 | +> discussion at the meeting. |
| 47 | +
|
| 48 | +Multiple coordinators for each translation are preferred. PEP 545 specifies one. Anybody |
| 49 | +who's blocked on translation should get the right tools and get the ability to do the |
| 50 | +translations. Carol's recommendation: put amending PEP 545 on hold & let the process |
| 51 | +settle down. If anyone would like to co-ordinate, file an issue and possibly let people |
| 52 | +know on Discourse or Discord. |
| 53 | + |
| 54 | +Is anyone blocked for translations? -- no one speaks up |
| 55 | + |
| 56 | +Questions about the document & plans? -- no one speaks up |
| 57 | + |
| 58 | +[Adam]: On the process point: if new translators should open issues, are we seeking the |
| 59 | +Editorial Board (EB) members to approve, and how do we have appropriate permissions |
| 60 | +assigned? |
| 61 | + |
| 62 | +[Carol]: My thinking is that the process should be reflected in the devguide. In pep |
| 63 | +545, in about three months from now, we'll amend whatever we need to, but the process |
| 64 | +itself tends to be better captured in the devguide instructions. Things like 'who would |
| 65 | +the repo belong to' and such. Right now, I can open a PR that is a recap of the meeting, |
| 66 | +for coordinators, if you're interested, let people know in the devguide and let the EB |
| 67 | +know by making a PR and making a post on Discourse under the Documentation topic that |
| 68 | +it's what you're interested in doing. From there, I think you guys are going to have to |
| 69 | +help me understand exactly what people need. Normally we message Ee or someone similar |
| 70 | +to help people get the right permissions. Does that address it? |
| 71 | + |
| 72 | +[Adam]: I think the only issue we really had was with the Bengali translation, but I |
| 73 | +think we're basically good to go otherwise. |
| 74 | + |
| 75 | +[Jeff]: spoke with Irvan Putra interested in Indonesian translation, has a |
| 76 | +[pull request (python/devguide#1567)](https://github.com/python/devguide/pull/1567) open |
| 77 | +and raised a question about removing a coordinator. Is it necessary to define a |
| 78 | +procedure for someone to stop being a coordinator? |
| 79 | + |
| 80 | +[Carol]: I think that if someone doesn't want to be a coordinator anymore, they should |
| 81 | +make a PR removing themselves from the group of coordinators and let everyone know that |
| 82 | +it's something they're no longer interested in. The goal of a coordinator is to create |
| 83 | +documentation in a target language, not to give you specific authority. If there are |
| 84 | +conflicts, as there sometimes are, we'll work through them, and we'll continue on. If |
| 85 | +anyone has any specific things that they'd like to see in the Dev Guide, @ mention me |
| 86 | +[Carol] and we'll take a look. |
| 87 | + |
| 88 | +[Petr]: Over the years, since seeing [PEP 1](https://peps.python.org/pep-0001/), I've |
| 89 | +learned the rules for submitting a successful PEP, but we are lacking a formal document |
| 90 | +on exactly how to submit and a PEP approved by the EB. |
| 91 | + |
| 92 | +[Adam]: It might be useful to add an explicit "what's this document meant to achieve" |
| 93 | +section to the PEP. Carol said: we want translations to happen, we don't want process to |
| 94 | +happen. Rules are important because they guide, but we need to keep in mind their |
| 95 | +rigidity. |
| 96 | + |
| 97 | +### Backporting large changes to 3.13 |
| 98 | + |
| 99 | +[Petr]: This is a bit like pushing directly to production. Should we change the policy, |
| 100 | +so we keep large non-fix docs changes in pre-release branches? I wonder if it would be |
| 101 | +prudent to limit how we release these large blocks, as there's not enough time to debug |
| 102 | +if there are issues. |
| 103 | + |
| 104 | +[Carol]: Are we only talking about large document fixes, or only backporting one or two |
| 105 | +releases? |
| 106 | + |
| 107 | +[Petr]: Yes. If you restructure the text, add some new sections, or something similar. |
| 108 | + |
| 109 | +[Carol]: Is it related to page structure, content, or both? |
| 110 | + |
| 111 | +[Petr]: Content as well. |
| 112 | + |
| 113 | +[Adam]: To take the contrary opinion, I think the view I've always taken for docs |
| 114 | +changes is if it is, say, rewording a note or rewording something to make it more |
| 115 | +readable, as long as everything in that change still exists in the backport versions, an |
| 116 | +improvement is an improvement. The analytics show that a lot more people use /3 and the |
| 117 | +default version of the docs than specifically picking a version. If we've made a quality |
| 118 | +of life improvement, we should be trying to put that in front of people as quickly as |
| 119 | +reasonably possible. In general, better to get things out faster as long as they improve |
| 120 | +the experience. Delaying backporting structural changes may make it harder to edit |
| 121 | +later. |
| 122 | + |
| 123 | +[Ned]: I agree with Adam that there's not much harm in backporting docs changes. Even |
| 124 | +though Petr compared it to pushing directly to prod, I think it's not quite the same |
| 125 | +because we shouldn't compare code and docs. We want to make sure that we don't impact |
| 126 | +the drift between differences too much. |
| 127 | + |
| 128 | +[Petr]: If you fix a typo or reword a sentence, all of the translations are immediately |
| 129 | +null and void. They will then revert to English, and that's something that we need to |
| 130 | +keep in mind as well. |
| 131 | + |
| 132 | +[Carol]: Yes, yes. I think we should put in the devguide that if there's a large docs |
| 133 | +PR, please take into consideration prior to backporting what the translation impact |
| 134 | +might be and on the backported versions. Overall, I think you seem to be in agreement. |
| 135 | +The last thing we want to do is mess up the translations, so I think that continuing to |
| 136 | +discuss is a good idea. I will leave it in your capable hands, Petr. |
| 137 | + |
| 138 | +### Other topics |
| 139 | + |
| 140 | +- [Ee]: Want to discuss future of docsbuild infrastructure! |
| 141 | + |
| 142 | +We're moving more and more PSF infra to Kubernetes. We'll need the doc build server to |
| 143 | +move as well, and it looks like it'll be more work than a simple Django app. What amount |
| 144 | +of pain is there around the docs builds? |
| 145 | + |
| 146 | +The existing docs build scripts do provide an interesting interface. As long as the |
| 147 | +scripts are doing what the maintainers want, parallelizing them should be an easy task. |
| 148 | +In some future, a push could trigger build tasks that build docs which are pushed to |
| 149 | +object storage. [...] |
| 150 | + |
| 151 | +What's the need? What can we do in the short term? What's the long term plan? |
| 152 | + |
| 153 | +[Blaise] I'm familiar with the build process for Read the Docs, but this is different? |
| 154 | + |
| 155 | +[Ee]: Yes, the system runs on cron and ad-hoc jobs. The scripts are in |
| 156 | +[python/docsbuild-scripts](https://github.com/python/docsbuild-scripts) |
| 157 | + |
| 158 | +[Adam]: Performance has significantly improved. We do less now: we used to build HTML, |
| 159 | +E-pub, Latex[A4], Latex[letter], texinfo etc across versions and translations. Now we |
| 160 | +run 3 streams: all translations (round trip every 24 hours), non-HTML English (2× a |
| 161 | +day), HTML English (every ~30min). Would be very receptive to moving to a push-based |
| 162 | +approach. Currently it's just about fast enough that docs are done when CI is finished. |
| 163 | +People who have access: release managers, Adam, Julien. Fairly small number of people |
| 164 | +who would need to change their workflows. I have no experience with Kubernetes, but |
| 165 | +would absolutely love to go to a multicore [scalable?] system. |
| 166 | + |
| 167 | +[Ee]: Familiar enough with docs builds from supporting it for years. Ultimately, the |
| 168 | +output is a directory of files. We should be able to treat that as an interface. You |
| 169 | +tell a service what to invoke, and [...] what to serve. We'd need to find someone to |
| 170 | +help build out the infrastructure -- react to pushes, start the scripts, collect output. |
| 171 | + |
| 172 | +[Adam]: There are some manual tasks -- a version going end-of-life, adding switchers to |
| 173 | +old versions. |
| 174 | + |
| 175 | +[Petr]: Read the Docs? How far along are we in that migration? |
| 176 | + |
| 177 | +[Adam]: I did go through and get a list of issues re: how our model differs from RtD |
| 178 | +expectations, I might have another go at figuring out how to reconcile the approaches. |
| 179 | + |
| 180 | +[Carol]: We need to involve the relevant people - Manuel, Adam, Petr, release managers, |
| 181 | +etc. |
| 182 | + |
| 183 | +### A tutorial aimed at beginners to _programming_ and Python? |
| 184 | + |
| 185 | +[Joe] Wrote a lot of docs like that in bootcamps and various education. People new to |
| 186 | +programming have various expectations. Do we want to start with how programmers think? |
| 187 | +How to define a variable? 2+2=4? |
| 188 | + |
| 189 | +[Carol]: I have some thoughts, but I'd like to hear from more people who have done this |
| 190 | +before. |
| 191 | + |
| 192 | +[Trey]: Get people into it, then explain things as you get to them. |
| 193 | + |
| 194 | +[Kattni]: From my experience, the big problem was that it was written for people who are |
| 195 | +already programmers. The tutorial needs to be constructed in a manner that people want |
| 196 | +to do it. If it's not catchy to a beginner, people won't want to do it. That needs to |
| 197 | +speak to where we start and how we move through the tutorial. My experience is not |
| 198 | +making it through the tutorial; I added a note that it's not for programmer beginners. |
| 199 | +We have a lot of beginner tutorials on the net, but I went to the official one. I think |
| 200 | +we need to provide something on python.org. |
| 201 | + |
| 202 | +[Keith]: The outreach WG is interested [...] When I've tried to teach friends |
| 203 | +programming, they didn't want to learn programming, they wanted to solve a problem. |
| 204 | +Thinking about small projects that have a quick loop from a skeleton to a complete |
| 205 | +project. Those can all funnel to the existing tutorial. To answer "who is the audience": |
| 206 | +you have "bubbles" of interests that all funnel to a standardized tutorial that Kattni |
| 207 | +was envisioning. |
| 208 | + |
| 209 | +[Carol]: I'll talk about it as pathways to Python rather than a beginner tutorial. When |
| 210 | +I was helping people fabricate ideas (including with code), I saw people who could code |
| 211 | +but did not see themselves as coding. I told them how they can do something interesting |
| 212 | +in five lines of Python or less. When I try to do something I approach it through music. |
| 213 | +There's no one size fits all, it's how you apply your skills. The current tutorial |
| 214 | +serves people who are already developers. There's a need to democratize pathways to |
| 215 | +computational thinking. The core team probably isn't the right team to drive this. |
| 216 | + |
| 217 | +[Ned]: I like hearing all the ideas about how this could be approach. Not sure how to |
| 218 | +form a group that could move in one direction. |
| 219 | + |
| 220 | +[Trey]: I like the radical approach, but I'm afraid that it might end up as a "very big |
| 221 | +thing" that would hold us back. Maybe the tutorial should be "the second-best tutorial" |
| 222 | +for everyone. |
| 223 | + |
| 224 | +[Bartos]: The general point is that Python has a lot of different use cases and |
| 225 | +audiences. Everyone has different backgrounds and interests. I'd like a tutorial to be |
| 226 | +at the intersection at all these paths. Maybe we shouldn't answer all questions for all |
| 227 | +the paths. I like Raymond's talk about chunking and aliasing. |
| 228 | + |
| 229 | +[Adam]: Think about adding a list of tutorials to the index. Make it easier to jump |
| 230 | +around. Think about Diátaxis. We should cover `match`, not necessarily data science. |
0 commit comments