У меня есть большой Autohotkey скрипт для улучшения слепой печати: комбинации клавиш; нажатие и удерживание клавиш; перераспределение символов вокруг десяти пальцев так, чтобы не приходилось тянуться; снижение нагрузки на мизинец.
Я также сделал модификаторы более полезными: 1 нажатие Ctrl = Tab; 2 = Esc; удерж. = Shift+Tab. 1 нажатие Shift = Ctrl+Backspace; 2 = Backspace; удержание удаляет по символу влево, постепенно ускоряясь. Right Shift тоже самое, но с Delete (удаление вправо). 2 нажатия Space = Enter; удерж. добавляет разрывы строк с ускорением.
Проект без документации, разберется только программист или технически подкованный пользователь (с моей помощью). Напишите, если интересно принять участие в тестировании.
Дети всё больше начинают доверять нейросетям, а как следствие — материалы становятся ещё доступнее. Теперь даже гуглить ничего не надо: просто кидаешь нейронке задачу, а она тебе строит пошаговый план решения и объяснение.
Дети все больше начинают доверять нейросетям, а как следствие - перестают учиться искать информацию, перестают случайно находить новые интересные статьи и технологии, которые их могут заинтересовать. Они застревают в цикле того потока информации, который им даёт школа и нейросети. Дети и старшеклассники перестают выходить за рамки собственных возможностей, перестают искать новые знания осознанно. Так появляется ещё одна причина дефицита кадров в стране.
Интересный получился квест... Я оставил требования в конце специально для тех, кто заинтересован в применении таких конструкций. Как правило, не все доходят до конца и нет смысла отпугивать читателя этим списком версий
Вроде Как я это исправил с помощью mt19937_64 и uniq_distribution. При стресс-тестах на set и unordered_set повторов (во всех смыслах) отловить не удалось.
Хрестоматийный пример сложной простоты это случайное число, и где нибудь в джаве или пайтоне вы просто напишете random.randint(1, 100) и пойдёте дальше кодить, но не здесь. Это слишком просто, чтобы быть правдой.
А сам random_device стандарт разрешает делать детерминированным и на старом MinGW он годами выдавал одну и ту же последовательность при каждом запуске, то есть длинная корректная мантра в реальности и длинная и коррекная, но не везде работает, хоть rand() % 100 и короче и хотя бы работает.
Принцип работы следующий: все клавиши печатают как обычно, но некоторые печатают типичные для программирования символы при удерживании Alt: Alt+N -> (, двойной Alt+N -> [ и удерживая Alt+N 300мс+ вы напечатаете блок кода с фигурными скобками { }и переносом строк.
Полный список зарегистрированных клавиш доступен ниже в секции allApps. пример:
allApps.add("<!sc031", LAlt_N_AllApps)
allApps.add("<!sc032", LAlt_M_AllApps)
LAlt_N_AllApps(taps, state) {
if (state = -1) {
if (taps = 1)
return SendChars('(')
SendChars('[')
} else if !state {
SendChars('+[')
if (taps = 1)
return
SendEvent('{Enter 2}')
SendEvent('{Up}')
SendEvent('{Tab}')
}
}
Здесь callback имеет state -1 если клавиша нажата, 1 если удерживается и 0 если отпущена. taps представляет собой количество нажатий. Можно просто быстро два раза нажать, а можно быстро нажать и удерживать, в этом случае taps == 2 и state == 1
Я в некоторых сборках это глобальный параметр, на который опираются все процессы. Его измнение может привести к отдаленным последствиям.
Если вы всё-таки хотите его изменить, необходимо протестировать, какие конкретно значения оптимальны для ваших задач и для вашей ОС
Нет универсальных или общих значений, они могут только испортить вашу работу. Вместо изменения этого параметра лучше вообще пойти другими путями.
Нужно стремиться не к уменьшению таймера, а к уменьшению прерываний процессора, к уменьшению его переключений между процессами.
Для этого нужно работать и с параметрами реестра, и с приоритетами, и отключать ненужные службы и много чего ещё. Это огромная и тонкая работа, по которой еще никто не написал подробную статью. Я когда-то хотел, но потом передумал: умный пользователь сам найдет свой правильный путь, а ленивый –проследует по чужому пути и упадёт в заготовленную яму.
Фантастика! Но я перестал писать на Python и перешёл на AutoHotkey из-за возможности работать с WinApi напрямую. Плюс язык pprototype-based. И вот тут вообще нет никаких типов, хорошо хоть под капотом один тип не преобразовывается тайно в другой, как в JavaScript:
encapsulate() {
static API_CONST := 0x008
...
API_CONST := 12 # nah we'll just ignore it
}
Хотя бы проблемы вроде "прочитал новый паттерн ООП и внедрил его на уоовне 1970 года" тут случаются редко, потому что язык дает очень много возможностей написать все в число процедурном стиле. А классы использовать в основном без интерфейсов и абстрактных методов, просто потому что здесь нет типов (а следовательно костыли из интерфейсов не нужны)
У меня есть большой Autohotkey скрипт для улучшения слепой печати: комбинации клавиш; нажатие и удерживание клавиш; перераспределение символов вокруг десяти пальцев так, чтобы не приходилось тянуться; снижение нагрузки на мизинец.
Я также сделал модификаторы более полезными: 1 нажатие Ctrl = Tab; 2 = Esc; удерж. = Shift+Tab. 1 нажатие Shift = Ctrl+Backspace; 2 = Backspace; удержание удаляет по символу влево, постепенно ускоряясь. Right Shift тоже самое, но с Delete (удаление вправо). 2 нажатия Space = Enter; удерж. добавляет разрывы строк с ускорением.
Проект без документации, разберется только программист или технически подкованный пользователь (с моей помощью). Напишите, если интересно принять участие в тестировании.
Telegram: @Fainful
Discord: @toyu.s
Дети все больше начинают доверять нейросетям, а как следствие - перестают учиться искать информацию, перестают случайно находить новые интересные статьи и технологии, которые их могут заинтересовать. Они застревают в цикле того потока информации, который им даёт школа и нейросети. Дети и старшеклассники перестают выходить за рамки собственных возможностей, перестают искать новые знания осознанно. Так появляется ещё одна причина дефицита кадров в стране.
Интересный получился квест... Я оставил требования в конце специально для тех, кто заинтересован в применении таких конструкций. Как правило, не все доходят до конца и нет смысла отпугивать читателя этим списком версий
К слову о текучке кадров: как она продвигается в 2026-м (спустя 4 года)?
Вроде Как я это исправил с помощью mt19937_64 и uniq_distribution. При стресс-тестах на set и unordered_set повторов (во всех смыслах) отловить не удалось.
Я попытался это исправить типо-безопасной библиотекой.
Может и есть, но её автор спустя годы кругов придет к той же архитектуре, просто за большее время.
В autohotkey такая архитектура, причем всё есть объект; в PyWidgets такая архитектура; в Django и т.п.
Как правильно написано в начале, меняется кодогенерация, а идея остаётся прежней.
Опять?
Если вам не страшен Autohotkey код, попробуйте моё решение (документация не прилагается): https://pixeldrain.com/u/J9r9TV1V
Принцип работы следующий: все клавиши печатают как обычно, но некоторые печатают типичные для программирования символы при удерживании
Alt:Alt+N->(, двойнойAlt+N->[и удерживаяAlt+N300мс+ вы напечатаете блок кода с фигурными скобками{ }и переносом строк.Полный список зарегистрированных клавиш доступен ниже в секции allApps. пример:
Здесь callback имеет
state-1 если клавиша нажата, 1 если удерживается и 0 если отпущена.tapsпредставляет собой количество нажатий. Можно просто быстро два раза нажать, а можно быстро нажать и удерживать, в этом случаеtaps == 2иstate == 1А какие есть адекватные расширения?
О, я тоже пишу скрипты на AHK :D Буду рад сотрудничеству: https://github.com/JoyHak
У меня есть два репозитория модов к нему:
https://github.com/JoyHak/Vivaldi-CSS-mods
https://github.com/JoyHak/customize-vivaldi-buttons
Исправил тут: https://www.autohotkey.com/boards/viewtopic.php?f=83&t=140529&p=617670#p617670
Исправил тут: https://www.autohotkey.com/boards/viewtopic.php?f=83&t=140529&p=617670#p617670
Данный код не учитывает проблемы с задержкой, из-за которой вводимые символы не соответствуют раскладке клавиатуры какое-то время после переключения. Исправил тут: https://www.autohotkey.com/boards/viewtopic.php?f=83&t=140529&p=617670#p617670
...и ни одной интересной статьи про него за последние годы.
Отдельным комментарием отмечу:
Хорошо что автор не стал менять
TdrDelayиTdrDebugMode, иначе с такими общими значениями он бы положил компьютеры всех, кто вслепую поставил твикер.Нет критических параметров для отключения фиксов уязвимостей процессора Spectre и Meltdown:
Наверное стоит полностью отключить Hyper-V в биос и Core Isolation если вам нигде не нужна виртуализация и вы не используете виртуальные машины:
Я бы рекомендовал почитать дискуссии прежде чем менять Timer Resolution:
Я в некоторых сборках это глобальный параметр, на который опираются все процессы. Его измнение может привести к отдаленным последствиям.
Если вы всё-таки хотите его изменить, необходимо протестировать, какие конкретно значения оптимальны для ваших задач и для вашей ОС
Нет универсальных или общих значений, они могут только испортить вашу работу. Вместо изменения этого параметра лучше вообще пойти другими путями.
Нужно стремиться не к уменьшению таймера, а к уменьшению прерываний процессора, к уменьшению его переключений между процессами.
Для этого нужно работать и с параметрами реестра, и с приоритетами, и отключать ненужные службы и много чего ещё. Это огромная и тонкая работа, по которой еще никто не написал подробную статью. Я когда-то хотел, но потом передумал: умный пользователь сам найдет свой правильный путь, а ленивый –проследует по чужому пути и упадёт в заготовленную яму.
Сам сгенерировал или кто помог?...
Фантастика! Но я перестал писать на Python и перешёл на AutoHotkey из-за возможности работать с WinApi напрямую. Плюс язык pprototype-based. И вот тут вообще нет никаких типов, хорошо хоть под капотом один тип не преобразовывается тайно в другой, как в JavaScript:
И нету констант нигде:
Хотя бы проблемы вроде "прочитал новый паттерн ООП и внедрил его на уоовне 1970 года" тут случаются редко, потому что язык дает очень много возможностей написать все в число процедурном стиле. А классы использовать в основном без интерфейсов и абстрактных методов, просто потому что здесь нет типов (а следовательно костыли из интерфейсов не нужны)