(no subject)
Jan. 28th, 2017 09:06 pmЯ на всякий случай склонировал туда те 15 картинок, которые у меня на ЖЖ-шном файловом хостинге валялись. Надо бы найти теперь те посты, откуда на них ссылки и подправить и сслыки тоже.
Ни за что бы я про это не узнал, если бы не подписался на меня
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Для свежепонаехавших в DW
Dec. 26th, 2016 09:29 amЧто она делает - она позволяет доказать что некий openid принадлежит тому же человеку, что и вот этот аккаунт в DW. В результате, если вы, например сделаете claim своему аккаунту в ЖЖ, то все ваши комментарии, импортированные из ЖЖ, как в ваш журнал, так и в любые другие, причем даже импортированные пять лет назад, станут подписаны вашим DW-аккаунтом, а значит на них будут распростнаняться настройки безопасности, полагающиеся для локальных комментариев - будут показываться картинки и ссылки.
Об видеоблоггинг
Jul. 20th, 2016 09:48 am![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
И задумался я о том, какой бы образ мог выбрать для своих выступлений я.
Пожалуй, для программистких постов нужна полутемная лаборатория алхимика с армиллярной сферой на шкафу и чучелом крокодила под потолком. Ну и прикид соответствующий - остроконечный колпак, бархатный халат.
На всякие экологические и природоохранные темы стоило бы записываться где-нибудь на природе. Примерно в том виде, в котором я изображен на своем дефолтном юзерпике.
На урбанистические сцены стоило бы вещать, сидя на парапете смотровой площадки на Воробъевых горах. С видом на всю москву. Там только будет проблема, как защитить микрофон от порывов ветра. Форма одежды - та же, что и в предыдущем случае, но без пробкового шлема.
Фантастические и астрономические посты - на фоне звездного неба. Но чтобы реально со звездами. то есть снимать придется в деревне, на втором этаже на фоне окна, с такого ракурса, чтобы земля в кадр не попадала.
Еще один образчик американской цензуры
Jun. 6th, 2015 10:00 pmСайт, агитирующий против Trans Pacific Partnership попал в списки спама во всех крупных социальных сетях. Утверждается также что он попал в черные списки у E-MAil провайдеров, и в результате в электронной почте тоже нельзя упоминать ссылки на него, а то в спам попадет. (если хотя бы один из двух переписывающихся пользуется каким-нибудь крупным почтовым провайдером)
Вообще борьба социальных сетей (включая ЖЖ и DW) со связностью интернета, желание помешать пользователям постить ссылки под предлогом борьбы со спамом, меня достает со страшной силой. У себя в журналах я насколько могу, разрешаю указывать ссылки, но скажем опции разрешить ссылки openid пользователям ни тот ни другой не предоставляет.
Но я склоняюсь к мысли, что можно и попытаться этой штукой воспользоваться.
Во всяком случае в качестве бэкнд хранилища там предлагается использовать redis или mongodb а не mysql и написано оно не на php, а на node.js.
Testing deepest sender
Sep. 20th, 2013 09:40 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
являющийся клиентом к ЖЖ. Интерфейс неожиданно симпатичен для мозилловского экстеншна. Оказывается, есть люди, которые умеют писать на XUL.
Кросспост из standalone
Feb. 28th, 2013 08:39 amDate: 2012-12-27 08:10 Options: backdate Subject: Этого не может быть, потому что не может быть никогда. Tags: экзопланетыпопутно вычищая их тела поста директивы ikiwiki, и если надо, заменяя их на чистый markdown. Потом тело поста пропускается через pandoc и скармливается
charm -q -x file.with.metadata --autoformat=off --backdate=onЧто странно - в wheezy charm работает, будучи запущен python-ом 2.6, но если его запусить python-ом 2.7 ухитряется перекодировать всё отправляемое на сервер по второму разу в utf-8. Кому интересно почитать откросспощенное, искать в календаре за январь и февраль.
Итоги эксперимента
Feb. 27th, 2013 10:08 amДело даже не только и не столько в существенном снижении количества комментариев. Дело в том, что обрывки мыслей, которые я без малейшего колебания доверял ЖЖ или DW, до блога зачастую не доходили. С чем связан такой психологический эффект, я пока не понял.
С чем связаны проблемы с дискуссиями, более менее понятно. Более того, они были вполне предвидмы, но я надеялся что найду силы это пофиксить, доработав модули comments и emailnotify в ikiwiki, чтобы было не хуже, чем в ЖЖ-based движках. Не собрался.
Кроме того, замечено что по мере увеличения количества постов время на обработку постинга комментария растёт.
Это, увы, совершенно неприемлемо. Если за два месяца это время выросло примерно вдвое-втрое, что будет через год? За эти два месяца было опубликовано всего 72 поста. В ЖЖ - больше 3 тысяч.
Это, похоже неустранимая бага дизайна ikiwiki. Хотя, по-моему в принципе создание движка на файловой системе, который имеет время обработки поста O(1) от числа страниц вполне возможно. Ну или хотя бы O(log log n).
Возможно, проблема ещё и в том как ikiwiki работает с git. В svn-based вики по детям пространства таких тормозов не замечено.
В общем, из ЖЖ/DW сваливать надо по социальным соображениям, но первый опробованный вариант оказался неудачным по техническим соображениям. Будем продолжать поиск.
P.S. Как вы считаете, нужно ли перепостить в ЖЖ/DW те 72 поста?
Обнаружилось что в ikiwiki возникает какой-то deadlock. Причем, видимо, только с использованием git в качестве бэкэнда, а то бы может давно заметили. Сейчас вот грохнул процесс git push origin (origin и рабочая копия - в одной файловой системе) и в результате смог завершиться десяток процессов и запоститься три комментария.
Но вообще с блокировками они там явно что-то перемудрили. Уж во всяком случае окно комментирования должно на порядок быстрее открываться при данной мощности машины. Причем профайлер ничего интересного не показывает.
Ещё про OpenID
Jan. 11th, 2013 08:46 amПоднял, наконец свой собственный OpenID провайдер. Путем минимальных переделок примера к модулю Net::OpenID::Server. Пока что никаких simple registration и attribute exchange extension не поддерживает, так как их, похоже, забыли положить когда переписывали модуль на поддержку OpenID 2.0.
Вообще OpenID 2.0 это что-то ужасное. Исходный OpenID был простым и понятным протоколом - вот URL, по ней есть контент, и где-то маленький-маленький элемент link, который указывает на опенидный сервер. Мы у этого сервера спрашиваем, а правда, что тот, кто к нам пришёл — законный владелец этой URL. Тот проверяет и отвечает да/нет. Всё. Если этот человек хочет ещё что-то про себя рассказать не людям, а другим серверам, может link с другим rel (например foaf) вписывать.
Теперь накрутили какой-то Yadis, для корректной работы которого нужно отдавать нестандартные http-заголовки, какие-то xrds, которые непонятно какой смысл имеют. При этом поддерживают все кто во что горазд. Например, хотя спецификация Yadis вообще-то предусматривает использование <meta http-equiv> Dreamwidh её кушать не хочет - ему http-заголовок подавай.
При этом половина ссылок на спецификацию и библиотеки с openid.net возвращает 404, а готовых drop-in реализаций не в виде плагинов к огромным фреймворкам нет. Приходится раскапывать информацию где-то на stackoverflow и чуть ли не в википедии.
Кстати, про foaf, похоже, забыли, и забыли незаслуженно.
Расширения sreg и ax надо будет прикрутить. А то вдруг заведется среди тех, куда я хожу комментировать, блог, который умеет оттуда email для посылки ответов или хотя бы для вытаскивания аватарки с gravatar-а доставать.
Вообще я хотел в этом вопросе отказаться от идеологической чистоты, и воспользоваться сторонним сервисом для обслуживания openid моей URL. Но myopenid.com, единственный известный мне сервис, позволяющий вешать openid на свою URL, что-то вчера безбожно тормозил, да и Email он, судя по ToS отдавать не умеет. Поэтому пришлось опять пойти по пути «Хочешь, чтобы было сделано хорошо, сделай это сам».
Аутентификация в распределенной блогосфере
Jan. 8th, 2013 05:28 pmО существующем положении вещей
Практика показала, что OpenID довольно плохое решение для "бегства из ЖЖ". Пока ЖЖ лежит, никто блог и не комментирует, поскольку аутентифицироваться через OpenID не может.
Вообще, OpenID за те годы, которые прошли со времен его изобретения Фицпатрикром испортился. Исходно идея была очень симпатична - человек, приходя комментировать в чужой блог, представляется URL своего блога. Представляться комментатор должен для того, чтобы у него накопилась репутация. Очевидно, что "владелец такого-то блога" это вполне себе репутация.
К сожалению, в сети тут же развелись всякие сервисы, которые предоставляют OpenID с URL, которая не содержит никакой информации о человеке, псевдониме или персонаже, от имени которого комментатор аутентифицируется.
Особенно, тут отличился гугль. У которого URL вообще неудобочитаема. Конечно, с тех пор в OpenID появлись всякие расширения, которые позволяют запросить определенную информацию о том, кто аутентифицировался. Но нужна ли эта информация читающим блог? Ну ладно E-Mail, он нужен самому блогодвижку, чтобы комменты на почту отправлять. Но всё остальное? Самого главного-то что пользователя как-то характеризует - какой-нибудь ссылки на то, что он ещё написал в интернете, нет.
Кстати, если подумать, то требование чтобы в момент регистрации пользователя его OpenID провайдер был online есть содержательный смысл. Ведь куда мы пойдем для того, чтобы что-то узнать о пользователе? На ту URL, которая является его claimed identity. Ничего другого у нас всё равно нет. Если пользователь у нас не первый раз, то можно просто когда он первый раз (при активном своём сервере) аутентифицируется, выдавать ему уже местную куку на месяц-другой, как делает lj.rossia.org.
Еще хуже с так называемыми "социальными сетями". Почему в этом блоге нету аутентификации через фейсбук или вконтакте? А потому что для того чтобы хотя бы прочитать девелоперскую документацию, нужно иметь аккаунт в этих сетях. А у меня его нет и я его заводить не хочу.
Не говоря уж о том, что для аутентификации через OAuth, поддеживаемой этими сетями, любой сайт, желающий аутентифицировать своих пользователей должен зарегистирроваться у соответствующей социальной сети и получить там некий секретный код, который использовать при обмене. То есть решению своего пользователя пойти на этот сайт они не доверяют. Они еще хотят и сам сайт заранее знать.
О том, чего хотелось бы
Что такое, на мой взгляд, распределенная блогосфера?
Это множество разных серверов, на каждом из которых может быть от одного блога, до нескольких тысяч, которые используют самый разный софт, кому какой удобно, самую разную политику по отношению к содержимому и так далее, но при этом все позволяют комментировать друг у друга без дополнительной регистрации на каждом сервисе, и обеспечивает устойчивость к высоким нагрузкам, то есть каждый блог тем доступнее, чем больше людей его регулярно читают.
Последнее можно достаточно легко организовать, если в рамках создания френдленты - общей ленты читаемых пользователем постов, кэшировать у себя все читаемые им блоги, позволять в кэшированных копиях комментировать.
Потребуется, конечно, какая-нибудь процедура для поиска пользователем наиболее доступной (либо ближайшей, либо наименее загруженной) копии блога. Но по-моему, чего нельзя категорически, так это требовать ради этого наличия у пользователя какого-либо софта, кроме стандартного браузера. Читать блоги должен иметь возможность любой аноним с браузером. Писать/комментировать - уже можно предъявлять несколько более высокие требования.
Но опять же надо зарекаться на то, что родной любимый сервер данного пользователя может быть в данный момент offline - то-ли затоплен водой вместе с датацентом каким-нибудь ураганом, то-ли конфискован злой полицией тоталитарного режима какого-нибудь Тувалу.
Я уже как-то раз предлагал систему аутентификации, основанную на встроенной в браузеры поддержку авторизации по клиентским сертификатам в HTTPS. Благо, утверждение, что сертификат обязательно должен быть выдан каким-нибудь коммерческим удостоверяющим центром - это неправда, и наш серверный софт вполне может работать удостоверяющим центром для своих клиентов. Это хорошо тем, что
- Используются надежные криптографические алгоритмы и протоколы.
- В этих протоколах предусмотрен срок действия сертификатов
- Предусмотрена процедура отзыва.
Плоха эта процедура в первую очередь тем, что требует наличия закрытого ключа на компьютере пользователя. На самом деле есть ещё андроиды <4, которые не умеют работать с посторонними удостоверяющими центрами, и более новые андроиды, которые не хотят с ними работать, если отключены блокировка устройства.
Но вот придумать процедуру авторизации, которая не требовала бы наличия в интернете (в данный момент) сервера, которому пользователь полностью доверяет, и на котором можно хранить секрет, и не требовала хранения какого-то достаточно объемного (не вмещающегося в человеческую память) секрета при пользователе, довольно сложно. Хэшированный пароль с солью - это секрет. Его нельзя делать публично доступным, как это было в юниксах 1970 года - словарные атаки на современном железе весьма эффективны. В принципе, можно попробовать распространять вместе с RSS-фидом блога что-нибудь симметрично-зашифрованное с помощью PBKDF2 или scrypt. Тогда серверный софт несущий любую копию данного блога сможет аутентифицировать его владельца.
Тут возникает, правда, вопрос, а достаточно ли доверяет пользователь серверу, на который он пришёл комментировать, чтобы вводить там пароль, дающий доступ ко всем копиям его блога? Собственно одна из причин распространения протоколов вроде OpenID и OAuth заключается в том, что свой пароль пихать куда попало не следует.
Френдлентное-2
Dec. 29th, 2012 01:58 pmРассмотрел ещё один генератор френдленты, написанный mtve - rssagr
Проект существенно менее зрелый, чем rawdog, но несколько приятных особенностей есть.
Плюсы:
- Компактный скрипт с минимумом внешних зависимостей. Легко модифицировать и развивать
- Ротирует старые записи в отдельные HTML-файлы (у rawdog аналогичная функциональность достигается плагином)
- Держит список фидов отдельно от прочей конфигурации (каковой пока вообще не имеет)
Минусы:
- Не имеет никакого шаблонизатора. Не генерирует ссылку на css.
- Ссылки на предыдущие куски ленты генерируются независимо от их наличия
- Как и rawdog при добавлении большого количества фидов одновременно, не располагает свежескачанные записи в порядке написания
- Не имеет никакого интерфейса добавления, который бы избавлял пользователя от ручного поиска ссылки на фид (rawdog хоть из командной строки умеет скачивать html и парсить его в поисках <link rel="alternate">
- Не разделяет публичные данные (сгенерированный html) и внутренние (кэш состояния потоков). Я, конечно, могу доступ к этому кэшу ограничить средствами файловой системы и web-сервера, но подход rawdog, у которого есть недоступная по web директория для локального состояния и конфигурации, мне чем-то нравится больше.
- Всё-таки непонятно, чем автора не устроили имодуль XML::RSS, XML::RSSLite, XML::Feed и прочие несть им числа.
- При регулярном использовании ротирует страницу целиком, даже если с момента предыдущего апдайта появилось 1-2 новых сообщения.
Что бы можно сделать: 1. Прикрутить шаблонный движок (от HTML::Template, чтобы использовать общий шаблон страницы и css с блогом ikiwiki). 2. Для хранения списка фидов использовать не плоский текстовый файл, а foaf. Раз уж оно лежит там же где раздаваемые html. 3. Поправить алгоритм сортировки.
Но пока у меня rawdog работает, это имеет меньший приоритет чем древовидные комментарии и корректная работа почтовой нотификации.
френдлентное
Dec. 28th, 2012 01:23 pmОдной из причин, которая до сих пор удерживала меня на ЖЖ-подобных движках, было наличие там френдленты - встроенного в журнал RSS-агрегатора с достаточно удобным интерфейсом добавления ну по крайней мере других журналов с того же хостинга.
Решив всё-таки из DW уйти я встал перед необходимостью завести и собственную френдленту.
То есть какую-то фиговину, которая регулярно собирает обновления с нескольких десятков блогов на разных сайтах и делает из них общую страничку для просмотра.
Пока эксперементирую с rawdog.
Эта собака страшная в общем-то делает почти всё, что мне надо, и почти так, как мне надо. Правда, иногда случаются проблемы с кодировками. Типичные для питоновских web-интерфейсов попытки проинтерпретировать как ascii то, что ascii не является, Как бы его по умолчанию заставить считать что всё, что пришло из сети - по умолчанию utf-8.
Ну и при добавлении кучи фидов разом он почему-то сортирует записи не в том порядке, в каком они были запощены авторами, а в том, в котором оно их первым увидело. Посмотрю через сутки, по идее должно выравняться.
И интерфейс для добавления новых фидов команднострочный. Хотя я может ещё это и пофикшу и приделаю какую-нибудь cgi-шку.
Теперь вот думаю - как быть с подзамочными постами? В принципе, ничто не мешает мне прописать в конфиге rawdog-а имя и пароль под которыми тащить фид, и будет оно брать подзамочные посты. Но сгенерированный-то html в открытом доступе лежит. Так что, наверное, лучше не надо.
По ведению журнала
Dec. 25th, 2012 12:15 pmГлобальный юзерпик
Dec. 12th, 2012 08:07 amЯ вообще в принципе, склонен считать что любой централизованный сервис в интернете это зло, но DNS и поисковые машины - зло неизбежное. Никакое Netsukuku их пока не заменит. C другой стороны, растаскивание "социальности" по блог-сайтам, когда за пределами своей социальной сети пользователь - никто, и выглядит никак - это ещё большее зло.
Так что может быть функциональное разделение образа пользователя социальной сети - юзерпик на одном сервисе, аутентификация на другом, блог на третьем - это не так уж и плохо.
Опять же хорошо, когда есть выбор, А тут выбор есть. Столь же широко, если не шире, поддерживается Libravatar.org.
Upd Хотя я бы предпочёл, чтобы стандратом де-факто стала спецификация pavatar или ей подобная, которая не завязана на централизованные сервисы.