June 19th, 2003

vanity

[ utx ] Идеи и структура базы, или почему всё так, как есть.

Что хранится в базе:

  • Само собой, там хранится ссылка на запись
  • Категория записи
  • (добавлено) Пользователь, в карту которого, добавлена запись

Задачи, которые мы решаем:

  • Я хочу получить архив записей, который разбит по категориям.
  • Категории определяются мной, что значит, что если кто-то решит писать в категории stuff о „всякой ерунде“, а я решу писать в этой же категории stuff о действии психоактивных веществ, то мне вовсе не хочется смешения одного и другого.
  • Я хочу получать записи других людей по той же теме (из предыдущего пункта видно, что не обязательно это записи, живущие под одноимённой категорией)
  • Я не хочу ограничиваться только своими записями (изначально система задумана под однопользовательское/однокомандное применение, и подразумевала возможность добавления в базу любых страниц в интернете), и мне нужна возможность добавлять в мою карту записи других пользователей livejournal.</p>

    Они не обязательно должны быть пользователями ютх, при помощи Collapse ) картинку категории можно добавить куда угодно, сам скрипт внедряется в страницу либо через локальный прокси (proxomitron), либо, при желании — через bookmarklet.

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

Пока можно сделать следующее:

  1. Использовать некий механизм авторизации (см. запись [ » ] „Авторизация и карты пользователей“). При этом карта пользователя создаётся только при его первом логине. До того никакие данные не сохранятся. Никто, кроме самого пользователя, не может добавить запись в его карту (идентифицируем пришедший рефёрер по cookie).
  2. Если владелец хочет, чтобы с его картой работал кто-то ещё, он может вручную добавить их в список „доверенных лиц“. Это позволит работать в том числе с сообществами.
  3. Для того, чтобы достичь главной идеи — видеть, кто ещё писал о том же, предлагается ввести редактирование категорий. Так, что я вручную могу сопоставить нашу категорию [ » ] 500ISF с категорией [ » ] daa50 лжеюзера gadyuka. C возможностью в дальнейшем вытаскивать интересующие нас записи автомагически.
  4. Другим достоинством редактора категорий является то, что можно самостоятельно назначать любые иерархии — связи делятся на три варианта:
    • охватывающие (так, music будет охватывающей для dj_food)
    • связанные („также по теме“ — пример с 500ISF и daa50 выше)
    • дочерние (dj_food будет дочерней по отношению к music)
    В итоге можно строить почти любые по сложности системы, не усложняя интерфейс для ввода записи в базу.

  • Current Music
    Tarwater - Otomo — JazzaNova
vanity

[ utx ] авторизация без пароля

После разговора с gadyuka пришли к такому решению:

  • При попытке зарегистрироваться выдаём юзеру что-то такое:

    <!-- $utxId: 6gEh82 -->

    со словами: „Вставьте этот фрагмент кода в свою персональную информацию, и сохраните изменения.“

  • Добавляем „Когда персональная информация будет обновлена, введите электронный адрес, на который вы хотите получить пароль для доступа к ютх, и нажмите кнопку авторизации“

    <input ... >


  • Current Music
    A Dead Fish Gains The Power of Observation — The Books
vanity

[ L ] Steve Jobs and Jeff Bezos meet "Ginger" // Как начинался Segway

Стив Джобс и его урок создателю Сегвея о том, как избавиться от паранойи и смотреть глубже бизнес-планов. Вопросы «Почему» и «Зачем» становятся источником знаний только в том случае, если на них отвечать.

«

"What does everyone think about the design?" asked Doerr, switching subjects.

"What do you think?" said Jobs to Tim. It was a challenge, not a question.

"I think it's coming along," said Tim, "though we expect—" "I think it sucks!" said Jobs.

His vehemence made Tim pause. "Why?" he asked, a bit stiffly.

"It just does."

"In what sense?" said Tim, getting his feet back under him. "Give me a clue."

"Its shape is not innovative, it's not elegant, it doesn't feel anthropomorphic," said Jobs, ticking off three of his design mantras.

"You have this incredibly innovative machine but it looks very traditional ." The last word delivered like a stab. Doug Field and Scott Waters would have felt the wound; they admired Apple's design sense. Dean's intuition not to bring Doug had been right. "There are design firms out there that could come up with things we've never thought of," Jobs continued, "things that would make you shit in your pants."

There wasn't much to say to that, so after a pause Tim began again: "Well, let's keep going, because we don't have much time today to-" "We do have time," said Doerr curtly, changing his own ground rules. "We want to get Steve's and Jeff's ideas."

"The problem at this point is lead time in our schedule," said Tim. Jobs snapped his head from Doerr on one side to Dean on the other, as if he'd been slapped. "That's backwards," he said, his voice rising.

"Screw the lead times. You don't have a great product yet! I know burn rates are important, but you'll only get one shot at this, and if you blow it, it's over." Agitated, he turned to Bezos. "Jeff, what do you think?"

