[00:04:31] <ada_ru> (Лекс) разработчиков ещё стимулировать не плохо бы
[00:05:58] <ada_ru> (vasil_sd)  отвечает (Лекс) на <разработчиков ещё ст…>
Есть площадки, где предлагают баунти всякие за поддержку проектов и пр. Но они не пользуются большой популярностью.
Есть краудсорсинг.
И тд.

Приличное множество вариантов есть.
[00:07:13] <ada_ru> (vasil_sd)  отвечает (Лекс) на <разработчиков ещё ст…>
Так что у разработчиков есть возможность запросить стимуляцию :)
Но будет ли она и в каком объёме - это уже как повезёт
[00:11:35] <ada_ru> (vasil_sd) И да, рассчитывать на благодарность людей делая что-то хорошее для них - не стоит. Всегда есть такие, которые будут ещё считать что ты им и должен остался.
Показательна история вот этого человека: https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D1%80%D0%B0%D0%BF%D0%B5%D1%82%D1%8F%D0%BD,_%D0%A8%D0%B0%D0%B2%D0%B0%D1%80%D1%88_%D0%92%D0%BB%D0%B0%D0%B4%D0%B8%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B8%D1%87
Если мне память не изменяет, там одна дамочка наехала на пловца из-зи того, что типа он документы не вытащил из затонувшего автобуса, по-моему даже в суд пробовала подать....
[00:14:22] <ada_ru> (Максим)  отвечает (vasil_sd) на <Смотрел логи, но так…>
Я поспрашиваю, может что узнаю
[00:14:44] <ada_ru> (vasil_sd)  отвечает (Максим) на <Я поспрашиваю, может…>
Ага, спасибо

