Search
Write a publication
Pull to refresh
-3
0.1
Send message

В целом да Австралия в этом плане - запретов всего подряд - намного ближе к России, в НЗ я не помню что бы были какие-то похожие запреты. Вот в школах гаджеты запрещены и больше я не помню. Я раньше был где-то посередине между левыми и правыми и сильно против религии и церкви в частности и в целом нейтрален к лбгт, но пожив я понял, что правые сегодня эталон адекватности, а церковь необходимый противовес лбтхне. Запрет соц сетей детям звучит не так чтобы что то плохое, цензура игр большая проблема.

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

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

Скажем так я оч сомневаюсь в реалистичности сценария когда ваш сосед адвокат подаёт на вас в суд за то что вы ему газонокосилку не вернули. Даже сосед адвокат не станет этим заниматься разве что из упоротости.

Ну а так в целом я думаю когда будете на кого-то в суд подавать вам придется адрес указать и тому человеку придет письмо на почту. В любом случае это не будет для него сюрпризом.

Спасибо за детали, было интересно и в целом ваш вариант для моей задачи реально альтернатива. И отдельно спасибо за карму.

Я не знаю о чем вы говорите про цензуру. У меня всё открывается, но я всем интернетом и не пользуюсь. Телевизор я перестал смотреть ещё в России 25 лет назад так что я ваще хз есть там цензура или нет.

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

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

Я понятия не имею какие сейчас тут эмиграционные перспективы меня этот вопрос давно не интересует, но кажется стало сложнее.

Давайте я вам расскажу об НЗ чтобы вас отговорить, если не испугаетесь то можете дальше гуглить. Тут бля дорого жить, буквально все дороже процентов где то на 30 и мало того ассортимент меньше. Отсюда дорого куда-то лететь ибо жопа мира. Туризм местный оч дорого, дешевле в Австралии отдыхать чем здесь. Я не знаю как вы лично относитесь к социализму, мне не нравится его тут не мало, но он такой однобокенький преимущественно направленный на маори. Маори это проблема. Лгбтхня меня лично не парит пока не трогает детей, стало чуть лучше им вщимили слегонца они вроде пока отстали от школ, видимо до следующего прихода леваков. Леваки это проблема, зелёные это большая проблема источник всех запретов для чьей то выгоды, к экологии отношения не имеющие - ну это все мое мнение конечно. Вам будут втирать, что тут нет корупции - п...т. Бытовой оч мало, а вот запретить ввоз каких товаров чтобы не мутить местный рынок например стройматериалов - это не коррупция ненене. Да это тут холодно. Жилой фонд гавно, но становится лучше правда медленно. Солнце оч активное - это проблема. Еда, ну овощи фрукты молоко мясо норм, рыбы речной не продают, океанская есть ну в целом норм, а вот рестораны гавно. Ну т.е. хорошие есть, но надо их искать. Если пойдете в рандомный за среднюю цену в районе то 90% будет разочарование. Культуры в широком смысле слова мало.

Есть много хорошего это вы и сами легко нагуглите - в целом после того как леваков прогнали ссаными тряпками стало норм, пока были леваки я уже собрался валить в Австралию, но дом продать не смог по той цене что хотел и решил подождать стало получше - жить можно. В общем как и во многих местах тут не рай ваще, но не ужас ужас ужас, жить можно. Если что для сравнения Россию я считаю ужасом, северную Корею ужас ужасом. Перспективы правда мне лично туманны, если бы не леваки и маори, то я бы даже рекомендовал, а так сложно угадать как тут будет дальше.

Трэк листы для диджеев. Там были требования от ПО чтобы делать агрегацию, как по пути к листу между несколькими дисками, так и парент/чаилд. Т е. все трэки из всех чаилд листов должны показываться и в пэрент листе и над всем этим юзер может задать ручной порядок. Зачем? За сараем, надо и все тут. И вот таким образом корневые списки содержат сотню тысяч трэков. Я это реализовал как один единственный список, а подписки это именованные пересекающиеся рэнджы внутри этого большого списка.

Там по сути 2 структуры, одна обычное дерево каталогов/имена/пути списков и собственно 1 единственный список всех трэков ему соответствует рут каталог.

Мёрж у меня тривиален - более свежие юниты заменяют более старые. Фактически, юниты образуют grow only map.

Поясню вопрос. Вы вероятно храните это дерево в базе. Эту базу я называю снапшотом. Чтобы смержить 2 дерева самый простой способ пройтись по ним обоим/снапшотам целиком, но это дорого для больших деревьев. Есть техники которые позволяют найти общие узлы и не пересылать их. Т.е. по сути оптимизация мерджа это расчет разницы между 2 снапшотами и пересылка только этой разницы, а не всего снапшота.

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

Так вот за счёт ваших часов можно гарантировать, что на всех пирах этот узел уже без данных. После чего в теории можно как-то выбрать такие узлы без конфликта для переисполльзоаания, но я не думал над этим вопросом. Так с 2 линками не перенесется.

