Семь смертных грехов программных систем, которых в 2011-м году стыдно не замечать

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

    Итак, грехи:
    1. Медлительность
    2. Блокирующее взаимодействие
    3. Неуместные ограничения
    4. Ненастроенность
    5. Несамостоятельность
    6. Забывчивость
    7. Гордыня

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

    1. Медлительность

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

    2. Блокирующее взаимодействие

    • Вы нажимаете в svn кнопку «коммит», и пока он не уйдет целиком и полностью, вас никто никуда не отпустит.
    • Вы применяете к изображению сложный фильтр и должны дождаться, пока он полностью обсчитается, прежде чем сможете на что-нибудь нажать.
    В общем случае пока программа что-то делает (даже по пустякам), она заставляет вас ждать «на всякий случай», мало ли что вы там испортите. Апофеозом этого греха являются модальные окна — программа ничего не делает, но никуда уйти не дает. Рецепт простой — работать в фоне, вот применять сложнее.

    Положительный пример: Final Cut Pro X, к десятой версии обзаведшийся фоновым рендерингом материалов. Видели бы вы овацию на презентации этой фичи.

    3. Неуместные ограничения

    • Описание не может быть длиннее 1000 символов.
    • Название категории не может содержать пробелов.
    • Вы должны вступить в блог, чтобы прочитать запись из него.
    В общем случае один человек ткнул пальцем в небо и родил ограничения. Еще и называет это «подумал о вариантах использования». Лучшие ограничения — это те, которых нет. Мы же не байтики на дискетах экономим в 21-м веке. Пора уже привыкнуть, что вместо «vasya_poopkin» я могу логиниться по гораздо более красивому «Василий Пупкин». Если ты можешь сделать, скажем, описание продукту любой длины (а он может) — делай, не надо гадать, что скорее всего никому больше 1000 не понадобится. Никогда не угадаешь.

    4. Ненастроенность

    • Первым делом в текстовом редакторе вы меняете шрифт и включаете автосохранение.
    • Первым делом в браузере вы убираете ненужные панели и включаете сохранение паролей.
    В общем случае программа в изначальной конфигурации неудобна/неприятна/непригодна для использования. Люди привыкли, что в первую очередь нужно залезть в настройки. Но это не значит, что это хорошо. В магазинах не продают лопат, которые сперва нужно перековать. Вы не меняете ручку у молотка сразу после покупки. Программа — такой же инструмент, и обязанность продавца (читай разработчика) сделать так, чтобы ей можно было сразу пользоваться. Кстати, если об этом подумать, то 50..90% настроек можно будет выкинуть за ненадобностью.

    Положительный пример: iA Writer, текстовый редактор без панели настроек.

    5. Несамостоятельность

    • Не могу создать проект, папка уже существует (пустая).
    • Вашему репозиторию нужна компактификация. Запустите её!
    • Не могу запустить поиск, содержимое файловой системы изменилось, нажмите «обновить».
    • Среди ваших ста тысяч пятисот файлов обнаружился один защищенный, я пока остановлюсь, что мне делать???
    В общем случае программа не делает чего-то простого и ждет от пользователя очевидной команды. Хуже, если задача частая, или если это происходит во время длительного процесса, когда человека нет рядом. Пользователь, конечно, ко всему привыкнет, но немного интеллекта и решительности программам бы не помешали. Обычно у программ полно свободного времени между взаимодействиями с пользователем, и хорошо бы в это время делать что-то полезное (индексировать/обновлять/проверять/подкачивать), что ускорит последующее взаимодействие.

    Положительный пример: браузер Сафари сам распаковывает архивы и монтирует образы сразу после загрузки. Гугл Хром сам скачивает и устанавливает обновления без единого окошка.

    6. Забывчивость

    • Вы не указали адрес, пожалуйста, заполните эту форму заново.
    • Сохранить документ? — Нет. — Ок, удалил. — Хотя подожди...
    • Вы говорите файндеру показывать файлы списком, а он в следующий раз опять показывает их превьюшками.
    • Вы выбираете один слой, но через какое-то время объекты опять создаются на другом.
    • Вы настраиваете размер окна, а при следующем запуске программа его забывает.
    В общем случае я не должен предпринимать никаких дополнительных действий, чтобы то, что я ввожу (в любом виде — информацию, настройки, конфигурацию окон, яркость экрана), сохранилось. Господам программистам надо поднять жопу со стула и пойти и сделать, чтобы так и было. Это поведение по умолчанию, блин!

    Положительный пример: ИнДизайн ЦС5 даже после падения поднимается ровно в том месте, где вы закончили, независимо от того, сохранялись вы или нет.

    7. Гордыня

    • Обновление прошло успешно! (Аваст, голосом!)
    • Я еще не запустилась, но вот тебе мой сплешскрин поперек всего и крадущий фокус.
    • Здравствуй, дорогой друг! Я знаю, ты запустил меня, чтобы что-то сделать, но у меня тут обновление, пойди лучше скачай его.
    • А я маленькая программка управления фотоаппаратом, и я боюсь что ты меня никогда не увидишь, поэтому вот тебе мой тулбар в браузер, иконка в трей, автозапуск со сплешскрином, стартовая страница и поиск по умолчанию.
    • Вы не чистили свой рабочий стол 60 дней...
    В общем случае программа считает себя центром вселенной и о любом событии беспокоит пользователя, чтобы он ей почесал за ушком, скачал обновление, даже информирует его о том, что все идет хорошо (!). Программы мигают в панели задач, прыгают в доке, суют свои иконки (я смотрю на тебя, adobe reader), чего-то постоянно от тебя требуют (нагло, не правда ли?). В результате, если ты не загружался в систему полгода, то тебе преградит путь десяток каких-то тупых окон, а тебе всего-то нужно было файл забрать, например. Все-таки, компьютер для человека или человек для компьютера? Иногда мне кажется, что мой ответ отличается от мнения большинства разработчиков.

    Бонус.

    Семь примеров феерической тупости из коллекции автора.
    1. Медлительность. Вы просите Виндоус зайти на самбу и ждете сначала полчаса чтобы она спросила у вас пароль, потом еще полчаса она будет «пытаться присоединиться» к соседнему компьютеру. Ощущения как будто пограничник забрал у вас паспорт и тайно пошел на обед.
    2. Блокирующее взаимодействие. Модальные целиком для браузера alert/http basic auth form — такие, что нельзя переключиться в другую вкладку, чтобы скопировать пароль.
    3. Неуместные ограничения. Что делать, если данное мне при рождении имя не удовлетворит критериям этого безымянного аналитика?
    4. Ненастроенность. Все сайты погоды, которые даже не пытаются определить по айпи город.
    5. Несамостоятельность. Введите номер телефона без пробелов и специальных символов.
    6. Забывчивость. Сохранить документ, который вы писали 7 часов? Да-нет? Упс.
    7. Гордыня. Виндоус Виста: установлено обновление, вы здесь? Ок, 10 минут никого нет, прибиваю всё и перезагружаюсь. — Эй, чувак, а что, электричество отключали?


    Если кому-то показались хоть немного интересными высказанные здесь мысли, то рекомендую продолжить чтение здесь:
    • Дональд Норман. Дизайн промышленных товаров / The Design of Everyday Things. Про то, что вообще за проблемы с вещами, кто в ней виноват и кто должен ее решать.
    • Джеф Раскин. Интерфейс (выложен полный текст). Про то, как уже вполне могли бы работать компьютеры, если бы в Майкрософте тоже слушали умных людей. Знакомым с этой книгой забавно смотреть, как идеи и принципы из нее потихоньку протаскиваются в современный мир Эпплом, а затем и всеми остальными.
    • Алан Купер. Об интерфейсе / About Face 3. Очень большой и очень обстоятельный труд, по косточкам разбирающий современные интерфейсы и предлагающий адекватные решения многих проблем. Например, половина релиза OS X Lion как минимум была здесь предсказана :)
    Поделиться публикацией
    Реклама помогает поддерживать и развивать наши сервисы

    Подробнее
    Реклама
    Комментарии 460
    • +15
      «Несамостоятельность. Введите номер телефона без пробелов и специальных символов.» А бывает этого не пишут и гадай потом надо плюс? А код страны ?!
      • НЛО прилетело и опубликовало эту надпись здесь
        • +7
          Нужно в таком случае сразу пример приводить. Тут уже писали, что можно воспользоваться geoip, вот и пример номера можно привести из страны или даже города, где находится пользователь. Нигде не встречал такого, кстати.
          • 0
            У вас программофобия. Пишите как хотите, программа должна разбираться.
            • +14
              «Восемь гудок девятьсот двадцать затем пять нулей» — и пусть программа разбирается :))

              • 0
                Ну буквы можно и вырезать, оставив только цифры — зачем вводить в заблуждение пользователя, что так можно вводить.

                +Пример ввода обязателен, там где должен соблюдаться хоть какой-то формат ввода.
                • 0
                  Да вы сам «Господин Очевидность». Комментарий был отправлен с юмором. И если вы внимательно прочитаете статью, то поймёте, что описываются случаи когда этого примера как раз и нет.
            • +1
              Я из-за это ноутбук у леново на 10 минут больше заказывал — пришлось связаться со службой поддержки и спросить формат номера
              • 0
                Я Ipad купил там, где осилил форму заказа за 2 минуты.
              • НЛО прилетело и опубликовало эту надпись здесь
                • 0
                  Я в таком случае нажимаю кнопочку Back в Opera и получаю предыдую итерацию со всеми заполненными 500 полями. Конечно же, если разработчик не решил выпендриться и не сделал форму на какой-нибудь технологии, плюющей на поддержку стандартных действий браузера.
              • +9
                Все это может быть как оправдано и к месту, так и неоправдано и назойливо.
                • +4
                  Так и представил себе оправдано и к месту медленную программу, постоянно мигающую в трее и сообщающую, что все хорошо. А что, все антивирусы как раз такие :)
                  • НЛО прилетело и опубликовало эту надпись здесь
                    • +4
                      Вы о личных проблемах разработчиков.
                      • НЛО прилетело и опубликовало эту надпись здесь
                      • +3
                        Я давно выбрал: скорость разработки + качество (скорость работы, отсутствие багов, общая отполированность).
                      • +3
                        Firefox, установка дополнения. Принудительных 3 секунды перед активацией кнопки подтверждения.
                  • +7
                    Некоторые довольно спорные:
                    • Описание не может быть длиннее 1000 символов.
                      Идет вразрез с пунктом №1. Медлительность.
                    • Название категории не может содержать пробелов.
                      С пробелами да, а как поступить с символом "/", если на сайте используется ЧПУ типа /category/product?
                    • Первым делом в текстовом редакторе вы меняете шрифт...
                      На вкус и цвет — фломастеры разные.
                    • Первым делом в браузере вы убираете ненужные панели и включаете сохранение паролей.
                      Я же первым делом его отключаю. Chrome, например, в отличие от Firefox, к сожалению не имеет мастер-пароля. В результате любой троян спокойно узнает пароли от Ваших сайтов.

                    А в остальном полностью согласен.
                    • +1
                      1. Использовать для поиска hash tree?
                      2. Заменять на что-нибудь.
                      • +9
                        Идет вразрез с пунктом №1. Медлительность.

                        Я понимаю когда технические ограничения (например длина 65535 байт), но когда кто-то решил, что должно быть 1000, (а почему не 1010 или 10000?) и при этом используется тип данных, которому всё равно хранить 1 байт или 65535, меня это всегда бесит.
                        С пробелами да, а как поступить с символом "/", если на сайте используется ЧПУ типа /category/product?

                        если не устраивает /true%2Fcategory/product, то /true-category/product
                        • +3
                          А давайте уберем ограничения на длину твитов!
                          • 0
                            Давайте!
                            • +2
                              Вы опасный человек, однако)
                              • 0
                                Действительно не понимаю этого ограничения, ладно в СМС появившихся 20+ лет назад, когда каждый байт в мобильных устройствах был на счету…
                                • +6
                                  Я думаю ограничение на длину твита весьма оправдано по следующим причинам:

                                  1) Совместимость. Большая часть пользователей твиттера используют его посредством СМС. В США (Канаде, Индии, Новой Зеландии) пост через СМС рассылается всем фоловверам. Подавляющее большинство постов в Твиттер делается с мобильных устройств или через SMS (эту статистику не видел, но, думаю, так и есть).

                                  2) Психология, концепция и читабельность. Ограничение на длину заставляет пользователя кратко излагать мысль.

                                  Цитирую snusmumrik:
                                  пост с жестким ограничением по длине должен быть метче, искрометней и лаконичней. Вроде бы обычно сходятся на этом варианте. При этом логично предположить, что 140 символов — некое магическое число, специально подобранное и сбалансированное создателями твиттера для оптимизации лаконичности и законченности мысли, влезающей в данное ограничение.

                                  С вики:
                                  Первоначально, проект задумывался как возможность ответить на единственный вопрос: „Что ты сейчас делаешь?“. Дорси хотел создать некую платформу, которая позволила бы ему постоянно обмениваться с друзьями короткими сообщениями

                                  3) Объём и производительность. Большие твиты заметно замедлили бы парсинг этих самих твитов и вычленение из них хеш-тегов и юзернеймов. Отсутствие ограничения размера на твит, теоретически, приведёт к всеобщему коллапсу БД (с текущей популярностью твиттера — over 200 млн. юзеров с ежемесячным ростом в 1382% и рекордами over 3000 твитос/сек — вполне). С вики: когда американский певец Майкл Джексон умер 25 июня 2009 года, сервера Твиттера упали, после того как пользователи обновляли свой статус со словами „Майкл Джексон“ в размере 100 000 твитов в час.
                                  • +12
                                    140 символов — это не ограничение, это фишка.
                                    • –3
                                      Не баг, но фича? :)
                                    • –3
                                      Сервис juick.com говорит об обратном — без ограничений намного удобней, но посты пользователей в основном короткие и лаконичные. Твиттер популярен не благодаря этому ограничению, а скорее, вопреки.
                                      • +14
                                        и где тот жуйк, а где твиттер? :-)
                                    • +3
                                      ограничение в 140 символов порождает комфортность прочтения, — одного взгляда достаточно, чтобы понять стоит ли читать сообщение или нет.

                                      Так что противоречие с пунктом «3. Неуместные ограничения» лишь кажется таковым. Успех Twitter показал, что ограничение 140 символов более чем уместно.
                                      • 0
                                        to Weageoo опередили =)
                                        • 0
                                          Я тут подумал, что аффтар может нас просто тролить) Хотя неиллюзорные плюсы его коментов об ограничении свидетельствуют об… впрочем, всё вряд ли так сложно.
                                          • 0
                                            Ниче он не тролит, Твиттер расчитан на конкреный юзкейс. Зайдите щас на Г+, там нема ограничения на длину сообщения и чтобы прочесть сообщения от 40 юзеров, надо потратить ощутимое время, помойка получается. Сравните с 300 юзерами в твиттере, где чутли не все можно окинуть одним взглядом. А вот если твит заинтерисовал, то тогда уже клацам на линку и топаем смотреть/читать больше.
                                  • +1
                                    А когда вам в твиттер упадет «Война и Мир» или Библия от какого-то шутника — материться будете?
                                  • 0
                                    А для чего оно?
                                    • +2
                                      Длина твита — это не ограничение, а идеология. Если бы этого ограничения не было, твиттер бы был очередным блогом, каких сотни.

                                      140 символов как бы говорит людям: «эй, чуваки, у нас микроблог, сжимай свои мысли, выражайся кратко, как будто пишешь смс». И все жмут, и получается в большинстве случаев огромная плотность содержания, вместо размазанных трактатов. Очевидно же. Убрать ограничение? Ну и получим второй обрезанный LJ. Зачем мне второй LJ, когда один уже есть.
                                      • +1
                                        а у них вроде бы сейчас акция — стань президентом США и пиши сколько влезет.
                                      • –1
                                        С кодированием слешов не все так просто — Apache, например, по умолчанию сам раскодирует URL и вместо "/true%2Fcategory/product" Вы получите "/true/category/product". Настройка эта через .htaccess не меняется, а на shared-хостинге никто специально для Вас ее править не будет.

                                        Если же заменять слеши на минус, то какой тогда будет URL категории «minus-category»?

                                        Я эту проблему заменой и решал, только не на минус, а на двойное подчеркивание, запретив его использовать в названии категории. Но все равно это грязный хак.
                                        • 0
                                          Такой и будет, преобразование «категория -> её представление в url» не обязано быть обратимо, главное чтобы по полному url можно было получить id категории. С коллизиями minus/category и minus-category можно бороться по разному, добавлять цифры, например, и прося у пользователя ввести что-то другое ручками.
                                          • 0
                                            >прося у пользователя ввести что-то другое ручками
                                            На мой взгляд, вообще использование slug порочно, а тем более заставлять его вводить пользователя.
                                            • +1
                                              Почему порочно? По-моему, как раз slug даёт возможность пользователю выражать своё желание средствами естественного языка, не заморачиваясь с техническими (в лучшем случае) ограничениями. Страница (вернее её заголовок) и её адрес — это разные сущности, приятно, когда адрес читаемый, но он вовсе не должен совпадать с заголовком, меня наоборот бесят адреса вроде example.com/blogs/development/sem-smertnykh-grekhov-programmnykh-sistem-kotorye-v-21-m-veke-stydno-ne-zamechat — example.com/blogs/development/sem-grekhov было бы лучше, даже чем example.com/blogs/development/124787 :)
                                          • +2
                                            Знаете, даже как-то несерьезно обсуждать вопрос качества продуктов с человеком, для которого проблема в том, что на шаред-хостинге ему дяди какую-то опцию запретили.
                                        • +5
                                          Описание не может быть длиннее 1000 символов.
                                          Идет вразрез с пунктом №1. Медлительность.

                                          ЧЁ это? Как связаны?

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

                                          Название категории не может содержать пробелов.
                                          С пробелами да, а как поступить с символом "/", если на сайте используется ЧПУ типа /category/product?

                                          Название ни как не связано с ЧПУ. В названии должно быть написано, все то, что задумал автор. ЧПУ должно строиться автоматически экранируя или удаляя неприличные символы.

                                          • +2
                                            Интересно, как это ограничения несут рекомендательный характер? :)

                                            > Здесь нужно подходить к каждому моменту очень вдумчиво.
                                            Этого никто не отрицает.

                                            > защита от дурака, которые как известно очень изобретательные.
                                            Защита от дурака, конечно, должна присутствовать, но а) не в ущерб другим, и б) часто бывает, что дураками априори считают всех пользователей — с предсказуемым итогом, получается продукт для дураков, которым пользуются только дураки.
                                        • +16
                                          1. Расставание навсегда с эклипсом и фотошопом?
                                          2. Чаще всего модальные окна предупреждают о чем-то важном и требующем вмешательства. Они не зря модальные.
                                          3. Не все ограничения — зло. Например имя пользователя может быть «tonsky» или «tоnsky», почувствуйте разницу.
                                          4. В целом — да, но не в случае сохранения паролей.
                                          5. Хороший способ прострелить себе ногу.
                                          6,7. Это да.
                                          • 0
                                            >>«tonsky» или «tоnsky», почувствуйте разницу.
                                            В чем разница?
                                            • +7
                                              «о» из разных раскладок
                                              • 0
                                                Ага, и это охренеть какая проблема для админов сайта порой.
                                                Вот не может пользователь войти. Ты начинаешь проверять в чем проблема, набираешь его пароль ручками, а он не подходит. И вроде выглядит один в один. Или еще хлеще — логин. И ведь только догадаться можно о причине. А в логине типа «Hokonopy» можно бесконечно долго подбирать комбинации русских и английских букв"
                                                • +1
                                                  Это решается просто — в логине — только латиница (причем, регистронезависимая), а в остальных полях — по вкусу.
                                                  Более продвинутый подход — для логина использовать e-mail или openID. И ввести поле «видимое имя пользователя», которое используется только для визуальной идентификации постов пользователя (для форума например).
                                                  • 0
                                                    А потом автор поста будет писать: «гады, наложили ограничение».
                                                    Это я как раз и писал к тому, что ограничения не всегда просто так накладываются. (Например, 1000 символов для названия темы поста — разумное ограничение, для того, чтобы не устраивать многострочные заголовки)
                                                    • +1
                                                      Да вы мне не рассказывайте, я каких только аргументов не слышал (я занимаюсь проектированием интрефейсов профессионально). Обычно пользователь в них не фигурирует, или фигурирует как в анекдоте «давайте поговорим о вас, как я вам понравилась в своем последнем фильме?»
                                                    • 0
                                                      Единственный правильный выход — использовать email, как вы и писали. Чем меньше вводить тем лучше, а емайл, как правило, всё-равно нужен.
                                              • +20
                                                Чаще всего модальные окна предупреждают о чем-то важном и требующем вмешательства. Они не зря модальные.

                                                Зачастую они зря модальные.
                                                • 0
                                                  Никогда не понимал модальности окон, если это не сообщение о крахе программы.
                                                • –2
                                                  С Эклипсом расстался, с Фотошопом, я уверен, все бы расстались при первой адекватной альтернативе. Вот уж за что его никто не ценит, так это за удобство использования.

                                                  • +3
                                                    Да уж ладно. Поставил из-за трендовости Pixelmator, плююсь. В Фотошопе отличное юзабилити.
                                                    • 0
                                                      Расскажите это людям, которые могут сравнить его хотя бы с ИнДизайном.
                                                      • +1
                                                        Я могу. Фотошоп хоть специфический, но удобный. Документацию и туториалы нужно читать хоть раз, тогда вопросов не возникает. Хотя лично мне для работы гораздо луче Corel Photopaint, но это уже мое, задротское.
                                                        • 0
                                                          Фотошоп имеет субъективно воспринимаемые недостатки (ну, то есть, каждый про себя думает — «я бы немного поменял бы вот это»), но в целом очень даже юзабелен. Даже очень-очень. Уверен, все могло бы быть _намного_ лучше, но действительно, сравнить не с чем, а с ходу нереально представить, каким именно должен быть инструмент такого уровня.
                                                      • 0
                                                        На что эклипс заменили?
                                                        • 0
                                                          Textmate. Почитайте, если хотите, подробнее.
                                                          • 0
                                                            Он поддерживает PHP и работу сразу с удаленного сервера (подключаясь по фтп или ssh), так чтобы он не грузил сразу все на локальный компьютер?
                                                            • 0
                                                              Вряд ли, это просто текстовый редактор с подключаемыми синтаксисами.
                                                              • +1
                                                                Я думаю, вам что-то из Coda, Espresso или BBEdit смотреть надо.
                                                                • 0
                                                                  Монтировать удаленный каталог не вариант? Это же Юникс-вэй!
                                                                  • 0
                                                                    Честно говоря, я даже не знаю, существуют ли отличного от этого варианты…
                                                                    • 0
                                                                      В винде точно существуют :) Также в некоторых кроссплатформенных IDE уже есть, а в других постоянно пользователи просят добавить.
                                                                      • 0
                                                                        Так для винды же давно уже сделали аналог sshfs
                                                                        • 0
                                                                          Года 3-4 назад бесплатные варианты были не юзабельны. Сейчас не знаю.
                                                                    • 0
                                                                      Ну эклипс может быть установлен на винде.
                                                                      Да и не всегда возможно примонтировать удаленный каталог (в случае веб разработки вам даже не всегда ssh доступ могут дать, только фтп, что тут уже говорить о монтировании?)
                                                                      • 0
                                                                        curlftpfs не поможет? :)
                                                                        • 0
                                                                          Он позволяет работать по sftp? (через ssh). Всегда, когда возможно, я использую его, так как ftp очень медленный по сравнению с ним (при работе с кучей мелких файлов) на одном и том же канале.
                                                                          • 0
                                                                            Для этого sshfs есть.
                                                            • 0
                                                              > 5. Хороший способ прострелить себе ногу.

                                                              Поясните?
                                                              • +3
                                                                Ну наверное дело в том, что в этой ситуации
                                                                Среди ваших ста тысяч пятисот файлов обнаружился один защищенный, я пока остановлюсь, что мне делать???

                                                                система действительно не знает что делать.

                                                                Разблокировать файл? А может он не зря заблокирован.
                                                                Продолжить работу с другими 100500 файлами? А может операция не имеет смысла без этого единственного заблокированного файла

                                                                Конечно неплохо было бы вывести диалог с возможными вариантами решения, ну и чекбоксом «для всех». Но Вы ведь говорили про автоматическое решение.

                                                                А когда я захожу в интернет с 3G-модема, то мне не очень нравится что Хром или еще кто-то обновляются и тратят мои деньги, хотя я бы и потерпел предыдущую версию до подключения к Wi-Fi
                                                                • +8
                                                                  При копировании/удалении нужно обработать то, что понятно, и потом уже спрашивать про остатки. Иначе удаление большой папки — прям нянчество какое-то, на минуту отойти нельзя.
                                                                  • +1
                                                                    Про копирование/удаление я согласен.
                                                                    Я говорил про то что не во всех ситуациях все очевидно.
                                                                    Вот к примеру тот же коммит, или создание архива.
                                                                  • +1
                                                                    Ну если пользователь уже согласился удалить все 100500 файлов, то пусть система по-умолчанию удаляет все, что можно.

                                                                    «А может операция не имеет смысла без этого единственного заблокированного файла»
                                                                    Да ладно! Не могу себе представить. Если хочу удалить все файлы — то хочу удалить все. Что значит операция не имеет смысла?

                                                                    Комп должен сделать все, а потом сказать, что операция выполнена успешно, но есть вещи, требующие вмешательства пользователя, после чего показать список файлов, по которым операция заэпикфейлилась, и предложить варианты решения (обычно это будет какое-то дополнительное подтверждение типа «разблокировать и удалить заблокированные файлы»).
                                                                    • 0
                                                                      Необязательно потом, делать он это может и в процессе, правда универсальный вариант в голову не приходит — отдельное окошко для каждого файла — «спам» может получиться, одно окно со списком — можно случайно что-то удалить.
                                                                    • 0
                                                                      тут более кричащий пример это в виндах — при копировании найден файл с таким же именем, заменить? И выбор: да, нет, «применить для всех». А вот «не применять для всех» нету. Это жутко раздражает.
                                                                      • +2
                                                                        Забудьте уже проводник, вы же профи…
                                                                        imageshack.us/photo/my-images/703/clipboard01lda.png/
                                                                        • 0
                                                                          Для профессиональных целей я cygwin и rsync пользуюсь, если приходится с виндами дело иметь.
                                                                          Но дело то не во мне.
                                                                          Будем считать что вы предлагаете всем устанавливать тотал командер, но это все костыли к странно устроенной ос. Об этом и речь.
                                                                          • 0
                                                                            Только не говорите, что штатный файловый менеджер в Линуксе удобнее.
                                                                            • +1
                                                                              И это не костыли, это софт для работы.
                                                                              Вы же не назовете костылями Photoshop, хотя есть же Paint.
                                                                            • 0
                                                                              Что мешает МС этот диалог прикрутить? Меня вполне устраивает проводник, но такого диалога не хватает.
                                                                              • 0
                                                                                МС уже засудили за IE и WMP, не думаю, что они захотят усиленно продвигать проводник, нагружая его дополнительными функциями.
                                                                                • 0
                                                                                  Э… мммм…
                                                                                  Для меня проводник — средство, чтобы вытащить ярлык командера, как и IE — средство для скачки другого браузера. Я лет пять, как не пользуюсь проводником плотнее, чем выбор папки для сохранения, но…
                                                                                  imageshack.us/photo/my-images/109/clipboard01hf.png/
                                                                                  Это проводник…
                                                                                  • 0
                                                                                    По ссылке — мы же понимаем, что это не тот функционал, который был приведен в примере выше…
                                                                                    • 0
                                                                                      Разумеется. Но и не надо ожидать от встроенных в ОС инструментов функционала профессионального набора. Это стартовый комплект, наращивать возможности он позволяет, а больше — придут злые дядьки из европейских судов и скажут, что производитель ограничивает конкуренцию и т.д.
                                                                                      • 0
                                                                                        Собственно почему я не могу ожидать от встроенного инструмента максимальной удобности именно для себя?
                                                                                        • 0
                                                                                          Потому, что вы пользуетесь инструментом не один. Не устраивает функционал встроенного — есть куча сторонних. От xplorer² до монструозных сборок TC.
                                                                                        • 0
                                                                                          Злые дяденьки — это разговоры в пользу бедных, коими MS не являются
                                                                                          • 0
                                                                                            С одной стороны люди жалуются, что им не хватает самую малость функционала встроенного софта, а с другой — поставщики стороннего ПО жалуются на МС потому, что она встраивает в операционку софт, не оставляющий необходимости в стороннем. Где выход?
                                                                                • 0
                                                                                  Зажимаем Shift и жмем нет. «Нет для всех»
                                                                                  Юзабилити тут на высоком уровне, да...
                                                                                  • 0
                                                                                    В XP, видимо, именно так. Как в семерке я показал чуть выше.
                                                                                    Пора, наверное, уже отказываться от устаревших версий…
                                                                                • 0
                                                                                  А когда я захожу в интернет с 3G-модема, то мне не очень нравится что Хром или еще кто-то обновляются и тратят мои деньги, хотя я бы и потерпел предыдущую версию до подключения к Wi-Fi


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

                                                                                  это конечно костыль, но может помочь сберечь трафик.
                                                                              • 0
                                                                                3. Если вам уже с кирилицей сложно, то как же бедные японцы живут? А сайты, которые кроме латиницы, кирилицы, канджи еще и арабский итд поддерживают?
                                                                              • +11
                                                                                мой интернет-провайдер (фринет) после неоплаты отключает весь трафик кроме своего сайта, из админки можно оплатить с помощью банковской-карточки, но гетвей через который оплата уже считается внешним сайтом и оплата невозможна

                                                                                другой мобильный интернет-провайдер (интертелеком (CDMA)), просто без объяснений сбрасывает соединение модема

                                                                                так что, да, глупостей хватает
                                                                                • 0
                                                                                  та же фигня и у других поставщиков инета. хотя, они могут оправдаться, что не хотят баловать пользователей, поскольку те начинают всё чаще забывать оплатить доступ в интернет. а так — пользователи в тонусе, помнят о будущих проблемах и оплачивают услуги заранее :-)
                                                                                  • 0
                                                                                    У моего провайдера можно в «админке» взять кредит, а потом оплатить через гейты :)
                                                                                    • 0
                                                                                      а у меня при отключении все гетвеи открыты, от вебманей, Я.д, банковских карт и тд, и внутрисеть полностью открыта
                                                                                      • +2
                                                                                        Похожая ситуация была со мной недавно…

                                                                                        Внезапно отключили интернет по неуплате (как обычно, забылось вовремя оплатить), «ну не беда», подумал я и зашел в админку (она доступна всегда на их сайте, даже при неоплаченном интернете). Варианты: взять «кредит» на два дня (после опять отключат) или же оплатить кредиткой. Ну, кредитка есть, почему бы не оплатить?
                                                                                        Далее по шагам:
                                                                                        1. Пытаюсь оплатить, указываю сумму, попадаю на сайт банка с подтверждением
                                                                                        2. «Уф, слава богу сайт банка они догадались разблокировать», жму подтвердить
                                                                                        3. «Оппа, а вот второй сайт банка они таки не открыли!», #$@#$%, отменяю дело
                                                                                        4. Звоню другу с инетом, прошу заплатить за меня и тут выясняется такое чудо… В админку никто кроме владельца канала зайти не может! Да, она проверяет заходящего по IP. Удобно, да, не надо вводить логин-пароль, только… #$@#$%!
                                                                                        5. Ок, раз так, заплачу с банкомата, а пока возьму кредит, иду опять в админку…
                                                                                        6. «Спасибо, кредит принят, интернет оплачен» — «Ну слава богу...»
                                                                                        7. "#$@#$%! Них он не оплачен!" — оказывается после кредита оплата доходит где-то через день-два (напомню — время работы кредита — 2 дня)

                                                                                        В итоге после грозного звонка в их суппорт — кредит активировали сразу.
                                                                                        Вот такой волшебный провайдер наш Avangard.
                                                                                      • +6
                                                                                        2. Есть процессы, которые невозможно распараллелить, и их нужно выполнять строго последовательно. Вы же не кидаете пельмени в пустую кастрюлю, потом сливаете все в дуршлаг, а потом только зажигаете огонь и кипятите воду?

                                                                                        Тогда еще пример с фотошопом. Представим, что программа дает возможность рисовать на слое во время применения фильтров. Вы запустили размывку по Гаусу, и в это время карандашом линии наносите. Скорее всего вы получите весьма забавный результат: часть ваших линий может остаться четкими, а часть размоется. Это не тот результат, который вы ожидали, и вам придется переделать работу. Чтобы снова не напортачить, вы будете ждать, пока программа не завершит свое действие. Есть еще один вариант. Программа может не давать вам рисовать на слое, на котором идет трансформация. Ах да, с этим же и боролись…
                                                                                        • 0
                                                                                          Пока кипит вода, я же могу почитать книгу или включить чайник. Так что я бы вполне понял, если она бы блокировала один только слой — у меня наверное есть куча дел на других.
                                                                                          • 0
                                                                                            Немного другой вопрос — у Вас часто операция применения подобных фильтров занимала более секунды-двух? Понятное дело, что есть и другие варианты и вообще, но я говорю о конкретном примере…
                                                                                            • 0
                                                                                              Я вообще не сильно photoshop guy, но есть там медленные фильтры.
                                                                                              • 0
                                                                                                «Там есть медленные фильтры» и «Я постоянно использую медленные фильтры» немного разные вещи, правда? :)

                                                                                                Давайте всё же придерживаться рамок и говорить о частоиспользуемых вещах. Какой смысл говорить «А там вот есть кнопочка, которая вешает приложение на 5 минут — не знаю, что она делает, но омг — 5 минут!», если вы не используете ту самую «кнопочку» или же используете раз в год…
                                                                                                • 0
                                                                                                  Я с этим не спорю.
                                                                                                  • 0
                                                                                                    Кстати, если опять возвращаться к фильтрам — сложилось так, что сижу я рядом с нашим дизайнером, который использует в основном PS/AI — честно говоря не видел никогда чтобы она чего-либо ждала (будь то отработка фильтров, настройка чего-либо или сохранение). Пару раз только видел как Mac OS повисал на открытии Finder'а :)
                                                                                          • +2
                                                                                            Да, вы можете делать с любими программами аналогичные действия. Пока что-то рендерится, вы можете почитать интернет или запустить еще одну копию этой же программы, чтобы там что-то делать еще. Суть претензии в чем? Нельзя параллелить процесс? Так я вам привел пример непараллелящихся процессов, которые, даже если захочется сделать параллелизируемыми, все равно пользователь будет исполнять последовательно.
                                                                                            • 0
                                                                                              Пока выполняется один процесс, блокируется взаимодействие с программой вообще. Не с конкретным одним объектом в документе, а со всем документом, или даже со всей программой. В этом суть претензии.
                                                                                              • +2
                                                                                                Ваше возражение истинно только для программ, в которых пользователи могут выполнять несколько параллельных действий одновременно. Во всех остальных случаях претензия мимо кассы.
                                                                                                • 0
                                                                                                  Ну что же это за программа, где пользователь может работать только последовательно? (кроме установки ОС, понятно).
                                                                                                  • 0
                                                                                                    Да тот же Фотошоп. Чтобы рисовать в пределах маски, нужно сначала выделить эту самую маску. Чтобы выделить маску, нужно выбрать нужный инструмент. Вы не сможете делать несколько действий одновременно, даже если сильно хочется.
                                                                                                    • 0
                                                                                                      Ладно, что-то мы с вами друг друга не понимаем. В ваших программах все действия выполняются мгновенно, в моих нет. Вы довольны жизнью, я нет. Я не знаю, как еще объяснить.
                                                                                              • 0
                                                                                                Если хотите примеров: пока уходит коммит, я хочу смотреть историю. Пока я пишу комментарий к коммиту, пускай жмется репозиторий и синхронизируется состояние. Пока открыта страница, пусть браузер сходит к ДНС и порезолвит исходящие линки с нее. Пока браузер спрашивает, куда сохранять файл или запомнить ли пароль — пусть уже грузит файл или входит на сайт.
                                                                                                • +1
                                                                                                  Используйте консоль со скринами. Множество последовательных действий легко параллелить путем создания копий программ. Чтобы не париться с написанием коммитов, используйте -m «мой коммит». Ваши претензии к одной конкретной программе. Не распространяйте их на все программы, это неверно. Измените подход к работе, не мучайтесь.

                                                                                                  Пока браузер спрашивает, он уже давно качает файл. Этой фиче сто лет в обед, еще покойный Netscape Navigator 4.xx умел такое делать.
                                                                                                  • 0
                                                                                                    Пока браузер спрашивает, куда сохранять файл или запомнить ли пароль — пусть уже грузит файл или входит на сайт.
                                                                                                    Ну так сейчас практически все браузеры делают.
                                                                                                    Вот другой вопрос: я не хочу, чтобы во время диалога на сохранение браузера не шла закачка (может быть у меня дорогой помегабайтный сотовый тарифный план или я в роуминге), а браузер самовольно мне начакачает кучу трафика на момент, когда я откажусь от сохранения.
                                                                                                    • 0
                                                                                                      (может быть у меня дорогой помегабайтный сотовый тарифный план или я в роуминге)

                                                                                                      Так вам шашечки или ехать?
                                                                                                      • 0
                                                                                                        Это тут не причем. Сейчас, когда безлимитный интернет очень распространен — проблема не столь актуальная. А чуть ранее можно реально из-за этого было попасть на деньги.
                                                                                                • +1
                                                                                                  пока кипит вода, вы не сможете поджарить яичницу на этой же конфорке ;) Суки проектировщики плит, не предусмотрели одновременную готовку!
                                                                                                  • 0
                                                                                                    Но на той же плите ведь смогу! Вообще, аналогии — дело такое, ничего не доказывают, ничего не опровергают.
                                                                                                    • +1
                                                                                                      А если плита одноконфорочная походная?:) Я веду к тому, что программа, которая не дает юзеру делать что-то еще во время выполнения операции, делает это по одной простой причине — она не предполагает параллелизм на своей платформе. Примеров можно накидать хоть тысячу. Есть параллелизм процессов, если уж на то пошло.
                                                                                                      Ваша статья уж слишком критичная и не учитывает, что некоторые ограничения налагают сами юзеры. Что параллелизм может быть просто не нужен, ибо ждать все равно придется.
                                                                                                      • 0
                                                                                                        Причем тут примеры, где параллелизм не нужен? Я могу вам накидать тысячу, где компьютер не нужен. И что?
                                                                                                        • 0
                                                                                                          Мы так можем далеко зайти с примерами:)
                                                                                                          Контраргумент «И что?» вообще интересный, против него ничего не скажешь, да.
                                                                                                          Но, возвращаясь все таки к теме обсуждения: не все йогурты полезны. Параллелизм должен быть только там, где он возможен, и то, это исключительно по желанию разработчиков. Причислять это к грехам ко всем программам — имхо перебор
                                                                                                          • 0
                                                                                                            Параллелизм должен быть только там, где он возможен, и то, это исключительно по желанию разработчиков
                                                                                                            А почему вы очки под столбом ищете? А тут светлее.
                                                                                                        • 0
                                                                                                          А если мы в лесу? Я веду к тому, что места, где нет электричества, не имеют его по одной простой причине — они не предполагают там электричества. Примеров можно накидать хоть тысячу. Есть ручной генератор, если уж на то пошло. Моя статья уж слишком критичная и не учитывает, что некоторые ограничения налагают сами люди. Что электричество может быть просто не нужно, ибо электроприборов все равно с собой нет.
                                                                                                          • 0
                                                                                                            газовым конфоркам не нужно электричество:)
                                                                                                            • 0
                                                                                                              Газовые конфорки должны быть только там, куда удобнее ехать монтажникам, и то исключительно по их желанию, если им нечего делать и водка закончилась.
                                                                                                              • 0
                                                                                                                Если уж на то пошло, то газовые конфорки никому ничего не должны:) Походные плиты, как правило, газовые =) Монтажники тут вообще не в кассу;)
                                                                                                                • 0
                                                                                                                  Ну то есть вы сюда языком почесать пришли, а не по сути разговаривать?
                                                                                                                  • 0
                                                                                                                    Главную мысль я изложил выше. Вы же категорично встали в позу и всяко даете понять «Я все написал правильно, потому что я работаю юзабилистом и знаю, как правильно».
                                                                                                                    Думаю, на этом можно остановиться, аргументы вы, похоже, из принципа слушать не хотите. Дело ваше.
                                                                                                                    • 0
                                                                                                                      Вот что вы написали:
                                                                                                                      1. Там, где параллелизм не нужен, он не нужен. («параллелизм может быть просто не нужен, ибо ждать все равно придется.»)
                                                                                                                      2. Там, где он невозможен, его делать не нужно. («Параллелизм должен быть только там, где он возможен»)
                                                                                                                      3. Там, где он нужен, он должен появляться только по желанию разработчика. («и то, это исключительно по желанию разработчиков»)
                                                                                                                      Первые два утверждения — тавтология. Абсурдность третьего я показал вам на примере газовой плиты и монтажников. Ну а вы продолжили сводить это в шутку.
                                                                                                                      • 0
                                                                                                                        Хорошо. Пусть вы будете правы.
                                                                                                                        Возражу только, что вы таки выдернули контекст как вам захотелось.
                                                                                                                        Юзер может быть и захочет параллелизма, но от этого задача быстрее не решится и ждать придется все равно. Пример? Форматирование диска C:\ перед установкой винды. Даже если я очень захочу, я не смогу начать установку сразу же, как почистилось достаточное количество секторов — головка диска от этого быстрее метаться не станет.
                                                                                                                        Не всегда стоит прогибаться под юзера, потому что, зачастую, юзер хочет совершенно противоположных вещей. Разработчик интерфейсов и программ должен в первую очередь решить задачу. Это потом появляется «желательно, побыстрее» и «и еще кнопку ПЫЩЬ».
                                                                                                                        Абсурдность примеров началась с примера про кипячение воды.

                                                                                                                        За сим, откланиваюсь. Желания вести беседу в пустоту нет.
                                                                                                                        • 0
                                                                                                                          Вы что-то все норовите привести пример из ситуаций, когда параллелизм невозможен или не нужен, как будто я отрицаю существование таких ситуаций. Напротив, я пытаюсь объяснить, что есть также ситуации, когда параллелизм возможен и нужен, но его нет. Один из очень ярких примеров буквально комментом ниже: habrahabr.ru/blogs/development/124787/?reply_to=4106849#comment_4104130

                                                                                                                          Давайте чуть повернем ваш пример. Я не хочу начать установку сразу же, как почистилось достаточное количество секторов. Я хочу вообще заниматься своей работой, пока ОС ставится на соседний раздел. Как вам такой пример? Чувствуете и возможность, и осмысленность?
                                                                                                                          • 0
                                                                                                                            Отрицаете, да. Final Cut это хорошо, но этой программой мир не заканчивается. Заниматься работой во время установки будет значительно дольше, чем установить и потом работать. Упираемся в тот же винт, в те же ограничения по оперативной памяти, в необходимость блокировки периферийных устройств (все та же защита от дурака — где гарантии, что юзер не прострелит себе ногу и не удалит папку в процессе инсталляции).
                                                                                                                            Даже MacOS не дает вам работать параллельно с установкой ОС.

                                                                                                                            Вопрос стоит в том, насколько опасно давать юзеру свободу. Параллелизм — это степень свободы, которую не всегда (и почти никогда) не нужно давать на откуп юзерам. Вы приводите в пример хром, который умеет обновлять себя сам. Возложите это на пользователей — и не будет хром наступать на рынок семимильными шагами, не будет роста поодержки новых фич, потому что у юзера «все итак работает»
                                                                                                                            • 0
                                                                                                                              Заниматься работой во время установки будет значительно дольше, чем установить и потом работать.


                                                                                                                              Я ж не полет обсчитываю, а в браузере сижу да код пописываю. Человек взаимодействует с компьютером небольшими всплесками активности, все остальное время компьютер может заниматься своими делами, и это прекрасно параллелится.
                                                                                                                              • 0
                                                                                                                                То есть надо ограничить параллельность браузером и текстовым редактором? И это нужно всем юзерам, потому что у вас так?
                                                                                                                                То есть я не смогу монтировать фильмы в Final Cut Pro?
                                                                                                                                Чем отличится работа за компьютером во время установки от работы при полностью установленной системе? В любой момент времени вы можете захотеть сделать что-то, что может не только усложнить жизнь программистам, но и усложнить жизнь самому себе.

                                                                                                                                Лучше почитайте книжку, как и во время кипячения воды ;)
                                                                                                                                • 0
                                                                                                                                  Еще раз, я, равно как и любой другой пользователь, готов понять и принять ограничения, накладываемые возможностями железа, программ, человеческого организма.

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

                                                                                                                                  А вы все приводите примеры из серии «я смогу это сломать» и «я знаю, кому это не нужно». Но продукт определяется не этим.
                                                                                                                                  • +1
                                                                                                                                    Я лишь показываю вам примеры того, когда ваш стройный список грехов разваливается. Примерно половина «грехов» применима только к простому софту вроде блокнота. Когда речь заходит о сохранности данных, о безопасности, о защите от кривых рук — приходят ограничения и блокировки, устранение которых может стоить разработчиков больших денег и времени. А это в нашем изменяющемся динамичном мире, порой, равносильно смерти.
                                                                                                  • +1
                                                                                                    Я кстати вспомнил просто потрясающий пример. Недавний релиз Final Cut Pro X, уж куда профессиональнее, да, голливудские блокбастеры на нем делают? Так вот, на презентации аудитория чуть ли не овацию устроила, когда им background rendering показали. Раньше, грубо говоря, нужно было после каждого эффекта нажимать Cmd+Shift+R чтобы перерендерить выбранные клипы, теперь она это делает сама в фоне и не мешает никак редактировать остальной таймлайн (включая даже рендерящийся клип между прочим).
                                                                                                  • 0
                                                                                                    >Описание не может быть длиннее 1000 символов.

                                                                                                    Окей. Представь абстрактный коллективный блог, в котором нет ограничения на количество символов в названии поста. А если попадётся придурок, который напхает туда 100к символов? Спасёт только обязательная премдерация… или уже постмодерация со всеми вытекающими.
                                                                                                    • +5
                                                                                                      Как минимум можно сделать вывод не полностью, а первую 1000 и ссылку «читать ещё 99к символов».
                                                                                                      • 0
                                                                                                        Это вандал. Какой смысл хранить эти данные? Напомню, что время програмиста довольно дорого стоит, а список фич все растет, растет…
                                                                                                        • +1
                                                                                                          Вы сейчас на очень опасную дорожку вступили. Вы говорите, что программист важнее пользователей, для которых он работает.
                                                                                                          • +2
                                                                                                            Программист как раз не важнее — важнее соотношение «потраченные заказчиком деньги / полученный от этого профит». И порой заказчик не понимая всей важности удобства пользователей выдает вердикт «это же работает так? зачем еще тратить деньги на разработку? Привыкнут!»
                                                                                                            • +1
                                                                                                              Неверное утверждение. Мнение программиста может быть важнее мнения пользователя, если пользователи не генерируют естественные требования к функциональности программы.

                                                                                                              Даже у бесконечности в мире программистов есть предел. Размеры жестких дисков не бесконечные, память сервера имеет конечный размер. Требование ничего не ограничивать может привести к отказу работы сервера или программы. От этого будут страдать в первую очередь пользователи.
                                                                                                              • –4
                                                                                                                Передергиваем? Ну-ну.