You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Minor edit to resources (adds Git for docs link)
* Adjust sidebar styles
* Adding theme/common for cross-theme content
* Point the Hyde head for asciidoctor.css to theme/common/
* Add docx lock file to ignore
* Add several new terms to glossary
* Add 'contributing' tag
* Major revisions and additions
Copy file name to clipboardExpand all lines: _data/glossary.yml
+140-5Lines changed: 140 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -7,9 +7,13 @@ terms:
7
7
8
8
- term: AsciiDoc
9
9
definition: |
10
-
An extensible lightweight markup language with numerous powerful features such as conditional processing, file includes, and variable text substitutions.
10
+
An extensible, dynamic lightweight markup language with numerous powerful features such as conditional processing, file includes, and variable text substitutions.
11
11
Pronounced _ASK-ee-doc_.
12
12
13
+
- term: binary files
14
+
definition: |
15
+
Complex files consisting of bytecode, often representing archives of flat files and opaque to most source-control systems.
16
+
13
17
- term: CCO
14
18
definition: |
15
19
See *complex content object*.
@@ -19,33 +23,89 @@ terms:
19
23
Command-line interface.
20
24
Any place where a command prompt expects textual input.
21
25
Pronounced _C-L-I_.
22
-
# tag::cco-example[]
26
+
27
+
- term: commit
28
+
definition: |
29
+
A defined set of changes made to the source code of a project managed by source control.
30
+
In Git, you organize source changes into commits as a way of organizing contributions to the codebase.
31
+
Anyone who makes commits to the project is a _committer_.
32
+
23
33
- term: complex content object
24
34
definition: |
25
35
Abbreviated CCO, this is an item that may be more metadata than content, stored many to a file, as opposed to more typical text content units like chapters or topics, which may have some metadata but are mainly text and images.
26
36
See <<chapter-managing-complexity>>.
27
37
38
+
- term: dependency, software
39
+
definition: |
40
+
A separate software product that is required for the development or operation of another application.
41
+
These are either prerequisites that need to be set up or packages that are integrated automatically, but the main software relies on them to perform some crtical task.
42
+
43
+
- term: deprecation
44
+
definition: |
45
+
The process of designating product features for cessation of support.
46
+
Whenever an existing feature is slated to be disabled in a future release, providers notify users the functionality will cease.
47
+
This flagging is the actual act of deprecation.
48
+
Actual removal or cessation of support is a separate operation.
49
+
# tag::cco-example[]
50
+
- term: DevOps
51
+
definition: |
52
+
An approach to software development that seeks to optimize complementarity between product coding and build/test procedures, mainly through automation and continuous integration.
53
+
28
54
- term: DITA
29
55
definition: |
30
56
Acronym for _Darwin Information Typing System_.
31
57
An XML standard designed for technical writing, introduced by IBM in 2005.
32
58
In addition to a markup standard, DITA incorporates dynamic functionality and mature framework elements.
An XML-based structured semantic markup language designed to convey technical information.
64
+
Founded on Usenet in 1991, DocBook was originally popularized as the basis for O'Reilly technical books.
65
+
AsciiDoc was designed as a lightweight writing format to be preprocessed into DocBook XML.
66
+
35
67
- term: DRY
36
68
definition: |
37
69
For "don't repeat yourself", referring to a single-sourcing approach to code or docs.
38
70
# end::cco-example[]
71
+
- term: dynamism (in CMSes)
72
+
definition: |
73
+
At a minimum, a content management system is _dynamic_ if it enables the setting of variables for tokenized substitution inside parsed content.
74
+
That is, users can embed references to outside data or content inside preprocessed source, which will be populated by that outside data or content, depending on which external content is established as the _value_ of any given _key_ (token).
75
+
Other elements of dynamism may include conditional processing, which is often necessary for the proper establishment and processing of variables.
76
+
77
+
- term: extensibility
78
+
definition: |
79
+
Software that offers users the prerogative to heavily alter or add to its performance or abilities is considered “extensible”.
80
+
81
+
- term: flat files
82
+
definition: |
83
+
Simple files consisting only of textual characters and easily readable by source-control systems.
84
+
85
+
- term: framework
86
+
definition: |
87
+
A set of digital assets as well as structural and methodological conventions designed to enable rapid programming that is accessible to anyone familiar with the framework.
88
+
Frameworks use standardized files, namespaces, architectures, and coding principles to enforce conventionality in style while enabling developers to jumpstart (“bootstrap”) their own projects as well as parachute into others' with minimal orientation to the codebase.
89
+
39
90
- term: FOSS
40
91
definition: |
41
92
Acronym for _free, open source software_.
42
-
“Free” here implies both free as in do what you want with it, and free as in no money need be exchanged.
93
+
“Free” here implies both free as in do pretty much whatever you want with it, and free as in no money need be exchanged.
43
94
44
95
- term: JSON
45
96
definition: |
46
97
A very common format for semi-structured data, popular for data transfer, especially with JavaScript/Node.js, though quickly becoming the industry standard.
47
98
Pronounced _JAY-sahn_.
48
99
100
+
- term: linter
101
+
definition: |
102
+
A utility that scans text or code for syntactically, grammatically, or vocabularily incorrect content to flag or reject.
103
+
104
+
- term: literal (expression)
105
+
definition: |
106
+
Text in technical documentation that conveys actual code or values.
107
+
Literals are usually represented by monospace type to distinguish it as directly expressing practical data or code.
108
+
49
109
- term: Markdown
50
110
definition: |
51
111
One of the lightest weight and most popular textual markup languages, popularized on GitHub, StackOverflow, various forums and comments systems, and numerous other places.
@@ -58,34 +118,94 @@ terms:
58
118
59
119
- term: IDE
60
120
definition: |
61
-
For _integrated development environment_, a toolchain/platform that facilitates software programming in a customized context that incorporates the particularities of the source language(s)and the product build.
121
+
For _integrated development environment_, a toolchain/platform that facilitates software programming in a customized context that incorporates the particularities of the source language(s), any specific configuration for a given project, and elements of the product build procedure.
62
122
Pronounced _I-D-E_.
63
123
124
+
- term: open source
125
+
definition: |
126
+
Software source code that is specifically licensed for sharing, usually with some restrictions.
127
+
See also, FOSS.
128
+
129
+
- term: platform
130
+
definition: |
131
+
Any configurable software product that enables one or more users to contribute customized data or content for routine processing using a controlled, predictable environment.
132
+
133
+
- term: RDB
134
+
definition: |
135
+
Abbreviation for _relational database_.
136
+
137
+
- term: regression testing
138
+
definition: |
139
+
QA to ensure that changes in a new version of a software product work as intended with previous configurations, integrations, and applications.
140
+
Thorough integration testing ensures all still-supported features and functionality remain backward compatible.
141
+
142
+
- term: relational database
143
+
definition: |
144
+
A complex, multi-table data source that is structured according to a defined schema and primarily accessed using queries.
145
+
As opposed to flat files, RDBs are almost always stored as binary files and therefore opaque to most source control systems.
146
+
147
+
- term: release cycle
148
+
definition: |
149
+
The full set of procedures involved in planning and distributing a version of a software product.
150
+
The release cycle includes planning, coding, testing, packaging, distributing, and any other tasks involved in turning software from a set of ideas to a new edition for production use.
151
+
152
+
- term: repository, code
153
+
definition: |
154
+
A file-storage system for _source code_, which tracks metadata about the code files and tracks changes across user-established _versions_.
155
+
Commonly referred to as a “repo”.
156
+
64
157
- term: REST API
65
158
definition: |
66
159
An API (see <<glossary-api,API>>) that listens for and responds to HTTP requests to established endpoints.
160
+
A “RESTful” service waits for an HTTP client request, such as a _POST_, _GET_, or _DELETE_ transaction at a specific URI, enabling third-party developers to build applications to interact with that service based on documented functionality and permissable formats for exchanging data.
161
+
(REST stands for “Representational State Transfer”, which I had long-since forgotten before I just looked it up, because it is never used.)
67
162
Pronounced _REST A-P-I_.
68
163
69
164
- term: reStructuredText
70
165
definition: |
71
166
A dynamic lightweight markup language associated with Python development.
167
+
Abbreviated _RST_.
72
168
73
169
- term: RST
74
170
definition: |
75
-
Abbreviation for reStructuredText.
171
+
Abbreviation for _reStructuredText_.
76
172
77
173
- term: SaaS
78
174
definition: |
79
175
Acronym for _software as a service_. Subscription-licensed tools hosted in “the cloud”, SaaS products require no user maintenance and provide thin-client remote access (e.g., browsers, mobile apps).
80
176
Relevant examples include Wordpress.com, GitHub, Slack, and Office 365.
81
177
Pronounced _sass_.
82
178
179
+
- term: small data
180
+
definition: |
181
+
Datasets that are limited in count and complexity.
182
+
Small data can be stored in flat files, with or without schematic constraints.
183
+
Distinguished more in terms of the subjects of data suitable for such storage systems, namely recordsets of limited volume.
184
+
Similar to Big Data, small data structures usually support nested attributes represented by flat formats like XML, JSON, and YAML.
185
+
83
186
- term: SME
84
187
definition: |
85
188
Subject matter expert.
86
189
Someone close to or highly familiar with the source/product who contributes this expertise to the documentation process.
87
190
Please don't pronounce this _sme_ or for god's sake _shme_.
88
191
192
+
- term: source code
193
+
definition: |
194
+
Human readable programming instructions intended to be compiled into machine code.
195
+
196
+
- term: stack
197
+
definition: |
198
+
The particular set of software utilities or languages used in developing and/or running a software product.
199
+
My technical documentation stack includes Ruby, AsciiDoc, YAML, Asciidoctor, and Jekyll.
200
+
See also _tooling_.
201
+
202
+
- term: tooling
203
+
definition: |
204
+
Software utilities configured to provide routine services.
205
+
For documentarians, tooling includes text editors and any utilities that generate and package documentation files.
206
+
A _toolchain_ is a specific set of technologies used to perform a given complex procedure, such as writing and building documentation.
207
+
See also _stack_.
208
+
89
209
- term: topic
90
210
definition: |
91
211
A discrete content item intended to be included (embedded or referenced) in parent document.
@@ -100,6 +220,21 @@ terms:
100
220
Initialism for _user interface_.
101
221
Pronounced _U-I_.
102
222
223
+
- term: Unicode
224
+
definition: |
225
+
A collection of universally standardized character sets that incorporate massively extended non-Western alphabets and extended symbolic characters.
226
+
The most common is UTF-8, which incorporates characters consisting of between one and four 8-bit bytes.
227
+
228
+
- term: UX
229
+
definition: |
230
+
Initialism for _user experience, the study of overall interactions between users and a product.
231
+
Pronounced _U-X_.
232
+
233
+
- term: workflow
234
+
definition: |
235
+
The procedures involved in fulfilling a task or project.
236
+
Workflows may be formal, as in a prescribed set of protocols, or they informal, as in a description of what actually happens within a team or workspace.
237
+
103
238
- term: XML
104
239
definition: |
105
240
Extensible markup language, a tag-based means of conveying semi-structured data.
@@ -51,6 +54,25 @@ A compilation of excellent blog posts examining intermediate and advanced topics
51
54
52
55
=== MarkDown
53
56
57
+
== DITA
58
+
59
+
* http://www.dita-ot.org/1.8/dev_ref/extending-the-ot.html[DITA Open Toolkit] +
60
+
I list this extensible, open-source DITA toolkit up front because it is most valuable here as an option for DevOps engineers trying to integrate DITA into their product source control or build infrastructure.
61
+
This is the place for hackers to start.
62
+
63
+
64
+
65
+
== Regular Expressions (RegEx)
66
+
67
+
Following up on <<chapter-coding-regex>>, let's explore some RegEx tools and tutorials.
68
+
69
+
* link:https://regexone.com/[RegexOne] is a great tutorial
70
+
71
+
* The site link:http://www.rexegg.com/[RexEgg.com] offers some very cool instructionals and in-depth explorations.
72
+
73
+
* link:https://regexr.com/[Regxr] is a great “fiddle”-style tool for running experiments against test patterns with lots of resources a click away.
74
+
75
+
54
76
== SSG: Static Site Generators
55
77
56
78
=== Jekyll
@@ -70,6 +92,16 @@ With my limited programming acumen, I find Ruby difficult to learn, though even
70
92
That said, these tools are all truly excellent, and there are a great many resources on Ruby, especially on https://stackoverflow.com/tags/ruby/info[StackOverflow], which is a pretty good place to start learning Ruby, and _the_ place to go when you get stuck.
@@ -150,7 +186,7 @@ LeanPub is a great way for authors to self-publish; it includes an e-commerce sy
150
186
* link:https://leanpub.com[Leanpub site]
151
187
152
188
[TIP]
153
-
Don't see your favorite platform here? Suggest it in the Issues for this GitHub project or in the
189
+
Don't see your favorite platform here? Suggest it in the link:https://github.com/briandominick/codewriting/issues[Issues] for this GitHub project, or add it directly and issue a merge request.
154
190
155
191
== Blogs
156
192
@@ -181,5 +217,15 @@ Though not particularly docs-as-code oriented, this site occasionally features d
Copy file name to clipboardExpand all lines: book-cw/frontmatter/acknowledgements.adoc
+8-6Lines changed: 8 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,16 @@
1
1
= Acknowledgements
2
2
3
-
My first shout out has to go to Eric Sammer, CTO at Rocana, who had the foresight to set me up with such a great documentation toolchain.
4
-
Eric has given me room to experiment with the docs at Rocana, just as he and the Engineering organization have kept a constant flow of new challenges streaming across my desk.
5
-
I did not take this job with any semblance of a notion that I was stumbling into a nascent (niché) field that so fully fuses writing and development.
3
+
I must first express appreciation for Eric Sammer, CTO at Rocana, who had the foresight to set me up with such a great documentation toolchain.
4
+
Eric gave me room to experiment with the docs at Rocana, just as he and the Engineering organization kept a constant flow of new challenges streaming across my desk.
5
+
I did not take that job with any semblance of a notion that I was stumbling into a nascent (niche) field that so fully fuses writing and development.
6
6
Since those are the only two consistent interests on my resumé, I suspect Eric saw more than I evidently did.
7
7
8
-
I also want to express appreciation for my manager, Arthur Foelsche.
8
+
I also want to express appreciation for my direct manager at Rocana, Arthur Foelsche.
9
9
When your company is so small you're the only tech writer, it helps a lot to have somebody who's well paid to feign an interest in what you do all day.
10
-
Truthfully: through countless hours of coding and conversation, Arthur has pushed and helped me to solve more than a few of the problems I'm truly excellent at raising.
11
-
He also encouraged me to do this book and pursue the initiatives and projects that inspired it, as did everyone in Rocana's Engineering department.
10
+
Truthfully: through countless hours of coding and conversation, Arthur pushed and even directly helped me to solve more than a few of the problems I'm truly excellent at raising.
11
+
He also encouraged me to do this book and pursue the initiatives and projects that inspired it, as did so many of my colleagues there.
12
+
13
+
I hope the Codewriting project serves as an unexpected, lasting artifact of all our days solving “impossible” problems together as Rocana.
0 commit comments