Pull to refresh
3
0
feodor @feodor

User

Send message

Автоматическое отключение тачпада во время набора текста

Reading time1 min
Views2.5K
Во время печати на ноутбуке ладони часто задевают тачпад, что приводит к перемещениям курсора и нажатиям в случайных местах экрана.

На некоторых ноутбуках тачпад нельзя выключить быстрым сочетанием клавиш. На некоторых — вообще нельзя (некоторые макбуки, некоторые нетбуки).

Возникает вопрос: разве нельзя автоматически отключать тачпад (игнорировать прикосновения и нажатия) непосредственно во время набора текста?

Сплошной набор текста достаточно просто автоматически отличить от нажатий клавиш-модификаторов.

Почему это не делается по умолчанию, чтобы обеспечить комфорт рядовых пользователей, которые не могут найти нужные настройки и отдельные программы и не знают об их существовании?
Потому что я чего-то недопонимаю и не учитываю (что более вероятно) или в силу других причин?
Total votes 19: ↑12 and ↓7+5
Comments41

Бесплатность некачественного продукта — не индульгенция

Reading time3 min
Views659
В очередной дискуссии об одной бесплатной программе и претензиям к ней проскочило:

Я просто не понимаю возмущения, не нравится БЕСПЛАТНЫЙ сервис/софт — не пользуйтесь. Зачем вопить об этом на всю Ивановскую?.. Найдите аналог, который будет устраивать.


Конечно, все мы знаем, что бесплатный сыр только в мышеловке (согласно данной мудрости все пользователи бесплатного софта закончат свои дни под металлическим прутом со сломанной шеей).

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

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

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

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

Теперь представьте, что бесплатную врачебную помощь вам оказывает не врач, получивший специальное образование, а просто местный сумасшедший, которому не чем заняться. Он вас не лечит, а калечит. На ваши законные претензии вам отвечают: а что вы хотели за бесплатно? идите поищите другую бесплатную мед. помощь, раз не нравится, что вы от нашей умерли.

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

Так вот.

«Это кружка, мы даём её вам бесплатно» — это информация о продукте и определённые обещания относительно него, которые нужно выполнять.

«Это красный крест, мы лечим вас бесплатно» — это информация об услуге и обещания относительно её качества, которые нужно выполнять.

«Это [такой-то] софт» — это информация о продукте, означающая, что софт должен отвечать [таким-то] ожиданиям.

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

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

Бесплатный софт, как только он назвался конкретным типом ПО и начал давать другие обещания пользователю, явные или скрытые, больше не имеет права не выполнять обещания или наносить прямой ущерб пользователю, оправдываясь своей бесплатностью.
Total votes 50: ↑30 and ↓20+10
Comments40

Руки прочь от стандартных элементов интерфейса!

Reading time2 min
Views661
Многие разработчики страдают навязчивым желанием всё улучшать. Вместе с ним в комплекте обычно прилагается недостаточная проницательность, чтобы понять, как, собственно, улучшаемое работало до улучшения.

Мой призыв: руки прочь от стандартных элементов интерфейса системы! Хватит пытаться их заменить своими улучшенными вариантами, хватит пытаться их надстроить. Даже если улучшение окажется успешным, оно всё равно станет причиной неудобства, потому что ваша программа или сайт будут единственным случаем, где новые привычки пользователя (а к хорошему быстро привыкаешь) сработают. А чаще всего улучшение при ближайшем рассмотрении окажется во вред.

В качестве примера хочу привести обожаемый мною элемент управления — полосу прокрутки в Windows. Она прекрасна такая, какая есть. Её можно сделать лучше, но для этого сначала будьте добры разобраться, как она работает сейчас. Я не буду перечислять всех тонкостей поведения (однократное нажатие на пустой фон под полосой, нажатие и удерживание, вызов меню и т.д.), расскажу про одно:

Если нажать на ползунок и удерживать, контент начинает прокручиваться,
НО
Если, продолжая удерживать кнопку мыши, отвести курсор примерно на 50-100 пикселей от ползунка, то он вернётся в то же самое место, в котором был до нажатия, показав прежнее место документа.

Я постоянно использую эту возможность, чтобы в длинном документе заглянуть вперёд или назад, но потом легко вернуться точно на то место, где я был до этого (просто отведя курсор и отпустив кнопку).

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

Пользуясь случаем, хочу передать привет ребятам, делающим ОпенОфис. Спасибо, что, заглянув вперёд или назад, я уже никак не могу вернуться просто отведя мышку и отпустив полосу прокрутки, мне нужно заново искать то место, где я остановился.

Про то, почему нет ката, смотрите в следующей серии.
Total votes 49: ↑41 and ↓8+33
Comments38

Личный вопрос к программистам

Reading time1 min
Views370
Представьте ситуацию:

Вы разрабатываете бесплатную программу с открытым кодом, цель которой — стать альтернативой для платной и уменьшить её долю рынка. (Пока платная абсолютный лидер.)

Ваша программа, конечно, по чисто объективным причинам намного лучше конкурента. Но чтобы все эти достоинства проявились в полной мере, сохранять файлы нужно в своём собственном формате. А стандарт де факто — формат конкурента. Плохой и не совсем открытый. А ваш — хороший и бери-не-хочу-открытый. Понятно, что работать нужно и с лидирующим форматом, и с собственным, и ваша программа это умеет.

