Как стать автором
Обновить

Как я оптимизировал стандартную русскую раскладку

Время на прочтение18 мин
Количество просмотров24K

При интенсивном наборе текстов на клавиатуре часто возникает ощущение неоптимальности движения пальцев, что наталкивает на мысль о существовании более удобного расположения букв на клавишах.

В статье осмысливаются принципы эргономики, в соответствии с которыми была разработана стандартная русская клавиатура, и описывается методика создания более оптимальной для скоростного набора клавиатуры.

История расположения букв на стандартной клавиатуре

Клавиатура телеграфа Юза
Клавиатура телеграфа Юза

На самых первых экспериментальных пишущих машинах, изобретённых в США Лэтемом Шоулзом, буквы на клавишах располагались в алфавитном порядке, по аналогии с телеграфными аппаратами тех лет.

Такое расположение клавиш делало машину довольно громоздкой, поэтому, впоследствии, Шоулз разместил алфавитные клавиши в 4 рядах, попутно оптимизировав расположение букв с учётом механизма машины и частоты набора клавиш.

Шоулз не переставал экспериментировать с расположением букв. Порядок QWERTY является результатом его экспериментов по состоянию на 1875 год, когда его машина начала массово выпускаться. Расположение клавиш в его последнем патенте было совершенно иное.

В золотой век пишущих машин, в 1880-е стали появляться машины с альтернативными алфавитными клавиатурами: Каллиграф (1880), Крэндель (1883), Гаммонд Идеал (1885), где наиболее частые буквы располагали под указательными пальцами.

По мере появления машин с лёгким ходом клавиш, опытные пользователи стали использовать в наборе все пальцы. В 1888 году стенографист Франк Макгуррин разработал метод слепого десятипальцевого набора: все алфавитные клавиши на клавиатуре были закреплены за 8-ю пальцами, постоянно расположенными в основной позиции, что позволило снизить когнитивную нагрузку (не тратить время на визуальный поиск нужной клавиши) и повысить физическую совместимость (сократить время на перемещение пальцев по клавиатуре).

Появление десятипальцевого метода набора должно было привести к появлению адаптированных под него клавиатур, но в том же 1888 году состоялся съезд производителей пишущих машин, на котором было принято решении о стандартизации всех новых пишущих машин под клавиатуру QWERTY как наиболее распространённую. Тем не менее, в 1893 году была выпущена машина Бликенсдерфер с клавиатурой, адаптированной под десятипальцевый набор. Наиболее частые буквы английского алфавита d h i a t e n s o r были размещены не в центральной части клавиатуры, а на основном ряду клавиш.

Резюмируя, важно отметить, что существовало два разных подхода повышения эргономики клавиатур:

  1. Расположение частых букв в центре клавиатуры для двухпальцевого набора.

  2. Расположение частых букв в основном ряду клавиатуры для десятипальцевого набора.

Клавиатуры для набора кириллицы

Русская стандартная клавиатура ЙIУКЕН / ЙЦУКЕН

В 1887 году была выпущена первая пишущая машина для европейского рынка — Ремингтон № 5. Для России Ремингтон № 5 поставлялась со следующим расположением клавиш на клавиатуре:

 2 4 5 6 7 8 9 % ц э
й i у к е н г ш щ з х
 ф ы в ъ а п р о л д ж
  я ч ѣ с м и т ь б ю

Благодаря более позднему появлению, в русской клавиатуре были учтены недостатки клавиатуры QWERTY. Буквы чаще употребляемые, были помещены в середину клавиатуры, т. е. под указательные и средние пальцы рук. При создании русской клавиатуры, разработчики Ремингтона расположили буквы в алфавитном порядке (следы этого в последовательностях букв йi шщ пр дж) и переставили их в соответствии с принципами расположения букв русской типографской кассы (частые буквы ближе к центру).

