Обновить
25

Software Engineer

4
Подписчики
Отправить сообщение

Я про быстроту визуального отклика.

Если вам в клавиатуру прямо сейчас внедрить 1-секундную задержку на каждую клавишу, то скорость набора также не изменится, но вряд ли вам понравится это изменение.

Клавиши с Mod-tap-ом отправляют код не в момент нажатия, а в момент отпускания

Ок, но это означает, что система теряет способность мгновенно реагировать на нажатие клавиши, как это происходит при обычном вводе

Как система отличает Shift + клавиша от быстро набранной обычной последовательности N→клавиша, при которой N не успевает отжаться до нажатия 2й клавиши?

А у неё имя есть? И из рисунка не понял где модификаторы у неё. На основном слое N и под ним Shift серым цветом, что это значит?

Любопытный экскурс, но многие приёмы на практике малоприменимы.

Mod-tap не дружит с быстрым набором и с движением, называемым Finger roll. "Удержание клавиши Ф превращает клавиши О, Л, Д, Ж в курсорные клавиши" - Как система отличит набор курсорной клавиши от очень быстро набранного сочетания ФО, когда Ф ещё опущена в момент нажатия О? Туда же аккорды (на не аккордовой клавиатуре).

последовательное нажатие клавиш Ctrl, Р — активирует русский алфавитный режим

Я бы не стал так делать. Это препятстствует быстрому переключению языка. Для того, чтобы система не распознала это как Ctrl+P, надо при вводе делать демонстративную паузу между Ctrl и P, чтобы успел отжаться Ctrl. То есть традиционное переключение Modkey+key или однократным нажатием клавиши будет быстрее.

Нажатие одной клавиши может по разному интерпретироваться микроконтроллером в зависимости от ритма нажатия

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

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

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

Я рассматриваю клавиатуру в совокупности с управляемым ею софтом.

Это как? Откуда вы знаете какие ОС и софт стоят у юзера и не переназначил ли он хоткеи?

Клавиатура не требует выполнять Ctrl+Shift, это требует софт.

Так можно вообще никакие клавиши не рассматривать — ведь они требуются софту, а не клавиатуре.

Если в софте применяются двойные модификаторы (для частых команд; для редких это не проблема) значит что-то не то с конфигурацией хоткеев. http://xahlee.info/kbd/banish_key_chords.html Про "можно никакие клавиши не рассматривать" (тк никогда не знаешь что на какие действия забито) мысль верная, но вывод неверный, а верный вывод - большинство раскладок хоткеев всё равно отстой, надо делать хоткеи самому, и надо заставить их слушаться хотя бы DE и основные приложения.

Насколько станет удобнее набирать цифры и уменьшится количество промахов?

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

Насколько ваше решение лучше в смысле эргономики, чем одна физическая клавиша?

Лучше. У меня тоже одна клавиша на каждую из этих операций + расположение подобрано так, чтобы минимизировать weird motions в типичных сопутствующих действиях. Моё решение не требует уникальной клавиатуры. По вашим уникальным клавишам cut/copy/paste ещё вопрос, где они расположены. Если например они далеко от основных буквенных рядов и/или требуют указательный и средний палец или снимать правую руку с home row, то у меня для вас плохие новости по поводу эргономичности такой клавиши в типовых сценариях с cut/copy/paste (где до этих операций обычно идёт выделение блока, а после - операции перемещения курсора).

А какой предел? К 10 слоям можно приспособится?

Да. Человек очень легко запоминает слои. Проблема #1 раскладок - не в нехватке мест под символы (это можно решить буквально 1 доп. слоем). Она в том, что ценных легко достижимых позиций мало (2 квадрата 3x3 на буквенных рядах + alt и spc на pc104 + thumb pad на эрго клавиатурах), а кандидатов на них много.

Человек ко всему может приспособиться. Цена вопроса — время.

