Полный деплатформинг в 24 часа без каких либо судов и вообще бумаг!
Альтернатива децентрализации – цифровой тоталитаризм. Информационные супермонополии располагают невообразимым количеством информации и контролируют её циркуляцию. Каких-либо сдержек и противовесов не осталось.
Альтернатива децентрализации – цифровой тоталитаризм. Информационные супермонополии располагают невообразимым количеством информации и контролируют её циркуляцию. Каких-либо сдержек и противовесов не осталось.
👍1
Можно поздравить IPFS
https://brave.com/brave-integrates-ipfs/
https://brave.com/brave-integrates-ipfs/
Brave
Brave Integrates IPFS | Brave
IPFS, the peer-to-peer hypermedia protocol designed to make the Web faster, safer, and more open, has been integrated into Brave, the fast, privacy-oriented browser, reinventing the Web for users, publishers and advertisers.
IPFS в Brave работает возможно чуть медленней HTTP, но работает вполне себе децентрализовано, в peer-to-peer режиме.
Единственно, в сети неизбежно полная вакханалия, соединения на множество адресов для скачивания/раздачи и постоянные разговоры с DHT хостами. В строгой корпоративной сети это лучше не запускать.
Единственно, в сети неизбежно полная вакханалия, соединения на множество адресов для скачивания/раздачи и постоянные разговоры с DHT хостами. В строгой корпоративной сети это лучше не запускать.
Forwarded from Victor Grishchenko
bluesky работают потихоньку
выпустили обзор технологий дец веба
https://twitter.com/bluesky/status/1352302821140549632?s=20
выпустили обзор технологий дец веба
https://twitter.com/bluesky/status/1352302821140549632?s=20
Twitter
bluesky
Working virtually through the pandemic, this group self-organized, invited additional experts, and created a review of the ecosystem around protocols for social media. You can read it here: https://t.co/U5DczWX1qb
BitCoin это очень злая шутка над людьми. Демонически злая. Валюта устроена так, что её капитализация - это примерная оценка энергии, потраченной на "майнинг". Изначально заявленные цели - популярная криптовалюта, анонимизация и отсутствие посредников - оказались пшиком, и это было прекрасно понятно и 10 лет назад https://web.archive.org/web/20110724171749/http://www.pds.ewi.tudelft.nl/~victor/bitcoin.html. Зато инцентивизация и спекулятивный компонент удались на славу.
Уже раздаются голоса за насильственное уничтожение BitCoin https://medium.com/the-capital/green-hackers-around-the-world-lets-destroy-bitcoin-725700434a8f
В этой связи, инвестиция Tesla в BitCoin расставляет точки над i. Tesla - это про зелёное будущее или про силу интернет мемов? Конечно, второе.
Кстати, когда у основателя DeLorean пошатнулись дела, он занялся контрабандой кокаина, но был пойман (1982). Самая крутая тачка того периода, если кто помнит "Назад в будущее". Такая вот параллель.
Уже раздаются голоса за насильственное уничтожение BitCoin https://medium.com/the-capital/green-hackers-around-the-world-lets-destroy-bitcoin-725700434a8f
В этой связи, инвестиция Tesla в BitCoin расставляет точки над i. Tesla - это про зелёное будущее или про силу интернет мемов? Конечно, второе.
Кстати, когда у основателя DeLorean пошатнулись дела, он занялся контрабандой кокаина, но был пойман (1982). Самая крутая тачка того периода, если кто помнит "Назад в будущее". Такая вот параллель.
Medium
Green hackers around the world, let’s destroy Bitcoin
Bitcoin is the worst waste of resources and energy in human history. It is solely used for financial speculation, with no genuine utility…
На прошедшем в выходные FOSDEM был трек про распределенный Веб, были интересные докладчики https://fosdem.org/2021/schedule/track/beyond_blockchain_distributed_web/
Доклад от IPFS при этом шёл в треке "Open Research Tools and Technologies" https://fosdem.org/2021/schedule/event/open_research_filecoin_ipfs/ Видимо, IPFS интересна и другая аудитория, помимо энтузиастов крипты и децентрализации :) Что ж, это очень зрелый подход.
Доклад от IPFS при этом шёл в треке "Open Research Tools and Technologies" https://fosdem.org/2021/schedule/event/open_research_filecoin_ipfs/ Видимо, IPFS интересна и другая аудитория, помимо энтузиастов крипты и децентрализации :) Что ж, это очень зрелый подход.
archive.fosdem.org
FOSDEM 2021 - Beyond Blockchain - Distributed Web devroom
Теперь про RON. В системе PLS/DaRWiN добрый старый markdown в реализации commonmark.org был заменен на свой собственный минималистичный диалект *с формальной грамматикой*, названный StrictMark http://doc.replicated.cc/%5EWiki/strictmark.sm
Такой дерзкий подход был, тем не менее, с интересом принят сообществом CommonMark :)
Такой дерзкий подход был, тем не менее, с интересом принят сообществом CommonMark :)
RON, DaRWiN и diff'ы по Майерсу
Одно из демо-приложений RON это система контроля версий DaRWiN. На данный момент эта система хранит документацию RON, ну и понятно, работает подопытным кроликом. Мерж там, понятное дело, бесконфликтный, на основе CRDT (CT Chronofold).
Поскольку система реал-таймовая, то контроль версий, неизбежно, посимвольный. Исторические diff и patch, и всё что их использует (git, например), отслеживают изменения построчно (есть нюансы). Во многом это из-за того, что сложность алгоритма у diff это O(ND), где N размер текстов и D количество изменений. Понятно, что при посимвольном разборе N будет больше, да и D тоже. На глазок, раз в 60-70 :) Исторически, вероятно, компьютеры не тянули столько. Тем более, есть вероятность, что какой-нибудь маньяк засунет в систему не только Войну и Мир (все 2.5MB), но и какой-нибудь CSV файл с результатами всекитайской переписи.
Вторую проблему DaRWiN решает просто: CSV это другой тип данных и diff для него другой, не посимвольный. DaRWiN хранит структуры данных (текст, таблица), а не буковки.
А первую проблему интересно было проверить. Поэтому я взял Войну и Мир и все запятые там заменил на точки с запятой. Это максимально неприятный сценарий, 30тыс изменений и нельзя отрезать неизменные голову и хвост, упростив задачу. Что ж, некоторое время алгоритму пришлось подумать. Но не так долго.
Вывод? Нет причин не использовать посимвольные diff'ы в DaRWiN. Это сильно упрощает вычитку и коррекцию текста. Это позволяет показать нормальные diff-ы после re-wrap'а текста. И это работает в реальном времени.
Но если вам не нравятся запятые у Льва Толстого, то, конечно, придётся медленно вдохнуть и выдохнуть.
Одно из демо-приложений RON это система контроля версий DaRWiN. На данный момент эта система хранит документацию RON, ну и понятно, работает подопытным кроликом. Мерж там, понятное дело, бесконфликтный, на основе CRDT (CT Chronofold).
Поскольку система реал-таймовая, то контроль версий, неизбежно, посимвольный. Исторические diff и patch, и всё что их использует (git, например), отслеживают изменения построчно (есть нюансы). Во многом это из-за того, что сложность алгоритма у diff это O(ND), где N размер текстов и D количество изменений. Понятно, что при посимвольном разборе N будет больше, да и D тоже. На глазок, раз в 60-70 :) Исторически, вероятно, компьютеры не тянули столько. Тем более, есть вероятность, что какой-нибудь маньяк засунет в систему не только Войну и Мир (все 2.5MB), но и какой-нибудь CSV файл с результатами всекитайской переписи.
Вторую проблему DaRWiN решает просто: CSV это другой тип данных и diff для него другой, не посимвольный. DaRWiN хранит структуры данных (текст, таблица), а не буковки.
А первую проблему интересно было проверить. Поэтому я взял Войну и Мир и все запятые там заменил на точки с запятой. Это максимально неприятный сценарий, 30тыс изменений и нельзя отрезать неизменные голову и хвост, упростив задачу. Что ж, некоторое время алгоритму пришлось подумать. Но не так долго.
Вывод? Нет причин не использовать посимвольные diff'ы в DaRWiN. Это сильно упрощает вычитку и коррекцию текста. Это позволяет показать нормальные diff-ы после re-wrap'а текста. И это работает в реальном времени.
Но если вам не нравятся запятые у Льва Толстого, то, конечно, придётся медленно вдохнуть и выдохнуть.
Вчера было интересно. Меня немного занесло и я сделал скриптовый язык поверх RON. То есть, весь парсинг и типы RON'ом уже решены, так что добавить нужно было немного. Тем более что язык сам прорастал через асфальт, разные тулзы уже использовали свои маленькие микроязычки команд. А конкретно сейчас меня подтолкнул маленький случай кодогенерации на awk, который выглядел, как плевок. Все эти грязные сепараторы и липкая пунктуация... нехорошо.
За день работы язык научился выполнять заклинания вроде
Назвал Drone (произносится "дрын").
Для простой кодогенерации пока достаточно, развивать буду по мере необходимости.
За день работы язык научился выполнять заклинания вроде
for id string in 'ron/status.ron', write _1 _2;
где большая часть слов, технически, 128 битные UUID-ы в Base64 записи, но это станет заметно только тогда, когда мы попытаемся объявить переменную с именем длиннее 20 символов. Чем такой язык лучше awk и прочих? В первую очередь, типизацией. Все переменные это туплы RON из RON атомов (UUID, INT, STRING, FLOAT). Вся обычная возня с парсингом уходит, данные ощущаются скорее как Excel, чем как командная строка UNIX.Назвал Drone (произносится "дрын").
Для простой кодогенерации пока достаточно, развивать буду по мере необходимости.
# B-tree, LSM tree и хэш таблицы
Весь мир баз данных покоится на двух китах: B-trees и LSM-trees. Это две структуры данных, которые позволяют хранить значения упорядоченно и находить значение по ключу за O(logN). B-деревья мутабельны и представляют из себя просто дерево с большим раздувом. Новые значения просто вписываются в свободную ячейку. LSM-деревья иммутабельны и представляют из себя набор "кирпичей" с отсортированными значениями, которые периодически мержатся. Но есть классический контейнер, который в базах данных не популярен - хэш-таблица. Хотя она и позволяет читать значения по ключу за O(1), в хэш-таблице невозможны range scans, так как значения не упорядочены. Теперь допустим, что вам не нужны range scans. Вы просто пишете и читаете точечные значения. Что получается? А получается довольно интересно.
Если вы сделали mmap файла (а то и неразмеченного диска), то вы можете легко превратить его в хэш-таблицу с открытой адресацией. Если размер файла - степень двойки, и размер хранимого значения тоже, то жизнь вообще прекрасна. Во-первых, вся арифметика хэш-таблиц становится простой и круглой. Во-вторых, записи будут выровняны на границы секторов диска, а значит некоторые гарантии консистентности вы получаете просто так, на халяву. Поскольку запись сектора более-менее атомарна (во всяком случае, и БД и файловые системы часто полагаются на это).
В простой таблице с открытой адресацией нельзя хранить нули, плюс есть ещё кое-какие сложности при удалении элементов (освободившиеся ячейки плохо взаимодёствуют с открытой адресацией). Поэтому следующий шаг - добавить битмап занятости, причём битмапы должны быть в одном секторе со своими ячейками, для консистентности. Так мы получаем уже полноценную хэш-таблицу, куда уже можно складывать и нули.
Пожалуй, следующий логоческий шаг - обобщить до hash set. Если в наивном хэшмапе есть "ключ" и "значение", желательно одинаковой длины, то в hash set есть просто entries, для которых определены хэш-функция и равенство (ключей). В hash set уже можно складывать всякие забавные entries, например по 32 бита, где 31 бит это ключ и 1 бит это значение.
Получившаяся структура данных чем-то напоминает автомат ППШ - могучее оружие, собранное на коленке из говна и палок.
Весь мир баз данных покоится на двух китах: B-trees и LSM-trees. Это две структуры данных, которые позволяют хранить значения упорядоченно и находить значение по ключу за O(logN). B-деревья мутабельны и представляют из себя просто дерево с большим раздувом. Новые значения просто вписываются в свободную ячейку. LSM-деревья иммутабельны и представляют из себя набор "кирпичей" с отсортированными значениями, которые периодически мержатся. Но есть классический контейнер, который в базах данных не популярен - хэш-таблица. Хотя она и позволяет читать значения по ключу за O(1), в хэш-таблице невозможны range scans, так как значения не упорядочены. Теперь допустим, что вам не нужны range scans. Вы просто пишете и читаете точечные значения. Что получается? А получается довольно интересно.
Если вы сделали mmap файла (а то и неразмеченного диска), то вы можете легко превратить его в хэш-таблицу с открытой адресацией. Если размер файла - степень двойки, и размер хранимого значения тоже, то жизнь вообще прекрасна. Во-первых, вся арифметика хэш-таблиц становится простой и круглой. Во-вторых, записи будут выровняны на границы секторов диска, а значит некоторые гарантии консистентности вы получаете просто так, на халяву. Поскольку запись сектора более-менее атомарна (во всяком случае, и БД и файловые системы часто полагаются на это).
В простой таблице с открытой адресацией нельзя хранить нули, плюс есть ещё кое-какие сложности при удалении элементов (освободившиеся ячейки плохо взаимодёствуют с открытой адресацией). Поэтому следующий шаг - добавить битмап занятости, причём битмапы должны быть в одном секторе со своими ячейками, для консистентности. Так мы получаем уже полноценную хэш-таблицу, куда уже можно складывать и нули.
Пожалуй, следующий логоческий шаг - обобщить до hash set. Если в наивном хэшмапе есть "ключ" и "значение", желательно одинаковой длины, то в hash set есть просто entries, для которых определены хэш-функция и равенство (ключей). В hash set уже можно складывать всякие забавные entries, например по 32 бита, где 31 бит это ключ и 1 бит это значение.
Получившаяся структура данных чем-то напоминает автомат ППШ - могучее оружие, собранное на коленке из говна и палок.
Примечания.
Ода хэш-таблице написана, пока фаззилась её очередная итерация. Объём кода - 350 строк (это cpp шаблон). Под "говном и палками" я подразумевал "штамповка без фрезеровки" :)
Ода хэш-таблице написана, пока фаззилась её очередная итерация. Объём кода - 350 строк (это cpp шаблон). Под "говном и палками" я подразумевал "штамповка без фрезеровки" :)
Доклад про RON на HighLoad++ Весна 2001
https://www.youtube.com/watch?v=x88RCCRV48o
https://www.youtube.com/watch?v=x88RCCRV48o
YouTube
libron - доклад на HighLoad++'21
Всего-то прошло 10 лет (ровно) с той заметки, где я разобрал BitCoin. В том числе, я тогда сказал, что этот протокол "not green at all" по самому принципу своего действия. И вот уже Сам Гениальнейший Илон Маск вынужден был это признать.
Вывод. Читайте мой канал, что появится тут - Маск допетрит лет через 10.
Кстати, я и по блокчейну скоро кое-что напишу интересненькое.
https://web.archive.org/web/20180624093746/http://www.ds.ewi.tudelft.nl:80/~victor/bitcoin.html
Вывод. Читайте мой канал, что появится тут - Маск допетрит лет через 10.
Кстати, я и по блокчейну скоро кое-что напишу интересненькое.
https://web.archive.org/web/20180624093746/http://www.ds.ewi.tudelft.nl:80/~victor/bitcoin.html
Другое мое заключение - что анонимности BitCoin не предоставляет - недавно было подтверждено экс-директором ЦРУ. Что неплохо. Также недавно вычислили и арестовали основателя BitCoin Fog - через его транзакцию 10 летней давности.
https://m.habr.com/ru/company/globalsign/blog/556590/
https://m.habr.com/ru/company/globalsign/blog/556590/