Category: компьютеры

Клавиатура — последняя дура

...всё дело в том, что клавиатура очень сильно провоцирует на выработку моторных навыков — которые требуют существенно меньшего напряжения моска, нежели мышковозюкальство в сколь угодно изысканном интерфейсе. Именно поэтому клавиатура, как средство управления интерфейсом при сложной работе, по сию пору заруливает мышь (это и нижеследующие рассуждения постепенно теряют актуальность в пользу тач- и мультитач-интерфейсов, которые эксплуатируют те же «моторные» навыки, по всей видимости, более человечным образом; и тем не менее). Факт этот принято либо игнорировать, либо использовать полубессознательно, что приводит к довольно вычурным интерфейсам. Тем не менее, несколько разрозненных соображений:

* клавиатура как тачпад низкого разрешения; обсуждалось в предыдущей записи; по запросу «keyboard as a touchpad» Гугль также обнаруживает, что ничто не ново под луной;

* клавиатурные «аккорды» (одновременные нажатия нескольких клавиш) как способ подавать команды; тут, вообще говоря, существующие системы довольно убоги; доступные варианты:
1) шорткаты (аккорды, в которых все клавиши, кроме одной, «функциональные» — Alt/Ctrl/Shift) — по сути, единственный распространённый вариант по причинам сугубо техническим: только для этих клавиш легко обработать концепцию «одновременного нажатия» (честно говоря, уже не помню технических деталей: возможно ли вообще, допустим, в WinAPI, обрабатывать последовательность нажатий A↓B↓B↑A↑, т.е. «A+B нажаты одновременно»); возникает, к тому же, некоторое количество неоднозначностей, вроде клавиши Win, на которую я настраиваю себе все system-wide hotkeys (что логично, но напрямую противоречит микрософтовским гайдлайнам), разницы right/left Alt, спецэффектов NumLock и прочих прелестей жизни; нельзя сказать, чтобы consistency тут ночевало;
2) встречаются остроумные хаки, которые просто считают «одновременно нажатыми» клавиши, время между нажатиями которых меньше заданного: вот, например, key-chord.el для Emacs’а; эти решения имеют очевидные ограничения, но тем не менее, довольно интересны;
3) нельзя назвать вполне аккордами, но всё же неплохое решение, релевантное существенно чаще, чем в самом деле применяется — последовательности клавиш, нажатых при зажатой функциональной; два с половиной известных мне использования: набор Юникод-символов в Windows (Alt+несколько цифр на NumPad’е) и Раскинские проекты: Archy (команды в оболочке набираются, пока зажат CapsLock) и Enso (то же самое, но работает как приложение к ОС, активное в любой программе) — один из наиболее остроумных, как мне кажется, способов использования клавиатуры для управления, но зачастую излишне многословный;

* в связи с предыдущим, интересно было бы изучить опыт азиатов, которые, насколько мне известно, свои иероглифы набирают в несколько приёмов; catpad, возможно, может рассказать что-то на эту тему?

* лебедевские Оптимусы — это профанация клавиатуры, как мощного средства управления: просто потому, что клавиатура должна быть устроена так, чтобы на неё не смотреть; для того, чтобы достичь тех же целей при использовнии клавиатуры вслепую, нужна onscreen-подсказка (причём не просто «список шорткатов», а именно в форме клавиатуры, аппелируя к моторной памяти); имеется в виду нечто вроде «зажал Ctrl, в нижней части всплыло полупрозрачное изображение клавиатуры, где на кнопках нарисованы действия, соотвествующие „Ctrl+эта кнопка“»; кто-нибудь такое уже реализовывал? я не видел.

* типографские раскладки — это очень здорово, во-первых, и доказывает, что мы недоиспользуем моторную память (лично я за неделю без труда запомнил ещё десяток сокращений, рисующих типографские символы); вообще, к клавиатуре это, конечно, напрямую не относится, но возможность писать и читать типографски-симатичные тексты лично мне очень радостна (даже мелкие заметки для себя у меня теперь с правильными кавычками и тире, и я совершенно не понимаю, какого хрена крупные сетевые СМИ вплоть до lenta.ru этот вопрос игнорируют); также хотелось бы спросить одного из френдов, почему этот вопрос игнорирует движок «Вебпланеты»? ;)

* кстати, внезапно обнаружил, что после обзаведения клавиатурной раскладкой в нагрузку полюбил букву «ё» — если раньше я был скорее на стороне тех, кто пропагандировал «только неоднозначные случаи», то теперь мне тексты без «ё» смотрятся такими же «недотипографированными», как с "дюймами" вместо кавычек;


* интересно, что и гиковский Твиттер, и попсовый Вконтакт внезапно возродили интерес к псевдографике и «красивеньким символам» из Unicode-набора (например); пока не совсем понимаю, какое это имеет отношение к теме «управляющей клавиатуры» — но, безусловно, имеет;

