-
Notifications
You must be signed in to change notification settings - Fork 5
Repo documentation guidance #192
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
base: main
Are you sure you want to change the base?
Conversation
b2f098b to
00a1212
Compare
| Acronyms can abbreviate and simplify documentation, but it can also create barriers to entry for an unfamiliar | ||
| audience. | ||
|
|
||
| <!--alex ignore just--> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does this comment do?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One of the CI checks was flagging the paragraph for inclusive language, but the context here is fine.
repo-documentation.md
Outdated
| readers be expected to already know and what does the documentation aim to teach them? | ||
|
|
||
| > [!TIP] | ||
| > Answering the following questions helps you determine what your document should contain: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it worth saying that it can be useful to readers if the documentation includes things like intended audience and knowledge prerequisites?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @NovemberTang, I have added an extra couple of sentences to encourage this. Let me know if you that that covers it 🙏
NovemberTang
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @SHession , this is great! I've left a couple of small QOL comments, but nothing blocking 🥇
|
Re: our discussion of advice on how to structure docs for LLMs I think the general guidance should be that things that are useful for humans are also useful for LLMs, and in particular avoiding redundancy between docs/comments and code: docs should provide complementary information, not duplicate information. Examples of complementary information:
A couple of specific things I've thought of, which we often do anyway, but not always:
Another thing which we want to recommend people start exploring: https://github.com/anthropics/skills |
repo-documentation.md
Outdated
| ### Write for an audience | ||
|
|
||
| <!--alex ignore clearly--> | ||
| Repo documentation is primarily useful for engineers. However, authors should also consider the value it provides to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As far as I can tell, this section doesn’t explain anywhere why writing for a specific audience is valuable. I think a good structure for the section might be to start with that explanation, before giving examples of possible audiences to consider and advice to help identify a good intended audience.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great point, that is a notable omission. I will add something in.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've added some detail to this section, I would value your thoughts.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I love it, thanks!
repo-documentation.md
Outdated
| > Analytic minds tend to love tables. Given a page containing multiple paragraphs and a single table, engineers' eyes | ||
| > zoom towards the table. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this strike you as true? It doesn’t apply to me (I would probably prefer the paragraphs in many cases), but I’m uncertain what’s typical.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point, this was also taken from the technical writing course, but it is very much subjective. Although, I think the point stands that many people find tables useful.
I'm open to alternatives quotes or phrasing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the reason I dislike this piece of text is that it implies engineers are all the same – engineers prefer tables, engineers have analytic minds. As I don’t prefer tables, I think it (slightly!) implies I’m not a real engineer.
That’s probably not that important, but I also don’t think the paragraph is adding much to this section: we’ve already recommended tables in the first paragraph, so this strikes me as just a bit of unnecessary colour. If we’re drawing attention to some extra markdown features here, I’d be more tempted to highlight alerts or GitHub’s support for mermaid diagrams.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with this. I have removed the unhelpful quote and replaced it with a reference to the mermaid docs.
repo-documentation.md
Outdated
| > [!TIP] | ||
| > Sure, you can introduce and use acronyms properly, but should you use acronyms? Well, acronyms do reduce sentence | ||
| > size. For example, TTN is two words shorter than Telekinetic Tactile Network. However, acronyms are really just a | ||
| > layer of abstraction; readers must mentally expand recently learned acronyms to the full term. For example, readers |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When I first read this I missed the key bit "recently learned".
I presume we aren't suggesting expanding USB, CRC, HTTPS, etc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same here actually – clicking through to the source makes it clearer that common acronyms should still be used.
c7c0806 to
89e3c3a
Compare
| allows diagrams to be represented in Markdown and provides support for a variety of common diagram formats such as flow | ||
| charts and UML. | ||
|
|
||
| ### Documentation for LLMs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your help on this, @joelochlann. I have attempted to distil your comment into this section. I would value any thoughts or suggestions you may have 🙏
Co-authored-by: TJ Silver <15648334+tjsilver@users.noreply.github.com>
Co-authored-by: TJ Silver <15648334+tjsilver@users.noreply.github.com>
Co-authored-by: TJ Silver <15648334+tjsilver@users.noreply.github.com>
Co-authored-by: TJ Silver <15648334+tjsilver@users.noreply.github.com>
Co-authored-by: Natasha <67543397+NovemberTang@users.noreply.github.com>
Co-authored-by: Emily Bourke <emily.bourke@guardian.co.uk>
Co-authored-by: Emily Bourke <emily.bourke@guardian.co.uk>
1dce9f7 to
f231ae4
Compare
What is being recommended?
This document provides guidance and a template for writing effective documentation for our repos. It is intended to improve the general quality of these documents, providing actionable advice, as well as a template to use.
What's the context?
I've noticed during the tools audit that knowledge of some tools is becoming increasingly sparse. The aim is to make discovering and understanding tools much simpler.