
\documentclass[12pt]{article}
\usepackage[T2A,OT1]{fontenc}
\usepackage[default]{cantarell}
\usepackage[a4paper, top=20mm, bottom=20mm, left=20mm, right=20mm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[russian, english]{babel}
\usepackage{tabu}
\usepackage{hyperref}
\usepackage{parskip}
\usepackage{graphicx}
\usepackage{tabularx}
\usepackage[normalem]{ulem}
\usepackage{float}
\floatstyle{boxed}
\restylefloat{figure}
\usepackage{setspace}
\onehalfspacing
\author{Artyom Bologov \href{mailto:gess@aartaka.me}{(email)}}
\date{\today}
\title{GESS Stenography for Russian and English}
\makeatletter
\def\endenv{\expandafter\end\expandafter{\@currenvir}}
\makeatother
\begin{document}
\maketitle

\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess.png}

\begin{quote}
Much like
\href{run:kaktovik}{my previous post on Kaktovik numerals},
this post is about doing things on paper in a visual way.
So, if you rely on non-visual means, like screen readers… there’s not much useful stuff for you.
Sorry.
\end{quote}

So I was looking for a good shorthand / stenography system.
Preferably multi-lingual, so that I can write both English and Russian / Interslavic.
I searched far and wide for Armenian stenography systems.
Because Armenian phonetics is almost a superset of Russian and English.
So if I can write Armenian shorthand, I can write English and Russian easily.
But no, there’s no Armenian shorthand documented anywhere.
Even in the biggest library of Armenia.
Only Russian-language systems, like GESS.

So GESS (‘gosudarstvennaja ědinaja sistema stenografiji’, unified state system for stenography) is this stenography / shorthand system.
A way to write really fast using a simplified alphabet.
Devised by Nikolai Sokolov in the beginning of last century.
And chosen as the standard for stenography in USSR.
Interestingly enough, it was explicitly stated as incomplete, but was chosen literally anyway.
Soviet moment, I GESS (sorry.)

There were some improvements / developments, starting with ’39 version, then ’67 version, then Jakov Každan’s 1991 version.
Here I focus on Sokolov’s ’39 version and Každan’s version, picking the best parts from either.
Mostly because these were the ones I found textbooks for.
\href{run:about}{(Contact me if you want me to share!) (section contacts)}