Для снижения когнитивной нагрузки, буквы наиболее частых биграмм (двух последовательно набираемых букв) расположили рядом друг с другом. Например буквы е и н образуют биграммы ен и не, чаще других встречающиеся в русском языке, т. е. после буквы е чаще всего идёт буква н. Близкое расположение этих букв на клавиатуре позволяет меньше тратить время на поиск и быстрее переносить палец на следующую клавишу. Такие последовательные нажатия смежных клавиш называют перекатами.

Буква ъ образовывала вокруг себя целую область частых биграмм с буквами к в с, так как в дореволюционной орфографии, после всех слов, оканчивающихся на эти буквы, ставился твёрдый знак. Такой подход упрощал процесс набора для неопытных пользователей клавиатур. Однако, он приводит к тому, что многие частые биграммы, например то, приходится набирать одним пальцем, что снижает чередуемость пальцев при наборе.

После революции из русского языка были исключены буквы i ъ ѣ. Производители пишущих машин сдвинули остальные буквы на место исключённых, что привело к трудностям у привыкших к стандартной дореволюционной клавиатуре пользователей. Чтобы решить эту проблему, на место букв i ъ ѣ были помещены редкие буквы ц э и знак /. Впоследствии букву э и знак / вернули на периферию.

Клавиатура КРОИТВЕСНА

Машина Бликенсдерфер, предназначенная для 10-пальцевого слепого набора, поставлялась в Россию со следующей клавиатурой:

	ю	щ	ж	з	i	й	ш	ц
м	я	ч	п	л	у	г	д	ѣ	б
к	р	о	и	т	в	е	с	н	а
Редкие буквы э ф х ъ ь ы находились в дополнительном регистре.
Редкие буквы э ф х ъ ь ы находились в дополнительном регистре.

Буквы были расположены так, что более 65 % нажатий приходилось на первый — основной ряд, наиболее удобный для набора на этой машине. Здесь также использовался принцип близкого расположения букв частых биграмм (очень высокая доля нажатий с перекатами).

Клавиатура болгарского государственного стандарта (БДС)

В конце ХIХ века в Болгарии долго не могли определиться с тем, какая из предложенных американцами машин имеет лучшую клавиатуру, так что в 1907 году начальник стенографического бюро Народного собрания Болгарии Теодор Гы́лыбов провёл исследования частотности букв в болгарском языке, проанализировав их употребление в 10 000 слов. По результатам этого исследования была разработана болгарская клавиатура для десятипальцевого набора:

ы у е и ш щ к с д з ц
я а о ж г ь т н в м ч
ю й ъ э ф х п р л б

Болгарская клавиатура пишущей машины Адлер 7
Болгарская клавиатура пишущей машины Адлер 7

Наиболее часто используемые буквы о н т а расположены так, чтобы их можно было набирать более сильными пальцами — указательным и средним. Для того, чтобы обе руки чередовались как можно чаще, гласные и полугласные располагаются на левой стороне клавиатуры, а большинство согласных — на правой. Клавиатура Гы́лыбова стала стандартом в Болгарии (БДС). С нею болгары регулярно выигрывали международные соревнования по машинописи, печатая со скоростью более 1000 знаков в минуту.

Только спустя 30 лет, в 1930-е годы, Август Дворак, американский профессор педагогики, предпринял попытку популяризировать идею повышения скорости печати за счёт перестановки букв на клавиатуре QWERTY, используя принципы клавиатуры Бликенсдерфера образца 1893 года. Но также, как и полувеком ранее, идея частотной оптимизации клавиатуры не обрела популярности у приученных к QWERTY пользователей.

История показывает, что идея оптимизации клавиатуры, какой бы прирост в производительности она не давала, не может обрести популярности у приученных к стандартной клавиатуре пользователей без вмешательства государства.

Тем не менее, есть пользователи одержимые повышением производительности, готовые переступать через свои привычки и пренебрегать стандартами. С ними я хочу поделиться своим опытом оптимизации русской клавиатуры.

Оптимизация расположения букв на клавиатуре

Целью предлагаемой мною оптимизации расположения букв является сокращение времени набора текста на клавиатуре. В отличие от большинства существующих методик, использующих для оценки оптимизации такие показатели как баллы, штрафы, сложности, трудозатраты и другие сложноизмеримые показатели, в рассматриваемой методике оптимизации используется только одна точная метрика — время.

