-
Notifications
You must be signed in to change notification settings - Fork 506
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Restructuring the documentation #537
Comments
I think that's fine as long as we don't lose existing content along the way, however I'd sketch out a rough skeleton of what goes where before doing all the work, just in case someone disagrees, so that you don't do all the work for it to be refused. |
What Audrius says. I agree with the haphazardness and that should be done. An early sketch is better than a lot of work up front. We will need a set of redirects as well probably, for maintaining external links. |
Thank you for your encouraging response. 😁 I'll definitely try to avoid losing any existing work. I like the idea of a rough sketch - here goes 🙂 The tutorialThe "Getting Started Guide" looks like a good starting point for making a tutorial. I can see a lot of explanation there, which I'd try to move so it becomes leaner. The existing FAQComing to the FAQ... (significantly different renames are indicated with How-toThe following seem suited to a how-to section.
ExplanationThe following seem suited to an Explanation section
Uncertain
For prospective usersThe following seems to be information a prospective user may want to know. I'm not sure where to put it - the README, the documentation front page, or even just the FAQ, same as now. Wherever a prospective user is most likely to see. FWIW I think of these more as "marketing" than strictly "documentation".
Whew! 😪 This is huge, and we've barely begun. I see a lot of stuff in Usage, much of which gets split into how-to/explanation, and then there is the Development section. Massive effort 😄 Let me know what y'all think! 🙂 EDIT - if the How-to or the Explanation gets longer than a certain point, we can, of course, create subsections for them. I have a feeling it's going to be necessary. |
What's the scope of what you'd like to tackle - reorganisation the docs structure or "just" (it's a lot on its own) structuring the FAQs? From what you wrote in general I got the impressions it's the docs in general, however your latest comment is very low-level (as in "in-detail"), looking at individual FAQs entries. What I imagine as a first step to discuss/agree on, is a very rough outline of the structure and where current content (again only very roughly, keywords coming to mind: config, api, releases). Could be some kind of semi-imaginary table of contents or something. |
@imsodin It's restructuring the entire documentation into certain groups, each of which serves a specific function and does not try to do something covered by another group. The best outline I can give is in the issue - in other words -
It would be repetitive to mention the topics ("config, api, releases") covered in each, because they will be covered in more than one group. For example, if we consider the subject of configuration -
A fifth group is emerging which is aimed at prospective users, which, as I've said, I consider to be more suited for 'marketing'. I don't know if we want that in the documentation or elsewhere. I mark the FAQ in square brackets, because while I'll try my best to move everything out of that and remove it as a "branch" of our tree, it may be the case that some things really are better off put in that. I hope that makes it clearer. |
Partly :) And some parts of the FAQ are somewhat special, because they explicitly exist to make support easier. As in if you get the same question the umpteenth time, you can just link to the matching question (hoping that eventually enough links are lying around that even the laziest search leads to them - one can dream). Some form of that will probably have to persist, but I agree that a lot of it can be moved to better places. And the marketing material can maybe go to the "docs landing page" and some you mentioned can stay in faq ("why no ios" is a prime example). |
Yeah, it may help us to make development- and usage-related subsections -
How-tos are goal-oriented (think of them in the form "How do I ...?"), so "Contribution Guidelines" probably don't fit that, although a "How do I contribute to Syncthing?" guide might link to Reference/Contribution Guidelines or Explanation/Contribution Guidelines (depending on how it's written; the former would be a strictly informative listing of these guidelines, the latter could take the time to explain the whys and wherefores of it.) It's the same for the "Release Process". I can try to make what I think you're asking for, but it's more work and will take a day or two. I'll need to skim through the entire documentation, and come up with a more detailed outline. It is indeed a major undertaking, and I'd be grateful for help. |
Right, that's already quite a bit of work in and of itself, however that's at least what I understood Audrius' "skeleton" and Jakobs "sketch" to be respectively what I'd consider useful to have like an early "top-level" review to prevent investing lots of time up-front for things that might have to be changed later. Anyway, thanks already for your interest and starting to think/work on it! |
Okay, here we are. This is pretty quick and dirty, as I was trying to work quickly and not be too thorough. I know it's not exactly the "middle ground" @imsodin asked for - rather a continuation of my "detailed" FAQ restructure outline - but I couldn't think of a better way to illustrate the proposed outcome. 😅 The heading structure ahead represents the website/documentation structure. I envision pages linking to their related entries in other sections, almost all the time. e.g. the tutorial, at the end, linking to the how-to guides. Sketch 2Tutorial (<- Getting Started - but made leaner)How-to guidesFor users
Installation and upgradeRunning
Troubleshooting
The Web GUI
Advanced users
For contributors
Explanation
For contributors
Reference
For prospective usersRather than in the documentation, let's try to address these at the potential point(s) of first contact.
CommentsAh, the Reference. The idea is to make it "code-oriented" -
This can all be generated and updated programmatically, of course. Optionally - move whatever I've put in Reference right now to Explanation. Not sure where to put
|
Looks very promising! |
@calmh I'm glad you like it! 😃 @AudriusButkevicius , @imsodin , others - what do you say? |
Agree, looking good already :) I have some comments on individual entries, but I believe that would be easier to discuss on a WIP PR of a branch that has a skeleton of the new structure (mostly to have different threads for different topics). Things like that I'd expect the rest api in the reference section (plus a howto). And I kinda liked the process used for a big PR recently where there's a main PR branch and then one can do smaller PRs against that one branch - prevents those monster-PRs that can grind the browser to a halt :P And can also facilitate collaboration, e.g. when you are the main driver of this restructuring and at a later stage someone starts contributing too. I like how you approach the process and the content. If you are aware that this is a lot of work and feel like you have the motivation and time to tackle a sizeable chunk of that, from my side I am very happy if this goes ahead and into a concrete phase. |
@imsodin I'm glad you like it 😀 It seemed more daunting when I started and less so now that I've gone through the entire documentation, although I guess the redirects will be some additional work. At any rate, I do see myself as being able to carry it out.
Sounds good; please let me know how to make this workflow happen, as all my FOSS PRs so far have been very simple ones. |
I thought I responded yesterday already, but apparently didn't send - sorry about that: |
Sorry for the break. I've started working on it, piece by piece. Thought of starting by moving things from the FAQ to a How-to section, for which I have created a restructure-faq branch. Moved two entries today. I've never used ReST or Sphinx before, so apologies if I get something wrong. |
I wanted to add an FAQ on how to copy an existing Syncthing configuration to a new system (and removing keys.pem on the new one). 😅 But in course of that I noticed something about the Syncthing documentation.
I really like this idea for structuring documentation. It involves organizing documentation into four categories - tutorial, how-to guides, reference, and explanation.
My personal understanding of it is -
In comparison, in Syncthing's current documentation, those concerns are mixed up rather haphazardly, I'm sorry to say.
I'd like to try to restructure Syncthing's documentation in this manner, because I believe it would be greatly improved by it.
What does the community say?
The text was updated successfully, but these errors were encountered: