Обновить
25

Software Engineer

4
Подписчики
Отправить сообщение

Странная подборка, про некоторые альтернативы первый раз слышу, при этом забыли старичков (Vim, Emacs, не говоря уже про их новые вариации типа Neovim, Spacemacs, Kakoune) и более известные альтернативы (Notepad++).


Про себя: использую Emacs с тыщей плагинов и модальным редактированием как в Vim (evil-mode), но это меньшее зло, идеального редактора не существует. Очень большие надежды возлагаю на xi-editor, быстрый модульный редактор на Rust, и по мере сил участвую в его разработке, но он перманентно в недоделанном состоянии, а в создании экосистемы плагинов для него ещё конь не валялся, годы пройдут, пока она вырастет до уровня конкурентов.

Есть какие пруфы, анализ алгоритмов для того, чтобы утверждать, что это «недокриптомессенджер»?

Привязки к телефону, отсутствия федеративности (в протоколе), и причисления десктопа к второсортным платформам вам недостаточно? Безопасность — комплексная мера, она не исчерпывается только качеством криптоалгоритмов (с которыми у signal/open whisper проблем нет, он использует известные криптографические примитивы)


сопли размазываются о том, каким образом распространяется приложение

Что значит "сопли размазываются"? Технический ответ на критику деВолта, а не бросание эпитетами, можно услышать?


при этом подключаться к серверам сигнала

Мне это нафиг не надо (если бы была федеративность), а без федеративности всё определяется моим доверием к оф. серверам, которое подорвано как раз играми мокси с вендорлоком.


подними свой сервер и подключайся к нему.

Без федеративности пользователи любого сервера замкнуты сами на себе, в таком виде форки (libresignal) нужны примерно полутора анонимусам.


собрать себе билд

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

По-вашему, сложность аудита кода сопоставима со сложностью проверки цифровой подписи? Не надо доводить мои утверждения до абсурда.

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

Как же достал пиар этого недокриптомессенджера. Помимо общеизвестного факта привязки к номеру телефона (и ориентации на мобилки — десктоп версия сильно урезана), у него ряд других проблем, прекрасно описанных небезызвестным Drew DeVault в статье "I don't trust Signal". TL;DR продвигает централизованную закачку через Google Play как единственно приемлемую, не одобряет распространение приложения через F-Droid, не разрешает форкам подключаться к своим серверам (т.е. по факту централизован), лидер проекта врёт и выкручивается в ответ на критику. От себя: отсутствует в оф.репах дебиана/убунты из-за желания контролировать каналы дистрибуции.

+1 за pacman из msys2, единственный известный мне пакетный менеджер под windows, создатели которого не изобретают велосипед (winget, mingw-get, chocolatey), а портируют 1:1 то, что уже наработано в линуксе.

компилятор не является компонентом ОС.

Как же не является, вон он в образ для эльбруса входит. Огорчу вас, единственного несвободного бинарника достаточно, чтобы дистриб формально считался несвободным, так что формально доказать свободность у вас не получится. По критериям fsf несвободны даже debian и slackware из-за поставки несвободных компонент. Свободны некоторые маргинальные дистрибутивы типа trisquel, но в обычной жизни это требование всё-таки ослабляется до "следования духу СПО" и возможности выкинуть несвободный софт без ущерба для функционала. Debian это позволяет, альт нет. Почитайте:


https://opensource.stackexchange.com/questions/4995/can-i-distribute-gpl-software-built-by-a-custom-compiler


"If nobody is ever going to be able to modify the software without your blessing it is simply not free and cannot possibly be GPL compliant regardless of any word-wrangling you may attempt."


Ну и вообще, вы сейчас пытаетесь прикопаться к формулировкам, забывая, что 4 свободы — это абстрактные требования и формально доказать их нарушение попросту нельзя. Есть конкретные лицензии, неплохо бы обсуждать совместимость с ними. Например с GPL v2/v3 поставка несвободного компилятора не совместима:


https://opensource.stackexchange.com/questions/2688/do-you-violate-the-gpl-if-you-provide-source-code-that-cannot-be-compiled


можете обратиться к альтовцам

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

Как это нарушает свободу ОС?

Я вам только что указал, какая из свобод и каким образом нарушается. Дальнейшее обсуждение в этой части считаю бессмысленным.


свободные программы можно писать только на свободных компиляторах и точка.

Как-то вы плавно забыли, что речь идёт не просто о написании программ, а о поставке бинарников в составе дистрибутива. Если я просто публикую исходники с указанием gpl — программа свободна. Даже если она просто не компилируется или её невозможно собрать под свободной ОС. Если я строю дистрибутив с поставкой бинарника этой программы и этот дистрибутив не воспроизводим из исходников без проприетарщины — он несвободен.


то есть ещё раз, вы записали компилятор в основную функцию ос и из его несвободности вывели несвободность ОС?

Именно. Проблемы, офицер?


И что такое заявление ложно?

Да. Кстати заявление скорее всего написано альтовцами.