"I think we'd do a disservice to the machine if we didn't give a great design firm a chance," said Bezos in a calm, soft voice, trying to lower the volume. "I think Steve is right—that as he so elegantly put it, they could do things that would make us shit in our pants." Jobs grunted.

After another pause, Tim moved on to the issue of service, determined to move ahead despite the punches coming at him. Within two sentences, Jobs was on him again. Tim put up his next slide, about the new plant, but again Jobs came at him with a flurry of half-insolent questions. Where are you building a plant? Why are you building a plant? Why are you manufacturing the machine yourselves?

Partly, explained Tim, because giving our code to someone else would be a great risk. Not a good reason, in Jobs's view, because the code could easily be reverse-engineered. No it couldn't, said Tim. Could, said Jobs. He added that Tim should be spending money and management time on other things, especially since there was no way he could convince any world-class manufacturing and procurement people to move to New Hampshire, for God's sake, his tone implying that only slow-witted rubes could bear such a place. Dean lifted an eyebrow.

"We have an adequate staff", said Tim defensively, but it sounded as weak as the adjective. Tim had lost control of the meeting. That was probably Doerr's plan all along. Dean sat silently, offering no help or defense as Jobs rampaged through Tim's presentation.

»

 
 

  • Current Music
    Vidrar Vel Til Lofturasa — Sigur Ros
vanity

Вопрос по физике, заданный блондинкой

Интересно, а если воду запаять в ёмкости, где больше места не останется, и нагреть до... 200°C, скажем, то она там так и будет, как дура, жидкая сидеть? Ведь испаряться же ей просто некуда. Или давлением при расширении нагревающейся воды просто ёмкость, как грелку — того?

  • Current Music
    Shpongle - The Sixth Revelation
vanity

Из практики подготовки диплома и работы над utx, pstk и полудюжиной других проектов

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

Можно было бы отнести это поведение и таким образом сложившиеся предпочтения на счёт лени. И она тут, безусловно, присутствует. Но самым важным оказывается другое.

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

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

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

  • Ambient tracking тоже был бы неплох — пока ты что-то пишешь, система анализирует написанное, и параллельно тому, как ты вбиваешь в лист бумаги метаданные (о чём это, когда, зачем, и так далее) у тебя в стопке нежным абрикосовым оттенком засвечиваются ярлычки разных документов „из того же контекста“.

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

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

    Мне нужен экран, висящий в воздухе передо мной. Если нужно — два экрана. Четыре. Двенадцать, или три больших — не волнуйтесь, несмотря на тормоза по операторским показателям, я с этими плоскостями разберусь без проблем. И так как они висят в воздухе и невесомы, мне нужна возможность манипулировать ими как угодно — крутить, вертеть, трясти (здесь вспоминаем о имплантируемых в кожу ладоней нановолокнах и понимаем, что натягивать перчатки-манипуляторы ни к чему — будущее опять не будет зрелищным), сгибать-деформировать. Виртуальные плоскости, одно слово.

    Есть один интересный нюанс: так как ограничения рамками монитора нет, то, вроде бы, можно выводить данные во всю трёхмерную мощь, но на практике оказывается, что, скажем, для текстовой информации в любом случае нужна будет плоскость, а полностью три измерения пригодятся только в представлении цельных систем (файловая система, каталог и тому подобные структурированные образования) и (вот это уже интереснее) полная трёхмерность окажется очень удобной при реализации принципов ambient-устройств, когда один из элементов может выдвинуться вперёд, если там происходит что-то более важное по приоритету. В таком случае вся площадь виртуального вывода становится не только „большим монитором“, но и чутким к любым заданным изменениям информационным организмом, показания которого можно считывать не задумываясь, краем глаза.

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

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

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

    Идиотизм же не лечится.

    Проблема с виртуальными устройствами в том, что их можно увидеть-услышать, но нельзя испытать тактильные ощущения в полный рост (без интеграции в нервную систему или мозг. Если же такая интеграция произойдёт, то никакие устройства „снаружи“ становятся не нужны в принципе — можно работать на том, что однажды придумано, создано твоим или чужим воображением — ментомодуль с подходящим интерфейсом решит все проблемы (в частности, по такой модульной модели создаётся pstk) — „Матрица“ с диспетчерами в Зионе тому примером), поэтому полностью перевести работу в виртуальное поле невозможно — руки на весу устают, а отсутствие контакта с материей совершенно атрофирует осязание, как таковое. Сенсорное голодание, недостаток ощущений делает работу менее приятной, правда, поначалу это совершенно не осознаётся — понять это можно лишь в сравнении (что и происходит сейчас, когда обычные книги люди предпочитают именно из-за фактуры).

    Голосовой ввод остаётся в качестве резервного канала для общения с антропоморным агентом и не более того. Критические задачи на голос вряд ли можно вешать, да и невозможно в плотном коллективе работать одновременно нескольким с голосовым вводом — это и нарушение уединения в работе и сильный отвлекающий фактор. Поэтому никакого голосового общения вместо мыши не будет.

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

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

... И, разумеется, ambient sound system всему этому является органичным дополнением.

Ссылка по теме:

  • Current Music
    the in samba — Nicola Conte