\paragraph{Alternative systems} \begin{quote}
\href{https://vstrokax.net/avtorskaya-kolonka/oganes-stepanovich-akopyan-uchitel-na-vsyu-zhizn}{A rivaling standard was Oganes Akopyan’s (Hakobyan’s) system}.
Supposedly simpler and faster.
But there’s literally no materials on this system on the Internet.
And there’s only one book on it in National Library of Armenia.

There’s also
\href{https://reddit.com/r/shorthand/comments/mdr7te/an_interesting_find_polish_gregg}{Polish Gregg adaptations},
and likely Russian too.
But these are inherently English-centric and not tailored to the language.
So GESS it is.

(One can say that Sokolov’s GESS is actually a rehash of
\href{https://wikipedia.org/wiki/Gabelsberger_shorthand}{Gebelsberger’s system}.
But this adaptation is still better than Gregg, because it was tested on Polish and Czech with reasonable success.)
\end{quote}

\begin{quote}
Note that this post / set of notes focuses on Russian-oriented stenography system.
So most resources are either in Russian or focus strongly on Russian.
They can be applied to Interslavic, and that’s one of the focus areas for me.
I’m trying to keep things in English most of the time, but the topic is inherently non-English.

Speaking of Interslavic, most of the Russian words in this post will be transliterated by the rules of Interslavic:

\begin{itemize}\item č is ch sound
\item š is sh sound
\item š’ is a softer sh, an artifact of Russian represented in Polish as szcz / šč
\item ž is zh sound (as in Shenzhen)
\item and ě is a soft e sound, essentially je / ye (as in ye olde)
\end{itemize}

In case you don’t know Cyrillic script,
\href{https://omniglot.com/conscripts/cyrilice.htm}{this constructed Cyrilice script}
maps Cyrillic letters to Czech / Interslavic / Latinized letters.
\end{quote}

\paragraph{Table of Contents} \begin{quote}
\begin{itemize}\item GESS Basics \ref{basics}
\item Letter Combinations \ref{letter-combinations}
\item Shortcuts: Lenin \ref{shortcuts}
\begin{itemize}\item Word Endings \ref{endings}
\begin{itemize}\item Adjective \& conjugation endings \ref{adjective-endings}
\item Verb endings \ref{verb-endings}
\item Noun endings \ref{noun-endings}
\end{itemize}
\item Numbers \ref{numbers}
\end{itemize}
\item English-specific Adaptations \ref{en}
    (Note that this section contains some “advanced” parts of GESS
    which are not strictly necessary for Russian, but are vital for English adaptation.)
\begin{itemize}\item English Alphabetic Connection \ref{en-connection}
\item Russian-unrepresentable English Sounds \ref{en-unrepresentable}
\item English Word Endings \ref{en-endings}
\item English Shortcuts \ref{en-shortcuts}
\item Vowel Clusters \ref{en-vowels}
\item Diacritics \ref{diacritics}
\end{itemize}
\end{itemize}
\end{quote}

\section*{GESS Basics} \label{basics}

I have to applaud Každan’s book for a nice format, reasonable improvements (with significant exceptions,) and good reference material.
In particular, the first two pages of the book give a cheat sheet for the whole system succintly:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-alphabet.png}
\caption{Mapping of GESS strokes to Russian alphabet. Left to right: a, b, v, g, d, ě, ž, z, i, k, l, m, n (first row;) o, p, r, s, t, u, f, h, c (second row;), č, š, š’, y, e, ju, ja (third row)}\end{figure}

This alphabet improves over Sokolov’s one by using smaller symbols.
Sokolov’s one used these, often bloating the size of the line:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/sokolov-kgh.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/sokolov-szczc.png}
\caption{Some consonants differing between Sokolov and Každan books. Listed: k, g, h (first picture,) ž, š, š’, č, c (second picture.) Changed in Každan’s version: g, h, š, and c}\end{figure}

So most of the consonants are vertical and starting from the upper line or between lines.
And end on the lower line, almost unconditionally.
(By the way, upper line is called “control line” and the lower one is called “base line.”)
Which means they can be trivially chained together by means of a small upward stroke (“alphabetic stroke” they call it.)

Vowels are expressed as diagonal and horizontal strokes.
a/ja doesn’t have a dedicated middle-of-the-word stroke, merely being implied in alphabetic stroke.
(Wait, it actually does!) \ref{en-vowels}
Because “a” is the most frequent vowel in Russian.

In Sokolov’s GESS every vowel has a dedicated stroke, most of them barely distinguishable from each other.
Každan improves over that, merging “a” with “ja,” “i” with “y,” “ě” with “e” and “jo,” (should have been merged with “o”?) and “u“ with “ju.”
Which makes decoding stenograms harder, but makes learning and recording easier.
Which matters slightly more, because that’s the most intensive part of stenography.

While consonants have simple connections between each other, vowels introduce some chaos.
Because vowels raise and lower the following consonants.
In particular,

\begin{itemize}\item “ě” lowers the following consonants by half line.
\item “i” raises the consonants by half or whole line (depends on which is prettier.)
\item “o” and “u” lower the consonants to start below the line of the vowel itself.
\end{itemize}

This results in a wobbly type of writing, jumping up and down.
For Russian, this is mostly okay, because most frequent vowel—“a”—does not raise or lower things,
while the second most frequent—“ě”—lowers things.
Which balances out the radical raise “i” introduces.

There’s also a “linearity rule” explained by both Sokolov (in detail) and Každan (in passing.)
Helping one to keep things on one line.
In short, it allows perceiving “o“ in the middle of the word as “a.”
And lowering consonant clusters where unambiguous.
They frame it more elaborately, but this version is what I’m using.

\section*{Letter Combinations} \label{letter-combinations}

Both Sokolov and Každan introduce a lot of shortcuts.
Ranging from simple letter combinations to full words.
The former are useful for Russian due to shortening frequent patterns.

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-compound-signs.png}
\caption{Compound signs. From left to right: sn/zn, st, pr, str, pl, bl (first group,) sv/zv, sk/zk, tr/dr, nt/nd (second group)}\end{figure}

I don’t like “str” and “tr” signs, because they break the flow of writing, turning it into right-to-left that’s hard to recover from.
But I might change this opinion with practice.

Another type of shortcuts are frequent prefixes and particles:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-prefixes.png}
\caption{All prefixes: po, vo, so, do, pro, ot, ob, na, ne, no (upper line,) vs/vz, bes/bez, pred/pered, prof, in, inter, eks, nad, ned (middle two,) and za, ras/raz, n*n*, kom, kon, pod (lower line)}\end{figure}

