Никита Прокопов (tonsky) wrote,
Никита Прокопов
tonsky

Categories:

Навык привычки

Около месяца назад я решил оптимизировать клавиатурную раскладку. Прикинув, сколько и чего я пишу в последнее время (Clojure, CSS, русский/латинский текст), я сделал следующие оптимизации:

  • У всего цифрового ряда поменял режимность: клавиши оставил те же, но специальные символы теперь набираются без шифта, а цифры с шифтом.
  • Аналогично поменял одинарную и двойную кавычки: чтобы набрать двойную, шифт нажимать не нужно, а одинарная набирается с шифтом
  • Переставил двоеточие (теперь без шифта) и точку с запятой (теперь с шифтом)
  • В русской раскладке сделал точку и запятую без шифта, а слеш-бэкслеш уехали на шифт.

Общее направление — минимизировать количество нажатий шифта, что должно уменьшить нагрузку на пальцы. Это не универсальный рецепт, многое зависит от того, чем вы занимаетесь — скажем, в CSS и в JS имеет смысл вынести на безшифтовой режим фигурные скобки.

Я даже написал тулзу, чтобы научно обосновать свои действия, вот примерный выхлоп:

    cljs (97) —————————————

    backslash            \      503           81   |
     brackets           []    25786         3142   {}
        colon            ;     5079  <<     7769   :
         dash            -    23239         1606   _
      numbers   1234567890     9598  <<    85609   !@#$%^&*()
         plus            =     1866          490   +
        punct           ,.     8730         1651   <>
       quotes            ‘      827  <<     8544   “
        slash            /     4575         4226   ?
        tilda            `      142           10   ~

    css (7) —————————————

     brackets           []       26  <<      600   {}
        colon            ;      818          866   :
         dash            -      564          184   _
      numbers   1234567890     1757          458   !@#$%^&*()
         plus            =       11            1   +
        punct           ,.      560           51   <>
       quotes            ‘       60           24   “
        slash            /       56            0   ?

    js (2) —————————————

    backslash            \       71  <<     1094   |
     brackets           []     2564  <<     9168   {}
        colon            ;     4736         5409   :
         dash            -     1516  <<     2917   _
      numbers   1234567890     5437  <<    25052   !@#$%^&*()
         plus            =     6720          970   +
        punct           ,.    20530          549   <>
       quotes            ‘     2794  <<     6924   “
        slash            /     5279          517   ?
        tilda            `     1492            2   ~

Две цифровые колонки посередине — это частотность символов из группы. Знак << означает что имеет нехилый смысл поменять кнопку и ее шифтовый эквивалент.

Подобные оптимизации дают маргинальное преимущество — да, пальцы надо тянуть чуть меньше. Наверное, сравнимо с эффектом от раскладки Дворака — пять, может десять процентов облегчения/скорости/снижения ошибок. Приятный эффект, например, состоит в том, что я могу набрать что-то подобное, не прикоснувшись к шифту:

(let [[x & xs] @atom]
  (swap! *context* #(assoc % :key "abc")))

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

Так вот, у нее прямо в инструкции написано: сразу вы на ней печатать не будете. Вы помучаетесь примерно неделю, будете промахиваться мимо клавиш, печатать со скоростью второклассника, выводящего буквы в прописях, захотите это дело забросить, не раз придете в бешенство. Потерпите. Через неделю вы привыкните, будете печатать как ни в чем не бывало. Трудности даже не вспомните. Главное, что оно того стоит.

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

Забавнее всего, что в процессе обучения подобным механическим навыкам не участвует личность. Мы привыкли говорить — я знаю, я умею, мне нужно научиться. Здесь личность только мешает — учиться неохота, эмоции переполняют, ничего не получается, выигрыш далеко за горизонтом и вообще сомнительный. Проще всего к тренировке подойти отстраннено: как будто ты не себя тренируешь, а собаку. Чужую какую-то собаку. На входе энное количество механических повторений, некая регулярность. На выходе собака умеет печатать. Хочет она, не хочет, даже если она принципиально против — обучение встроено в организм и мозгом не управляется. Если есть тренировка — собака научится. То, что личность собаки в данном случае совпадает с инициатором тренировки — необязательная деталь.

То же самое и со многими другими видами обучения — новый редактор, новый язык программирования, новый курс на Курсере. Полезно смотреть за собой, улавливать структуру поведения, четко разделять цель (научиться чему-то), процесс обучения и собственную эмоциональную реакцию на него. Последнее надо научиться изолировать — эмоции идут и развиваются сами по себе, влиять на процесс они не должны.

Tags: британские ученые доказали, изолента, наглядный пример, неонка included, очень просто, переворот, формула успеха
Subscribe
  • Post a new comment

    Error

    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 33 comments