А единственный аргумент — это компилятор и что?

А что, одного аргумента недостаточно?

x86 не open hardware, но по крайней мере имеет публичную спеку в отличие от эльбруса.
И?

Это неявно нарушает свободу 1: если даже будет открыт код компилятора (конкретно, его бэкенда), то без документации на ассемблер он будет бесполезен как для понимания логики работы, так и для разработки новых фич.


Про компиляцию: несвободный компилятор под эльбрус является не сторонним компонентом для сборки компонентов альта, а системным компонентом ОС
С чего это? Визаулстудия является системным компонентом ОС?

Вы прикидываетесь? Какая студия? Студия не является. Компилятор под эльбрус (lcc) — является. Если ОС можно собрать только visual studio / компилятором эльбрус, она, сюрприз, несвободна, не говоря уже о том, что собрать её я не могу на данный момент НИЧЕМ, тк не могу собрать один из её ключевых компонентов — компилятор.


причём не имеющим свободных альтернатив
Ииии?

Ииии имеем ОС, которую нельзя заменой компонент превратить в свободную, как это можно сделать с убунтой, дебианом итд (удалив firmware-linux-nonfree, проприетарный софт и прочее подобное)


Ну и кроме того альт несвободен из-за несвободности лицензии для юридических лиц
И свободен для физических. И?

Это ограничение на распространение копий, несовместимое со свободами 2 и 3.

x86 не open hardware, но по крайней мере имеет публичную спеку в отличие от эльбруса.


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

"Под свободной ОС"? И давно архитектура эльбруса и компилятор под неё свободны?

И почему он вдруг потеряет в функциональности, если как вы утверждаете код сервера открыт?

Upd: Этот вопрос снимается, невнимательно читал

Из вашего коммента так и не понятно, в чём проблема поиска юзернейма в jabber.


Единственное, что jabber ищет только в пределах одного сервера (точнее, XEP-0055 просто не говорит ничего о том, из каких данных сервер формирует ответ), но я бы не назвал это недостатком. В токсе вообще поиска контактов нет как такового, собеседник должен вам напрямую выдать свои контактные данные, и это даже лучше (проще, секьюрнее).

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

???
Можно с этого места поподробнее? Почему это вдруг автор альтернативного сервера теряет возможность общения между серверами, если протокол открыт? И почему он вдруг потеряет в функциональности, если как вы утверждаете код сервера открыт?


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

Эм, выгода как минимум в перетягивании клиентов на свой сервер. Что-то я не понимаю вашу модель монетизации. Или вы всё же реализуете в какой-то форме вендорлок, чтобы принудить юзеров платить, и тогда вашему мессенджеру дорога туда же, куда и десяткам вендорлокнутых мессенджеров до вас. Или, предположим, вы действительно реализовали идеальный протокол, открыли клиент, сервер. Что тогда мешает клиентам перейти на форк вашего сервера, где не надо ничего никому платить? Вы так уверены, что форков не будет?

Вот-вот. Vivante тоже далеко не образец open hardware.


Хотели бы полностью открытую платформу, брали бы MIPS, а так это очередная фикция типа Pinebook.


Кроме того, почти уверен, что дистрибутив будет гвоздями прибит к железу, как обычно бывает с ARM.

Тут нужна не просто уникальность, надо ещё реализовать аналог фамилии (отсылка к уиду отца/матери или к ветке генеалогического дерева). Задачка кстати довольно содержательная. Я бы использовал в качестве имени хэш дерева Меркла, по крайней мере на первый взгляд. "БОЧ РВФ <date>" кстати крайне фейловая схема именования с инженерной точки зрения. :)

На musl основан их дистрибутив stali, uclibc тоже где-то у них засветился (точно видел в списке "rocks"). Но да, виноват, из моего коммента может сложиться впечатление, что они являются авторами этих рантаймов (что неверно).

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

Хрена себе "не имеет". Как минимум это центральный полигон проекта suckless.org, мирового оплота единственного, в некотором роде, нормального софта под unix (musl, uclibc, dwm/dmenu, st, surf...) и некоторых уникальных вещей (sam, 9p)

По-этому просто iter() и работа с двойной ссылкой

Не обязательно загромождать код оператором разыменования, тк в rust есть deref coercion и компилятор может автоматически разыменовывать ссылки (примерно как в c++):


fn good_idea() {
    let scholars: Vec<Scholar> = Vec::new();
    let girls_c = scholars.iter().filter(|s| s.sex == Sex::Female).count();
    let boys_c = scholars.iter().filter(|s| s.sex == Sex::Male).count();
}

Аналогично в других кусках кода.

Не забывайте, что использование Popcorn Time по-прежнему является пиратством

Возраст этого заблуждения примерно равен возрасту анекдота "но аппарат же есть".
Смотришь через Popcorn Time свободный медиафайл типа Sintel? В тюрьму!

Информация

В рейтинге
Не участвует
Откуда
Ирландия
Зарегистрирован
Активность