I like the upper two lines, while the lower two are too symbolic and hard to remember for my taste.

\section*{Shortcuts: Lenin?!} \label{shortcuts}

Then there are word shortcuts, and these suck.
Most are socialist-specific and woefully outdated.
Here’s the most exemplary one:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-shortcuts.png}
\caption{These abbreviations suck: USSR, Lenin, Marx, Central Commitee, Communist Party}\end{figure}

Believe me, the other ones are not better.

Sokolov’s are somewhat better:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/sokolov-shortcuts.png}
\caption{These abbreviations do not suck: year, such, railroad, how, so that, because, maybe, factory, may, for example, et cetera, and others}\end{figure}

There’s barely a handful of useful abbreviations and shortcuts besides that:

\begin{description}\item[z]
zdes’ (here)
\item[č]
čto (what)
\item[čy]
čtoby (in order to)
\item[sk]
skol’ko (how many)
\item[id]
i drugiě (\& others)
\item[itd]
i tak daleě (et cetera)
\item[ps]
posle (after)
\item[es]
esli (if)
\item[sč]
seičas (now)
\item[čr]
čerez (through)
\item[bu, bum, but, buč]
budet, budem, budut (will do,) buduči (being)
\item[čl]
čto-libo (something)
\item[bl (possibly as a single sign)]
byl (was)
\item[pu]
potomu (because)
\end{description}

I’ll probably come up with some more based on my own writing.
Which is, like, what personal stenography about anyway?

There also are useful pronoun shorteners:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-pronouns.png}
\caption{Pronouns in GESS}\end{figure}

There’s a bunch of symbolic shorthands too, abstracting many frequent (to a Soviet person) words:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-symbols.png}
\caption{Some symbolic shorthands for Soviet writing}\end{figure}

\subsection*{Word Endings} \label{endings}

A lot of word endings are abbreviated to a single / couple of letters.
Convenient for Russian where there is a lot of similar endings.

Some endings, like -y for adjectives, are left out altogether when unambiguous.
Like when they are followed by a conjugated noun.

For the other cases, I’ll just list images here

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-adjective-endings.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-adjective-endings-2.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/sokolov-conjugation-endings.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-telny.png}
\caption{Adjective endings in GESS: n -> *ny, š’ -> *š’y / š’ik, š -> šy, všy, c -> ca / cja, s -> se (first pic;) sn/zn -> sny/zny, sk -> cky / sky, iv -> *ivy (second pic;) h, ogo / jego, my, kov (special glyphs, third picture;) and telny ending glyph (fourth pic)}\end{figure}

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-verb-endings.png}
\caption{Verb endings in GESS: tsja / ti se, jut, jutsja / jut se, lisj / li se (and gendered variations)}\end{figure}

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-noun-endings.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-noun-endings-2.png}
\caption{Noun endings in GESS: sk -> stka, long n -> n*nie, long no -> ž*enie, st -> nost, ik -> nik / čik, tr -> ktor*y (first row,) c -> ca / cija, š’ -> š’ik, -ment, -log, -graf (second row;) k -> kt / tika, ur -> k*tura, f -> fikacija, iz -> ism, t -> tel, special glyph -> *stvo (second picture)}\end{figure}

Some more endings

\begin{description}\item[e (alternative)]
-et
\item[šd]
-šedšij
\end{description}

\subsection*{Numbers} \label{numbers}

Numbers are written pretty much the same in GESS as in cursive.
Just slightly more optimized.

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-numbers.png}
\caption{The ones with apostrophe are ordinals, the ones below the line are fractions. Note that 5 is written it two strokes—it’s sooooo problematic!}\end{figure}

There’s also a bunch of shortcut symbols related to numbers and calculation. I’ll list them without explaining, sorry:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-numeric-symbols-1.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-numeric-symbols-2.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-numeric-symbols-3.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-numeric-symbols-4.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-numeric-symbols-5.png}
\caption{Some symbolic shortcuts related to numbers}\end{figure}

\section*{English-specific Adaptations} \label{en}

