Several years have passed since the appearance of the first text markup language that supports âdendrowritingâ, but no worthwhile piece of text demonstrating the advantages of the new writing method/technology has yet appeared.
The largest âdendrotextâ was a couple of paragraphs in the pqmarkup documentation, consisting of only ~1300 characters and available only in Russian.
In English there was no âdendrotextâ at all, as such [apart from small insertions in the documentation for the 11l programming language (e.g., âBoolean typeâ in Built-in types)].
But last year...
⦠when I was tidying up the meta-information for my projects, I noticed that I had settled on recording version numbers in
YYYY.M[.n]
form. Then I got the idea of giving this designation a name: YearVer [obviously, by analogy with SemVer]. And the rule for naming additional versions {published in the same month or fixing bugs in the main version} formed the basis of the text for a new website.Soon after, I learned about the existence of CalVer from the Software versioning page on Wikipedia. This disappointed me a little, but when I took a closer look I found out that calver.org does not give any specific recommendations about which âcalendar versioningâ scheme should be used, but simply describes the schemes already used in various projects, without highlighting them in any way.
The creation of a site for YearVer thus remained relevant, and I continued to fill it with content.
The resulting description of the YearVer versioning scheme turned out to be quite short and concise, but very definite, offering specific schemes/strategies depending on the type of project.
And the most challenging task was now to translate the yearver.org/ru page into English, preserving the formatting.
To obtain a high-quality translation, I decided to contact three different translation agencies at once and to emphasize the fact that I was interested in maximum quality and prepared to pay extra for it.
I contacted:
- Alconost (it was the first link in Google search results for âбÑÑо пеÑеводов ÑайÑовâ\âwebsite translation agencyâ)
- transly.ru and tran.su (found by searching for âбÑÑо пеÑеводов markdownâ\âtranslation agency markdownâ)
In the process of communicating with the first translation agency, the rules for reading âdendrotextâ were formulated:
- Hidden text {...} should be expanded only after the [corresponding] paragraph has been read in its entirety.
- Hidden text {{...}} should be expanded after {...}.
For example, in the following sentence [from http://yearver.org]:
Additional versions published in the same month, or {â¦} those fixing bugs of the main version {â¦}, shall be numbered
the second block of hidden text should be expanded (after the words âmain versionâ), then all its nested blocks, and only then the first block (after the word âorâ).2021.2.1
,2021.2.2
, and so on.
Why was this âdendrotextâ organized this way?(Before reading this explanation, I strongly recommend that you read [in accordance with these rules] the indicated sentence from yearver.org in full)The second block of hidden text (after the words âthose fixing bugs of the main versionâ) introduces the concept of bug-free projects, clarifying that such projects do not need bug-fixing versions. [And its [second block] could actually be placed right after the words âfixing bugsâ [{but I did not do that, since the first and second blocks of hidden text would then be too close to each other}].]
And the first block of the hidden text relates to the word âorâ (therefore it is located immediately after it), but since it uses the concept of bug-free projects [introduced in the second block], it should be expanded after the second block [which is why the first block was enclosed in additional curly braces].
At the end [of the translation process] there remained the painstaking work of âmergingâ the three translations I received into one text, choosing the best translation variants for each sentence and each term/concept.
Why âdendrowritingâ?
Dendro- comes from the Greek déndron, meaning âtreeâ. However, if you think of a tree as a data structure [in programming], then it's really not very clear how âdendrowritingâ relates to it. But if you take a look at ordinary/real trees⦠Try to draw a vertical line on a piece of paper: that's the trunk of the tree, and this is your text [a paragraph or just a sentence]. Now go from bottom to top, and once you reach the first block of hidden text, make a branch (to the left or to the right {you can alternate: the first block of hidden text branches to the left, the second to the right, the third to the left again, etc.}). Then you expand the first block of hidden text [bottom branch of the tree]. It can either consist of plain text or contain other blocks of hidden text corresponding to the sub-branches of the tree.
And how is it different from classic spoilers (like this)?
âDendrowritingâ is blocks of hidden text within a paragraph.
Whereas the classic spoiler is a separate paragraph in itself {but which, like a block of hidden text in âdendrowritingâ, may contain multiple paragraphs}.
Whereas the classic spoiler is a separate paragraph in itself {but which, like a block of hidden text in âdendrowritingâ, may contain multiple paragraphs}.