[#]
Числа
Romero Yakovlev(lenina,1) — All
2014-06-04 04:24:38
> Числа - четвёртая книга Моисея. в которой евреи шли, шли, и дошли. почти.
В отличие от fido, usenet/relcom и других сетей, конференции в ii имеют цифровой постфикс. Вот, например: im.100.
И, в связи с этим поступает многочисленное количество вопросов, почему именно так?
*. Ну, во-первых, это понятно. Как чтото.ru говорит, что это сайт, так чтото.14 говорит, что это эха ii.
*. Во-вторых, оно же в главных, оно сильно упрощает реализацию. Варианта "не переполняйся" было всего два. Либо делать реализацию с внешним хранением дат (а такой вариант тоже был. в итоге ничего так и не делалось. Введение постфиксных эх упростило реализацию настолько, что можно было сделать всю ii здесь и сейчас, что и было, собственно, проделано), и потом разбирать их.
То есть, в случае с хранением дат, вопрос получения последних сообщений звучит как "сделай отметку по номеру и по дате, и загрузи последние сообщения (с какой даты? с какого номера? по какому принципу?). Отсутствие единообразия, разные наборы у разных юзеров, да ещё и необходимость поддерживать это вообще во всём софте, даже маленькх утилитках. Плюс, необходимость следить, чтобы нигде и никогда, не пришло ничего лишнего. Следить за push (который делаете не вы), следить за всеми внешними утилитами. Вероятность ошибки повышается, схема становится сильно сложнее, и, в итоге, рано или поздно, одна ошибка может прислать всю эху. За весь период, что есть у аплинка. А если у двух разных аплинков два разных периода (что очень вероятно)... Вот тогда синхронизация "все со всеми" заиграет новыми красками. Определённости будет мало, стандартов будет мало, что и у кого брать, по какому принципу - вообще непонятно.
А в случае с текущей реализацией, тот же вопрос звучит так: скачай файл эхи и его сообщения. 2 wget и 1 cat. Вероятность ошибки - минимальна. Все, кто сихнронизируется, знают, с чем синхронизируются.
У нас есть бон. И есть эхи. И вся эта совокупность составляет N последних сообщений в X эхах. Которые и составляют жизнь ii. Эхокоординатор следит за тем, чтобы бон был и интересным, и не переполнялся сообщениями, а пользователь, новичок, просто подписывается, и сразу получает всю видимую часть сети, которая есть сейчас. Что там вне бона - это другой вопрос... там тоже интересно.
*. В-третьих, легко собирать и раскладывать архивы. Обычные эхи, которые копятся годами, имеют неопределённое начало и конец. В случае же с номерными эхами можно просто взять нужные архивы, тем самым собрав такую коллекцию, какая требуется.
*. В-четвёртых, уже есть определённость, что смотреть пользователю. В случае с outbound-style, пользователь оказывался перед пустым голдедом.
> да, был рескан, но про это надо было знать, запрос надо было составлять, тоссер нода должен поддерживать, нужные архивы должны быть - в общем, этим мало кто пользовался. новички - так и вовсе не пользовались.
В случае с набором эх бона у нас больше определённости. Новичок выкачивает последний бон, и он уже в курсе всех событий.
В общем, в отличие хоть от интернета, хоть от твитера, хоть от голдеда, где ты сидишь перед пустым экраном, и перед знакомством с сетью даже не знаешь, "куда пойти куда податься", в ii тебя сразу, с порога, встречает жизнь. И, чтобы как-то разумно ограничивать эту жизнь, при этом сохраняя стандарты на то, какие сообщения загрузятся новичку, и существует нарезка эх на числа. Более современный софт сможет вообще игнорировать эти цифры, показывая эхи в виде одной и безпостфиксной. Но сейчас и в текущем софте - в эхах ориентируешься, в том числе, и по постфиксам.
* Ну и в-пятых - эта схема уже есть и никуда не денется. Можно бесконечно спрашивать "а почему не так", при этом так и не определившись. А можно просто принять решение и следовать ему. Номерные эхи не являются проблемой (на мой взгляд, это вообще основное достоинство сети, как и отсутствие аутбаунда: впрочем эти вещи сильно связаны. но оценят его пользователи только тогда, когда у нас будут многолетние архивы тематических эх), а вопрос автопереподписки можно решать и автоматически.
(черновик для газеты)