К вопросу об интерфейсах
Sep. 12th, 2007 01:30 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Я кажется, понял в чем состоит основное различие в позиции по вопросу интерфейса пользователя между мной и всякими защитниками Desktop Environments.
Они считают, что интерфейсы должны быть такими, чтобы ими легко было научиться пользоваться.
Я считаю, что учиться пользоваться компьютером - ниже человеческого достоинства. Следует учить компьютер наиболее удобным для каждого конкретного пользователя способом исполнять требования этого пользователя. Поскольку люди все разные, то двух одинаковых интерфейсов быть не должно.
Компьютер - это инструмент, который продолжает наши мысли, так же как топор или весло продолжают нашу руку. Руки у всех примерно одинаковы (кроме тех, у кого они растут оттуда, откуда должны расти ноги). А вот мысли у каждого уникальны.
Использование стандартизованных интерфейсов загоняет наши мысли в определенные рамки. И это плохо.
Именно поэтому пользователи Windows-подобных систем так любят аляповатые картинки на десктопе, анимированные иконки и т.д.
Им хочется хоть как-то перенести в компьютер черты своей индивидуальности.
Но дело-то не во внешнем виде. Индивидуальным должен быть именно способ взаимодействия.
Естественно, какая-то стандартизация нужна. Иначе сложно будет взаимодействовать.
Минимальный уровень сложности интерфейса, который имеет смысл стандартизовать - это язык.
Язык это такой механизм взаимодействия (т.е. интерфейс) который позволяет каждому своему пользователю (т.е. автору) иметь свой собственный (индивидуальный!) стиль, но несмотря на это позволяет пользователям понимать друг друга. И даже заимствовать друг у друга целые куски (цитировать).
К языкам программирования это тоже относится. Да даже и к продвинутым языкам конфигурирования, не обладающим, тем не менее тьюринговой полнотой.
Ранний Unix не имел иного интерфейса кроме языкового (sh, ed - это языки). Появление GUI (даже менюшек в текстовом режиме) привело к появлению более примитивного способа взаимодействия, чем язык. Вот этот способ взаимодействия уже слишком туп, чтобы его можно было стандартизовать.
Они считают, что интерфейсы должны быть такими, чтобы ими легко было научиться пользоваться.
Я считаю, что учиться пользоваться компьютером - ниже человеческого достоинства. Следует учить компьютер наиболее удобным для каждого конкретного пользователя способом исполнять требования этого пользователя. Поскольку люди все разные, то двух одинаковых интерфейсов быть не должно.
Компьютер - это инструмент, который продолжает наши мысли, так же как топор или весло продолжают нашу руку. Руки у всех примерно одинаковы (кроме тех, у кого они растут оттуда, откуда должны расти ноги). А вот мысли у каждого уникальны.
Использование стандартизованных интерфейсов загоняет наши мысли в определенные рамки. И это плохо.
Именно поэтому пользователи Windows-подобных систем так любят аляповатые картинки на десктопе, анимированные иконки и т.д.
Им хочется хоть как-то перенести в компьютер черты своей индивидуальности.
Но дело-то не во внешнем виде. Индивидуальным должен быть именно способ взаимодействия.
Естественно, какая-то стандартизация нужна. Иначе сложно будет взаимодействовать.
Минимальный уровень сложности интерфейса, который имеет смысл стандартизовать - это язык.
Язык это такой механизм взаимодействия (т.е. интерфейс) который позволяет каждому своему пользователю (т.е. автору) иметь свой собственный (индивидуальный!) стиль, но несмотря на это позволяет пользователям понимать друг друга. И даже заимствовать друг у друга целые куски (цитировать).
К языкам программирования это тоже относится. Да даже и к продвинутым языкам конфигурирования, не обладающим, тем не менее тьюринговой полнотой.
Ранний Unix не имел иного интерфейса кроме языкового (sh, ed - это языки). Появление GUI (даже менюшек в текстовом режиме) привело к появлению более примитивного способа взаимодействия, чем язык. Вот этот способ взаимодействия уже слишком туп, чтобы его можно было стандартизовать.
no subject
Date: 2007-09-12 06:29 am (UTC)Часто попадаются одноразовые задачи вне основной предметной области. Для которых правильней посмотреть в факе или спросить на форуме, как это сделать, чем долго разбираться - почему именно так.
no subject
Date: 2007-09-12 06:38 am (UTC)no subject
Date: 2007-09-12 06:52 am (UTC)Человек, который хочет компилировать имхо болен. Ну так пусть сидит и компилирует, раз его прёт.
Я хочу получить нужную мне функциональность. Сепульки сепулять, а не программы отлаживать. Компьютер - не цель, а средство.
Если, как сейчас, у всех всё более-менее одинаково, то необходимые мне возможности я могу получить, даже не зная слова такого - компилятор. Мне сказали - запусти rpm -i http://сепуль.ка/сепуление.rpms, я скопировал, запустил и заработало. Всё. Компилирует оно там унутре, транслирует или интерпретирует - мне без разницы.
Если же у каждого будет свой язык общения с компьютером - никто мне ничего не посоветует. Потому как ему сначала придётся этот самый мой язык изучать. Чего никто (бесплатно) делать не будет.
no subject
Date: 2007-09-12 06:57 am (UTC)Но при этом Вы не имеете право хотеть ничего, кроме того, что хотят миллионы леммингов (потому что только это существует в виде "нажми на кнопку - получишь результат") Это не оскорбление. Стандартные потребности можно удовлетворить тупо.
Засада начинается, когда юзер хочет странного, но не хочет думать.
no subject
Date: 2007-09-12 06:59 am (UTC)Пока есть стандарты. Что и обсуждается - стандарты это хорошо или плохо.
Про нестандартные потребности отдельный разговор. Впрочем, они редки.
no subject
Date: 2007-09-12 07:04 am (UTC)no subject
Date: 2007-09-12 07:13 am (UTC)Стандартной проблемой в данном контексте я склонен считать такую, которую кто-то на Земле уже решил до меня и оное решение может быть найдено гуглем за разумное время. Хочется, чтобы описание оного решения не приходилось переводить на другой язык (общения с компьютером). Нестандартные (в указанном смысле) задачи мне попадаются не часто. При том, что у меня фактически несколько независимых работ (бизнесов), все сильно компьютерные (dvds.ec,tinta.ec,rus.ec, lib.rus.ec). Нормальному человеку, который использует компьютер для внекомпьютерной деятельности, думается вообще не попадаются. В любом случае он их не решит, буде попадутся. А таких - большинство.
И что мы понимаем под домашним компьютером? И, главное, зачем? Откуда вдруг такое деление и какое оно имеет отношение к теме разговора?
no subject
Date: 2007-09-12 10:40 am (UTC)Под домашним компьютером мы понимаем компьютер, который стоит у пользователя дома. А к теме разговора отношение непосредственное - требования к такому компу диктуются потребностями живого юзера и его удобством, а не производственной необходимостью и, скажем, удобством админов.
no subject
Date: 2007-09-12 10:50 am (UTC)Как меня это достаёт.
Пример из жизни. Мне для либрусека (http://lib.rus.ec) нужен определенный код. И он написан и свободно доступен.
Частично на php, частично на perl, частично на javascript, частично на яве, которой на хостинге нет, частично на питоне версии выше чем та что есть, частично на xsl, убить бы об стену его придумавших. В результате вместо пары дней, которые я бы потратил если бы все это было на одном (любом) языке, я убью пару месяцев, а то и больше. Кому от этого лучше?
При том что никаких разумных причин иметь столько языков нет - perl/php/pyton/java вполне способны выполнить все задачи. Любой из них, никакой принципиальной разницы между ними нету. HTML и SQL отложим отдельно, у них своя ниша. Остальные пять объединяются на раз.
Хрена, жрите винегрет.
no subject
Date: 2007-09-12 10:58 am (UTC)Просто не сойдемся.
no subject
Date: 2007-09-12 11:03 am (UTC)Есть формат книг - fb2.
Есть конвертор fb2-pdf.
Есть конвертор fb2-rtf.
Зачем мне писать (и потдерживать) свой, если уже есть готовый? Изучать pdf, бродить по граблям глюков разных ридеров...
Бред какой-то.
Вы сколько-нибудь серьёзные задачи вообще решали? Или всегда предпочитаете делать всё с нуля?
no subject
Date: 2007-09-12 11:11 am (UTC)Во-вторых, когда я вижу поделие, требующее кучу языков фиксированных версий и размеры напильника, превосходящего мой рост, я считаю, что поделие скорее не работает, и ставить его стремно. Так что либо ищу дальше, либо озадачиваю программистов, либо со скрипом мозговным вспоминаю перл.
Нет, переписывать конвертеры мне не приходилось. Искать более адекватный - приходилось.