Объектом оптимизации является не стандартная матрица клавиш с архаичным горизонтальным сдвигом рядов, а более перспективная и используемая в большинстве современных эргономичных клавиатур ортолинейная матрица размером 3х11 клавиш.

Сдвинутое (классическое) расположение клавиш на клавиатуре ЙЦУКЕН:

й ц у к е н г ш щ з х ъ
 ф ы в а п р о л д ж э
 я ч с м и т ь б ю ё

Ортолинейное расположение клавиш клавиатуры ЙЦУКЕН (матрица):

й	ц	у	к	е	н	г	ш	щ	з	х
ф	ы	в	а	п	р	о	л	д	ж	э
я	ч	с	м	и	т	ь	б	ю	ё	ъ

Допущения

  1. Так как клавиши стандартной клавиатуры расположены не на прямоугольной матрице, 3 крайние клавиши (редкая тройка) вынесены в отдельный столбец.

  2. Знаки препинания вынесены из алфавитной матрицы.

  3. В наборе букв участвуют 8 пальцев. Основная позиция находится на среднем ряду. Пробел набирается большими пальцами правой и левой руки.

Общий принцип оптимизации заключается в минимизации суммы произведений значений частотности употребляемых биграмм и значений времени нажатий соответствующих им клавиш:

T=\sum_{i=1}^nF_i ·t_i

n — количество биграмм и соответствующих им пар клавиш;
Fi — значение частоты встречаемости биграммы i;
ti — время последовательного нажатия двух клавиш соответствующих биграммe i.

Определение частотности используемых букв и биграмм

Оптимизируя клавиатуру для личного использования, необходимо полагаться на личный корпус часто‑набираемых текстов, а не на абстрактную статистику частотности или нерепрезентативный корпус текстов. Для этого проще всего собрать все набранные ранее тексты и тексты с близкой тематикой (например любимая литература или статьи). Тексты записываются в несколько файлов — частей корпуса, например:

  1. рабочая_переписка.txt

  2. личная_переписка.txt

  3. любимая_литература.txt

  4. рабочие_термины.txt

  5. популярные_статьи.txt

Для каждой части корпуса подсчитывается количество всех букв алфавита и определяется их частота (как отношение встречаемости определённой буквы к количеству всех букв).

Таблица 1. Частотность букв

Буква

Переписка

Литература

Переписка, %

Литература, %

Итог, %

о

16 499

1 665 437

11,36

11,30

11,33

е

12 100

1 225 380

8,33

8,31

8,32

а

12 025

1 206 385

8,28

8,18

8,23

н

9 870

971 466

6,80

6,59

6,69

и

9 330

987 363

6,42

6,70

6,56

т

9 909

869 850

6,82

5,90

6,36

с

7 785

782 540

5,36

5,31

5,33

л

6 990

732 077

4,81

4,97

4,89

в

6 006

690 775

4,14

4,69

4,41

р

5 466

631 131

3,76

4,28

4,02

м

4 994

453 099

3,44

3,07

3,26

к

4 019

498 825

2,77

3,38

3,08

д

4 132

447 063

2,84

3,03

2,94

п

3 873

391 059

2,67

2,65

2,66

у

3 445

414 109

2,37

2,81

2,59

я

4 031

324 388

2,78

2,20

2,49

ь

3 229

288 934

2,22

1,96

2,09

ы

2 765

278 348

1,90

1,89

1,90

б

2 841

257 856

1,96

1,75

1,85

ч

2 715

232 247

1,87

1,58

1,72

з

2 304

249 073

1,59

1,69

1,64

г

1 918

277 678

1,32

1,88

1,60

й

1 670

162 587

1,15

1,10

1,13

ж

1 333

158 340

0,92

1,07

1,00

ш

1 217

132 427

0,84

0,90

0,87

х

1 137

124 087

0,78

0,84

0,81

ю

1 016

96 210

0,70

0,65

0,68

ё

963

31 004

0,66

0,21

0,44

э