* куда должно/будет двигаться вышеописанное — понятно не вполне; с одной стороны, мобильные устройства делают все эти вопросы малоактуальными, а если в мейнстрим, не дай бог, войдут тач-клавиатуры — то и на десктопе всё уйдёт в ту же сторону; мой опыт работы с мобильными и тач- устройствами недостаточен, чтобы что-то здесь предполагать; однако, я был бы рад увидеть прогресс в области сознательного использования вышеописанных навыков;

30+ причин, почему все программисты - шизофреники

(Автор: BinnyVA
Источник: 30+ Reasons Why All Programmers Are Schizophrenics
Перевод: Зверёк Харьковский)


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

Прежде чем читать дальше - если вы не в курсе, то вот определение шизофрении из авторитетного источника (Википедия).

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


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

Симптомы шизофрении


Пренебрежение личной гигиеной - проверьте.

Депрессия - нет, у меня ее нету. Но если я прочитаю весь список и обнаружу что у меня шизофрения, наверное, появится.

Причудливое поведение - сидение перед компьютером 15 часов в день считается причудливым поведением? Стопудово!

Иррациональные утверждения - "ActiveX объекты IE XMLHTTP или XMLHTTPRequest (W3C Standard) могут использоваться для AJAX-программирования". Это утверждение не кажется мне иррациональным - но шизофреники редко считают иррациональными собственные утверждения.

Постоянный сон или неспособность спать - проверьте.

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

Сдвиг в основах личности - я не знаю, была ли сдвинута моя личность: я не помню тех времен, когда не был программистом.

Необоснованная враждебность - попробуйте стать между программистом и его компьютером, и вы поймете истинное значение слова "враждебность".

Ухудшение общественных отношений - какая часть слова "программист" вам непонятна?

Гиперактивность или неактивность или переключение между ними - бешенное кодирование / ожидание во время компиляции. Что еще сказать?

Неспособность сконцентрироваться или справляться с мелкими проблемами - отлично, первый симптом, который к нам не относится.

Сильное увлечение религией или оккультизмом - чтобы вы ни думали, Emacs - действительно религия.

Регулярное писание безо всякого смысла - а вы думали, что такое программирование?

Безразличие - когда я за компьютером, мне действительно пофиг все остальное.

Выпадение из общих занятий или вообще из жизни - бывало, бывало.

Падение интереса к образованию и спорту - ненавижу изучать что-либо кроме компьютера.

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

Потеря собственности - я редко что-нибудь теряю, все мои файлы проиндексированы, и находятся на расстоянии одной команды locate. Или одного поиска в Beagle. Что значит "собственность вне компьютера"?

Неадекватная реакция на критику - когда нибудь присутствовали на сеансе code review? "Как ты посмел назвать мой код неэлегантным?! Умри, несчастный!"

Неспособность выражать радость - я неспособен выражать радость, когда модульные тесты падают. И когда работаю с IE.

Неспособность плакать, или постоянный рев - постоянный рев, плач и ругательства - еще один симптом работы с IE

Неуместный смех - слышали гиковские шутки? Да это постоянный "неуместный смех". К примеру, "Монти Пайтон в поисках Святого Грааля".

Необычайная чувствительность к раздражителям (шум, свет, цвета, текстуры) - если вы дизайнер.

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

Злоупотребление наркотиками и алкоголем - кофе считается?

Ослабление - я не слабею, когда программирую - только когда читаю The Daily WTF.

Странные позы - у программистов всего одна поза: L с изгибом внизу - решайте сами, плохо это или хорошо.

Отказ прикасаться к людям или предметам, ношение перчаток и т.п. - если ты программист, другие люди отказываются прикасаться к тебе. Возможно, это объясняется тем, что ты три дня не мылся?

Бритье головы или тела - без комментариев.

Нападение на людей или угрозы покалечить себя - я угрожал покалечить мой компьютер - топором. Правда, тогда я исползовал Windows.

Взгляд не моргая или постоянное моргание - да ладно, это просто.

Неподвижный взгляд как у рептилии - да, и это тоже. Попробуй-ка посмотреть в монитор 15 часов в день.

Непреодолимое упрямство - "VI - лучший редактор, и ничто меня не переубедит".

Чувствительность и раздражительность от чужих прикосновений - Что?! Обычные люди не раздражаются от чужих прикосновений? Вот это новость.

Специфичное использование слов и странных речевых структур - вы слышали диалоги программистов? Теперь говорят "для меня это все - как язык гиков". Ну, раньше говорили "как язык греков" - но это уже устарело. Теперь говорят "язык гиков".


Да, у меня определенно шизофрения. У меня 33 из 35 симптомов этого списка - достаточно убедительно. Теперь я жду первой галлюцинации в любое время - это должно быть любопытно.