Ну онлайн указал адрес почтовый/физический в чем то типа ГАИ, какой хочешь туда можешь написать, это тебе нужно, а не им. На этот адрес приходят штрафы за превышения скорости от камер и уведомления заплатить дорожный сбор ежегодный. Вероятно уже можно пойти заменить на еиайл, но мне лень и так работает. В налоговой там вообще только емайл. В банках тоже везде емайлы уже, раньше ещё и бумаги слали.

В общем только в ГАИ у меня физический адрес, а в остальных местах емайл.

А в какой, например, стране?

В НЗ. Паспорт, сделал фотки сам дома на телефон, послал форму заплатил онлайн получил готовый документ прямо в почтовый ящик, можно даже за границей, но не везде. Рождение детей, точно также жена заполнила все онлайн по почте пришли свидетельства. Визы для бабушек точно также. Голосование на местном уровне тоже все по почте. Регистрация машины - ну вы наверное уже догадались - форма онлайн. Гражданство - форма онлайн.

Я даже со скуки в ковид на электрика в политех поступил, на халяву - тоже все документы онлайн, студенческий билет на почту пришел.

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

Прописки нету, но есть покажи счета на свое имя по своему адресу которые я в принципе бумажными здесь не видел.

Школа, тоже запись онлайн была.

Для таможни заводил номер импортёра когда с Амазона много комплектующих покупал на комп, тоже все онлайн.

В больничку вообще по телефону можно записаться. Ковид сертификаты и вакцинация само собой онлайн запись была.

Всякие справки на дом для продажи тоже онлайн правдо дорого сука было.

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

И это все разные никак не связанные, независимые друг от друга конторы и сервисы, даже если гос. Централизация ничего не даёт, единый стандарт/интерфейс не нужен.

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

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

А теперь опыт с российским консульством - поменять паспорт записуйся заранее месяца так за три. Заполни все форму, а потом все равно сука прилетай в другой город чтобы снова эту же форму заполнить, но теперь руками и сфоткаться на скрепную камеру. А да в туалет нельзя, зайти выйти только по кнопке на домофоне, а консульство в частном секторе т.е. это твои проблемы если захотел в туалет. Само собой очереди, душно кондиционера нету. Хоть вода была уже прогресс. Спасибо хоть почтой паспорт готовый отправили. Хотел встать на консульский учёт - прилетай - перехотел. Детям гражданство в принципе не делал, чтобы они вообще никак с этим дурдомом не были связаны.

Такс, у меня похожее было, но я вместил все в в7 юид. 4 байта на секунды, 1 байт на сабсекунды, 5 байт на пир и 2 на логическую часть времени. Время HLC вместо векторных часов - список реплик открытый. Сортировка/порядок байт в уиде также была сначало по времени потом по пиру/реплика айди потом по операции внутри транзакции. Я делал журнал операций вместо классических срдт и оч агрессивно сжимал метадату, у меня была сущность сессия, набор непрерывных транзакий на одном пире, транзакции в сессии шарили пир айди и базовое время сессии, все операции в транзакции шарили оффсет времени от базового времени сессии и номер операции я вообще не хранил - порядковый номер операции внутри транзакции. Ссылки на элементы внутри одной транзакции тоже только номер, в одной сессии офсет время + номер, ну и когда надо полный уид. Это очень сильно экономит место на метадату, но я не оч представляю как нечто подобное можно применить не для лога, а для снапшота. Это тот вариант который был реализован первым и в конечном итоге победил, но я ещё и снапшоты / классические срдт рассматривал. Казуальное дерево с гробиками. Да удобство лога в том что размер групповых операций аля пересортировать от числа элементов в списке не зависит, а в снашоте все элементы обновят мету.

У вас получается если выкинуть всю ту метадату которая мне не нужна это 2 ссылки на элемент + мета. Даже если также в уид ужаться это 36 байта, у меня была только 1 ссылка 12 байт. Сами элементы это еще 2 уид, т.е. отношение данные к мете у меня 1:2 в худшем случае, а с вашим списком 3:2 всегда. У меня был другой трэйдофф эффективный мердж требовал периодически создавать снапшоты, ну как в гите. В теории можно было любую версию извлеч, но это не требовалось и не реализовывались, а конечный снапшот у меня в инмемори скулайте лежал. По сути это был wal и изредка делался снапшот на какую-то версию. Полный лог должен был в облаке лежать, а локально снапшот + следующий за ним лог.

У вас сложный алгоритм сборки списка, нужен промежуточный именно список для эффективной вставки + хэш таблица айди - указатель в списке для о1 поиска + очередь + несколько проходов и это все надо делать в памяти, т.е сначало надо всю мету по элементам списка зачитать из бд собрать список, в уже потом перечитать сами данные в правильном порядке. У меня обычный СТЕ(да тоже очередь, но скрытая) по линкам сразу на выходе даёт готовый результат. Объем данных у меня очевидно пропорционален числу юзер кликов по мышке/операций, у вас объему элементов в списке. И так получается что юзеры у меня создают эти списки оч часто едиными транзакциями, а потом изредка их меняют и суммарно лог операций с сжатой метой занимает меньше места чем снапшот с полной метой для большинства юзеров. У них много элементов реально до ста тысяч, но мало изменений/операций и все это должно на эмбедед железках работать.