536

42 166

0,37

0,29

0,33

ц

412

48 070

0,28

0,33

0,30

щ

447

42 972

0,31

0,29

0,30

ф

191

23 084

0,13

0,16

0,14

ъ

75

5 118

0,05

0,03

0,04

Ранжировка букв по частоте отличается для разных частей корпуса. Поэтому итоговое значение частоты определяется как среднее значение частот частей корпуса, либо как произведение частот на коэффициенты приоритетности той или иной части корпуса.

Сопоставив полученные значения частотности букв с матрицей ЙЦУКЕН, получается следующая диаграмма:

Частотность букв клавиатуры ЙЦУКЕН. Размер круга соответствует частоте буквы. Оранжевыми кругами обозначены гласные буквы, синими — согласные.
Частотность букв клавиатуры ЙЦУКЕН. Размер круга соответствует частоте буквы. Оранжевыми кругами обозначены гласные буквы, синими — согласные.

Аналогично формируется таблица частотности биграмм, при этом пробелы и знаки пунктуации заменяются на символ _. Итого 34^2 биграмм.

Таблица 2. Частотность биграмм

Биграмма

Переписка

Литература

Переписка, %

Литература, %

Итог, %

о_

6 516

1 929 925

2,27

2,10

2,19

а_

5 880

1 499 116

2,04

1,63

1,84

и_

4 862

1 667 232

1,69

1,82

1,75

5 339

1 437 617

1,86

1,57

1,71

е_

4 895

1 563 220

1,70

1,70

1,70

4 782

1 431 572

1,66

1,56

1,61

_п

4 482

1 432 853

1,56

1,56

1,56

3 953

1 409 956

1,37

1,54

1,46

я_

5 010

1 034 909

1,74

1,13

1,44

то

4 384

1 163 419

1,52

1,27

1,40

3 900

963 410

1,36

1,05

1,20

на

3 650

907 031

1,27

0,99

1,13

2 944

1 034 749

1,02

1,13

1,08

ст

2 799

1 015 316

0,97

1,11

1,04

но

2 958

882 879

1,03

0,96

1,00

по

2 541

771 705

0,88

0,84

0,86

ен

2 306

701 486

0,80

0,76

0,78

ни

2 091

730 753

0,73

0,80

0,76

ра

2 085

659 873

0,73

0,72

0,72

ов

1 781

704 492

0,62

0,77

0,69

...

...

...

...

...

...

Подсчитать буквы и биграммы в текстах можно с помощью простой программы на Питоне:

import re
from itertools import product

биграммы=[''.join(x) for x in product('абвгдеёжзийклмнопрстуфхцчшщъыьэюя_', repeat=2)] # формируем перечень биграмм

текст = open("рабочая_переписка.txt").read()	# открываем анализируемый файл
текст = текст.lower() 					# переводим все знаки к нижнему регистру
текст = re.sub("[^а-я,^ё]", "_", текст)	# заменяем все знаки кроме русских букв на прочерки _

for i in биграммы:  					# запускаем цикл подсчета
	колво = текст.count(i)				# подсчитываем вхождения биграмм
	if колво > 0:
		print(i, колво)					# выводим биграммы и количество их вхождений

Определение массива времени нажатий всех клавиш и пар клавиш

Время набора букв на клавиатуре состоит из 3 отрезков:

  1. Время на поиск нужной клавиши. 0 мс для опытного пользователя.

  2. Время на перемещение пальцев к нужной клавише. Около 50 мс на длину одной клавиши.

  3. Время на нажатие и отпускание клавиши. Около 120 мс.

Время на поиск нужной клавиши — когнитивная составляющая процесса набора, зависящая от опытности. При освоении метода слепого набора, время на поиск нужной клавиши равно нулю.

Время на перемещения пальцев

Время на перемещение пальцев — физическая составляющая процесса набора. Сократить время на перемещение пальцев можно, расположив клавиши наиболее частых букв в основной позиции.

Время на перемещение пальцев зависит от удалённости клавиш от основной позиции.

Простой пример оптимизации времени перемещения

