Клавиатура и руки: раскладка, keymap-дизайн, задержка ввода и эргономика
Двенадцать статей трека мы обсуждали программы: редакторы, конфигурации, протоколы, расширения. Все они сменяемы. Vim можно бросить, VS Code переустановить, конфиг переписать с нуля за выходные.
Есть один слой, который сменить нельзя: руки и то, чем вы в них держите. Он переживает любую миграцию, он одинаково работает в редакторе, терминале, браузере и мессенджере, и он единственный в этом списке, который ломается физически. Инженеры с двадцатилетним стажем почти поголовно рассказывают одну и ту же историю: сначала они спорили про редакторы, а потом у них заболели запястья, и спор потерял смысл.
Эта статья — про физический слой: что происходит между нажатием и появлением символа, как проектировать раскладку команд, что честно известно про альтернативные раскладки и как не попасть в двухмесячный больничный из-за привычки, которую можно было поменять за вечер.
Что происходит между пальцем и символом
В статье про новую волну редакторов мы разбирали полный путь нажатия до пикселя и выяснили, что редактор контролирует только середину цепочки. Здесь нас интересует её первая половина — та, за которую отвечают клавиатура, прошивка и операционная система.
ход 2-4 мм"] --> B["Замыкание матрицы
сканирование 1-2 кГц"] B --> C["Дебаунс
обычно 5 мс"] C --> D["Логика прошивки
слои, tap-hold: 0-250 мс"] D --> E["Передача USB HID
8 мс при 125 Гц,
1 мс при 1000 Гц"] E --> F["Драйвер и стек ввода ОС
evdev, libinput: 1-5 мс"] F --> G["Композитор или X-сервер
1-10 мс"] G --> H["Редактор: обработка
и отрисовка"] H --> I["Кадр на экране
8-16 мс при 60-120 Гц"]
Цифры стоит знать, потому что они меняют приоритеты. Дэн Лу в замерах задержки клавиатур показал разброс от примерно 15 до 60 миллисекунд только на участке «клавиша — сигнал в системе». Это больше, чем разница между «быстрым» и «медленным» редактором, которую так любят обсуждать. При этом лечится участок дёшево:
| Причина задержки | Типичный вклад | Как чинится |
|---|---|---|
| Низкая частота опроса USB | до 8 мс | прошивка или настройка на 1000 Гц |
| Беспроводное соединение | 5–25 мс | кабель или адаптер 2,4 ГГц вместо Bluetooth |
| Большой дебаунс | 5–20 мс | настройка прошивки, алгоритм eager debounce |
tapping-term в tap-hold |
до 250 мс на клавишу с модификатором | уменьшить порог, включить hold-on-other-key |
| Задержка ESC в терминале | 500 мс на старых версиях | escape-time 0 в tmux — разобрано в статье про терминал |
| Композитор с вертикальной синхронизацией | 8–16 мс | режим низкой задержки, отключение эффектов |
Механику нижних уровней разбирают статьи трека операционных систем: ввод-вывод и драйверы и серверы отображения.
Практический вывод простой: прежде чем менять редактор ради отзывчивости, проверьте клавиатуру, беспроводное соединение и настройки автоповтора. Это ноль рублей и полчаса.
Аккорды против модальности против слоёв
У всей истории редакторов есть один сквозной сюжет: как выразить сотни команд десятком клавиш. Ответов ровно три, и они не исключают друг друга.
| Подход | Как это выглядит | Цена | Кто представляет |
|---|---|---|---|
| Аккорды | Ctrl+Shift+K, C-x C-f |
статическое напряжение, растяжка кисти | Emacs, VS Code, IDE |
| Модальность | d2w, ci( |
нужно помнить режим | vi, Vim, Helix, Kakoune |
| Слои клавиатуры | удержание клавиши меняет всю раскладку | зависит от прошивки, а не от программы | QMK, ZMK, kanata |
«Emacs pinky» — не шутка, а описание конкретного механизма: мизинец левой руки удерживает
Ctrl в статическом напряжении, пока остальные пальцы работают. Статическая нагрузка
вреднее динамической — именно она даёт воспаления сухожилий. Vim решает эту проблему тем,
что убирает модификатор: команды набираются обычными буквами. Слои решают её на уровне
железа: Ctrl переезжает под сильный палец, а стрелки, цифры и символы — на удобные
позиции под удержание.
Ключевое наблюдение, которое стоит вынести из трёх глав про Vim и Emacs: вы можете получить выигрыш модальности, не меняя редактор — достаточно перенести модификаторы на удобные клавиши и добавить слой навигации. Это работает и в VS Code, и в IDEA, и в браузере.
Настройки первого дня
Список того, что стоит сделать один раз на новой машине — до всяких плагинов.
| Изменение | Зачем | Риск |
|---|---|---|
| CapsLock → Ctrl (или Esc/Ctrl по tap-hold) | самая доступная клавиша под самый частый модификатор | ноль, CapsLock не нужен |
| Ускорить автоповтор | навигация стрелками и hjkl перестаёт быть медленной |
опечатки при удержании |
| Отключить залипание клавиш | всплывающее окно посреди набора | ноль |
| Отключить «умные» подстановки ОС | автозамена кавычек ломает код в полях ввода | ноль |
| Правый Alt → Compose или слой | ещё один свободный модификатор | ноль |
| Переключатель раскладки на удобную клавишу | переключение десятки раз в час | нужно привыкнуть |
# macOS: задержка до автоповтора и частота повтора (перелогиниться после)
defaults write -g InitialKeyRepeat -int 15 # 15 × 15 мс = 225 мс до старта
defaults write -g KeyRepeat -int 2 # 2 × 15 мс = 30 мс между повторами
defaults write -g ApplePressAndHoldEnabled -bool false # иначе удержание даёт меню акцентов
# Linux, X11: то же самое
xset r rate 200 45
setxkbmap -option ctrl:nocaps # CapsLock становится Ctrl
setxkbmap -option grp:caps_toggle # или переключатель раскладок на CapsLock
# Linux, Wayland (GNOME)
gsettings set org.gnome.desktop.peripherals.keyboard delay 200
gsettings set org.gnome.desktop.peripherals.keyboard repeat-interval 22
gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:nocaps']"
Как проектировать keymap
Клавиши — интерфейс, и у него те же законы, что у любого интерфейса. Шесть принципов, которые отличают продуманную раскладку от свалки привязок.
- Частота × стоимость позиции. Считайте не «сколько команд я знаю», а «сколько раз в день я это делаю». Самые частые действия — на домашний ряд и под сильные пальцы; редкие — куда угодно, хоть в трёхуровневый префикс.
- Мнемоника важнее оптимальности.
<leader>gsдля «git status» вспоминается через месяц,<leader>7— нет. Проигрыш в пару нажатий окупается тем, что вы вообще вспомните привязку. - Префиксные пространства, а не плоский список. Один лидер и группы по смыслу:
g— git,t— тесты,f— поиск файлов,d— диагностика. Больше двух уровней — уже дерево, которое никто не помнит. - Не переопределяйте то, что живёт в мышечной памяти общесистемно.
Ctrl+C,Ctrl+V,Ctrl+Z,Ctrl+W,Ctrl+T: их переопределение экономит секунду в редакторе и стоит десяти ошибок в браузере. - Раскладка должна быть документируемой. Если её нельзя показать всплывающей подсказкой или списком в README — она не выучится.
- Каждая привязка обязана иметь причину в журнале боли. Не «увидел у блогера», а «делаю это по двадцать раз в день и каждый раз лезу мышкой».
-- Neovim: пространства команд + подсказки. which-key показывает содержимое префикса.
vim.g.mapleader = ' '
local map = vim.keymap.set
-- g — всё про git, t — тесты, f — поиск, d — диагностика
map('n', '<leader>gs', '<cmd>Git<cr>', { desc = 'Git: статус' })
map('n', '<leader>gb', '<cmd>Git blame<cr>', { desc = 'Git: авторство строки' })
map('n', '<leader>tt', '<cmd>TestNearest<cr>', { desc = 'Тест: под курсором' })
map('n', '<leader>tf', '<cmd>TestFile<cr>', { desc = 'Тест: файл' })
map('n', '<leader>ff', '<cmd>Telescope find_files<cr>', { desc = 'Поиск: файлы' })
map('n', '<leader>fg', '<cmd>Telescope live_grep<cr>', { desc = 'Поиск: по тексту' })
map('n', '<leader>dd', vim.diagnostic.open_float, { desc = 'Диагностика: под курсором' })
require('which-key').setup({}) -- подсказка появляется после нажатия лидера
Тот же принцип работает в VS Code (keybindings.json с осмысленными when-условиями) и в
JetBrains (собственная схема поверх стандартной, экспортируемая в репозиторий dotfiles).
Раскладку стоит хранить в системе контроля версий вместе с остальным конфигом — по тем же
причинам, что и всё остальное из статьи про
терминальный рабочий процесс.
Слои и home row mods
Самая мощная идея физического слоя: клавиша может значить одно при коротком нажатии и
другое при удержании. Тогда A S D F в домашнем ряду при удержании становятся
Ctrl Alt Shift Cmd, а отдельный слой даёт стрелки и символы под пальцами — без ухода
рук с домашней позиции.
Логика tap-hold — это конечный автомат, и понимать его нужно, потому что именно из-за него раскладка «иногда печатает мусор».
или намеренная комбинация? Решение --> Холд: режим hold-on-other-key-press Решение --> Тап: режим permissive-hold ждёт отпускания note right of Решение Здесь рождаются "случайные" Ctrl+буква при быстром наборе слов вроде "sad" или "fast" end note
Практические выводы, дорого добытые сообществом и собранные в руководстве по home row mods:
- Начинайте с
tapping-termоколо 200 мс и подстраивайте под свою скорость. - Не вешайте модификаторы на самые быстрые пальцы, если у вас частые «прокаты» — начните с двух модификаторов, а не четырёх.
- Включайте задержку повторного нажатия той же клавиши, иначе двойные буквы будут превращаться в удержание.
- Слой навигации (стрелки, Home/End, PageUp/Down под правой рукой) даёт больше пользы, чем все модификаторы вместе: он убирает переезд руки в правый нижний угол клавиатуры.
Инструменты делятся на два класса:
| Класс | Инструменты | Где живёт логика |
|---|---|---|
| Программируемые клавиатуры | QMK, ZMK | прошивка: работает на любой машине, включая чужую и BIOS |
| Программные ремапперы | kanata, keyd, Karabiner-Elements, xremap, AutoHotkey | ОС: работает на любой клавиатуре, включая ноутбучную |
;; kanata: минимальная конфигурация — CapsLock как Esc/Ctrl и слой навигации
(defsrc
caps a s d f j k l ;)
(defalias
;; тап — символ, удержание — модификатор
a (tap-hold 200 200 a lmet)
s (tap-hold 200 200 s lalt)
d (tap-hold 200 200 d lsft)
f (tap-hold 200 200 f lctl)
j (tap-hold 200 200 j rctl)
k (tap-hold 200 200 k rsft)
l (tap-hold 200 200 l ralt)
;; CapsLock: короткое нажатие — Esc, удержание — Ctrl
cap (tap-hold 200 200 esc lctl))
(deflayer base
@cap @a @s @d @f @j @k @l ;)
Начинать с покупки эргономичной клавиатуры не обязательно: kanata или keyd дают
90 % пользы на встроенной клавиатуре ноутбука за один вечер и без денег.
Раскладки: что честно известно
Спор «QWERTY против Dvorak» старше большинства читателей и оброс мифами с обеих сторон. Честная картина такая.
- История «QWERTY придумали, чтобы замедлить машинистку» — упрощение. Расположение выросло из проблем механики и телеграфной практики.
- Знаменитое исследование Либовица и Марголиса «The Fable of the Keys» показало, что ключевые эксперименты в пользу Dvorak, на которые ссылались десятилетиями, были методологически слабы и частично проведены самим Дворжаком.
- Модели вроде carpalx считают не скорость, а нагрузку: суммарное расстояние пальцев, чередование рук, нагрузку на мизинцы. По этим метрикам Colemak и Colemak-DH действительно лучше QWERTY — и именно комфорт, а не скорость, отмечают почти все, кто перешёл.
- Прирост скорости после перехода в среднем не подтверждается: люди возвращаются к своей прежней скорости за месяцы, а не превосходят её кратно.
| Аргумент | Оценка |
|---|---|
| «Буду печатать в два раза быстрее» | нет |
| «Станет комфортнее, меньше растяжек» | да, для большинства перешедших |
| «Просядет производительность на месяц-два» | да, гарантированно |
| «Сломаются горячие клавиши редактора» | да: hjkl, Ctrl+C/V/Z разъезжаются |
| «Будет больно на чужих машинах и в переговорках» | да, если раскладка не в прошивке |
Разумная позиция: менять раскладку стоит, если у вас уже есть дискомфорт и вы много печатаете текста, а не только кода; горизонт — годы, а не месяцы; и лучше делать это прошивкой клавиатуры, чтобы поведение не зависело от чужой машины. Если цель — снизить нагрузку, слои и перенос модификаторов дают больший эффект при в разы меньшей цене.
Отдельная боль: команды в русской раскладке
Проблема, которой нет в англоязычных руководствах, но которая съедает часы у всех, кто
пишет по-русски: вы отвечаете в мессенджере, возвращаетесь в редактор, нажимаете dd — а
получаете вв. В Normal-режиме Vim это просто не работает, а Ctrl-аккорды в VS Code и
IDEA ведут себя по-разному в зависимости от платформы.
Уровней решения три, и правильный ответ — комбинация.
" 1. Уровень редактора. Vim/Neovim: langmap транслирует кириллицу в команды.
set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯ;ABCDEFGHIJKLMNOPQRSTUVWXYZ,
\фисвуапршолдьтщзйкыегмцчня;abcdefghijklmnopqrstuvwxyz
" Чтобы вставка тоже понимала кириллицу как команды при Ctrl-^ (встроенная раскладка):
set keymap=russian-jcukenwin
set iminsert=0
set imsearch=-1
" Теперь Ctrl-^ в режиме вставки переключает раскладку внутри Vim,
" а Normal-режим всегда остаётся английским — системную раскладку трогать не нужно.
;; 2. Emacs: reverse-im транслирует аккорды, набранные в кириллице
(use-package reverse-im
:custom (reverse-im-input-methods '("russian-computer"))
:config (reverse-im-mode t))
# 3. Уровень ОС — самое надёжное: сочетания с модификаторами всегда трактуются
# по латинской раскладке, независимо от текущей.
# Linux/X11 и Wayland (xkb):
setxkbmap -layout us,ru -option 'grp:caps_toggle,ctrl:swapcaps' \
-option 'lv3:ralt_switch'
# В GNOME то же самое: gsettings set org.gnome.desktop.input-sources xkb-options ...
# macOS: Karabiner-Elements, правило "change key if language is not English"
# Windows: AutoHotkey или переключение через Punto/встроенные средства
Практика, которая работает у большинства: переключатель раскладки на CapsLock (или на
комбинацию двух Shift), Ctrl — на удержание CapsLock, langmap в Vim и системное
правило для аккордов. После этого мысль «в какой я сейчас раскладке» перестаёт занимать
место в голове.
В JetBrains есть отдельная настройка обработки не-латинских раскладок для горячих клавиш; в VS Code поведение зависит от платформы и раскладки клавиатуры, определяемой Chromium, — поэтому системный уровень надёжнее любых настроек внутри редактора.
Скорость набора: правда и мифы
Средний офисный набор — около 40 слов в минуту, тренированный — 65–80. Программисты печатают меньше текста, но с большей долей символов и с постоянными паузами на размышление. Реальный поток при написании кода — единицы слов в минуту.
Из этого следует не «скорость не важна», а более тонкое утверждение: важна не пиковая скорость, а отсутствие срывов потока. Что реально тормозит:
| Источник потерь | Почему дорого | Что делать |
|---|---|---|
| Опечатки и циклы Backspace | ломают ход мысли, а не только время | тренировать точность, а не скорость |
Поиск символа глазами ({, ~, |) |
взгляд уходит с экрана | слой символов под пальцами |
| Переезд рука-мышь-клавиатура | 0,5–1 с и потеря позиции | клавиатурная навигация для повторяемых действий |
| Переключение раскладки | сбой на каждой смене контекста | системное решение из предыдущего раздела |
| Автодополнение, которое дописывает не то | правка вслепую | отключить агрессивные подсказки в комментариях |
Тренироваться имеет смысл 10–15 минут в день в течение трёх-четырёх недель на monkeytype или typing.io (второй даёт именно код со скобками и символами), с установкой на точность: цель — 98 % без исправлений, а не рекорд по словам. Почему такая тренировка работает и как строить подобные короткие циклы — в статье про осознанную практику.
Мышь при этом не враг. Разумное правило: клавиатура — для повторяемого, мышь — для исследовательского. Просматривать незнакомое дерево файлов или диаграмму мышью нормально; вызывать «прогнать тест» мышью двадцать раз в день — нет.
Здоровье рук: то, о чём жалеют постфактум
Механика проста и неприятна. Набор текста — это тысячи повторяющихся микродвижений при статически напряжённых предплечьях. Перегруженные сухожилия воспаляются (тендинит), отекают и начинают давить на срединный нерв в узком канале запястья — это и есть туннельный синдром. Развивается это месяцами, а восстанавливается тоже месяцами.
Красные флаги, при которых надо не читать форумы, а идти к врачу: онемение или покалывание в пальцах (особенно ночью и под утро), боль, отдающая в предплечье, слабость хвата, боль, не проходящая за выходные. Описание симптомов и вариантов лечения есть в материалах Mayo Clinic про туннельный синдром; рекомендации по организации рабочего места — в OSHA Computer Workstations eTool.
Протокол, который стоит дешевле любого лечения:
- Перерывы. Правило 45/5: каждые 45 минут пять минут без клавиатуры, с движением. Микропаузы на 20–30 секунд каждые 10 минут дают больше, чем один длинный перерыв.
- Нейтральные запястья. Предплечье и кисть на одной линии, без излома вверх и вбок. Подставка — это опора для ладоней в паузах, а не место, на котором лежат руки во время набора: постоянное давление на канал запястья вредно.
- Локти около 90°, плечи расслаблены. Чаще всего чинится высотой стула и стола, а не покупкой клавиатуры.
- Меньше статики. Модификатор, который вы держите мизинцем часами, — главный кандидат на переезд под большой палец или в tap-hold.
- Разнообразие. Чередование мыши, трекбола и клавиатурной навигации распределяет нагрузку вместо того, чтобы концентрировать её в одном сухожилии.
- Не работать через боль. «Потерплю до релиза» — самый дорогой способ сэкономить неделю: хроническое воспаление лечится месяцами.
Отдельно стоит знать, что выход есть даже при серьёзных проблемах. Голосовое программирование давно перестало быть экзотикой: Talon Voice и его открытое сообщество команд позволяют писать код, управлять редактором и навигацией голосом; отслеживание взгляда и переключатели дополняют картину. Люди с тяжёлым RSI продолжают работать инженерами — но лучше познакомиться с этими инструментами до того, как они станут единственным вариантом. Смежная тема — как устроена клавиатурная доступность в интерфейсах — разобрана в статье клавиатура и фокус.
Железо трезво
Порядок покупок по соотношению «эффект на рубль», если появился дискомфорт:
- Стол и стул нужной высоты. Скучно, дорого, работает лучше всего.
- Внешняя клавиатура и монитор для ноутбука. Работа на встроенной клавиатуре ноутбука заставляет держать голову опущенной, а руки — сведёнными. Разделить экран и клавиатуру — самое дешёвое серьёзное улучшение.
- Программное переназначение клавиш. Ноль рублей, вечер работы.
- Сплит или ортолинейная клавиатура. Разводит руки на ширину плеч и убирает выворот кисти. Привыкание — одна-две недели.
- Переключатели полегче (35–45 г). Меньше усилие — меньше нагрузка; тактильность — вопрос вкуса, не здоровья.
- Трекбол или вертикальная мышь. Помогают, если болит именно от мыши.
- Клавиатура без цифрового блока (TKL). Мышь ближе к телу — меньше отведение плеча.
Чего покупка не решает: перерывы, позу и привычку работать по десять часов подряд. Ни одна клавиатура за 300 USD не компенсирует отсутствие пауз.
Протокол перехода за две недели
Смена раскладки команд, как и смена редактора, требует плана — иначе вы откатитесь на третий день.
День 1 Настроить физический слой: CapsLock, автоповтор, раскладки, langmap.
Ничего больше не менять.
День 2-3 Один слой навигации (стрелки/Home/End под правой рукой). Только он.
День 4-7 Журнал боли: записывать каждое действие, где рука тянулась к мыши
или в дальний угол клавиатуры. Не чинить, только записывать.
День 8 Разобрать журнал: три самых частых пункта превратить в привязки.
Не больше трёх — остальное забудется.
День 9-12 Жить с этим. Каждая привязка, которую не вспомнили за три дня, удаляется.
День 13 Home row mods — по желанию, начиная с двух модификаторов.
День 14 Зафиксировать конфиг в dotfiles, добавить README с таблицей клавиш.
Критерий успеха — не «стало быстрее» (это неизмеримо на таком горизонте), а «перестал тянуться к мыши для того, что делаю каждый день» и «руки к вечеру устают меньше».
Типичные ошибки
- Оптимизировать редактор, игнорируя железо. Спорить о миллисекундах отрисовки на беспроводной клавиатуре с задержкой 25 мс.
- Менять раскладку и keymap одновременно. Две неопределённости сразу: непонятно, что именно не работает, и откат теряет всё.
- Сорок привязок за вечер. Через неделю вы помните три, а остальные тридцать семь мешают чужим сочетаниям.
- Переопределять общесистемные сочетания. Секунда выигрыша в редакторе и ошибки во всех остальных приложениях.
- Держать модификатор мизинцем годами. Самая частая механическая причина «непонятной» боли в предплечье.
- Гнаться за скоростью набора. Точность и отсутствие срывов дают больше; рекорд в тренажёре не переносится на код.
- Игнорировать первые симптомы. Покалывание в пальцах — это сигнал, а не «затекла рука».
- Покупать клавиатуру вместо перерывов. Железо не лечит режим работы.
- Раскладка, которая живёт только в вашей ОС. На чужой машине, в переговорке и в BIOS вы окажетесь беспомощны; прошивка клавиатуры этого лишена.
Мини-итог
- Физический слой переживает любую смену редактора и единственный из всех может сломаться физически.
- Клавиатура и стек ввода дают десятки миллисекунд задержки — часто больше, чем разница между редакторами, и чинятся дешевле.
- Аккорды, модальность и слои — три ответа на одну задачу; слои работают на уровне железа и потому доступны в любом редакторе.
- Keymap проектируется по частоте, мнемонике и префиксным пространствам, и каждая привязка должна иметь причину в журнале боли.
- Home row mods — мощно, но это конечный автомат с неоднозначностью: без понимания
tapping-termон будет «печатать мусор». - Альтернативные раскладки дают комфорт, а не скорость; слои и перенос модификаторов дешевле и эффективнее.
- Русская раскладка требует решения на трёх уровнях; надёжнее всего системное правило
для аккордов плюс
langmapв редакторе. - Скорость набора не бутылочное горлышко; точность и отсутствие переключений — да.
- Профилактика травм состоит из перерывов, нейтральной позы и снятия статической нагрузки; железо — на четвёртом месте, а не на первом.
Источники
- Keyboard latency — измерения задержки клавиатур от Дэна Лу.
- Typing with Pleasure — Павел Фатин о психофизике задержки ввода и её измерении.
- QMK Firmware Documentation и ZMK — слои, tap-hold, комбо на уровне прошивки.
- A guide to home row mods — подробный разбор настроек и типичных проблем.
- kanata, keyd, Karabiner-Elements — те же возможности программно.
- The Fable of the Keys — критический разбор мифа о превосходстве Dvorak.
- carpalx — модель нагрузки при наборе и оптимизация раскладок.
- OSHA Computer Workstations eTool — официальные рекомендации по организации рабочего места.
- Carpal tunnel syndrome, Mayo Clinic — симптомы, диагностика, лечение.
- Talon Voice и talonhub/community — голосовое управление и программирование.
Что дальше
Это последняя статья трека «Редакторы и IDE». Мы прошли путь от модальности vi до новой волны редакторов, разобрали терминальное окружение, сравнили инструменты по критериям, научились быстро находить код, автоматизировать повторяющееся — и закончили слоем, который останется с вами независимо от того, чем вы будете писать код через десять лет.
Куда двигаться дальше:
- Терминальный рабочий процесс и сравнение инструментов — если вы читали трек не подряд, эти две статьи связывают всё остальное.
- DevOps и CI/CD — правая часть петли обратной связи: сборки, тесты, доставка. Там выигрыши обычно больше, чем в редакторе.
- Операционные системы — процессы, файловые дескрипторы, ввод-вывод: слой, на котором живёт всё, что мы настраивали.
- Git — инструмент, с которым редактор взаимодействует чаще всего.
- Базы данных и принципы разработки — содержательные области, ради которых инструмент, собственно, и настраивался.
- Как учиться — если вы собираетесь осваивать новый инструмент осознанно, а не методом проб и ошибок.
Общая карта портала с порядком прохождения треков — здесь: Дорожная карта.