English is not Russian at all.
Which shows in systems like Forkner, which are phonetic and not alphabetic.
So if I want to use GESS for English, I’d better switch to phonetics.
Essentially writing transliterated English in Russian.
Which is not a 1-to-1 mapping, but better than using (reductionist) Forkner or Gregg for Russian.

But using GESS for English means most shortcuts become useless.
We need to come up with some more.
I’m going to rely on Forkner shortcuts to derive Transliterated GESS versions.

\subsection*{English Alphabetic Connection} \label{en-connection}

Changing the “default” alphabetic connection to mean “e” instead of “a” might be a good move.
After all, Forkner uses the alphabetic stroke for “e,” as the most frequent sound.

Then one would need to represent “a” somehow.
And there is such a way, using alternative “a” sign \ref{en-vowels}.
Or maybe use “e” stroke for “a?”

I’m indecisive though.
Changing something as fundamental as default vowel is a lot.
So maybe I’m better off with explicit “e” and default “a” instead?
This would mean slight downward drift for words.
But English is on average shorter than Russian, so no big deal.

\subsection*{Russian-unrepresentable English Sounds} \label{en-unrepresentable}

There are not many:

\begin{description}\item[th (thorn)]
I’m using s, z, and za (prefix) interchangeably for that.
  Depending on whether I need a vowel or consonant in a given context.
  The combination of za with t (that,) s (this, these,) or r (there, their) is particularly satisfying to strike out!
\item[x]
sk (single vertical line)
\item[w]

  Alternative u \ref{en-vowels}.
  Convenient, because it behaves like a consonant (vertical downwards stroke,) which w is in English (not in Armenian or Korean, though!)
  Also, sometimes I use v for w.
  I’m so inconsistent.
\item[j]
ž. The actual ž sound is extremely rare in English, so it’s a safe substitution.
\item[aj, ej, oj]
Respective vowel + diacritic dot. Which is inconvenient, because these combinations are frequent enough to be annoying.
\end{description}

While the mapping between English w and GESS v / u bit me more than once already.
And so did mapping for thorn.
I still think it a decent mapping for what it’s worth.

\subsection*{English Word Endings} \label{en-endings}

So NLTK, natural language toolkit for Python.
Classifies words by endings.
Which is useful for me adding my own ending shorthands!

\begin{figure}[h!]\begin{verbatim}
MORPHOLOGICAL_SUBSTITUTIONS = {
    NOUN: [
        ("s", ""),
        ("ses", "s"),
        ("ves", "f"),
        ("xes", "x"),
        ("zes", "z"),
        ("ches", "ch"),
        ("shes", "sh"),
        ("men", "man"),
        ("ies", "y"),
    ],
    VERB: [
        ("s", ""),
        ("ies", "y"),
        ("es", "e"),
        ("es", ""),
        ("ed", "e"),
        ("ed", ""),
        ("ing", "e"),
        ("ing", ""),
    ],
    ADJ: [("er", ""), ("est", ""), ("er", "e"), ("est", "e")]\,
    ADV: [],
}
\end{verbatim}\caption{Part of speech endings in English (there was a better code snippet, but I can’t find it now)}\end{figure}

Having that, we can derive shortcut endings:

\begin{description}\item[-n]
-ing
\item[-d]
-ed
\item[-s]
-es, -ses, -ves, -xes, -zes, -ches, -shes
\item[-st (a single stroke in GESS) or a adjective-terminating diacritic]
-est, -ist
\item[-nt]
-ment (same as in GESS)
\item[-r]
-er
\item[-i]
-ly
\item[-f]
-ful(l)
\end{description}

\subsection*{English Shortcuts} \label{en-shortcuts}

Then, abbreviations, taken from Forkner Shorthand book:

\begin{description}\item[a/ja]
I (I know, this is not an obvious mapping, mostly inherited from Russian GESS)
\item[b]
be, by, bye, but
\item[bk]
because
\item[bu]
between
\item[e]
a/an
\item[f]
for
\item[g]
go, good
\item[h]
has, have
\item[k]
can
\item[lk]
like
\item[l]
will
\item[mb]
maybe (interestingly, the same as in Russian GESS!)
\item[n]
and
\item[raised n]
not (as in GESS “ne”)
\item[s]
his, is, us, see
\item[t]
to
\item[u (alternative)]
with
\item[uo]
without
\item[ut]
what
\item[u, u r, ur]
you, you are, you are / your
\item[z, za- (prefix)]
the, th in general
\end{description}