На выучивание раскладки уходит в разы меньше времени, чем на её применение после этого. Сколько переходить на альт. раскладку? Неделю, две, три, месяц, два? А сколько лет после этого юзеру набирать тексты?

(Разработчик раскладок и конфигураций хоткеев приложений, но не физических клавиатур)

Много чего неверно, а ряд big questions вами не задан. По пунктам:

я отказался от стандартной клавиатуры и никогда к ней не вернусь

То есть вы отказались от ноутбуков? Задаю этот вопрос всем авторам несовместимых с pc104/pc105 физических клавиатур.

клавиатуру с отдельными клавишами для наиболее частых символов и команд (около 165 клавиш)

ОМГ что это за монстр? Как вы представляете слепой набор на нём? Вы думали об эргономике ввода на нём? Вы уверены, что нехватка символов на основном слое и наклон рядов это проблема #1?

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

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

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

Верно, хотя мышь в большинстве keyboard-only сценариев работы - редко применяемая вещь, а значит нет никаких проблем с высокой ценой доступа к ней.

Дальние перемещения к курсорно-цифровому блоку клавиш.

Заявление не имеет смысла без анализа частотности, который может и показать, что частотность цифр настолько низка, что отправка их на дальний ряд является правильным решением. В некоторых раскладках (Programmer Dvorak) цифры вообще отправляют на Shift-слой.

Дальние перемещения к клавишам управления курсором.

Не нужны, полностью замещаются модальным редактированием.

Дальние перемещения мизинцев к периферийным клавишам, таким как Tab, Ctrl, Backspace, Delete.

Верно, хотя вообще-то Delete не нужна.

Сложные комбинации, неестественные для анатомии кисти (например Ctrl+Shift или Alt+Shift+Tab).

Это проблема не клавиатур, а конфигураций софта, вы смешиваете понятия. Клавиатура не требует выполнять Ctrl+Shift, это требует софт. Впрочем, модальные клавиши в pc104/pc105 расположены неудобно, да.

Дисбаланс нагрузки между пальцами:
чрезмерная нагрузка на мизинцы из-за большого количества периферийных клавиш.
малая нагрузка на большие пальцы, используемые в основном только для пробела.
неоптимальное для «слепого» набора расположение алфавитных клавиш QWERTY.

Смешиваете проблемы физических клавиатур и раскладок, точнее одной раскладки QWERTY.

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

Пруф? Насколько мне известно, на ортолинейных/эрго клавиатурах промахов не сильно больше. Их преимущество в другом. "Визуальная идентификация" насколько я понимаю означает не слепую печать (со взглядом на клавиши), это тема вообще маловажная при разговоре об эргономике.

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

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

Дублирование частых клавиш (Ctrl, Alt, Shift, Win) с правой стороны создает дополнительную когнитивную нагрузку.

Тот же комментарий. Эта проблема выражалась бы в промахах по модификаторам или в медленном наборе комбинаций с модификатором по сравнению с обычными биграммами (двухклавишными комбинациями). О такой проблеме мне неизвестно. Точнее, комбинации с модификаторами действительно набираются медленно, но там действуют другие факторы, например неэргономичное расположение модификаторов в pc104/105 и заморозка руки. Имхо когнитивная нагрузка здесь - далеко не основная проблема.

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

Отсутствие клавиш для частых символов. На клавиатуре нет клавиш для используемых в русской письменности символов «» —; нет клавиш для используемых в математике символов, таких как ≠ − (минус).

Смешиваете раскладку и физическую клавиатуру. И без анализа частотности ваше утверждение бессмысленно. Я не вижу проблемы набирать экзотические символы по Alt-коду или например по их имени в LaTeX.

Отсутствие клавиш для самых частых команд. Например, клавиши копировать и вставить.

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

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