А то уже и так и сяк пробовал....
[00:16:13] <ada_ru> (Oleg)  отвечает (vasil_sd) на <И да, рассчитывать н…>
Ну я считаю помогать бедным/больным/старикам да, нужно не расчитывать не на что.  А выкладывать код помогая кому-то и читать от них ручательства .... да пошли они на х..... :-) не инвалиды пусть сами делают
[00:17:27] <ada_ru> (Oleg) А не могут - пусть купят :-)
[00:17:55] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Ну я считаю помогать…>
Так там, насколько я понял, ругательства были от какой-то небольшой относительно группки, "особо одарённых".
Судя по реакции остальных, подавляющее большинство были адекватные
[00:18:53] <ada_ru> (vasil_sd)  отвечает (Oleg) на <А не могут - пусть к…>
Да, как вариант. Бесплатно - такое, а если вам нужно везде safe режим - то вот специально для вас за небольшую плату :)
[00:20:23] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Ну я считаю помогать…>
Как в одном мультике было "делай добро и бросай его в воду" :) Типа не жди в ответ ничего
[00:20:37] <ada_ru> (Oleg) И не GPL ещё дороже :-)
[00:21:07] <ada_ru> (Oleg) Cyclone TCP прикольно делают
[00:21:21] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Cyclone TCP прикольн…>
Это кто?
[00:21:59] <ada_ru> (vasil_sd) https://www.oryx-embedded.com/#&panel1-1 - они?
[00:22:00] <ada_ru> (Oleg) https://www.oryx-embedded.com/#&panel1-2
[00:22:06] <ada_ru> (Oleg) Точно :-)
[00:22:07] <ada_ru> (vasil_sd) ага
[00:22:22] <ada_ru> (Oleg) У них есть GPL и коммерческая версия
[00:23:45] <ada_ru> (vasil_sd)  отвечает (Oleg) на <У них есть GPL и ком…>
Да, сейча так много кто делает. Насколько я понял, довольно успешная модель бизнеса.
И комьюнити беспалтно в твой проект контриьютит, и бизнесу можно closed-source коммерческие лицензии продавать
[00:24:33] <ada_ru> (Oleg) Только интересно, они из сообщества код в коммерцию переносят ? :-)
[00:24:50] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Только интересно, он…>
Вот незнаю, сам сейчас задумался
[00:25:06] <ada_ru> (vasil_sd) Напрямую, если GPL, вроде нельзя.
[00:25:17] <ada_ru> (Oleg) А так хитрож....ть 80 уровня
[00:25:36] <ada_ru> (Oleg) Закрытый код никто не видит
[00:25:41] <ada_ru> (Oleg) Открытый пилят
[00:25:46] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Закрытый код никто н…>
Это да :)))
[00:26:52] <ada_ru> (vasil_sd) Код напрямую нельзя, но если переписать, сохранив функционал,то вроде и можно...
[00:27:16] <ada_ru> (vasil_sd) Ну и плюс багфиксы в публичный код можно портировать в закрытый
[00:27:39] <ada_ru> (vasil_sd) Думаю там есть всякие хитрости и лазейки
[00:27:51] <ada_ru> (Oleg) Да, нотацию поменять :-) и a == b на b == a
[00:28:00] <ada_ru> (vasil_sd) Опять же опенсорсных лицензий вагон и маленькая тележка
[00:28:39] <ada_ru> (Oleg) Кстати а пишет кто на си ифы в таком стиле ? : if(1==a)
[00:29:12] <ada_ru> (Oleg) Типа чтоб случайно = вместо == не поставить
[00:29:35] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Кстати а пишет кто н…>
Я когда-то писал, потом забил
[00:29:42] <ada_ru> (Oleg) :-)
[00:29:53] <ada_ru> (vasil_sd) Ибо компиляторы и стат-анализаторы сейчас такое быстро детектят
[00:30:14] <ada_ru> (Oleg) Ну это да
[00:30:17] <ada_ru> (vasil_sd) И лично у меня такого рода ошибки практически не встречались
[00:32:36] <ada_ru> (Oleg) Кстати PVS Студио в C++ коде моем несколько False positive дал , я думал что-то не то , все проверил все ок, дал ещё 2 человека смотрели и тоже сказали там все ок
[00:32:47] <ada_ru> (Oleg) Но это в 2017 было
[00:33:59] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Кстати PVS Студио в …>
Совсем не удивляет. У любых стат-анализаторов будут по умолчанию и false-pos и false-neg. Польностью от этого избавиться можно только при верификации.
[00:36:37] <ada_ru> (vasil_sd) Вообще, в моей практике я встречал столько ошибок компиляторов (в смысле ошиок кодогенеарции), что большого смысла нет серьёзно надеяться на стат-анализ и даже на формальную верификацию. Ибо не факт, что на выходе будет корректный машинный код :)
[00:37:05] <ada_ru> (Oleg) Только дисасемблер-только хардкор :-)
[00:38:30] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Только дисасемблер-т…>
Тоже большого смысла нет, ибо там верифицировать что-либо практически невозможно :)
затащить всю ISA в логику Хоара и к каждой мнемонике писать pre/post уловия :))))
[00:40:02] <ada_ru> (vasil_sd) Хотя...
Вот я про что вспомнил :http://plv.csail.mit.edu/bedrock/
[00:40:23] <ada_ru> (vasil_sd) Так что, верифицированный АСМ - тоже вполне себе возможно :)
[01:42:04] <ada_ru> (vasil_sd) Выложил первую версию TLSF аллокатора: https://github.com/vasil-sd/ada-tlsf/tree/master/tlsf

Это ещё очень сырое поделие, даже толком не протестированное, так что будьте осторожны.