\href{https://xahlee.info/kbd/xah_shorthand_system.html}{There are many other sets of abbrevs} that I consider.

\subsection*{Vowel Clusters} \label{en-vowels}

Another problem is clusters of vowels that usually don’t happen in Russian.
(Or, when they happen, Sokolov recommends skipping one of them.)
This clustering happens for words starting with “w” (undoubtedly a vowel too!) for example.
For these cases, an transitory dot (working clockwise / downwards instead of upwards for “z”) is put between vowels:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-two-vowels.png}
\caption{Two vowels techniques: transitory dot (above) and same dot for words ending with ja (below)}\end{figure}

Another approach is using alternative vowel signs:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/sokolov-alternative-eu.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/sokolov-alternative-a.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/sokolov-alternative-e.png}
\caption{Alternative vowel signs for ě/e/jo, ju/u,  a/ja, and e}\end{figure}

Sokolov explicitly claims that these alternative signs represent ě, ju, a, and e.
But I’m ready to extend them to e/jo, u, and ja.
Because Každan does merge these letters, unlike Sokolov.

So now when I want to write a really annoying combination of “w” plus vowel.
I can just write an alternative “u” and then a vowel.
Nice flow!

So we have alternative representations for “a,” “e,” “u,” but not for “o” and “i.”
Which is mostly fine, but irritating.
Anyway, “a” is out of the way and can be used in English words.
Which is a win!

\subsection*{Diacritics} \label{en-diacritics}

Both Každan and Sokolov emphasize that diacritics are rare and mostly unnecessary.
But, for English transcription where “j” often follows a vowel, these are vital!
Thus I’ll list them here:

\begin{figure}[h!]
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-diacritics.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/sokolov-j.png}
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{./assets/gess/kazhdan-j.png}
\caption{Diacritics in GESS mean either secondary vowels (first picture, below the stroke, a -> ja, i -> y, ě -> e, u -> ju) or j/й/ь/ъ (accounts differ, two last pictures, above strokes)}\end{figure}

Full list of diacritic signs:

\begin{description}\item[Dot (Sokolov) or tick / apostrophe (Každan) above vowel]
j (“й”)
\item[tick (Každan) or dot (Sokolov) under control line after a number]
Ordinal
\item[Dot (Sokolov) or tick (Každan) after the adjective stem]
-est (-*šij)
\item[Dot below (Sokolov) or above (Každan) the consonant]
“ь” or “ъ”
\item[Underline / tick below the vowel (Každan)]
Alternative vowel a -> ja, ě -> e (or jo,) i -> y, u -> ju.
\item[Double or single tick (Každan) after an abbreviations]
Alternative abbreviation. Každan really exploits these, along with stroke positions and underlines.
\item[Underlined word]
Capitalized
\end{description}

God, that’s so inconsistent.
Especially with Každan introducing apostrophes.
I’m going to stick to Sokolov’s dots.

So unoptimized nature of words and endings, and vowels—were my two biggest problems with using GESS for English.
Otherwise, it’s fine.

\section*{My Version of GESS} \label{my}

What I ended up with is:

\begin{itemize}\item Každan’s alphabet
\item Sokolov’s diacritics
\item Reduced set of abbreviations (my own vocabulary to be created yet)
\item Každan’s extended symbols (like numeric ones)
\item And English-specific adaptations, with new abbreviations and vowel clusters
\end{itemize}

Which makes my setup incompatible with either Sokolov’s or Každan’s instruction material.
Such is life.

But yeah, here is most of the system occupying 500-page books, in one web page.
There are omissions, sure.
But the contents of this page are roughly what I’m going to use everyday writing GESS.
So if you read it, you are on the same page with me.
(Well, if you’re Slavic and / or know Cyrillic alphabet, otherwise it’s hard to learn GESS in general.)
Good luck in stenographing!


\par\noindent\rule{\textwidth}{0.4pt}
\href{https://creativecommons.org/licenses/by/4.0}{CC-BY 4.0} 2022-2026 by Artyom Bologov (aartaka,)
\href{https://codeberg.org/aartaka/pages/commit/a91befa}{with one commit remixing Claude-generated code}.
Any and all opinions listed here are my own and not representative of my employers; future, past and present.
\end{document}