Это проблема раскладки, а не физической клавиатуры. Плюс, не вижу проблем в кастомных комбинациях для переключения языка. Если вы считаете что для этого нужна 1 клавиша а не 2, нужен анализ частотности, в который входит частотность переключений языка. У меня таких данных нет, но интуитивно мне кажется, что эта операция далеко не в топе и нет смысла отдавать ей целую 1 личную клавишу.

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

Проблема сильно преувеличена. Моторика человека прекрасно приспособлена для работы в двух и более клавиатурных слоях, даже если там есть схожие символы. Основная проблема русских раскладок - в отсутствии возможности поместить все стандартные символы пунктуации на основной слой, из-за большего кол-ва букв. Как следствие, есть меньшая проблема (но также не решённая) - отсутствие ХОРОШИХ рус и англ раскладок, совпадающих по символам пунктуации. Но это вопрос комфорта, тк как я уже сказал человек способен запомнить 2 набора позиций букв и знаков препинания.

Невозможность набора некоторых символов из определенных алфавитных регистров (№ из английского, []{}<> из русского).

Верно, сказал выше. Но вы слишком много внимания уделяете редким символам.

Несколько подписей на клавишах замедляют их визуальную идентификацию.

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

Ага, и выделенная вами четвёрка, единственная из остальных более-менее относящаяся к IT, ЧСХ не имеет слово "Инженер" в названии.

Кроме того, что вы пытаетесь доказать, приводя мне российскую номенклатуру специальностей, почти не относящихся к IT и к списку специальностей в статье Business Insider?

И что дальше? Один термин, просто встречающийся в корпусе русского языка, офигеть доказательство в разговоре про соглашения при переводе с английского. Речь шла о том, что практически никакая специальность со словом Engineer, перечисленная в оригинальной статье, не переводится на русский как "Инженер". Мне же тут стали втирать какую-то дичь, что я видите ли утверждаю, что таких названий специальностей программистов в русском нет. Они есть, да. И в тех же госконторах любят называть "Инженерами-программистами" тех, кто ими не является. И что? Это доказывает, что Software engineer -> инженер-программист в статье это правильный перевод? Институт Виноградова занимается нормированием переводов технических терминов? Инженер-программист в обратную сторону переводится как Part-programming engineer, и это человек который занимается АСУТП итд, а не пишет софт на Java или Python. Перевод статьи выполнен безграмотно.

classinform.ru/okpdtr/dolzhnosti-sluzhashchikh/kod-22824-inzhener_programmist.html

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

Нет, это когда «Android Software Engineer» кому-то стало сложно написать со смузи в руках.

Что в BusinessInsider в оригинальной статье написано, то и перевожу.

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

Engineer, если речь идёт об IT, практически никогда не переводится на русский как "инженер". Мб это и нелогично, но такова сложившаяся практика.

Software engineer - это разработчик, а не инженер-программист.
Android engineer - это Android-разработчик, а не Android-инженер.

И так далее

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

Нереальная какая-то ситуация. Вы много встречали людей, которым денег хватает прям на всё? Я - нет. В том числе среди опытных разработчиков. Ситуация, при которой у увлечённого разработчика кончилась фантазия на то, что бы ещё интересное сделать (для себя/сообщества, не для дяди), мне кажется ещё менее реальной.

Либо трусы, либо крестик. Либо не значат, либо актив.

Я утверждаю, что это актив. "Если ничего не значат" = "Если с вашей тз они ничего не значат, то почему..."

Все-таки «Базин, мечтай о чём-нибудь великом».

Делать рутинный компонент для соцсети = великое? Мелковато мыслите.

А я могу чилить весь отпуск почти не выходя из комнаты, но какая разница, если мы говорим о другом взрослом, состоявшемся человеке?

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

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

Это типа из серии "оклад по договору 20000 рублей, но наши лучшие сотрудники поднимают по несколько сотен в виде премий и ты тоже сможешь"? Старый трюк, его очень любят компании, кидающие сотрудников. В выборе оклад vs премии, оклад выигрывает почти по всем статьям - работодатель обязан выплачивать оклад, с оклада рассчитывается пенсия и годовой бонус, оклад обычно служит несгораемой нижней границей зарплаты при смене работы.