Вопрос:

В какой формат ваша программа будет сохранять файлы по умолчанию? (В свой или в формат конкурента.)
Почему? (Обязательно объясните.)

Потом расскажу, к чему это я, и дам свою версию ответа с обоснованием.
Total votes 23: ↑15 and ↓8+7
Comments46

Маленький секрет больших выпадающих списков или мудрость российских научных редакторов

Reading time2 min
Views901
Читаю сейчас книгу Софт — отстой! И что с этим делать? (по просьбам общественности предупреждаю, что ссылка партнёрская).

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

Чтобы попасть на шведскую страницу UPS.com, надо открыть окно выбора страны, щелкнув по нему, затем ввести S, чтобы перейти к нужной букве в списке, потом 26 раз нажать «стрелку вниз», чтобы добраться до Sweden (есть много стран, начинающихся с S), наконец щелкнуть по списку, чтобы закрыть его, и затем щелкнуть по стрелке «вперед», чтобы перейти куда надо. Только после этого вы увидите вебстраницу UPS для Швеции.


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

остальное под хабракатом, по просьбам общественности
Total votes 26: ↑16 and ↓10+6
Comments28

Flash — доигрались

Reading time1 min
Views561
Смешно, право. Так и стоит перед глазами картинка со старым ворчуном, поднявшим костлявый палец вверх и говорящим: «Я предупреждал!» А я ведь предупреждал:

habrahabr.ru/blogs/Flash_Platform/39468/#comment_946815
habrahabr.ru/blogs/Flash_Platform/39468/#comment_946898

Нате теперь, ешьте:
habrahabr.ru/blogs/linux/42548

И то ли ещё будет.

Вспоминается закон Дубровского, гласящий, что 99,9% человеческих усилий уходит на преодоление сложностей и исправление ошибок, созданных другими людьми.

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

На этом фоне мне всё больше нравится JQuery и наступающая по-тихоньку стандартизация веб-инструментария.

Флеш теперь начинает напоминать нечто такое же противное, мерзкое, каким был RealPlayer, если кто помнит. Возможно, флеш начал свой путь на ту же помойку. Dhtml, vrml и прочие ребята уже заждались.

Флеш пошёл под откос, начиная с ActionScript 2.0, становясь инструментом для настоящих программистов. Ну вот теперь настоящие программисты могут решать настоящия программистские задачи: переписать весь код ещё раз, чтобы снова работало в изменившихся условиях. Это вам не слайдшоу делать и не мультики клепать. Это настоящая очень важная и продуктивная работа. Спасибо программистам адоба за предоставленную возможность.

Очень личное, очень лиричное.
Total votes 41: ↑26 and ↓15+11
Comments26

Проектирование и реализация функционала: протоптанные тропинки и проложенные дорожки

Reading time3 min
Views2.3K
Хочу начать с описания одного случая:

Святослав Фёдоров лично руководил строительством своей больницы. И вместо того, чтобы заранее обдумывать расположение дорожек и асфальтировать их, он подождал, пока люди сами протопчут тропинки там, где им удобно ходить. Потом осталось просто проложить дорожки на месте тропинок.

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

Почему так происходит? Потому что некоторые плохие проектировщики просто не в состоянии предсказать потребности людей. И потому что некоторые потребности вообще очень сложно предсказать даже хорошим проектировщикам.

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

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

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

Пример, как действовать согласно описанному подходу:

Оффтоп в блогах и форумах
Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments6

Выборка — это тоже информация

Reading time1 min
Views855
Одно уточнение к правилу о священности введённой пользователем информации и недопустимости её утраты:

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

Понимание этого момента почему-то ещё труднее даётся разработчикам, чем само правило.

Пример:

В обычном проводнике в самой худшей (неудобной, с плохим интерфейсом и т.д.) операционной системе есть функция отмены (Ctrl+Z). Она работает, если вы случайно удалили файл и захотели вернуть или переименовали папку и передумали. Она отменяет действие.

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

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

Не знаю, как там с этим в лучших системах и прочем софте. Подозреваю, что так же фигово.
Total votes 34: ↑25 and ↓9+16
Comments6

Введённая пользователем информация священна

Reading time1 min
Views426
Ещё раз о том же самом. Есть одно простое правило:

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

Неужели это правило так трудно понять, запомнить и применять? (Риторический вопрос к разработчикам программ)

Почему в самом супер-пупер браузере Опера я теряю весь введённый в форму текст из-за случайного закрытия вкладки или зависания программы?! (Рит. вопр.)

Неужели в 21 веке на полтеррабайтном диске нет места под мой килобайтный дай бог текстик? Почему у разаботчиков есть время и желание заниматься какими-то второстепенными фенечками, не обеспечив как следует базовую функциональность? (рв)

Update
Оперу привёл исключительно как пример. Обеспечивать сохранность введённой пользователем информации должен любой бреузер и любой софт. По умолчанию и без дополнительных усилий со стороны пользователя.
Total votes 36: ↑22 and ↓14+8
Comments17

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity