?

Log in

No account? Create an account

Previous Entry | Next Entry

Лекция "Любимая"

  • 4th Jun, 2011 at 4:20 AM
grafiti
Давайте рассмотрим (но внимательно!) такой простой случай. Допустим Чел хочет узнать скоко время.

Допустим у Чела есть часы. Он их достает, смотрит.

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

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

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

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

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

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

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

Более того, рано или поздно найдецца Чел, который скажет: а я не хочу видеть скоко у миня батарейки осталось, если мне токо скоко время интересно. Такие Люди бывают сплошь и рядом.

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

И тут мы вступаем в заминированное поле юзер-интерфейса.

Тут ситуация очень неоднозначна, ибо сам Чел - тоже девайс. Может, ему Любимая сказала: если еще раз опоздаешь на свидание, то всё. И вот он смотрит на часы каждые пять минут. Тоже пытаецца опередить ее желания или по крайней мере не проворонить их на большее количество минут, чем для нее актуально. Прямо как с часиками. Чем не девайс?

Но ладно. Часы-то не знают, что Чел тоже девайс. Для часов Чел - Чел, а не девайс.

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

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

Зато часовой механизм знает логику: скоко шестеренок повернулось, умножить на два, разделить на три четверти, умножить на толщину пружинки, отнять ноль, разделить на число колесиков.

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

1) Действие (Чел выбирает что ему надо чтоб показывалось, т.е. банально "нажимает кнопку")

2) Информация (Что именно Чел выбрал, которую часики посылают "на сервер")

3) Логика (как эта информация преобразуецца "на сервере" часовым или иным механизмом в нужный для Чела формат)

То есть с точки зрения часового механизма запрос на тему скоко время бессмысленный - ибо это "и так понятно". Но Чел-то не понимает языка шестеренок и пружинок. Ему надо все разжевать и изложить в доступном формате с учетом времянного пояса. Как одно переходит в другое в данном случае и есть логика.

Но тут есть определенная цикличная последовательность:

Действие (запрос Чела) о типе информации преобразуецца из языка Человека, с помощью юзер-интерфеса, в информацию, которую сервер с помощью логики преобразует снова в информацию, которую интерфейс преобразуте снова в действие (стрелку здвигает), которое доступно для понимания Чела. Соответственно Действие, Информация и Логика пребобразуюуцца друг в друга в такой последовательности:

Д -> И -> Л -> И -> Д и т.д.

Причем, помним что Чел тоже девайс. Для него Действие часов есть не Действие а Информация, а любовь к Любимой - это его Логика. Она объясняет, зачем ему надо время знать.

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

В этой ситуации важно понимать, кто что про кого "знает". Допустим Чел очень много знает о своей Любимой, кое-что про работу циферблата, и совсем ничего про часовой механизм.

Циферблат ничего не знает про Любимую, знает про Чела и кое-что, относительно, знает про часовой механизм - на уровне "как пользовацца".

Часовой механизм имеет отдаленное представление о циферблате, никокого представления о Челе, но хорошо понимает что такое время.

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

Надеюсь всем это теперь будет понятно :)

P.S. А Любимая она Одна.



Comments

( 5 comments — Leave a comment )
vespro wrote:
4th Jun, 2011 04:21 (UTC)
Саша, это великолепно!
somebodynext wrote:
4th Jun, 2011 04:31 (UTC)
Лекцыя харошая. Панятная.
konevin wrote:
4th Jun, 2011 06:07 (UTC)
С удовольствием прочёл.Очень интересно.Спасибо.
ryb wrote:
4th Jun, 2011 08:37 (UTC)
Х. Кортасар (с)
ВСТУПЛЕНИЕ К ИНСТРУКЦИИ О ТОМ, КАК ПРАВИЛЬНО ЗАВОДИТЬ ЧАСЫ


Вот о чем подумай: когда тебе дарят часы, тебе дарят маленький ад в
цвету, цепь, свитую из роз. Камеру-одиночку, где заперт воздух. Тебе дарят
не просто -- часы, и расти большой, и пусть все у тебя будет хорошо, и
надеемся, они тебе долго прослужат, хорошая марка, швейцарские и на рубинах;
тебе дарят не просто миниатюрную камнедробилку, которую ты пристроишь на
запястье и будешь выгуливать. Тебе дарят -- сами того не зная, весь ужас в
том, что они сами того не знают, -- новую частицу тебя, хрупкую и
ненадежную, частицу, которая принадлежит тебе, но твоим телом не является, а
потому ее приходится закреплять на запястье с помощью ремешка, сжимающего
его, словно отчаянно вцепившаяся ручонка. Тебе дарят необходимость ежедневно
заводить эти самые часы, заводить для того, чтобы они оставались часами;
дарят навязчивую и мучительную потребность проверять их точность,
приглядываясь к циферблатам в витринах у ювелиров, прислушиваясь к
объявлениям по радио, справляясь о времени по телефону. Дарят страх -- а
вдруг потеряю, а вдруг украдут, а вдруг слетят на пол и разобьются. Не тебе
дарят часы, дарят тебя самого, ты -- подарок часам на день рождения.
vlad_ab wrote:
4th Jun, 2011 14:48 (UTC)
Теперь самые крутые часы вообще не показывают время.
http://www.ablogtoread.com/romain-jerome-titanic-day-night-ii-watch-now-with-the-time/
( 5 comments — Leave a comment )