Если время на перемещение пальца на одну клавишу составляет 50 миллисекунд, то матрица потерянного при нажатиях времени будет выглядеть следующим образом:

50	50	50	50	70	70	50	50	50	50	70
0	0	0	0	50	50	0	0	0	0	50
50	50	50	50	70	70	50	50	50	50	70

Перемножая значения частотности букв из таблицы 1 в соответствии с матрицей ЙЦУКЕН на матрицу потерянного при перемещениях пальцев времени, получаем среднее значение потерянного при перемещениях времени — 38,8 мс.

Теперь, переставляем буквы в матрице, так чтобы самые частые буквы были в основном ряду например таким образом:

м	к	д	п	ё	э	у	я	ь	ы	ф
р	т	и	о	л	в	с	е	а	н	й
ч	з	г	б	ц	щ	ж	ш	х	ю	ъ

67 % нажатий такой клавиатуры приходится на основной ряд (42 % у ЙЦУКЕН). Потерянное на перемещения время сокращается на 37 % до 24,3 мс.

Технически сократить время на перемещения можно используя клавиатуру с изогнутыми рядами. Дистанция перемещения пальцев уменьшается, отпадает необходимость в этапе размаха при нажатии.

а — плоская клавиатура (время перемещения пальца 100 миллисекунд); б — изогнутая клавиатура (время перемещения пальца 10 миллисекунд). Красной линией обозначена траектория движения пальца.
а — плоская клавиатура (время перемещения пальца 100 миллисекунд); б — изогнутая клавиатура (время перемещения пальца 10 миллисекунд). Красной линией обозначена траектория движения пальца.

Существуют способы оптимизации времени на перемещения пальцев, путём сокращения количества самих клавиш:

  1. Аккорды. Нажимая одновременно две или три клавиши в основном ряду, можно вводить буквы, символы или команды, не теряя время на перемещения.

  2. Дополнительные слои. Нажимая и удерживая клавишу в основном ряду одним пальцем, можно изменять регистр и вводить другим пальцем буквы, символы или команды из дополнительного регистра. Такой способ в два раза медленнее аккордового, так как клавиши смены регистра и нужного символа нажимаются не одновременно, а последовательно.

Оптимизация расположения букв только с учётом времени на перемещения пальцев позволяет сократить время поочерёдного набора, когда пальцы нажимают клавиши строго по очереди.

Наибольшее же сокращение времени набора достигается за счёт одновременного набора нескольких клавиш несколькими пальцами с минимальным сдвигом фазы нажатия (от 10 до 60 мс), когда следующий палец начинает нажимать клавишу, не дожидаясь момента отпускания предыдущей клавиши.

Графически поочерёдный и одновременный набор можно изобразить в виде графика гармонических колебаний где максимум соответствует полному нажатию клавиши, а минимум полному отпусканию. На примере слова единство:

Слово, состоящее из 8 букв, клавиши которых нажимаются одним пальцем, физически невозможно набрать быстрее, чем за 1 секунду, но если набирать это слово разными пальцами, то за счёт нахлёста нажатий, можно набрать его менее чем за половину секунды.

Чтобы правильно оценить скорость одновременных нажатий, необходимо провести хронометраж нажатий для каждого пальца и пары пальцев.

Хронометраж нажатий

Для оптимизации времени набора необходимы данные о продолжительности каждого этапа процесса нажатия той или иной клавиши и последовательности клавиш. Для этого мною был проведён хронометраж нажатий.