А с чего вы решили, что это Илон Маск ему впаял интерна, а не чел сам его себе попросил?

Я не знаю кто из них что предлагал. Трудовой договор подписывают двое. Если кандидат его подписал, значит его устраивают предложенные условия.

Ну вот Вы съездили на море, и на другое. И в диснейленд/квартал красных фонарей. И еще куда. А теперь захотелось чего позатейливей?

Может быть и захотелось, но во-первых я всё-таки начну с этой самой поездки на море, а не с работы на износ, и дальше уже посмотрю по ситуации. Если после этого мне захочется технических челленджей - я тогда или сяду за пет-проект (Если работа у работодателя интереснее пет-проекта, то что-то не то с пет-проектом), или пойду работать к работодателю, с которого можно, в силу сложности и срочности задачи, слупить несколько побольше, чем "минимальную оплату, равную прожиточному минимуму в Сан-Франциско".

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

Я не вижу противоречия, мб не так объяснил. У технической верхушки команды поиска вероятно всевозможные звания типа principal, staff, architect. Если они ничего не значат и если кандидат такой крутой, что мешает ему попросить себе такую же или выше? Он конечно может не придавать этому значение и вести разговор только о достаточной компенсации, но это сродни просьбе "Не платите мне денег I'm paid in joy". Лычка - это такой же актив, как и деньги, акции, бенефиты. Неумение кандидата понять это и извлечь адекватную выгоду из своей работы ставят меня в тупик.

Или ему по приколу подауншифтить квартал.

Это вы сейчас этим словом обозначили авральную работу над фундаментальным компонентом твиттера, СЕО которого прямым текстом сказал что кто не работает 24/7 тот не с нами?

Думаю, что «на еду» на три месяца у него и вообще не работая деньги найдутся.

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

Лычки не имеют никакой ценности, не надо на них молиться.

Спорное утверждение (не считая "молиться"), тк например в крупных компаниях обычно чёткая сетка грейдов с привязкой к диапазону зарплат, а также навыкам и обязанностям. Лычка senior итд может и ничего не означать в плане квалификации, но она хотя бы говорит, что человек авторитетом или стажем её заработал. Intern же - прямое указание на нубствo. Если лычки не имеют ценности, что же этому мегахакеру, который сделает работу лучше профильной команды, не отслюнявили ничего не значащую лычку, равную или превосходящую тех инженеров, чью работу он делает?

Хотц пояснил, что согласен пойти даже на стажировку в Twitter с минимальной оплатой, равной прожиточному минимуму в Сан-Франциско.

В итоге Хотца взяли в Twitter интерном.

Это какое-то безумие. Вариантов два: или этот парень реально по скиллам промышленной разработки - джун/интерн (тогда непонятно в чём вообще история, ну взяли трейни очередного на тонущее судно), или он матёрый и у него с головой не всё в порядке. Пошёл на позицию не senior, не lead, не architect - СТАЖЁР, да ещё и соглашается перерабатывать за еду, при том что при достаточном опыте и известности ему открыты двери в десятки компаний, дающих строчку в резюме не хуже.

@denis-19, а ничего, что твит Маска называется "Just leaving Twitter HQ code review", т.е. всё, о чём он заявляет, - это что он уходит с данного технического совещания. Он вполне мог там сидеть зевать весь вечер.

Но у вас это разумеется превратилось в "Я сам делаю код-ревью с оставшимися разработчиками".

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

Тоже сел решать задачу (на C, за незнанием Java), но у меня почему-то другая формула в решении:

return cartridges - ceil(double(cartridges * perksCost - dollars) / (recycleReward + perksCost));

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

Информация

В рейтинге
6 001-й
Откуда
Ирландия
Зарегистрирован
Активность