Кстати как вы делаете/оптимизирует мердж снапшотов? Как разницу считаете что бы все не слать? У меня то обмен идёт сессиями и мне достаточно найти общего предка просто отослав друг другу айди сессий, а потом переслать друг другу сессии с общего предка.

Но ваш вариант похоже тоже рабочий, но совсем другой набор трэйдофов он выиграет в случае когда элементов не оч много, а вот изменений много.

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

Да, так намного понятней, спасибо. Но я всё ещё не убежден что там нету квадрата.

В конечном - все юниты имеют одинакового пустого лидера и по очереди вытесняют предыдущего с первой позиции тоже за линейное время.

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

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

Но как вы назвали паразитный перенос для меня фатален. Можете показать такой же нотацией с фоловером? И почему вы не любите букву Е?

Я попробовал у меня так получилось

_Ab1 aBc2 bCd3 cDe4 dE_5

_Ab1 aCb6 aBc2 cDe4 dE_5 | _Ab1 aDe7 aBc2 bCd3 dE_5

_Ab1 aDe7 aCb6 aBc2 dE_5

Вроде то что надо.

Теперь сортировка чтобы она не стала квадратом надо чтобы все узлы имели разное время, а иначе если у всех одинаковые то пойдёт сортировка по лидам и все поломает. Тут проблемка вылезает на больших списках точность 100мс приводит к проблемам. Если взять список на 1000 элементов хотя бы то получается 100 секунд - это никуда не годится. 100 микросекунд точность была бы норм для моей задачи, но в целом это костыль. Групповая операция должна конечно использовать одно и то же время для всех элементов.

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

Я ещё пару раз перечитал и вижу что интент не сохраняется. Например есть список 1, 2, 3, 4, 5 на время т1. На одной реплике во время Т2 юзер делает - поставить 3 после 1. На другой во время т3 поставить 4 после 1. Ожидаемый результат мерджа : 1, 4, 3, 2, 5. По вашему алгоритму (опять же если я правильно понял, а ваши объяснение не оч помогли если что) то результат будет таким же как во второй реплике на время т3: 1, 4, 2, 3, 5.

И да там точно квадрат вылезает, если взять первоначальный список и применить ряд перестановок аля, 5, 1, 2, 3, 4; 4, 5, 1, 2, 3; ... 1, 2, 3, 4, 5. Т.е. вернуться к первоначальному порядку, то согласно алгоритму элементы в очереди будут в худшем случае нужно будет пропускать все до самого последнего и только последний попадет в результат и так для каждого - классический квадрат.

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

В общем все равно не зачёт.

Можете дать ссылку на детальное описание листа или здесь опишите, а то я из ссылки выше не понимаю где это искать

Так мы об одном и том же говорим. Как делается перемещение? В одном месте удалили в другом добавили. А реодер это удалить все и вставить заново в нужном порядке.

Пересортировать список это сразу +Х к числу гробиков где Х это число живых элементов списка. 10 раз сделали получили 10Х гробов + Х живых. Так что быстро растет в тех задачах где есть такие операции.

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

Я нашел способ со сборкой мусора, но все становится на порядок сложнее.

Ошибся, мердж тоже зачет, но гробики все портят конечно.

Что подходит:

  • Дубликаты можно

  • Интент сохранен для базовых операций

  • Все индивидуальные операции работают прилично

  • Групповые тоже, но дорого по памяти

Removed item is remain as tombstone for ordering purposes.

+

Открытый список реплик (невозможность габэдж колекшена без каких то трэйдофов)

+

групповые операции на всем списке аля пересортировать все

=

оч быстро приведут к неприличному размеру данных большая часть которых абсолютно бесполезна.

Алгоритм выглядит как квадрат в худшем случае.

Результат мерджа не сохраняет интент получится фарш на выходе.

Так что не зачёт.

Это все довольно тривиально. Реальные задачи намного веселее.

Расскажите лучше про то как делать упорядоченные пользователем списки да так чтобы интент сохранялся в большинстве случаев, а да забыл элементы в списках не уникальные. Стандартный набор операций добавить, удалить, переместить, заменить. Интент пользователя это задание относительного порядка между элементами списка, т.е. пользователь добавляет/удаляет/перемещает элемент А под элементом Б. Есть групповые операции например пересортировать весь список. Списки размером хотя бы до тысячи элементов. Список реплик открытый - нету возможности сказать, что все реплики получили все изменения и можно безопасно собрать мусор это стандартное требования оффлайн фёст где реплика это просто файл на флэшке который можно скопировать на много других флэшек и например потерять одну из копий.

Уже этого описания достаточно для диссертации, но если, что у меня больше требований - списки сгруппированы в дерево наподобие файловой системы где список это директория - именновпный список, а элементы файлы. Порядок списков в дереве тоже задан пользователем, и самая мякотка - есть операция мерджа двух деревьев, но не по айдентити, а по значению/именам списков, ну или по простому по пути когда два списка с одинаковым путем от корня надо объединить.

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

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

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

1
23 ...

Information

Rating
6,681-st
Registered
Activity