Основные выводы из анализа хронометража:

  1. Среднее время на нажатие одной и той же клавиши одним пальцем составляет 120 миллисекунд, что соответствует скорости набора 500 знаков в минуту (з/м). Такая значительная скорость достигается благодаря участию в нажатии (размахе) не только пальца, но и руки.

  2. Среднее время на перемещение пальца на расстояние одной клавиши составляет 50 миллисекунд. При наборе нескольких отдалённых друг от друга клавиш одним пальцем скорость набора снижается до 330 з/м.

  3. При наборе двумя пальцами разных рук эффект нахлеста нажатий позволяет увеличить скорость в два раза, до 1000 з/м.

  4. Набор двумя пальцами одной руки медленнее, чем двумя руками, так как при таком наборе невозможно задействовать эффект от размаха всей руки. Скорость 750 з/м. Однако, если использовать перекатный прием нажатий, когда несколько клавиш нажимаются одним движением руки, скорость может быть больше, чем при наборе двумя пальцами разных рук.

  5. Правая рука на 10 % быстрее левой руки (для правшей).

  6. Мизинец на 10 % медленнее остальных пальцев.

  7. Последовательные нажатия одним пальцем приводят к снижению его скорости по логарифмической зависимости.

Фактор усталости пальцев. При частом нажатии пальца, снижается его скорость
Фактор усталости пальцев. При частом нажатии пальца, снижается его скорость

Примечания:

  1. Полученные значения времени нажатий могут отличатся в зависимости от силы и натренированности пальцев, но соотношения продолжительности этапов нажатий остаются неизменным. То есть можно натренироваться так, что скорость указательных пальцев будет 1500 з/м, но скорость мизинцев все равно будет на 10 % меньше указательных.

  2. Не учитываются замедления, связанные с неудобным расположением клавиш, такие как нажатия в нижнем ряду безымянным пальцем с последующим нажатием в верхнем ряду мизинцем. Данные замедления связаны с плохой антропометрической совместимостью клавиатур и полностью устраняются при использовании клавиатур с вертикальным сдвигом рядов для разных пальцев.

Нажатие и отпускание клавиши самый продолжительный этап набора текста (120 миллисекунд). Технически можно сократить время нажатия, используя клавиш с лёгким и коротким ходом. Но наибольшее сокращение времени нажатий обеспечивает максимальная чередуемость рук и пальцев, то есть такое расположение букв, при котором для набора слова каждая клавиша набирается разными руками и пальцами.

Кроме упомянутого эффекта нахлеста нажатий, есть ещё два эффекта чередуемости:

  1. Снижение усталости и замедления пальцев, которые возникают при последовательных нажатиях одним пальцем.

  1. Сокращение ошибок при наборе.

На основе данных хронометража была получена таблица с затратами времени на все возможные последовательные нажатия.

Таблица 3. Время последовательного нажатия клавиш (клавиши в таблице обозначены не порядковыми номерами, а буквами клавиатуры ЙЦУКЕН)

Клавиши

Время на набор одной клавиши, мс

АА

135

БА

60

АВ

87,5

...

...

  1. При последовательном наборе одним пальцем клавиши, соответствующей букве а на клавиатуре ЙЦУКЕН, вторая буква а, набирается за 135 мс.

  2. При последовательном наборе двумя пальцами разных рук клавиш, соответствующих букве б и а, вторая буква, набирается за 60 мс.

  3. При последовательном наборе двумя пальцами одной руки клавиш, соответствующих букве а и в, вторая буква, набирается за 87,5 мс.

Сопоставляя частоту биграмм, соответствующих клавишам, можно определить среднее время набора одной буквы всего корпуса текста на клавиатуре.

Таблица 4. Сопоставление массива частотности биграмм и массива значений времени набора клавиш (в фрагменте таблицы представлен пример сопоставления самых частых биграмм с самыми быстрыми клавишами).

Клавиши

Биграммы

Время набора одной буквы, мс

Частота биграммы, %

Произведение времени на частоту

ВР

ни

63,75

0,01164978

0,74267344

ВЛ

но

60

0,01148601

0,68916076

АЛ

то

60

0,01050382

0,63022929

ДВ

ен

60

0,01177296

0,70637770

ЖА

ст

65

0,01286103

0,83596660

...

...

...

...

...

Сумма произведений времени нажатия клавиш на частоту биграмм для клавиатуры это среднее время набора одной буквы.

Для клавиатуры ЙЦУКЕН получается 80,7 мс.

80,7 мс на букву соответствует скорости набора 124 слова в минуту, определённой по зависимости:

υ = \frac {60 000} {T · 6}