По мере сил буду доделыввать. До полной верификации там ещё ооочень далеко. В ближайшее время освою GNATTest и закрою тестами, чтобы хоть как-то можно было использовать.
[03:48:03] <ada_ru> (I_vlxy_I)  отвечает (vasil_sd) на <Автор повёлся на про…>
Перепишем на Аде?
[03:48:42] <ada_ru> (I_vlxy_I)  отвечает (Oleg) на <Кстати PVS Студио в …>
Статические анализаторы славны большим количеством false positive
[09:42:26] <ada_ru> (Vadim)  отвечает (vasil_sd) на <Выложил первую верси…>
А если всё засунуть в файл s-memory.adb и синхронизировать API со стандартным?
[09:45:16] <ada_ru> (vasil_sd)  отвечает (Vadim) на <А если всё засунуть …>
Можно. Это сделаю, когда тестов добавлю.
Изначально аллокатор планировался для использования с сишным кодом, поэтому не заморачивался с api.
[09:45:29] <ada_ru> (Vadim) 1
[09:46:40] <ada_ru> (Vadim) А если ещё и к WASM прикрутить?
[09:46:43] <ada_ru> (vasil_sd)  отвечает (I_vlxy_I) на <Перепишем на Аде?>
Провокация ? :))
[09:47:37] <ada_ru> (Vadim) Там нужно экспортировать символ начала кучи и использовать  инструкции memory.size и memory.grow
[09:48:44] <ada_ru> (vasil_sd)  отвечает (Vadim) на <Там нужно экспортиро…>
Ага, посмотрю, может и прикручу в ближайшее время.
[09:49:55] <ada_ru> (vasil_sd) Но сперва нужно тестами немного закрыть. Чтобы не утонуть в багрепортах :)
[09:51:24] <ada_ru> (Vadim) Какие ошибки, это пользователи не умеют пользоваться! :)
[09:53:05] <ada_ru> (vasil_sd)  отвечает (Vadim) на <Какие ошибки, это по…>
:))
Ну я это же не коммерческий продукт делаю.
Тут можно и нормально с пользователями обращаться :)
[09:53:51] <ada_ru> (Vadim) Ладно, по другому, сейчас интереснее поднять шум :)
[09:54:45] <ada_ru> (Vadim) Доказанный аллокатор это хороший повод
[09:55:32] <ada_ru> (vasil_sd)  отвечает (Vadim) на <Доказанный аллокатор…>
Там пока ещё далеко до доказанности. Это только самое начало
[09:56:29] <ada_ru> (vasil_sd) Кроме того, основные высокоуровневые свойства будет довольно тяжело доказывать, нужно будет ещё модель адекватную придумать.
[10:22:14] <ada_ru> (Vadim) Тем интереснее результат. Если получится - скажите, возможно окажется интересно его раструбить.
[10:32:21] <ada_ru> (vasil_sd)  отвечает (Vadim) на <Тем интереснее резул…>
:))) посмотрим, как получится.
[14:22:36] <ada_ru> (Oleg) Парни , с safaribook online можно как то сохранить книжки ?
[14:22:56] <ada_ru> (Oleg) Вот такое нашёл
[14:22:58] <ada_ru> (Oleg) https://github.com/lorenzodifuccia/safaribooks?files=1
[14:23:04] <ada_ru> (Oleg) Хз работает ли
[14:25:42] <ada_ru> (a) Та есть же издательство Питер :)
[14:53:10] <ada_ru> (Oleg) Там нет нихрена
[14:53:14] <ada_ru> (Oleg) :-)
[15:05:35] <nordwind> Там только о Рейли и переводят
[15:20:16] <ada_ru> (Oleg) Я ещё на Springer читаю
[15:20:26] <ada_ru> (Oleg) Но там проще - там можно качать
[17:18:30] <ada_ru> (I_vlxy_I) https://medium.com/wasmer/wasmer-io-devices-announcement-6f2a6fe23081
[17:18:33] <ada_ru> (I_vlxy_I) новости вебасма
[18:01:26] <ada_ru> (Лекс) fb это клёво 😎
[18:16:09] <ada_ru> (Максим) Ура, заработал JWT RS256! RSA на коленке, чтение секретного ключа путем декодирования ответа Гугл в хекс редакторе,  кавырнадцать ошибок в функцие, несколько часов в отладчике и никакого формального доказательства!
[18:16:41] <ada_ru> (Максим) <прислал наклейку> 👋
[18:17:09] <ada_ru> (I_vlxy_I) ну, прошагать все пути в отладчике - тоже вариант, чо 🙂
[19:02:13] <ada_ru> (Vadim)  отвечает (Максим) на <Ура, заработал JWT R…>
Выложить coverage report со словами  "у нас все покрыто"
[19:20:07] <ada_ru> (Максим) Тесты для слабаков! Комментарии для идиотов!
[19:21:01] <ada_ru> (vasil_sd)  отвечает (Максим) на <Тесты для слабаков! …>
Точно! Только спагетти-код, только хардкор! :)))
[19:23:28] <ada_ru> (iserged)  отвечает (Vadim) на <Выложить coverage re…>
Кстати, как правильно определять это самое покрытие
[19:25:44] <ada_ru> (Vadim) Смотря какая цель. Простейшее покрытие годится только для плаката. Когда оно нужно реально изврпщаются с ассемблерными инструкциями. А если и этого мало - проверяют вычисление всех переходов.
[19:55:40] <ada_ru> (vasil_sd)  отвечает (Vadim) на <Смотря какая цель. П…>
И в случае многопоточного/распределенного кода, даже 100% покрытие ни о чем не говорит.
[19:57:06] <ada_ru> (Vadim) Мы доказываем теорему, что реализация шифрования сделанная Максом уже не содержит никаких ошибок.
[19:57:32] <ada_ru> (Vadim) Это и таа понятно, но нужен красивый отчёт :)
[19:58:00] <ada_ru> (vasil_sd)  отвечает (Vadim) на <Мы доказываем теорем…>
Именно доказываете?
[19:58:27] <ada_ru> (Vadim) Да, натяшиванием красивого отчёта
[19:59:30] <ada_ru> (Vadim) Отчёт есть? Красивый? Следовательно вмё доказано :)
[20:00:08] <ada_ru> (vasil_sd)  отвечает (Vadim) на <Да, натягиванием кра…>
Ааа, я думал действительно доказываете. Интересно стало, как вообще строятся доказательства корректности реализации криптографии...
[20:01:05] <ada_ru> (Vadim) А есть модуль криптографии на SPARK, наверно можно там подглядеть.
[20:02:23] <ada_ru> (vasil_sd)  отвечает (Vadim) на <А есть модуль крипто…>
Ок, поищу и посмотрю как - нибудь.
[20:15:52] <ada_ru> (Oleg) картинка https://www.ada-ru.org/files/bot/2020-01-19-x1.jpg
[20:16:02] <ada_ru> (Oleg) Искал цифровую :-)
[20:16:37] <ada_ru> (Oleg) Шифрование на Спарк я находил и ссылку выкладывал
[20:17:02] <ada_ru> (Oleg) Там DES/AES
[20:19:43] <ada_ru> (vasil_sd) Ага, вспомнил: https://github.com/Componolit/libsparkcrypto
[20:23:43] <ada_ru> (vasil_sd) Да уж... Там разбираться и разбариться. Теорий на Isabelle/HOL чуть ли не больше, чем кода
[20:24:37] <ada_ru> (Oleg) Парни, файл с паролями на SNMP думаю хранить зашифрованным , хочу AESом зашифровать и при запуске CLI утилиты требовать мастер пароль . Или это неправильно ?
[20:32:52] <ada_ru> (I_vlxy_I)  отвечает (Oleg) на <Там DES/AES>
Это ж капец не надежно!
[20:33:25] <ada_ru> (Oleg) Ну DES в смысле и 3DES
[20:33:35] <ada_ru> (Oleg) А AES не только 128
[20:33:56] <ada_ru> (vasil_sd)  отвечает (I_vlxy_I) на <Это ж капец не надеж…>
Там вот это реализовано: https://github.com/Componolit/libsparkcrypto/tree/componolit/doc/specs
[20:34:07] <ada_ru> (vasil_sd) Есть даже эллиптика
[20:35:04] <ada_ru> (Oleg) The distribution contains test cases for all implemented algorithms and a benchmark to compare its performance with the OpenSSL library
[20:35:05] <ada_ru> (vasil_sd) Я правда пока не въехал, какие свойства кода они верифицировали
[20:35:26] <ada_ru> (Oleg) Интересно с OPENSSL сравнить
[20:35:53] <ada_ru> (I_vlxy_I) а кстати, coverage guided fuzzing кто-нибудь щупал?
[20:36:07] <ada_ru> (vasil_sd)  отвечает (I_vlxy_I) на <а кстати, coverage g…>
Типа AFL и подобных?
[20:36:22] <ada_ru> (I_vlxy_I)  отвечает (vasil_sd) на <Типа AFL и подобных?>
а AFL coverage юзает?
[20:36:33] <ada_ru> (vasil_sd)  отвечает (I_vlxy_I) на <а AFL coverage юзает…>
Насколько помню - да
[20:36:38] <ada_ru> (I_vlxy_I) ну, тогда да
[20:36:59] <ada_ru> (I_vlxy_I) я вот про этот больше: https://github.com/google/fuzzing/blob/master/tutorial/libFuzzerTutorial.md
[20:37:01] <ada_ru> (vasil_sd) Но я давно с фаззерами возился, поэтому сейчас уже плохо помню детали...
[20:39:08] <ada_ru> (I_vlxy_I) насколько я понимаю, штука в правильных руках очень мощная. в плане тестирования
[20:39:11] <ada_ru> (vasil_sd)  отвечает (I_vlxy_I) на <я вот про этот больш…>
Интересная вещь, особенно тем, что с санитайзерами работает
[20:40:04] <ada_ru> (vasil_sd)  отвечает (I_vlxy_I) на <насколько я понимаю,…>
Да, фаззеры хорошо вместо рандомизированных тестов гонять. Особенно для проверки кода, который извне что-то читает/принимает и пр.
[20:42:46] <ada_ru> (vasil_sd) Что только народ не придумает, чтобы не связываться с формальной верификацией :)
[20:44:02] <ada_ru> (Oleg) Господа а есть книжки по ней на русском ? :-)
[20:56:30] <ada_ru> (I_vlxy_I)  отвечает (vasil_sd) на <Да, фаззеры хорошо в…>
внедрить бы их в некоторые наши штуки на работе. но не всегда просто донести какой с этого будет бузинесс вэлью 🙂
[20:58:14] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Господа а есть книжк…>
Если речь про фаззеры - то пока не видел на русском никаких книг
[20:59:13] <ada_ru> (vasil_sd)  отвечает (I_vlxy_I) на <внедрить бы их в нек…>
Да уж. Я всё никак не могу донести до начальства необходимость минимального документирования и сопровождения кода для улучшения бас-фактора.
А ты тут про фаззеры :)
[20:59:42] <ada_ru> (I_vlxy_I)  отвечает (vasil_sd) на <Да уж. Я всё никак н…>
да тут хотя бы санитайзерами бы обмазать всё 🙂
[21:04:33] <ada_ru> (Oleg)  отвечает (vasil_sd) на <Да уж. Я всё никак н…>
Не я про верификацию
[21:05:11] <ada_ru> (Oleg) На английском тоже можно но вдруг...
[21:05:59] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Не я про верификацию>
Про верификацию можно почитать некоторые старые книжки: Грис "Наука программирования", например.

Чуть позже посмотрю, что у меня на полке стоит, может ещё что подскажу из русскоязычного
[21:06:24] <ada_ru> (vasil_sd) Про модел-чекинг есть книга Карпова "Model -checking"
[21:06:44] <ada_ru> (vasil_sd) На русском мало литературы, к сожелению :(
[21:11:31] <ada_ru> (Oleg) А можно у вас ненужные бумажные одолжить почитать ? Хочется тёплые ламповые/бумажные почитать по вечерам :-)
[21:12:02] <ada_ru> (vasil_sd)  отвечает (Oleg) на <А можно у вас ненужн…>
Думаю можно. Вы в Мск?
[21:12:16] <ada_ru> (Oleg) В Питере но в Москве бываю
[21:12:28] <ada_ru> (Oleg) Раз / два в год
[21:12:31] <ada_ru> (Oleg) Обычно
[21:13:20] <ada_ru> (vasil_sd) Ну как будете наведываться в очередной раз, можно будет как-нибудь встретиться, я захвачу с собой книжки.
[21:13:59] <ada_ru> (Oleg) Окей спасибо !
[21:14:11] <ada_ru> (vasil_sd)  отвечает (Oleg) на <Окей спасибо !>
Да пока не за что :)