Skip to content

Commit c240a0c

Browse files
committed
arrangement
1 parent b41b4d9 commit c240a0c

File tree

1 file changed

+29
-26
lines changed

1 file changed

+29
-26
lines changed

good_readmes.md

Lines changed: 29 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ it matches the developer's needs. this becomes essentially a series of pattern
2424
matching problems to solve, where each step takes me deeper into the module and
2525
its details:
2626

27-
1. *Name* -- ideally the module name is self-evident. `sorted-array` sounds
27+
1. *Name* -- ideally the module name is self-evident. [`sorted-array`]() sounds
2828
promising if I'm looking for an array that maintains a sort order on itself.
2929
if the name sounds too vague or unrelated, I can move on.
3030

@@ -66,31 +66,7 @@ want. Excellent! Now I need to gauge how well it'd fit into my code.
6666
the MIT/BSD/X11/ISC flavours. if you have a non-permissive license, stick it
6767
at the very top of the module to prevent any confusion
6868

69-
from `perlmodstyle`:
70-
> The level of detail in Perl module documentation generally goes from
71-
> less detailed to more detailed. Your SYNOPSIS section should
72-
> contain a minimal example of use (perhaps as little as one line of
73-
> code; skip the unusual use cases or anything not needed by most
74-
> users); the DESCRIPTION should describe your module in broad terms,
75-
> generally in just a few paragraphs; more detail of the module's
76-
> routines or methods, lengthy code examples, or other in-depth
77-
> material should be given in subsequent sections.
78-
>
79-
> Ideally, someone who's slightly familiar with your module should be
80-
> able to refresh their memory without hitting "page down". As your
81-
> reader continues through the document, they should receive a
82-
> progressively greater amount of knowledge.
83-
84-
from http://mathforum.org/ken/perl_modules.html#document:
85-
> Your documentation is complete when someone can use your module without ever
86-
> having to look at its code. This is very important. This makes it possible for
87-
> you to separate your module's documented interface from its internal
88-
> implementation (guts). This is good because it means that you are free to
89-
> change the module's internals as long as the interface remains the same.
90-
>
91-
> Remember: the documentation, not the code, defines what a module does.
92-
93-
# what other good practices are there?
69+
## what other good practices are there?
9470

9571
1. include a **background** section if your module depends on important
9672
abstractions or ecosystems that it exposes. [`hyper-array`][] provides an
@@ -152,3 +128,30 @@ from http://mathforum.org/ken/perl_modules.html#document:
152128
addition to) a programmatic API, show usage examples as command invocations
153129
and their output. if you create or modify a file, `cat` it to demonstrate
154130
the change before and after
131+
132+
## some further wisdom from the perl community
133+
134+
from `perlmodstyle`:
135+
> The level of detail in Perl module documentation generally goes from
136+
> less detailed to more detailed. Your SYNOPSIS section should
137+
> contain a minimal example of use (perhaps as little as one line of
138+
> code; skip the unusual use cases or anything not needed by most
139+
> users); the DESCRIPTION should describe your module in broad terms,
140+
> generally in just a few paragraphs; more detail of the module's
141+
> routines or methods, lengthy code examples, or other in-depth
142+
> material should be given in subsequent sections.
143+
>
144+
> Ideally, someone who's slightly familiar with your module should be
145+
> able to refresh their memory without hitting "page down". As your
146+
> reader continues through the document, they should receive a
147+
> progressively greater amount of knowledge.
148+
149+
from http://mathforum.org/ken/perl_modules.html#document:
150+
> Your documentation is complete when someone can use your module without ever
151+
> having to look at its code. This is very important. This makes it possible for
152+
> you to separate your module's documented interface from its internal
153+
> implementation (guts). This is good because it means that you are free to
154+
> change the module's internals as long as the interface remains the same.
155+
>
156+
> Remember: the documentation, not the code, defines what a module does.
157+

0 commit comments

Comments
 (0)