где 60000 — коэффициент перевода из миллисекунд в минуты;
Т — среднее время набора одной буквы;
6 — среднее количество букв в слове.

Это предельная скорость набора для текущего уровня физической формы моих пальцев на клавиатуре ЙЦУКЕН, но не предельная для более оптимальной клавиатуры.

Задача оптимизации сводится к минимизации суммы целевого показателя (произведения времени набора и частот биграмм) с помощью перестановки букв между клавишами .

Для этого, необходимо расположить буквы самых частых биграмм на клавишах с минимальным временем нажатия. Например, расположив буквы о и т, набираемые на стандартной клавиатуре одним пальцем, можно повысить скорость набора очень частых биграмм от и то в 2 раза.

Задача усложняется тем, что существует 33! = 8683317618811886495518194401280000000 вариантов расположения клавиш.

Разделение клавиатуры на две половины

Как было сказано, наибольший прирост скорости набора обеспечивается чередованием рук при наборе.

Время нажатия клавиш на разных сторонах клавиатуры (разными руками) в среднем в 1,7 раз меньше, чем время нажатия клавиш на одной стороне (одной рукой) — 65 и 112 миллисекунд, соответственно.

Поэтому на первом шаге оптимизации я расположил буквы на клавиатуре так, чтобы наиболее частые биграммы набирались разными руками.

Можно было просто расположить гласные и согласные на разных половинах, но я пошёл по более сложному пути — провёл двоичный (бинарный) поиск минимума целевого показателя с помощью перестановок букв на первую и вторую половины клавиатуры размерами 15 и 18 клавиш соответственно.

Полученное расположение букв обеспечивает наибольшее чередование рук — 84,3 % от всех нажатий (против 68 % у стандартной клавиатуры):

первая сторона: а е ё и о с у ф ш ъ ы ь э ю я
вторая сторона: б в г д ж з й к л м н п р т х ц ч щ

Утверждение о том, что гласные чаще всего чередуются с согласными подтверждается.

Из‑за большего количества согласных букв в русском алфавите (21 согласных против 10 гласных), на сторону гласных букв попали согласные с ф ш, чаще других чередующиеся с согласными и реже других с гласными.

После этого необходимо было определиться, какая сторона будет левой, а какая правой.

Обоснование сопоставления сторон клавиатуры с гласными и согласными буквами

В рассматриваемой трёхрядной клавиатуре одной из рук необходимо нажимать на тройку клавиш больше, чем другой (15 против 18). Логично отдать более сложную для набора половину более быстрой руке (правой в моем случае). С первого взгляда кажется, что сложнее сторона с 18 буквами и она должна быть справа, как у стандартной клавиатуры. Однако, сторона с 15 клавишами сложнее по следующим причинам:

  1. На гласную половину с 15 клавишами приходится 51 % всех нажатий.

  2. На гласной половине имеются согласные, усложняющие набор из‑за отсутствия эффекта чередования рук.

Кроме того, не стоит забывать про мышь, на которую постоянно приходится отвлекаться правой руке. В случае 15 клавиш на правой половине, дистанция преодолеваемая рукой до мыши сокращается на ширину одного столбца клавиш. Также важно отметить, что перспективным направлением развития клавиатур является использование встроенного трекбола, тачпада или оптического сенсора (клаво‑мышь) вместо мышки; в этих случаях правая сторона клавиш должна быть компактнее левой.

Дополнительным фактором выбора правой стороны для гласных, а левой для согласных является частое использование мыши совместно с клавиатурой, когда левая рука покоится на клавиатуре, охватывает большое количество клавиш (18) и нажимает командные комбинации, большая часть которых состоит из согласных букв.

Подбор расположения клавиш для правой и левой половины

Определившись с тем, на какой стороне должны быть те или иные буквы, перебор кратно сократился.

  1. Наиболее быстрые нажатия производятся из основной позиции, поэтому я расположил наиболее частые буквы выбранных половин таким образом:

    - - - - - - | - - - - -
    - в л н т - | - а е о с
    - - - - - - | - - - - -

  1. Дополнил столбец правого мизинца согласными ф и ш, реже всего чередующимися с гласными и с буквой с.

  2. Заполнил крайний левый столбец самыми редкими согласными буквами щ ч ж. Не менее редкие буквы ц х я поставил ближе к центру, так как использую фонетическое сопоставление с английскими буквами в английском алфавитном режиме.

    щ ц - - - - | - - - - ф
    ч в л н т - | - а е о с
    ж х - - - - | - - - - ш

Таким образом для левой половины перебор сокращается до 9! перестановок, а для правой половины всего до 8! перестановок.

  1. Далее я сделал полный перебор для левой и правой половины. По лучшему найденному варианту минимальное среднее время набора составило 67,65 мс:

    щ ц р п б й | ъ э у я ф
    ч в л н т д | и а е о с
    ж х з к м г | ё ы ь ю ш

Такое расположение обеспечивает 66 % нажатий на основном ряду и довольно равномерный баланс между пальцами.

Однако, я решил убедиться, в том, что буквы основного ряда на шаге 1 были выбраны верно.

  1. Произвёл переборы заменой букв основного ряда на чуть менее частые соседние буквы и нашёл вариант с ещё меньшим средним временем набора 67,52 мс (на 0,13 % быстрее предыдущего варианта). Баланс нажатий сдвинулся к центру клавиатуры.

    щ ц к л б й | ъ ы я э ф
    ч з в н т д | и а о е с
    ж х п р м г | ё ь у ю ш

Среднее время набора 67,52 мс на букву соответствует скорости 148 слов в минуту (на 19 % быстрее ЙЦУКЕН).

Частотность букв оптимизированной клавиатуры
Частотность букв оптимизированной клавиатуры

Полученной клавиатурой я пользуюсь более года (переучился на неё за два месяца). Ощущение неоптимальности движения пальцев прошло, запинки на частых биграммах перестали меня беспокоить, сократилось количество опечаток.

Может показаться, что ъи ё занимают слишком хорошие позиции, но на деле они разгружают самый нагруженный правый указательный палец. Если есть потребность в отдельных клавишах для точки и запятой, то лучше расположить их вместо букв ъ и ё . Для ввода точки и запятой я использую аккорды тн и ао. Благодаря малой чередуемости букв на каждой из полученных половин, не происходит ложных срабатываний аккордов.

Оценка оптимизации

Все статьи про оптимизации клавиатур неизменно сопровождаются вопросами, «зачем это нужно?» и «какая от этого выгода?».

Используя время как целевой показатель оптимизации, на эти вопросы можно дать точный ответ.

При среднем времени набора буквы для стандартной клавиатуры ЙЦУКЕН 80,7 мс, переход на оптимальную клавиатуру со средним временем набора буквы 67,5 мс позволяет на 16 % сократить время набора всех текстов.

В зависимости от объёма набираемого за день текста можно определить сэкономленное за год активного использования клавиатуры время:

Активность набора, слов в сут

Время набора для стандартной, суток за год

Время набора для стандартной, суток за год

Экономия, суток за год

100

0,17

0,20

0,03

1000

1,71

2,05

0,33

10000

17,12

20,46

3,34

То есть при активном использовании клавиатуры (1000 слов или две страницы за сутки) за год экономится 8 часов только за счёт оптимального расположения букв.

Выводы

  1. Повсеместно используемая стандартная клавиатура ЙЦУКЕН, разработанная 130 лет назад в США, не оптимальна для быстрого набора и изначально не предназначена для слепого 10 пальцевого набора.

  2. Оптимальная клавиатура позволяет сократить время набора на 16 % (10 суток жизни за 30 лет активного использования клавиатуры (1000 слов в сутки)) и увеличить скорость набора на 19 % по сравнению с ЙЦУКЕН.

Автор: Илья Леонов

Теги:
Хабы:
Всего голосов 128: ↑126 и ↓2+124
Комментарии169

Публикации

Истории

Ближайшие события

Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн
Антиконференция X5 Future Night
Дата30 мая
Время11:00 – 23:00
Место
Онлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург