Русский
Русский
English
Статистика
Реклама

Краудсорсинг

Структурирование информации, критическое мышление и трудоустройство в лучшие ИТ-компании мира

14.10.2020 00:10:31 | Автор: admin
Как перебраться из Кыргызстана в Google, перестать молиться, освоить критическое мышление, организовывать встречи с президентами, писать конституцию, поступить в Y Combinator и начать помогать программистам из СНГ устраиваться в Google, Facebook, Amazon, Microsoft, DeepMind.

image

Что думаешь о проектах, которые повышают доступность и качество информации в масштабах человечества: Web Archive, Википедия, Google (и Google Books), Quora?

Я уже не работаю в Google (хотя и являюсь акционером), но меня продолжает вдохновлять их миссия: организовать информацию мира и сделать ее универсально доступной и полезной. Эта миссия привлекает многих талантливых специалистов, внутри компании создается множество подпроектов, но не все доходят до официального релиза.

Я болею за эту миссию и хочу, чтобы вся информация мира была организована, от этого люди будут только в плюсе. Я изучал миссии многих компаний. Миссия работает, потому что люди думают о ней, вдохновляются ею. Как акционер и как болельщик, я хотел бы, чтобы в области организации информации разрабатывали больше проектов. С другой стороны, остается куча задач для стартапов. У человечества есть Google, Wikipedia, Quora, но в области информации и структуризации знаний, думаю, можно создавать еще сотни стартапов. Очень приятно что Ontol взялся за одну из сфер, мне очень нравится этот проект.

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


Wikipedia. Я считаю, что Wikipedia это чудо света. Википедии могло бы не быть, была бы только цифровая Britannica. Wikipedia достижение человечества, которое создали вместе. Я рад, что Wikipedia существует. Очень благодарен ей. Там организовано столько информации.

Quora классный сервис, но пока не кажется чудом света, по крайней мере для меня.

Internet Archive цифровая библиотека, миссия которой дать общечеловеческий доступ ко всем знаниям. Этот проект помогал мне: находил статьи и интервью со мной, которые удалили с сайтов. Для информации в сети тоже нужна библиотека, с исходом лучше, чем у Александрийской, для это нужно больше проектов, чем один Web Archive.

Мне кажется, что ни Facebook, ни Twitter не улучшают структурированность информации. Из гигантов только Google старается в этом направлении.

Может еще ЦРУ?

Возможно они и собирают, но на счет их технологий не уверен. Думаю, у них какие-то технологии хорошо развиты, а большой процент, возможно, на Microsoft Excel.

Может Palantir?

Я мало знаю об этой компании. Знаю, что у них сильные программисты, уровня Google и Facebook. У Palantir 3-4 продукта для анализа данных. Palantir работает так: они идут в организацию, где нет сильных программистов, и интегрируют данные этой организации в одну платформу. Так Palantir помогает компаниям с большим количеством данных проанализировать их, делают дашборды, стоят графики, статистику, возможно выстраивают простое машинное обучение. Это называется data warehouse.

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

Google это коммерческая компания, её цель получение прибыли. Это не идет в разрез с проектами, цель которых благо для человечества? Как в Google избегают конфликта интересов?

Это баланс. Проект по сканированию книг Google Books не приносит компании денег. На проекте Google Street View сложно заработать, как и на Google Maps.

Реклама в поиске приносит больше половины дохода Google. В Google Maps рекламу показывают редко, Google Books мало людей используют.

Проект Google Cultural Institute организует информацию о 2-х и 3-х мерных произведениях визуального искусства. Это проекты, которые создают во многом для миссии, а не с расчетом на прибыль.

Google открылся бы в Китае и стал бы использовать цензуру для поисковой выдачи, если бы оптимизировал проекты только под прибыль. В 2010 году Google принял стратегическое решение не входить в Китай из-за цензуры.

Google не сводит проекты только к получению прибыли, он балансирует между деньгами и миссией.

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

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

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

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

Представь, сколько в мире пословиц. Семь раз отмерь, один отрежь продумай много раз, а только потом делай. Уверен, что в каждой культуре придумали синонимы к этой пословице. Утро вечера мудренее 100% люди придумали вариации для каждого языка. Здорово найти такие соотношения.

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

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

Я пару дней занимался шуточным проектом (см. статью Альтернативная конституция) какие на сегодняшний день существуют цифровые инструменты, чтобы написать свою конституцию. И наткнулся на интересный проект от Google.

Я удивлен, что ты знаешь этот проект, и мне приятно, потому что это малоизвестный проект Google. Точнее даже не Google, а Jigsaw компании-сестры Google, которая оттуда вышла.

В Кыргызстане часто меняют конституции, возможно слишком часто, в 2005 была революция, в 2010 была революция. (Прим. ред: Сейчас происходит третья. На момент интервью все было спокойно. )

image


Слева направо: сотрудник Google Тилек Мамутов, со-основатель Google Эрик Шмидт, экс-президент Кыргызстана Роза Отунбаева в Бишкеке.

Я в 2011 году был представителем по Центральной Азии в Google. Я организовывал встречу бывшего CEO Google Эрика Шмидта и Джареда Коэна с президентом нашей страны, с премьер-министром, вице-премьером и с бывшим президентом Розой Отунбаевой. На этой встрече обсуждали много проектов: некоторые открытые (к примеру, Google Street View запустили), некоторые конфиденциальные.

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

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

Расскажи, как ты ищешь и проверяешь информацию?

Я читаю Twitter.

Недооцененный ресурс World Science University. Это бесплатный онлайн-университет. Там много курсов по теоретической физике, даже с нуля, для тех кто не знает физику. Гравитацию, теорию относительности учителя объясняют с понятными графиками, невероятно захватывает.

Брайан Грин по-моему, один из лучших учителей в мире, он простыми словами объясняет теорию струн и многие другие темы из теоретической физики. В этом университете читают много других лекции, в том числе и о свободе воли, например. Освещают передний край исследований в этой области.



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

Хороший пример про современное потребление информации коронавирус. Становится очевидно, как люди живут, проверяют соцсети, новости, смотрят телевизор. Там информация часто предвзятая, там выгодно шокировать, чтобы привлечь внимание, потому дают шокирующие цифры. Х кейсов коронавируса, х смертей. Да, такая информация привлечет внимание, возможно даже удержит на сайте новостных СМИ. Эта информация никак не образовывает, не дает понимания, что происходит.

Я пользуюсь сайтом ourworldindata.org

примеры инфографики
image

image


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

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

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

Как с этим бороться? Как фильтруют информацию в Долине?

По-моему, в Долине есть много интересных сообществ, какие-то из них, кстати, есть и в русскоязычных странах. Самые популярные, например, это сообщество blockchain, сообщество etherium. Они встречаются, общаются, устраивают конференции, обмениваются идеями.

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

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

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

Какие видео или статьи стали для тебя озарением, после которых твоя жизнь поменялась? Читал ли ты Пола Грэма или Ричарда Хэмминга, например?

Я читал Пола Грэма, но в тот момент я уже знал много похожей информации. Мне нравятся статьи Грэма. Ричарда Хэмминга я не читал. Думаю, TED ощутимо повлиял.

Когда я учился в Кыргызстане в университете, то читал информацию для учебы, читал Wikipedia. Когда я переехал в Европу в Ирландию работать в Google, появилось больше свободного времени для книг и лекций. TED мне понравился тем, что он предлагает такую тему, о которой раньше ты не задумывался. К примеру, о медитации. Сам бы я возможно не начал искать информация о медитации.

После переезда в Ирландию, я оставался религиозным человеком, молился. Видео, которое серьезно повлияло на мое мировоззрение выступление Ричарда Докинза Militant atheist.



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

Я перестал молиться, через год-два стал нерелигиозным, стал еще больше читать, начал задавать вопросы.

Почему получилось так, что я стал религиозным?

Кто написал историю Корана, историю Библии?

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

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

image


Источник

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

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

Что думаешь о современном образовании? В чем главная проблема/задача? Какие есть точки приложения усилий?

Я много думал об образовании. Я бы хотел жить в мире, где люди умные, добрые и счастливые.

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

Проблема чисто психологическая. Насколько я сам верю, что смогу? Если повезло с родителями, они в меня верят, то у меня получится. Если не повезло с родителями, они не верят в себя, не верят в детей, то будет гораздо сложнее. Тогда и я в себя не поверю, то не смогу. Тут вопрос везения. Хотя, уверенность дают и окружающие люди, не только родители. Я бы хотел, чтобы каждый человек в себя верил.

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

Критическое мышление это, по-моему, основа интеллекта. Если ты прокачал память, наработал навыки решения задач, но не освоил критическое мышление, ты будешь решать не те задачи.

Критическое мышление логическое мышление без предвзятости, словно робот без эмоций решает задачу. Тема религии в этом плане показательна. Если заговорить с человеком о религии, то его легко обидеть заявлением, что его религия не права. Это обижает еще семью и друзей этого человека. Ситуация супер-эмоциональная. Мало кто умеет абстрагироваться и обсудить смысл религии, ее философию.

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

Президент страны с самой большой армией в мире говорит, что потепления климата нет и ситуация улучшится. Это громадная проблема. Мы живем в мире, где нехватка критического мышления проблема номер один. У Трампа есть вся информация. У тех, кто голосовал за Трампа, есть вся информация. Больше 4 млрд людей имеют доступ к Internet, но они не хотят верить в то, что им неприятно.

Мы животные. У нас много shortcuts. Ускоренный тип мышления хорош, когда человек увидел льва в кустах, и надо быстро убежать. Но когда гражданин выбирает президента страны, нужно мыслить логически, а не пользоваться сокращенным мышлением.

Вот полезные сайты на эту тему:



Какой первый шаг к критическому мышлению?

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

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

Когда человек озвучивает неприятные выводы о нации или о конкретном человеке, я интересуюсь, сколько примеров неприятного есть у человека. Часто один-два. Пару примеров для выводах о миллионах людей также странно, как machine learning на основе двух точек.

У искусственного интеллекта не было бы такой проблемы. У ИИ другие проблемы. К примеру, отсутствие эмпатии. Человеку хватит взглянуть на собеседника, чтобы понять, что с ним. Не на основе анализа, а очень глубоко. ИИ этого будет не хватать. Или при общении парня и девушки человек предскажет, как у них сложатся отношения. Тут нам сильно помогаем биология, наша животная часть приспособилась к этому, но не приспособилась к big data.

У человека есть те или иные предвзятости, потому что эти предвзятости помогли выжить. Если бы мы размышляли лев в кустах спрятался или нет, нас бы съели. Надо помнить об этих предвзятостях.

Расскажи чем ты сейчас занимаешься?

Я давно увлекаюсь темой образования. Решил после 11 лет уйти из Google, потому что хотел поменять то, как образование работает.

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

Мы создали трехмесячную программу, где обучаем распределенным системам, алгоритмам и готовим к собеседованиям. В нашей команде работают менторы из Google, Facebook, Stripe, Amazon. Через три месяца обучения люди подают заявки в зарубежные компании, вроде Google.

Они составляют список компаний куда хотят попасть. Мы помогли десяткам программистов попасть в Google, Facebook, Stripe, Amazon, Microsoft, Bloomberg, DeepMind. Программисты, наши клиенты, платят только если получают желанную работу за границей.

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

Мы стремимся, чтобы ментор один и тот же совет не повторял. Такая наша мечта. Чтобы знания ментор передавал за один раз. В других проектах ментор повторяет много раз: В резюме добавь хобби. Мы хотим, чтобы время человека не тратилось повторно. У нас такой подход к сохранению информации.

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

У нас это работает. В последней группе 100% получили работу, 83% наших клиентов устроились в Google, Facebook, Amazon топ-3 компаний по мнению наших кандидатов.

Философия организации знаний работает. Мы это делаем не через онтолы, по-своему, у нас есть docs.outtalents.com. Тут мы публикуем большую часть документов. Какую-то часть не публикуем, держим внутри. Мы пытаемся помочь людям, даже если это не наши клиенты.

Мы экспериментируем с форматами, делаем видеозаписи семинаров. Возможно, скоро будем их публиковать. Создаем документы, постоянно их обновляем. После каждого интервью googledocs. После каждого комментария. Основной поток информации через текст. Мы экспериментируем с roam research, диаграммы, Whimsical, много экспериментируем, чтобы чтобы максимально эффективно помочь программистам добиться их целей.

Какие 2-3 совета можешь дать тем программистам и не только, кто хочет вырасти над собой, сменить работу/воспользоваться твоими услугами?

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

Обязательно ли быть программистом чтобы стать твоим клиентом? Может ли автор Хабра подаваться в Гугл или Амазон?

Подаваться в Гугл могут многие конечно, но Outtalent специализируется на только программистах пока.

Возьмут ли меня в Google X с реактивным ранцем?

Надеюсь, да! :)

Какие есть 2-3 очень интересных кейса из твоего проекта?

Алия Рысбек, например, попала в Google DeepMind, это их лаборатория искусственного интеллекта. Кроме этого она получила офферы от Facebook, Bloomberg, Amazon. Юра, который на мировой финал соревнования ICPC ездил, получил офферы от Google и Facebook. Есть ещё много старших программистов из России, Украины, Казахстана и Кыргызстана, которые получили офферы в Google, Facebook, Amazon, Microsoft. Планируем скоро много объявлений о таких успехах.

Какие 2-3 удивительных инсайта про трудоустройство ты обнаружил работая над своим проектом?

Мы думали, что из-за коронавируса рекрутинг и иммиграция почти остановится, но в конце лета компании крайне активно начали нанимать программистов. Выпускники нашего последнего выпуска собеседуются с Amazon, Bloomberg, Facebook, Google, Microsoft, Reddit, Snapchat, SpaceX, Spotify, Tesla и многими другими компаниями. Большинство компаний из этого списка нанимают сейчас и на многих из них мы фокусируемся.

Также мы поняли что очень важно правильно выстраивать последовательность собеседований в зависимости от скорости процессов компаний. Думаю, многим понятно, что надо сначала тренироваться на менее желанных компаниях и что важно чтобы несколько офферов параллельно приходило. Тогда легче торговаться о зарплате. Недавно мы помогли нашему выпускнику выторговать на $20,000 больше при переговорах с Amazon, но это было сложнее чем когда есть несколько офферов. Особенно сильно конкурируют между собой, по-моему, Google и Facebook. Чтобы эффективно синхронизировать процессы надо научиться общаться с рекрутерами и знать какие компании с какой скоростью обычно двигаются и какие компании требуют быстрого ответа если дают вам оффер.

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

Еще публикации с Тилеком Мамутовым



Подробнее..

Интервью трудоустройство в лучшие ИТ-компании мира, структурирование информации и критическое мышление

14.10.2020 06:06:45 | Автор: admin
Мне довелось взять интервью у Тилека Мамутова, который научился программировать в Киргизии, потом 11 лет проработал в Google, а потом запустил свой стартап Outtalent и поступил в Y Combinator.

Как перебраться из Кыргызстана в Google, перестать молиться, освоить критическое мышление, организовывать встречи с президентами, писать конституцию, поступить в Y Combinator и начать помогать программистам из СНГ устраиваться в Google, Facebook, Amazon, Microsoft, DeepMind.

image

Что думаешь о проектах, которые повышают доступность и качество информации в масштабах человечества: Web Archive, Википедия, Google (и Google Books), Quora?

Я уже не работаю в Google (хотя и являюсь акционером), но меня продолжает вдохновлять их миссия: организовать информацию мира и сделать ее универсально доступной и полезной. Эта миссия привлекает многих талантливых специалистов, внутри компании создается множество подпроектов, но не все доходят до официального релиза.

Я болею за эту миссию и хочу, чтобы вся информация мира была организована, от этого люди будут только в плюсе. Я изучал миссии многих компаний. Миссия работает, потому что люди думают о ней, вдохновляются ею. Как акционер и как болельщик, я хотел бы, чтобы в области организации информации разрабатывали больше проектов. С другой стороны, остается куча задач для стартапов. У человечества есть Google, Wikipedia, Quora, но в области информации и структуризации знаний, думаю, можно создавать еще сотни стартапов. Очень приятно что Ontol взялся за одну из сфер, мне очень нравится этот проект.

Wikipedia. Я считаю, что Wikipedia это чудо света. Википедии могло бы не быть, была бы только цифровая Britannica. Wikipedia достижение человечества, которое создали вместе. Я рад, что Wikipedia существует. Очень благодарен ей. Там организовано столько информации.

Quora классный сервис, но пока не кажется чудом света, по крайней мере для меня.

Internet Archive цифровая библиотека, миссия которой дать общечеловеческий доступ ко всем знаниям. Этот проект помогал мне: находил статьи и интервью со мной, которые удалили с сайтов. Для информации в сети тоже нужна библиотека, с исходом лучше, чем у Александрийской, для это нужно больше проектов, чем один Web Archive.

Мне кажется, что ни Facebook, ни Twitter не улучшают структурированность информации. Из гигантов только Google старается в этом направлении.

Может еще ЦРУ?

Возможно они и собирают, но на счет их технологий не уверен. Думаю, у них какие-то технологии хорошо развиты, а большой процент, возможно, на Microsoft Excel.

Может Palantir?

Я мало знаю об этой компании. Знаю, что у них сильные программисты, уровня Google и Facebook. У Palantir 3-4 продукта для анализа данных. Palantir работает так: они идут в организацию, где нет сильных программистов, и интегрируют данные этой организации в одну платформу. Так Palantir помогает компаниям с большим количеством данных проанализировать их, делают дашборды, стоят графики, статистику, возможно выстраивают простое машинное обучение. Это называется data warehouse.

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

Google это коммерческая компания, её цель получение прибыли. Это не идет в разрез с проектами, цель которых благо для человечества? Как в Google избегают конфликта интересов?

Это баланс. Проект по сканированию книг Google Books не приносит компании денег. На проекте Google Street View сложно заработать, как и на Google Maps.

Реклама в поиске приносит больше половины дохода Google. В Google Maps рекламу показывают редко, Google Books мало людей используют.

Проект Google Cultural Institute организует информацию о 2-х и 3-х мерных произведениях визуального искусства. Это проекты, которые создают во многом для миссии, а не с расчетом на прибыль.

Google открылся бы в Китае и стал бы использовать цензуру для поисковой выдачи, если бы оптимизировал проекты только под прибыль. В 2010 году Google принял стратегическое решение не входить в Китай из-за цензуры.

Google не сводит проекты только к получению прибыли, он балансирует между деньгами и миссией.

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

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

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

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

Представь, сколько в мире пословиц. Семь раз отмерь, один отрежь продумай много раз, а только потом делай. Уверен, что в каждой культуре придумали синонимы к этой пословице. Утро вечера мудренее 100% люди придумали вариации для каждого языка. Здорово найти такие соотношения.

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

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

Я пару дней занимался шуточным проектом (см. статью Альтернативная конституция) какие на сегодняшний день существуют цифровые инструменты, чтобы написать свою конституцию. И наткнулся на интересный проект от Google.

Я удивлен, что ты знаешь этот проект, и мне приятно, потому что это малоизвестный проект Google. Точнее даже не Google, а Jigsaw компании-сестры Google, которая оттуда вышла.

В Кыргызстане часто меняют конституции, возможно слишком часто, в 2005 была революция, в 2010 была революция. (Прим. ред: Сейчас происходит третья. На момент интервью все было спокойно. )

image


Слева направо: сотрудник Google Тилек Мамутов, со-основатель Google Эрик Шмидт и бывший президент Кыргызстана Роза Отунбаева в Бишкеке.

Я в 2011 году был представителем по Центральной Азии в Google. Я организовывал встречу бывшего CEO Google Эрика Шмидта и Джареда Коэна с президентом нашей страны, с премьер-министром, вице-премьером и с бывшим президентом Розой Отунбаевой. На этой встрече обсуждали много проектов: некоторые открытые (к примеру, Google Street View запустили), некоторые конфиденциальные.

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

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

Расскажи, как ты ищешь и проверяешь информацию?

Я читаю Twitter.

Недооцененный ресурс World Science University. Это бесплатный онлайн-университет. Там много курсов по теоретической физике, даже с нуля, для тех кто не знает физику. Гравитацию, теорию относительности учителя объясняют с понятными графиками, невероятно захватывает.

Брайан Грин по-моему, один из лучших учителей в мире, он простыми словами объясняет теорию струн и многие другие темы из теоретической физики. В этом университете читают много других лекции, в том числе и о свободе воли, например. Освещают передний край исследований в этой области.



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

Хороший пример про современное потребление информации коронавирус. Становится очевидно, как люди живут, проверяют соцсети, новости, смотрят телевизор. Там информация часто предвзятая, там выгодно шокировать, чтобы привлечь внимание, потому дают шокирующие цифры. Х кейсов коронавируса, х смертей. Да, такая информация привлечет внимание, возможно даже удержит на сайте новостных СМИ. Эта информация никак не образовывает, не дает понимания, что происходит.

Я пользуюсь сайтом ourworldindata.org

примеры инфографики
image

image


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

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

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

Как с этим бороться? Как фильтруют информацию в Долине?

По-моему, в Долине есть много интересных сообществ, какие-то из них, кстати, есть и в русскоязычных странах. Самые популярные, например, это сообщество blockchain, сообщество etherium. Они встречаются, общаются, устраивают конференции, обмениваются идеями.

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

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

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

Какие видео или статьи стали для тебя озарением, после которых твоя жизнь поменялась? Читал ли ты Пола Грэма или Ричарда Хэмминга, например?

Я читал Пола Грэма, но в тот момент я уже знал много похожей информации. Мне нравятся статьи Грэма. Ричарда Хэмминга я не читал. Думаю, TED ощутимо повлиял.

Когда я учился в Кыргызстане в университете, то читал информацию для учебы, читал Wikipedia. Когда я переехал в Европу в Ирландию работать в Google, появилось больше свободного времени для книг и лекций. TED мне понравился тем, что он предлагает такую тему, о которой раньше ты не задумывался. К примеру, о медитации. Сам бы я возможно не начал искать информация о медитации.

После переезда в Ирландию, я оставался религиозным человеком, молился. Видео, которое серьезно повлияло на мое мировоззрение выступление Ричарда Докинза Militant atheist.


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

Я перестал молиться, через год-два стал нерелигиозным, стал еще больше читать, начал задавать вопросы.

Почему получилось так, что я стал религиозным?

Кто написал историю Корана, историю Библии?

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

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

image

Источник

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

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

Что думаешь о современном образовании? В чем главная проблема/задача? Какие есть точки приложения усилий?

Я много думал об образовании. Я бы хотел жить в мире, где люди умные, добрые и счастливые.

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

Проблема чисто психологическая. Насколько я сам верю, что смогу? Если повезло с родителями, они в меня верят, то у меня получится. Если не повезло с родителями, они не верят в себя, не верят в детей, то будет гораздо сложнее. Тогда и я в себя не поверю, то не смогу. Тут вопрос везения. Хотя, уверенность дают и окружающие люди, не только родители. Я бы хотел, чтобы каждый человек в себя верил.

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

Критическое мышление это, по-моему, основа интеллекта. Если ты прокачал память, наработал навыки решения задач, но не освоил критическое мышление, ты будешь решать не те задачи.

Критическое мышление логическое мышление без предвзятости, словно робот без эмоций решает задачу. Тема религии в этом плане показательна. Если заговорить с человеком о религии, то его легко обидеть заявлением, что его религия не права. Это обижает еще семью и друзей этого человека. Ситуация супер-эмоциональная. Мало кто умеет абстрагироваться и обсудить смысл религии, ее философию.

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

Президент страны с самой большой армией в мире говорит, что потепления климата нет и ситуация улучшится. Это громадная проблема. Мы живем в мире, где нехватка критического мышления проблема номер один. У Трампа есть вся информация. У тех, кто голосовал за Трампа, есть вся информация. Больше 4 млрд людей имеют доступ к Internet, но они не хотят верить в то, что им неприятно.

Мы животные. У нас много shortcuts. Ускоренный тип мышления хорош, когда человек увидел льва в кустах, и надо быстро убежать. Но когда гражданин выбирает президента страны, нужно мыслить логически, а не пользоваться сокращенным мышлением.

Вот полезные сайты на эту тему:


Какой первый шаг к критическому мышлению?

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

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

Когда человек озвучивает неприятные выводы о нации или о конкретном человеке, я интересуюсь, сколько примеров неприятного есть у человека. Часто один-два. Пару примеров для выводах о миллионах людей также странно, как machine learning на основе двух точек.

У искусственного интеллекта не было бы такой проблемы. У ИИ другие проблемы. К примеру, отсутствие эмпатии. Человеку хватит взглянуть на собеседника, чтобы понять, что с ним. Не на основе анализа, а очень глубоко. ИИ этого будет не хватать. Или при общении парня и девушки человек предскажет, как у них сложатся отношения. Тут нам сильно помогаем биология, наша животная часть приспособилась к этому, но не приспособилась к big data.

У человека есть те или иные предвзятости, потому что эти предвзятости помогли выжить. Если бы мы размышляли лев в кустах спрятался или нет, нас бы съели. Надо помнить об этих предвзятостях.

Расскажи чем ты сейчас занимаешься?

Я давно увлекаюсь темой образования. Решил после 11 лет уйти из Google, потому что хотел поменять то, как образование работает.

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

Мы создали трехмесячную программу, где обучаем распределенным системам, алгоритмам и готовим к собеседованиям. В нашей команде работают менторы из Google, Facebook, Stripe, Amazon. Через три месяца обучения люди подают заявки в зарубежные компании, вроде Google.

Они составляют список компаний куда хотят попасть. Мы помогли десяткам программистов попасть в Google, Facebook, Stripe, Amazon, Microsoft, Bloomberg, DeepMind. Программисты, наши клиенты, платят только если получают желанную работу за границей.

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

Мы стремимся, чтобы ментор один и тот же совет не повторял. Такая наша мечта. Чтобы знания ментор передавал за один раз. В других проектах ментор повторяет много раз: В резюме добавь хобби. Мы хотим, чтобы время человека не тратилось повторно. У нас такой подход к сохранению информации.

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

У нас это работает. В последней группе 100% получили работу, 83% наших клиентов устроились в Google, Facebook, Amazon топ-3 компаний по мнению наших кандидатов.

Философия организации знаний работает. Мы это делаем не через онтолы, по-своему, у нас есть docs.outtalent.com. Тут мы публикуем большую часть документов. Какую-то часть не публикуем, держим внутри. Мы пытаемся помочь людям, даже если это не наши клиенты.

Мы экспериментируем с форматами, делаем видеозаписи семинаров. Возможно, скоро будем их публиковать. Создаем документы, постоянно их обновляем. После каждого интервью googledocs. После каждого комментария. Основной поток информации через текст. Мы экспериментируем с roam research, диаграммы, Whimsical, много экспериментируем, чтобы чтобы максимально эффективно помочь программистам добиться их целей.

Какие 2-3 совета можешь дать тем программистам и не только, кто хочет вырасти над собой, сменить работу/воспользоваться твоими услугами?

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

Обязательно ли быть программистом чтобы стать твоим клиентом? Может ли автор Хабра подаваться в Гугл или Амазон?

Подаваться в Гугл могут многие конечно, но Outtalent специализируется на только программистах пока.

Возьмут ли меня в Google X с реактивным ранцем?

Надеюсь, да!

Какие есть 2-3 очень интересных кейса из твоего проекта?

Алия Рысбек, например, попала в Google DeepMind, это их лаборатория искусственного интеллекта. Кроме этого она получила офферы от Facebook, Bloomberg, Amazon. Юра, который на мировой финал соревнования ICPC ездил, получил офферы от Google и Facebook. Есть ещё много старших программистов из России, Украины, Казахстана и Кыргызстана, которые получили офферы в Google, Facebook, Amazon, Microsoft. Планируем скоро много объявлений о таких успехах.

Какие 2-3 удивительных инсайта про трудоустройство ты обнаружил работая над своим проектом?

Мы думали, что из-за коронавируса рекрутинг и иммиграция почти остановится, но в конце лета компании крайне активно начали нанимать программистов. Выпускники нашего последнего выпуска собеседуются с Amazon, Bloomberg, Facebook, Google, Microsoft, Reddit, Snapchat, SpaceX, Spotify, Tesla и многими другими компаниями. Большинство компаний из этого списка нанимают сейчас и на многих из них мы фокусируемся.

Также мы поняли что очень важно правильно выстраивать последовательность собеседований в зависимости от скорости процессов компаний. Думаю, многим понятно, что надо сначала тренироваться на менее желанных компаниях и что важно чтобы несколько офферов параллельно приходило. Тогда легче торговаться о зарплате. Недавно мы помогли нашему выпускнику выторговать на $20,000 больше при переговорах с Amazon, но это было сложнее чем когда есть несколько офферов. Особенно сильно конкурируют между собой, по-моему, Google и Facebook. Чтобы эффективно синхронизировать процессы надо научиться общаться с рекрутерами и знать какие компании с какой скоростью обычно двигаются и какие компании требуют быстрого ответа если дают вам оффер.

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

Еще публикации с Тилеком Мамутовым



Подробнее..

Перевод Истории основателей Грейс Гэри, основательница Watsi (YC W13)

15.01.2021 18:06:16 | Автор: admin
image

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

В: Чем вы занимались до создания Watsi?

Мы живем в мире, где потенциал универсален, а возможности нет. Я всегда хотела, чтобы моя жизнь изменила это. До того, как я начала работать над Watsi, я изучала глобальные исследования и политологию в колледже, проводила исследования беженцев в Гане и работала в крупной гуманитарной правозащитной организации в Округе Колумбия. Всё в попытке понять, что делают люди, чтобы создать возможности для тех, кто родился без этого, и как я могу помочь. Именно во время работы в Kiva (веб-сайт в Сан-Франциско, который позволяет любому финансировать микрозайм для предпринимателя из развивающейся страны) меня воодушевила идея о том, что технологии могут более напрямую связывать людей и изменять то, как мы создаем возможность в жизни друг друга.

В: Как начался проект Watsi?

Оригинальная идея Watsi была у Чейза. Когда он служил в Корпусе Мира в Центральной Америке, женщина села в автобус, в котором ехал Чейз, и попросила пожертвования на оплату медицинского обслуживания ее сына. Она вдохновила его на создание Watsi, назвав его в честь города, по которому он путешествовал в то время.

В: Как вы познакомились с Чейзом?

Я только что закончила колледж, работала в Kiva и была очень взволнована идеей, что технологии могут изменить то, как мы общаемся и поддерживаем друг друга. Однажды я услышала от младшего брата Чейза, что он только что вернулся из Корпуса Мира и у него появилась идея Kiva для здравоохранения. Я написала ему по электронной почте, чтобы сказать, что хочу принять участие, и убедила его за кружкой пива, что мне следует заняться маркетингом в Watsi.

В: Каково было быть первой некоммерческой организацией YC?

Для меня было огромной честью стать первой некоммерческой организацией, присоединившейся к YC. Честно говоря, для нас стало шоком то, что YC захотели профинансировать Watsi. Наш опыт в YC был невероятным. Не думаю, что где-нибудь еще мы нашли бы такой фокус и мотивацию. Теперь, когда YC принимает некоммерческие организации, как правило, я горжусь тем, что стала частью начала технического сообщества, которое масштабирует социальное благо так, как оно масштабирует коммерческие предприятия. YC сейчас является прогрессивным голосом в этом разговоре, и мы очень рады, что стали подопытными кроликами!

В: Каким был для вас YC?

Когда я оглядываюсь на время, проведенное Watsi в YC, воспоминания делятся на две категории. Одна категория это интенсивность: страсть, драйв и давление, которые мы чувствовали, чтобы добиться успеха и расти. Ранним утром по телефону с партнерами из больниц на другом конце света. Поздно вечером писать маркетинговые электронные письма, чтобы подбить наши цифры за неделю.

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

Весь этот опыт это то, что я живо и часто вспоминаю, много раз ища в этих воспоминаниях руководство о том, как справиться с новой проблемой. К счастью, сообщество YC сильное. Мы часто видим товарищей по команде и общаемся с партнерами, хотя сейчас мы вышли из программы более чем на год. Пол Грэм (основатель YC) сказал нам в первую ночь, осознаем мы это или нет, но мы находимся в комнате с людьми, которые будут на наших свадьбах и встретятся с нашими детьми. Теперь я знаю, что он был прав. Связь с YC длится всю вашу жизнь.

В: Есть ли какой-нибудь совет для женщин, которые хотят основать некоммерческую организацию?

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

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

В: Что вы хотите, чтобы кто-то сказал вам, когда вам было 15?

Что лучшие пути нелинейны.

За перевод спасибо Андрею Дунаеву.



Если вы хотите помочь с переводами полезных материалов библиотеки YC пишите в личку, телегу @jethacker или почту alexey.stacenko@gmail.com

Следите за новостями YC Startup Library на русском в телеграм-канале или в фейсбуке.

Полезные материалы


Подробнее..

Приглашение к обсуждению методики составления индекса HTTPS-защищенности сайтов

15.10.2020 16:12:34 | Автор: admin
Мы выпустили уже несколько обзоров поддержки HTTPS на сайтах российских органов власти и столкнулись с неизбежной необходимостью четче формализовать критерии, по которым она оценивается. Понятно, что если сервер подтверждает защищенность соединения чужим TLS-сертификатом, то это шляпа и высокого места в рейтинге соответствующему сайту не занять.

Но дальше возникают менее однозначные вопросы, например: поддержка TLS_RSA_EXPORT_WITH_RC4_40_MD5 это полная шляпа или просто недостаток? А если этот шифронабор из 60-х 90-х первым предлагается клиенту для согласования? А если все остальные не сильно лучше? А что такое сильно лучше? Скажем, TLS_PSK_DHE_WITH_AES_128_CCM_8 лучше или нет?

В результате родилась методика составления индекса, позволяющая формально оценивать степень надежности HTTPS-соединения по 31 пункту с разбивкой на 5 групп, от это вообще не HTTPS до так держать!

Чем точно не является индекс, так это российским ответом NIST/HIPAA/PCI DSS и т.п. по двум причинам.

Первая индекс учитывает только надежность HTTPS-соединения. Производительность веб-сервера (NPN/ALPN/session resumption) и т.п. материи индекс не рассматривает, не для того он придумывался.

Вторая NIST.SP.800 и прочие стандарты индустрии ориентируются на эллиптические кривые NIST, доверия к которым чуть более, чем никакого, зато есть вопросы с точки зрения ECDLP/ECC (задорную ремарку про шапочку из фольги можно невозбранно оставить в комментах).

Хотя кто знает, может со временем из индекса и вырастет суверенный стандарт с духовностью и скрепами Кузнечиком и Магмой (но не раньше, чем IETF признает их частью стандартных шифронаборов для TLS).

Основная идея индекса: в 2020 году настоящим HTTPS можно считать лишь TLS 1.2 и выше с соответствующим комплектом шифронаборов и эллиптических кривых. Старым шифронаборам, даже если они не имеют известных уязвимостей, пора на свалку истории. Рассуждения про необходимость поддержки legacy-клиетов в пользу бедных: Windows XP до сих пор популярен, но его пользователи не шастают сегодня по Интернету через Internet Explorer 8 с его доисторическим Schannel, а используют для этих целей браузеры на основе Chromium/Firefox, использующими NSS. То же самое относится к пользователям старых версий Android они либо поставили альтернативный браузер, не полагающийся на системную криптобиблиотеку, либо не могут пользоваться большинством современных сайтов даже через HTTP (без поддержки CSS3 и прочих современных свистоперделок).

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

1. Минимальные критерии

1.1. Поддерживается соединение по протоколу HTTP с шифрованием (HTTPS), обеспечиваемым использованием криптографического протокола TLS. HTTPS-соединение устанавливается с идентификатором протокола (схема URI) https по TCP-порту 443.

1.2. Шифрование соединения подтверждается действительным, не самоподписанным и не пустым TLS-сертификатом сайта стандарта X.509 версии 3, выданным авторитетным центром сертификации (CA).

2. Дополнительные критерии

2.1. Сервер не подвержен известным уязвимостям в реализации поддержки защищенного соединения (BEAST, POODLE, GOLDENDOODLE и т.п.)

2.2. TLS-компрессия не поддерживается.

2.3. Поддерживается только безопасное пересогласование (secure renegotiation) по инициативе сервера; пересогласование по инициативе клиента не поддерживается.

3. Рекомендуемые критерии

3.1. Соединение по протоколу HTTP автоматически (принудительно) переключается на HTTPS.

3.2. Публичный ключ TLS-сертификата сайта имеют длину 2048 бит. Сертификат подписан цифровой подписью по алгоритму SHA256 с шифрованием по алгоритму RSA или ECDSA.

3.3. Поддерживается протокол TLS версии 1.2.

3.4. Протоколы SSL и TLS версии 1.1 не поддерживаются.

3.5. Поддерживаются стандартные шифронаборы на основе стойких алгоритмов.

3.6. Слабые, неподходящие и уязвимые шифронаборы не поддерживаются.

3.7. Поддерживаются ECDLP/ECC-безопасные эллиптические кривые.

3.8. Задан порядок согласования шифронаборов.

3.9. Используются устойчивые параметры алгоритмов согласования ключей на основе протокола Диффи-Хеллмана (DH).

3.10. Поддерживаются важные расширения TLS.

3.11. Поддерживается Server Name Indication (SNI).

4. Расширенные критерии

4.1. Опубликована полная и не избыточная цепочка TLS-сертификатов с их верной последовательностью в цепочке.

4.2. TLS-сертификат сайта поддерживает Certificate Transparency.

4.3. TLS-сертификат сайта поддерживает Certificate Revocation List (CRL) и Online Certificate Status Protocol (OCSP).

4.4. TLS-сертификаты в альтернативных цепочках соответствуют Критериям 1.2, 4.1.

4.5. ECDLP/ECC-небезопасные эллиптические кривые не поддерживаются.

4.6. Задан порядок согласования эллиптических кривых.

4.7. Заголовки ответа сервера (HTTP response headers) содержат заголовок HTTP Strict Transport Security с директивой includeSubDomains.

5. Бонусные критерии

5.1. TLS-сертификат сайта поддерживает OCSP Stapling.

5.2. TLS-сертификат сайта выдан с использованием процедуры проверки организации (OV) или расширенной проверки (EV).

5.3. Поддерживается протокол TLS версии 1.3.

5.4. Задан порядок согласования устойчивых шифронаборов от более устойчивых к менее устойчивым (по сопоставимым параметрам).

5.5. Ресурсные записи DNS для доменного имени сайта включают запись CAA (Certification Authority Authorization).

5.6. Ресурсные записи DNS для доменного имени сайта включают записи DS и TLSA (поддерживаются DNSSEC и DANE).

5.7. Поддерживается Encrypted Server Name Indication (ESNI).

5.8. Заголовки ответа сервера (HTTP response headers) содержат заголовок Content-Security-Policy с директивой upgrade-insecure-requests.
Подробнее..

Как перестать принимать слабительное для мозга, чтобы не просрать свою жизнь до конца

20.02.2021 02:18:20 | Автор: admin

Для каждого эксперта существует равный по абсолютной величине противоположный эксперт. T. Sowell (1995). The Vision of the Anointed.

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

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

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

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

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

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

Реальность бесконечно сложна для нашего познания. Мы должны упрощать. Олдос Хаксли

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

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

Тому, кто не хочет изменить свою жизнь, помочь невозможно Гиппократ

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

Образование замечательное дело, надо лишь хоть иногда вспоминать о том, что ничему, что стоит знать, научить невозможно. Оскар Уайльд

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

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

Я считаю, что человек живет на планете, а не в государстве. Виктор Цой

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

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

Что же не так с существующей базой знаний? Ее устаревший аналоговый функционал и методы обработки информации привели к следующим последствиям:

  • Окружающий нас мир быстро трансформируется, изменения вновь и вновь застают нас врасплох неожиданными поворотами, которые, казалось бы, нереально было предугадать, как черных лебедей Нассима Талеба. Информация, пронизывающая каждого человека в социуме, содержит значительный процент лишнего шума, подается разрозненными кусками, а противоречия встречаются и подкрепляются аргументами во всех сферах. В связи с чем становится крайне сложно познать нечто приближенное к объективной реальности.

Ложь обойдет полсвета прежде, чем правда успеет надеть ботинки. Марк Твен

  • Большинство СМИ, паразитируя на эмоциях читателей, превратились в генераторы fakenews, отвлекающих от действительно важных событий. Вместо осведомления и сплочения населения происходит его раскол, что ведет к жестокой агрессии людей с противоположными точками зрения по отношению друг к другу. Негатив нынче в цене, через него управляются народные массы, которым через эмоциональную раскачку всегда подскажут кого ненавидеть и кто настоящий враг. Расслоение на почве религиозных, идеологических, национальных, политических, гендерных, этических и иных предпочтений стало следствием лоббирования интересов определенных групп. Уже давно появилась возможность управлять репутацией в сети и вы можете рисовать свой образ в выгодном для себя свете (привет Дмитрию Сидорину).

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

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

Наступят последние времена, когда девять больных придут к одному здоровому и скажут: "ты болен, потому что не такой, как мы. старец Антоний Великий

  • Факты подтираются, понятия подменяются, отчего рядовой индивид обладает узким субъективным понятийным аппаратом, не способным продуктивно синхронизироваться с другими членами общества: говоря об одном и том же у обеих сторон есть вероятность быть не понятыми друг другом. Часто даже в одном сообществе/компании/министерстве и других объединениях можно наблюдать коммуникативную рассинхронизацию людей. В связи с чем каждый индивид так или иначе как минимум не способствует, а чаще препятствует достижению общих целей и решению задач.

Счастье - это побочный эффект правильно организованной жизни. Виктор Франкл

  • Ложные сведения заполонили информационный фон, люди находятся в мировоззренческом коллапсе, часто не осознавая даже устройства своей психики и физиологии, не говоря уже о мире, в котором живут, что негативно влияет на взаимодействие друг с другом и развитие социума. Многочисленные болезни стали нормой даже у детей, что уж говорить о старшем поколении. 2020 год показал, что иммунитет слаб у населения по всему миру, особенно в самой экономически развитой стране - США. Из чего можно сделать вывод, что благосостояние отдельного государства не равно крепкому здоровью его жителей. Неспособность большинства людей предотвращать появление проблем со здоровьем разрушает их психическое здоровье, личные приоритеты и экономику государств. Тотальная дезинформированность способна обесценить любые финансовые вливания куда бы то ни было.

Истинное призвание каждого состоит только в одном прийти к самому себе. Герман Гессе

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

Истинная мудрость приходит к каждому из нас тогда, когда мы сознаем, как мало понимаем в жизни, в самих себе, в мире вокруг нас. Сократ

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

Никто не знает силы своих способностей, пока он не испытал их. Джон Локк

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

    На тему КПД довольно ёмко написал Сергей Капица в своей книге Парадоксы роста. Законы глобального развития человечества: В современном мире производительные силы достигли такого уровня, что на жизнеобеспечение человечества достаточно 15-20% его рабочей силы.. Он же в книге и интервью объяснил почему люди не стали меньше работать. И это только капля полезных знаний в хаотичном океане информации, бОльшая часть из которых не применяется на практике, что мы в силах исправить.

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

  • Информационные платформы различных ведомств и компаний имеют свой формат данных, что усложняет взаимодействие и корреляцию с другими платформами, внедрение сторонних инструментов и приведение массивов данных к единой структуре. С таким подходом госуправление еще надолго останется рыхлой неэффективной системой.

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

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

  • Выделенные бюджеты распределяются и тратятся крайне неэффективно, это очередной раз подтвердил недавний пост на Хабре про РЖД.

  • Краткий пример из многочисленных абсурдных фактов: треть регионов РФ не газифицированы, учитывая, что страна входит в число лидеров по экспорту газа.

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

Легче одурачить людей, чем убедить их в том, что они одурачены. Марк Твен

  • Новые технологии стали не только надежными помощниками, но и породили лохотроны всех мастей. Теперь уже не обязательно выходить из дома, чтобы отдать мошенникам свои кровно заработанные сбережения. Раздается звонок и человек на другом конце четко по скриптам с использованием социальной инженерии разводит добропорядочного гражданина, представившись сотрудником банка или любым другим специалистом. Уже практически не осталось счастливчиков, кому бы хоть раз не позвонили с предложением вложить деньги под огромный процент, приобрести какой-то чудодейственный товар со 100%-ой предоплатой, воспользоваться бесплатными юридическими услугами, пройти бесплатный курс косметического ухода или продлить лже-страховой лже-полис автомобиля. Отсутствие хоть какой-то информации на эту тему заставило раскошелиться солидную долю наших соотечественников. Такие агрегаторы мошенников как Вкладер спасают часть населения, но чтобы искоренить эту напасть требуется более комплексное решение.

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

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

  • И многое, многое другое

У мудреца спросили: "Долго ли нам ждать перемен?"

Мудрец ответил: "Ну, если ждать, то долго"

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

  • разрозненные массивы информации,

  • искаженные знания о действительности,

  • неспособность в них ориентироваться,

  • принятие решений со слабо управляемыми последствиями.

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

У каждого из нас есть нерешенные задачи, вопросы без ответа, неосуществленные желания и недостигнутые цели. Иногда всё решается и жизнь в корне меняется благодаря одной фразе, статье или книге, но их еще нужно найти и рационально воспринять. А теперь представьте себе, что вы можете накапливать важную для вас информацию так, чтобы потом её можно было переиспользовать. Это позволит не пропускать те самые частички информации, которых не хватает чтобы собрать образы воедино. Чтобы любой поход за информацией всё больше раскачивал бы добротную систему знаний, которая при достижении критической массы порождала бы новые открытия в понимании сути. Предположим, что это можно сделать с помощью некоего комплекса инструментов с мощнейшим функционалом. Эти инструменты должны дать приблизительно следующие возможности:

  1. Воедино собрать и связать между собой бесчисленное множество единиц информации;

  2. Произвести их преобразования и обогащение новыми связями;

  3. Найти новые слои информации и обозначить их;

  4. Наглядно отобразить накопленную информацию в разных разрезах и с помощью разных представлений;

  5. Сформировать выжимку для дальнейшего использования;

  6. Поделиться с миром готовыми образами;

  7. Организовать совместное изучение темы и найти соратников;

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

Человеку свойственно принимать границы собственного кругозора за границы мира. Артур Шопенгауэр

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

Можно многому научиться, сохраняя сознание открытым к другим мнениям. Коносукэ Maцусита (Konosuke Matsushita), Японский бизнесмен

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

Будем рады вашим конструктивным предложениям, пожеланиям и наработкам в комментариях и ТГ-канале @Knowledge_Instruments. Кто особо остро понимает изложенную проблематику и готов поучаствовать в проекте - присоединяйтесь! С чем-то не согласны и знаете как сделать лучше - прекрасно, альтернативные и даже самые смелые идеи приветствуются! Невозможное возможно по частям.

Подробнее..

Популяризация исторического контента в Википедии круглый стол в Казани

20.02.2021 12:17:51 | Автор: admin
19 февраля 2021 года Институт истории Академии наук Республики Татарстан (Институт Марджани) провёл круглый стол по теме Популяризация исторического контента в Википедии. Учёные историки обозначили круг проблем, которые возникают у них при работе с Википедией.

Дискуссия обратилась к двум ключевым вопросам: 1) как избегать этнических конфликтов, 2) как сделать научную литературу доступной для самого широкого использования.

Радик Римович Салихов (директор Института истории АНРТ) с радостью подчеркнул, что растёт интерес людей к родным языкам и местной истории, и этот интерес обращается к историческим ресурсам интернета. Поэтому перед татарскими учёными встаёт новый вопрос о самом широком распространении достоверных научных знаний. Если не решить этого вопроса, тогда в статьях Википедии о населённых пунктах и личностях будут появляться ошибочные или предвзятые известия.

Марат Мингалиевич Гибатдинов (заместитель директора по научной работе ИИ АНРТ) сказал, что Институт стремится пополнять Википедию новыми статьями и исправлять уже созданные статьи, потому что Институт располагает очень большим запасом знаний, который не может довести до широкой публики только своими силами. Собственный сайт Института истории не решает этой задачи, не позволяет транслировать исторические знания туда, где они действительно нужны читателям.

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

Айдар Ильсурович Ногманов (заведующий отделом историко-культурного наследия народов Республики Татарстан ИИ АНРТ) рассказал про конфликты между соседними народами, которые наследуют единую, географически смежную историю, однако по-разному воспринимают прежние события, по-разному освещают национальные особенности местной истории. Башкирская литература освещает историю Татарстана не так, как татарская литература, ставит свои акценты и обозначает свой круг интересов, откуда может возникать конфликт. Вопрос становится всё более важным, потому что всё больше статей Википедии посвящены местным вопросам, а значит, растёт и число конфликтных точек.

Бахтияр Искандерович Измайлов (заведующий отделом междисциплинарных исследований ИИ АНРТ) признал, что давно работает с Википедией, потому что она стала очень популярным справочником, её в первую очередь транслируют поисковые сайты, из неё публика хочет получить объективную информацию о фактах.

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

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

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

Сайрус Русланович Хамидуллин (отдел историко-культурного наследия народов Республики Татарстан ИИ АНРТ) рассказал, что Институт истории готовит статьи по истории населённых пунктов Татарстана, опираясь на энциклопедию, изданную десять лет назад. Здесь стали возникать этнические конфликты, потому что башкирская литература и татарская литература дают разные, противоречивые выводы по истории сёл и деревень. У башкир и татар есть авторитетная и достоверная научная литература по таким вопросам однако она даёт различные оценки, указывает разные названия народов. Сегодня это приводит к явным и заметным противоречиям.

Дмитрий Евгеньевич Мартынов (Казанский федеральный университет) объяснил, что сам метод создания Википедии отличается от методов создания классической энциклопедии. Классическую энциклопедию писали интеллектуальные специалисты с большим запасом знаний. А вот Википедию пишут неспециалисты, которые сильно зависят от доступности научных источников. Работая над статьями Википедии, авторы не имеют лёгкого доступа к серьёзной литературе. Более того, даже научная библиография недостаточна, нет удобного доступа к научным библиографическим базам и обзорам, трудно даже найти достоверную литературу.

Подводя итог, Фархад Наилевич Фаткуллин (переводчик Управления государственного протокола президента Республики Татарстан) сказал, что Википедия позволяет развивать сотрудничество между людьми, позволяет договариваться друг с другом, позволяет учиться совместной работе.

Чем всё это интересно и полезно для нас?


  • Работа академического института будет примером для многих других.
  • Есть надежда, что Институт истории выработает образцовые документы и договора, чтобы издательства могли выпускать свою литературу в свободный оборот по свободной лицензии.
  • Как правило, академические институты располагают огромным запасом научного, популярного и визуального контента. Можно полагать, что этот контент выйдет на рынок по свободным лицензиям. Сама оцифровка и презентация такого контента ведёт к созданию новых технологий для управления знаниями.
  • Институт истории АНРТ стремится решить социальную и политическую проблему, задавая новый тренд. Этот тренд противоречит сложившейся традиции, сложившемуся научному методу и, главное, сложившейся научной экономике. Здесь возможны неожиданные открытия и перемены.



Текст: PereslavlFoto, CC-BY-SA 3.0.
Подробнее..

Альтернативная конституция

01.07.2020 22:06:22 | Автор: admin
Мы вовсе не собираемся разрушать ваш старый мир. Мы собираемся построить новый. Вот вы жестоки: вы не представляете себе строительство нового без разрушения старого. А мы представляем себе это очень хорошо. Мы даже поможем вашему поколению создать этот ваш рай, выпивайте и закусывайте на здоровье. Строить, господин Банев, только строить. Ничего не разрушать, только строить.
А и Б Стругацкие, Гадкие лебеди

image


Этот пост я задумываю как рискованный эксперимент. Я хочу выяснить, могут ли ИТишники самоорганизоваться для создания открытого, свободного (от слова freedom, а не free beer), чистого, высококлассного кода, используя привычные им инструменты (Git, fork, TDD, agile, stackoverflow и прочее). Только этот код это текст, который мог бы являться конституцией в альтернативной реальности (или фантастического рассказа), очень близкой к нашей. Если тебе не нравится чужой код напиши свой.

Являются ли программисты теми, кто пишет сценарий будущего или просто теми, кто пишет патчи за деньги?

Заодно попробуем составить базу знаний лучших решений, какие были за историю конституций всех времен и народов, методов написаний и улучшений, а так же dark pattern'ы. Например, довольно поучительный кейс Исландии, как они писали-писали вики-конституцию, но так и не написали. Не помогли ни кастрюли, ни батя Бьорк, ни то, что их всего 300 000 человек.

(Надеюсь, что читатели Хабра смогут отнестись к моей идее конструктивно и не превратят в балаган. Если превратят то скрою статью и завершу эксперимент.)


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


Истории конституций


Теория общественного договора определяет Конституцию как договор между населением и государством, где определяется порядок формирования государства и взаимоотношение сторон.

Когда появилась первая конституция? Кто ее писал и по каким механизмам? Как обеспечивалось её соблюдение?

image

Копия Великой хартии вольностей

image

Первая страница оригинального текста Конституции Соединённых Штатов

Первой конституцией в современном смысле этого понятия, то есть документ, описывающий и устанавливающий разделение властей и компетенцию каждой из них, является Конституция США, ратифицированная штатом Делавэр 7 декабря 1787 года

image

К первым писаным конституциям на Европейском континенте также относят Конституцию Речи Посполитой (принята 3 мая 1791 года) и Конституцию Франции (принята 3 сентября 1791 года). Обе конституции просуществовали недолго, в Речи Посполитой из-за окончательного раздела страны, во Франции из-за развития революционных событий.

image

Конституция казаков Филиппа Орлика 1710 года

Конституции составляются и принимаются:

  • чрезвычайно-созываемым парламентом (учредительное собрание) (например, Конституция Франции, Конституция Италии 1947 года, Конституция Чехословакии 1948 года, Конституция Югославии 1946 года, Конституция Румынии, Конституция Албании 1946 года, Конституция Германии 1918 года, Конституция Греции, Конституции Болгарии, Конституции Польши 1920 и 1952 годов, Конституция Норвегии);
  • регулярным парламентом (например, Конституция Дании, Конституция РСФСР 1978 года, Конституция ГДР 1968 года, конституции Венгрии 1949 и 2011 года, Конституция Польши 1997 года)
  • съездом советов депутатов (Конституция РСФСР 1918 года, 1925 года, 1937 года)
  • временным парламентом (Конституция Чехословакии 1919 года, Конституция ФРГ 1949 года, Конституция ГДР 1949 года)
  • народом, минуя выборные органы (Конституция Франции 1958 года, Конституция России 1993 года)
  • главой государства (Конституция Германии 1871 года, Конституция Франции 1814 года, Конституция Италии 1861 года, Основные Законы Российской Империи 1906 года);


Конституция Исландии


Из Википедии:

Главной задачей на повестке нового правительства стала разработка новой конституции. Первую попытку написания конституции правительство предприняло сразу после прихода к власти. Предполагалось, что на это уйдет год, но в итоге дело закончилось неудачей, потому что граждане не хотели признавать такую конституцию легитимной. Тогда правительство решилось на эксперимент: сделать так, чтобы граждане сами написали конституцию. Существует миф, что проект основного закона писали 950 простых граждан, но это не так. На первом этапе реформы действительно был собран Национальный форум, состоящий из 950 человек. Форум формировался жеребьевкой. Он определил ключевые ценности и направления новой конституции. Далее 7 профессиональных политиков составило заключение состоящие из 700 страниц. Чтобы доработать новую Конституцию, было избрано Конституционное собрание, в который вошли 25 граждан. В распространенном в интернете мифе говорится, что это собрание состояло из домохозяек, крестьян, рабочих и т. д., но в действительности совет состоял из семи руководителей (университетов, музеев, профсоюзов), кроме того, пяти профессоров и доцентов, четырёх представителей средств массовой информации, четырёх художников, двух юристов, священника, отца певицы Бьорк, видного профсоюзного деятеля и всего одного крестьянина. Совет должен был быть избран. Для этого кандидаты собирали по 30 подписей. Свою кандидатуру предложили 522 человека. 25 человек были избраны на всенародных выборах. Но в итоге голосование было признано парламентом недействительным, а членов собрания они назначали сами. Далее началась доработка текста Конституции и конституционных законов. От каждого гражданина требовалось посылать предложения по электронной почте, Facebook или YouTube и участвовать в обсуждениях Совета, давая комментарии и рекомендации.

В апреле 2011 г. совет начал работу. На написание проекта конституции у него было четыре месяца. Участники собирались ежедневно и работали полный рабочий день, получая за это жалование, эквивалентное зарплате парламентариев. Еженедельно на специальном сайте публиковались результаты проделанной ими работы то есть проект конституции на разных стадиях разработки. Предполагалось, что общественность будет это оценивать, комментировать и вносить предложения и поправки. Ответная реакция действительно была, она поступала через сайт, социальные сети и иные средства интернет-связи. Совет получал отзывы и предложения, которые, по утверждению Торвалдара Гильфасона, внимательно рассматривались и учитывались при создании новых версий проекта. 20 октября 2012 основные положения новой Конституции были утверждены референдумом. Итоговую точку должен был поставить парламент, но документ в итоге не был принят.


Интересные ИТ-ресурсы


Подробнее..

Flipper Zero давайте пилить вместе. Приглашаем разработчиков

10.08.2020 10:05:17 | Автор: admin


Flipper Zero проект карманного мультитула для хакеров в формфакторе тамагочи, который я разрабатываю с друзьями. Предыдущие посты [1],[2],[3],[4]

За первые сутки кампании на Кикстартере мы собрали 1 млн. долларов. Откровенно говоря, никто из команды даже близко не ожидал такой популярности. В первые дни мой телефон разрывался от уведомлений, звонили от журнала Форбс до Первого канала. Я до сих пор полностью не отошел от шока и не ответил до конца на все письма. Ничего подобного я никогда в жизни не испытывал.

Огромное спасибо всем, кто поддерживал нас, следил за проектом и принимал участие. Именно на Хабре я опубликовал первый пост с концептами Флиппера, получил первый фидбек, критику и похвалу. Некоторые функции мы добавили во Флиппер именно после фидбека на Хабре. Мы постараемся не обосраться с производством и оправдать ожидания.

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

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

Кто работает над проектом?


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

  • Firmware вся софтовая разработка прошивки, в том числе программных модулей для каждого компонента: радио, RFID, Bluetooth, инфракрасный порт, U2F, USB-стек и т.д.
  • Electronics Engineering (EE) команда, занимающаяся разработкой железа, то есть всей электронной части: платы, антенны, питание.
  • Mechanical Engineering (ME) команда конструкторов, занимающаяся механическим дизайном. Всем, что касается компоновки компонентов внутри и снаружи, механических частей устройства: корпус, кнопки, отверстия, расположения разъемов, удобство сборки и т.д.
  • Manufacturing команда, отвечающая за то, чтобы результат работы команд ME и Hardware можно было передать в массовое производство. Сперва мне казалось, что это чисто административная работа, но это не так. Нужно знать все ограничения SMT-машин, выполняющих монтаж компонентов, ограничения пресс-форм, в которые будут заливаться корпуса, особенности ручной сборки и тестирования и еще кучу всего. Так что эта работа больше техническая, нужно знать все тонкости производства.

На текущий момент у нас есть на ~80% завершенное устройство по части железа и механики. Но самая большая часть разработки Флиппера это прошивка. Сейчас у нас есть рабочий прототип, архитектура и основные компоненты прошивки, на которые нужно нарастить мясо.

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

Как принять участие в разработке прошивки?



Вся прошивка Flipper Zero будет полностью открыта и опубликована на Github. Мы пока решили не открывать наши репозитории с кодом, чтобы чуть-чуть отложить момент появления подделок на Aliexpress. При этом мы прекрасно понимаем, что после такого успеха на kickstarter, подделки обязательно появятся, и в целом не особенно переживаем из-за этого. Просто чуть-чуть отложим этот момент во времени, возможно это подтолкнет китайцев написать какой-то новый код вместо того, чтобы сразу использовать наш. Поэтому сейчас вся разработка ведется в закрытом репозитории, куда мы добавляем людей после того, как они заполнят форму и подпишут Соглашение Разработчика (CLA). В соглашении мы просим не распространять код без нашего явного согласия, а также говорим о том, что мы сможем распоряжаться вашим кодом, однако обязательно сохраняем ваше авторство.

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

На данный момент используется HAL/LL от STM и FreeRTOS. Большая часть работы с периферией сгенерирована CubeMX, однако в некоторых хардкорных местах пришлось выкинуть штатные функции и поработать с регистрами напрямую.

Сейчас мы находимся на этапе, когда легко можно поменять стек технологий, наш главный программист уже неделю думает, не перейти ли на RIOT OS, ChibiOS, NuttX и Zephyr для ускорения и упрощения разработки. А еще рассматривается вариант переписать все на Rust и использовать embedded-hal и Tock OS. В общем, сейчас мы готовы к серьезным переменам ради светлого будущего.

Сборка кода происходит через make и gcc, но совсем скоро нам нужно будет добавить возможность собирать наш код в Arduino IDE и PlatformIO.

Архитектура прошивки:


Кого мы ищем?


Основные компоненты Флиппера написаны на C, C++ и Rust, поэтому для разработки пригодится знание этих языков. Также будет классно, если ты работал с микроконтроллерами и умеешь отлаживать электронику, но мы стараемся отделить железо от кода слоем абстракций, так что многие компоненты, такие как графический интерфейс или поведение дельфина, не потребуют работы с железом. Также нам нужны дизайнеры интерфейсов (разместить на экране 12864 информативный UI не самая простая задача), девопсы и тестировщики (если ты готов тестировать электронику и разбираться с настройкой стендов для удаленной отладки и тестирования).

Самое главное у вас должно быть желание внести свой вклад в разработку. Для участия в проекте заполните форму. Отнеситесь к заполнению формы очень внимательно, это единственный удобный способ для нас понять ваш профессионализм: напишите о своем опыте разработки, укажите только те компоненты Флиппера, которые вам действительно интересно развивать. Будет очень здорово, если у вас уже есть идеи, которые вы сможете реализовать обязательно напишите о них в форме.


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

Dev Kit для железячников


Для тех разработчиков, которые отважатся принимать участие в железной разработке, то есть тестировать физическую часть радио модуля, отлаживать NFC/RFID, разрабатывать антенны и т.д. мы предусмотрели специальный dev kit. Это будет версия Флиппера без корпуса в специальной оснастке для удобства подключения к отладочным инструментам.


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

Разработчикам модулей


По нашей задумке, функции Флиппера могут расширяться с помощью аппаратных модулей. Сейчас у нас нет ресурсов заниматься разработкой модулей, поэтому мы готовы полностью отдать эту задачу сообществу. Это может быть совершенно любой модуль, например CAN Bus, Холл сенсор, логический анализатор, датчики окружающей среды, датчик шума, модем, LoraWAN, IMU, FM передатчик и еще целая куча возможных опций, на которые только хватит фантазии.



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

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




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

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

Как со мной связаться
Все заметки по проекту, в первую очередь, я публикую в свой Telegram-канал @zhovner_hub на русском языке.

С международной аудиторий я общаюсь на английском через твиттер @zhovner.

Глупые фотографии и видео я публикую в инстаграм@pzhovner.

Скучные разговоры про бизнес веду в фейсбуке fb.com/zhovner.
Подробнее..

Прокачиваем разметку мультимодальных данных меньше асессоров, больше слоёв

18.08.2020 18:15:11 | Автор: admin

Всем привет! Мы учёные лаборатории Машинное обучение ИТМО и команда Core ML ВКонтакте проводим совместные исследования. Одна из важных задач VK заключается в автоматической классификации постов: она необходима не только чтобы формировать тематические ленты, но и определять нежелательный контент. Для такой обработки записей привлекаются асессоры. При этом стоимость их работы можно значительно снизить с помощью такой парадигмы machine learning, как активное обучение.


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


image


Введение


Активное обучение это раздел machine learning, где модель взаимодействует с учителем. Она запрашивает у него для тренировки лишь те данные, которые позволят обучиться лучше и, следовательно, быстрее.


Это направление интересно компаниям, которые привлекают асессоров для разметки данных (например, с помощью сервисов Amazon Mechanical Turk, Яндекс.Толока) и хотят удешевить этот процесс. Один из вариантов использовать reCAPTCHA, где пользователь должен отмечать снимки, скажем, со светофорами, и заодно получать бесплатную разметку для Google Street View. Другой способ применять активное обучение.


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


Компания Amazon в своей работе описывает фреймворк DALC (Deep Active Learning from targeted Crowds). Он раскрывает концепцию активного обучения с точки зрения нейронных сетей, байесовского подхода и краудсорсинга. В исследовании в том числе используется техника Monte Carlo Dropout (о ней мы тоже поговорим в этой статье). Ещё авторы вводят любопытное понятие noisy annotation. Если в большинстве работ по активному обучению предполагается, что асессор говорит правду и ничего, кроме правды, то здесь допускается вероятность ошибки в силу человеческого фактора.


Про ещё одно исследование от Amazon можно прочитать здесь. В нём рассматривается концепция иерархической разметки: когда асессор вместо классической одноклассовой разметки объекта должен дать бинарный ответ о его принадлежности к определённому надклассу/классу в иерархии. При этом бинарные вопросы, как и объект для разметки, выбирает сам алгоритм. Таким образом, конечная разметка может получиться неполной: будет определён не конечный класс объекта, а его категория. Однако этого будет достаточно для обучения.


Но хватит говорить про использование парадигмы пора рассмотреть активное обучение в деталях! У него есть несколько основных подходов, или сценариев. В нашем исследовании модель взаимодействовала с учителем по сценарию pool-based sampling.


Рис. 1. Общая схема pool-based сценария активного обучения
Рис. 1. Общая схема pool-based сценария активного обучения


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


Наиболее полезные данные отправляются на разметку эксперту, чтобы затем вернуться для дообучения модели уже в активной фазе. Отправленные на разметку данные называют запросом (англ. query). Запрос может состоять как из одного объекта, так и из нескольких. Способы выбора объектов пула для запроса к эксперту (иными словами, способы оценить полезность данных) называются стратегиями активного обучения.


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


Набор данных и задача


Напомним, общая задача классификация постов ВКонтакте. Они представляют собой мультимодальные данные (изображение и текст). Предоставленный набор данных включает 250 тыс. готовых эмбеддингов постов. Здесь каждый объект (пост) размечен одним из 50 классов тематик публикаций и опционально содержит:


  1. векторное представление, или эмбеддинг (англ. embedding), картинки поста;
  2. векторное представление текста.

Стоит отметить, что набор данных сильно несбалансирован (см. рис. 2).


Рис. 2 гистограмма распределения классов
Рис. 2 гистограмма распределения классов


Модель для классификации


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


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


В проекте мы экспериментально изучили различные конфигурации глубоких нейронных сетей. Проводились эксперименты с добавлением residual соединений, highway блоков, использованием энкодеров (англ. encoder). Рассмотрели разные варианты, учитывающие мультимодальность на основе слияния (англ. fusion): метод внимания для мультимодальных данных, матричное слияние.
Но некоторые способы учёта мультимодальности данных невозможно было применить к нашей задаче например, выравнивание и обучение различным представлениям. Это связано с готовым представлением данных в виде предобученных векторов-эмбеддингов.


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


Критерием для выбора итоговой модели стала максимизация значения метрики валидационной точности. Итак, в качестве классификатора была подобрана следующая архитектура (рис. 3):


Рис. 3. Подобранная архитектура для классификации
Рис. 3. Подобранная архитектура для классификации


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


Блоки, обозначенные красным и синим на рис. 3, имеют следующий вид:


Рис. 4. Описание основных блоков модели нейронной сети для классификации
Рис. 4. Описание основных блоков модели нейронной сети для классификации


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


Один из закономерных и важных вопросов, которые возникли при построении этой архитектуры: как считать функцию потерь? Варианты:


  1. простое покомпонентное суммирование элементов функции потерь с разных голов;
  2. взвешенная функция потерь с ручным перебором весов;
  3. взвешенная функция потерь с обученными весами голов.

Мы выбрали третий вариант. Ещё вдохновились статьёй из области байесовского глубокого обучения: в ней комбинации функций потерь выводятся исходя из формулы maximum likelihood и учёта неопределённости предсказаний, возникающих из-за шума в данных. В итоге мы остановились на такой функции потерь:


$L = \frac{1}{\sigma_1 ^ 2}L_1 + \frac{1}{\sigma_2 ^ 2}L_2 + \frac{1}{\sigma_3 ^ 2}L_3 + \log{\sigma_1} + \log{\sigma_2} + \log{\sigma_3}$


где $L_1, L_2, L_3$ функции потерь для разных выходов модели (в нашем случае они представляют собой категориальную кросс-энтропию), а $\sigma_1, \sigma_2, \sigma_3$ настраиваемые параметры, характеризующие дисперсию и шум в данных.


Pool-based sampling


С моделью определились теперь опишем, как будем применять и тестировать различные стратегии активного обучения. Согласно сценарию pool-based sampling мы составили пайплайн экспериментов:


  1. Берём из тренировочного набора данных какое-то количество случайных объектов.
  2. Обучаем на них модель.
  3. Выбираем новую пачку данных из оставшегося тренировочного набора, основываясь на тестируемой стратегии, и добавляем их к размеченным данным.
  4. Дообучаем модель.
  5. Считаем метрики (валидационную точность).
  6. Повторяем шаги 35 до выполнения определённого критерия (например, пока не кончится весь тренировочный набор данных).

Первые два шага соответствуют пассивной фазе обучения, шаги 36 активной.


Помимо самой стратегии, в данном пайплайне значимыми являются два параметра, а именно:


  1. Размер изначального набора данных, на котором обучается модель во время пассивной фазы. Если этот параметр окажется недостаточным, то сложно будет сравнить эффект от активного обучения и дообучения на случайных данных: точность будет стремительно расти в обоих случаях. Если же, напротив, сделать начальный размеченный набор слишком большим, то модель будет хорошо обучена уже в пассивной фазе. Тогда в активной рост точности будет слабым вне зависимости от метода обучения. В нашем случае оптимальным оказался размер изначального набора данных, равный 2000.


  2. Размер запроса к эксперту. С одной стороны, можно отправлять объекты к эксперту по одному. В этом случае первый объект в запросе будет максимизировать критерий рассматриваемой стратегии активного обучения (при сортировке объектов по убыванию соответствия критерию). И после обучения на этом объекте остальные в запросе, скорее всего, перестанут представлять интерес. Но если выбирать объекты по одному, то эксперимент затянется и всё исследование усложнится. Поэтому мы остановились на 20 объектах в запросе.
    Ещё можно варьировать количество шагов в фазе активного обучения. Очевидно, что с его увеличением точность модели может расти. Но цель нашего проекта не достичь максимальной возможной точности классификации, а исследовать эффективность активного обучения. Поэтому мы решили зафиксировать количество шагов на 100 или 200.



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


Инсайт 1: влияние выбора batch size


В качестве baseline рассмотрим, как обучается модель при случайном выборе данных (будем называть это пассивным обучением) (рис. 5).


Рис. 5. График обучения baseline-модели пассивным способом. Приведён результат пяти запусков с доверительным интервалом
Рис. 5. График обучения baseline-модели пассивным способом. Приведён результат пяти запусков с доверительным интервалом


Для достоверности этот и все последующие эксперименты запускались по пять раз с разным random state. На графиках выводится средняя точность запусков с доверительным интервалом.


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


Чтобы устранить этот эффект, нужно осознать важность параметра размера батча (англ. batch size). В нашем случае он был по дефолту выбран равным 512 из-за большого количества классов (50). Получалось, что при конечном размере размеченного набора данных и фиксированном batch size последний батч мог оказаться крайне мал. Это вносило шум в значение градиента и негативно сказывалось на обучении модели в целом. Мы опробовали следующие варианты решения этой проблемы:


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

Итоговым решением стало формирование адаптивного batch size: на каждом шаге активного дообучения он вычислялся согласно формуле (1).


$current\_batch\_size =b + \Big \lfloor\frac{n \mod b}{\lfloor\frac{n}{b}\rfloor}\Big\rfloor [1]$


где $b$ изначальный batch size, а $n$ текущий размер размеченного набора данных.
Адаптивный подход помог сгладить просадки точности и получить монотонно возрастающий график (рис. 6).


Рис. 6. Сравнение использования фиксированного параметра batch size (passive на графике) и адаптивного (passive + flexible на графике)
Рис. 6. Сравнение использования фиксированного параметра batch size (passive на графике) и адаптивного (passive + flexible на графике)


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


Теперь перейдём непосредственно к исследованию методов активного обучения для нашей задачи.


Uncertainty


Первыми были реализованы наиболее простые стратегии активного обучения из обзорной статьи методы группы uncertainty sampling. Как следует из названия, стратегия основана на выборе для разметки тех объектов, в предсказании которых модель наименее уверена.


В статье приводятся три варианта подсчёта неуверенности:


1. Минимальная уверенность (англ. Least confident sampling)


В этом виде стратегии эксперту для разметки передаётся объект, наиболее вероятный предсказанный класс для которого характеризуется наименьшей уверенностью:


$x^{*}_{LC} = \underset{x}{\arg\max} \ 1 - P_{\theta }(\hat{y}|x) [2]$


где $\hat{y} = \underset{y}{\arg\max}\ P_{\theta}(y|x)$ класс с наибольшей вероятностью при классификации моделью, $y$ один из возможных классов, $x$ один из объектов набора данных, $x^{*}_{LC}$ объект, выбранный с помощью стратегии наименьшей уверенности объект.


Подробнее

Эту меру можно понимать так. Допустим, функция потерь на объекте выглядит как $1-\hat{y}$. В таком случае модель выбирает объект, на котором получит худшую оценку значения функции потерь. Она обучается на нём и тем самым уменьшает значение функции потерь.


Но у этого метода есть недостаток. Например, на одном объекте модель получила следующее распределение по трём классам: {0,5; 0,49; 0,01}, а на другом {0,49; 0,255; 0,255}. В таком случае алгоритм выберет второй объект, так как его наиболее вероятное предсказание (0,49) меньше, чем у первого объекта (0,5). Хотя интуитивно понятно, что бльшую информативность для обучения имеет первый объект: вероятности первого и второго класса в предсказании почти равны. Алгоритм стоит модифицировать, чтобы учитывать такие ситуации.


2. Минимальный отступ (англ. Margin sampling)


Согласно этому виду стратегии, алгоритм отправит на экспертизу те объекты, для которых наибольшую вероятность имеют два класса, причём эти вероятности близки:


$x^{*}_{M} = \underset{x}{\arg\min} \ P_{\theta }(\hat{y}_{1}|x) - P_{\theta }(\hat{y}_{2}|x)[3]$


где $\hat{y}_1$ наиболее вероятный класс для объекта $x$, $\hat{y}_2$ второй по вероятности класс.


Подробнее

С точки зрения информации этот метод выигрывает, так как алгоритм учитывает в два раза больше данных о распределении вероятностей классов. Однако и он не идеален, так как не рассматривает распределения по всем остальным классам. При этом, например, в MNIST (популярном наборе данных для классификации рукописных цифр) содержится десять классов соответственно, во внимание принимается лишь пятая часть информации о распределении. Преодолеть этот недостаток позволяет метод максимальной энтропии.


3. Максимальная энтропия (англ. Entropy sampling)


В этом виде стратегии для измерения неуверенности модели используется мера энтропии:


$x^{*}_{H} = \underset{x}{\arg\max} -\sum \ P_{\theta }(y_{i}|x)\log{P_{\theta }(y_{i}|x)}[4]$


где $y_{i}$ вероятность $i$-го класса для объекта $x$ при классификации данной моделью.


Подробнее

Энтропия удобна тем, что она обобщает два метода, которые мы описали выше. Она выбирает объекты обоих типов:


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

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


Но практические результаты в рамках решаемой задачи показали расхождение с теорией (рис. 7).


Рис. 7. Результаты сравнения различных видов стратегии uncertainty sampling с пассивным обучением (слева с методом минимальной уверенности, по центру с методом минимального отступа, справа с методом максимальной энтропии)
Рис. 7. Результаты сравнения различных видов стратегии uncertainty sampling с пассивным обучением (слева с методом минимальной уверенности, по центру с методом минимального отступа, справа с методом максимальной энтропии)


Как можно заметить, методы least confident и entropy sampling показали себя хуже, чем пассивное обучение со случайным выбором объектов для дообучения. В то же время margin sampling оказался более эффективным.


Чтобы читатели не подозревали, что на реализацию методов могли повлиять баги, сразу отметим: все методы были протестированы также на наборе данных MNIST. И на нём, например, стратегия entropy sampling продемонстрировала результаты, не противоречащие теоретической эффективности метода. Можно сделать вывод, что практическая эффективность описанных методов неоднозначна и зависит от конкретной решаемой задачи.


Перечисленные методы просты с точки зрения реализации и обладают низкой вычислительной сложностью. Можно оценить сложность одного запроса к эксперту как $O(p\log{q})$, где $p$ размер неразмеченного набора данных, а $q$ число объектов в запросе к эксперту. Также эти методы легко применять на практике, так как они не требуют изменения используемой модели.


BALD


Следующая стратегия, о которой пойдёт речь, BALD sampling (Bayesian Active Learning by Disagreement). Это байесовский подход к измерению неуверенности комитета моделей.


Согласно классификации методов активного обучения, это представитель стратегии query-by-committee (QBC). Её основная идея в использовании предсказаний нескольких моделей с конкурирующими гипотезами. Можно брать их усреднённое предсказание за основу для uncertainty sampling. Или выбирать для разметки те объекты, в предсказаниях которых модели несогласны в большей степени. Эксперименты проводились с методом QBC на основе Monte Carlo Dropout, речь о котором пойдёт дальше.


Проблема классических байесовских методов для глубокого обучения в том, что необходимо выводить большое количество параметров, а это делает обучение моделей в два раза дороже. Поэтому авторы предложили использовать dropout в качестве способа байесовской аппроксимации. Этот подход отличается от привычного применения dropout тем, что он используется во время инференса (на стадии предсказания). Причём для каждого объекта выборки предсказание делается несколько раз одной и той же моделью, но с разными dropout-масками (рис. 8). Такой способ сэмплирования называется Monte Carlo Dropout (MC Dropout) и не требует увеличения затрат памяти при обучении модели. Так с помощью одной модели можно получить несколько предсказаний, которые могут различаться для одного и того же объекта. Несогласие моделей (где они отличаются друг от друга лишь масками dropout) считается на основе Mutual Information (MI). MI здесь представляет собой эпистемическую неопределённость, или неуверенность комитета, то есть такой вид неопределённости, которая уменьшается с добавлением новых данных. Это согласуется с концепцией активного обучения в целом.


Рис. 8. Иллюстрация MC Dropout для метода BALD
Рис. 8. Иллюстрация MC Dropout для метода BALD


Итак, для начала мы использовали усреднённое предсказание полученного QBC на основе MC Dropout комитета и применили к нему различные методы uncertainty sampling. Это не дало прироста по сравнению с соответствующими методами, использующими только одно предсказание (рис. 9).


Рис. 9. Результаты сравнения различных видов стратегии uncertainty sampling на основе QBC и без него с пассивным обучением (слева - с методом минимальной уверенности, по центру - с методом минимального отступа, справа - с методом максимальной энтропии)
Рис. 9. Результаты сравнения различных видов стратегии uncertainty sampling (на основе QBC и без него) с пассивным обучением (слева с методом минимальной уверенности, по центру с методом минимального отступа, справа с методом максимальной энтропии)


На следующем шаге мы использовали меры несогласия комитета по методу BALD. Как уже было сказано, для этого применяется Mutual Information моделей комитета:


$a_{BALD}=\mathbb{H}(y_1,...,y_n)-\mathbb{E}[\mathbb{H}(y_1,...,y_n|\omega)] [5]$


$\mathbb{E}[\mathbb{H}(y_1,...,y_n|w)]=\frac{1}{k}\sum_{i=1}^{n}\sum_{j=1}^{k}\mathbb{H}(y_i|w_j) [6]$


где $n$ число классов, $k$ число моделей в комитете.


Первое слагаемое в формуле (5) представляет собой энтропию усреднённого предсказания комитета, второе среднюю энтропию каждой модели в отдельности. Таким образом, выбираются только те объекты, в предсказании для которых комитет менее всего согласен. Результаты применения метода BALD представлены на рис. 10.


Рис. 10. Результаты применения стратегии BALD в сравнении с пассивным способом обучения
Рис. 10. Результаты применения стратегии BALD в сравнении с пассивным способом обучения

К сожалению, пока что данный метод не дал ожидаемого результата на долгом запуске эксперимента, несмотря на прирост по сравнению с пассивным методом в начале.
Сложность алгоритмов стратегии query-by-committee в целом и BALD в частности пропорциональна числу предсказаний, сделанных для каждого объекта. В свою очередь, сложность предсказания для каждого объекта аналогична методам uncertainty sampling. Таким образом, сложность одного запроса $O(kp\log(q))$, где $p$ размер неразмеченного набора данных, $q$ число объектов в запросе к эксперту, а $k$ число предсказаний, посчитанных для одного объекта.


На практике применить метод BALD может быть нелегко при использовании фреймворка tf.keras, так как он не обладает достаточной гибкостью для работы со слоями. Поэтому в рамках данного проекта мы выбрали фреймворк PyTorch, который позволил не только с легкостью включать dropout во время инференса, но и отключать batch normalization в течение активной фазы, о чем пойдет речь далее.


Инсайт 2: отключение batch normalization в активной фазе


Подобранная модель классификации в своей структуре использует слои batch normalization. Суть подхода batch normalization в обучении параметров нормализации данных во время обучения и применении найденных параметров во время инференса, или предсказания. Идея, которую мы использовали, состоит в том, чтобы рассматривать активную фазу обучения как этап инференса, и отключать на ней обучение batch normalization. К тому же интуитивно кажется, что такой подход позволит избежать смещения модели. Насколько нам известно, данный вопрос ещё не исследовался в отношении методов активного обучения. Для экспериментов мы взяли за основу метод BALD. Рассмотрим результаты (рис. 11).


Рис. 11. Результаты отключения batch normalization для метода BALD в сравнении со стандартным методом и пассивным обучением
Рис. 11. Результаты отключения batch normalization для метода BALD в сравнении со стандартным методом и пассивным обучением


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


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


Learning loss


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


Создадим вспомогательную модель, принимающую на вход выходы промежуточных и последних слоёв модели. Задача вспомогательной модели предсказывать значение функции потерь. Мы будем выбирать для разметки те объекты, для которых это значение максимально. Этот метод называется learning loss, подробнее про него можно почитать здесь. Рассмотрим результаты первичных экспериментов, где метод применялся для базовой модели (рис. 12).


Рис. 12. Результаты применения Learning loss для базовой модели в сравнении с ее пассивным обучением
Рис. 12. Результаты применения Learning loss для базовой модели в сравнении с ее пассивным обучением

Метод learning loss не дал прироста по сравнению с пассивным обучением на случайно выбранных объектах. Логично было бы использовать его для моделей других архитектур или отказаться от него как от неэффективного для нашей задачи.
Но мы вместо этого попробуем провести следующий эксперимент. В обычном сценарии активного обучения модель не знает настоящих меток классов, а в нашей задаче они известны. Это позволяет посчитать идеальный learning loss: зная настоящую метку класса объекта, будем считать на нём значение функции потерь и добавлять в размеченный набор данных те объекты, у которых оно больше. Назовём такой подход ideal learning loss (рис. 13).


Рис. 13. Результаты применения ideal learning loss для базовой модели в сравнении с ее пассивным обучением
Рис. 13. Результаты применения ideal learning loss для базовой модели в сравнении с её пассивным обучением

Несмотря на ожидания, этот подход показал себя хуже базового метода learning loss.
Мы предположили, что значение функции потерь слабо зависит от точности модели или даже обратно пропорционально ей. Чтобы это проверить, можно построить корреляцию точности модели, обученной на какой-то выборке, и среднего значения функции потерь для объектов этой выборки. Получился следующий экспериментальный пайплайн:


  1. Обучаем модель на начальной выборке (2000 объектов), как для активного обучения;
  2. Выбираем из всего набора неразмеченных данных 10000 объектов (чтобы ускорить подсчёт);
  3. Для выбранных объектов неразмеченной выборки считаем значения функции потерь;
  4. Сортируем объекты по полученным значениям;
  5. Разбиваем на группы по 100 объектов;
  6. Для каждой группы параллельно обучаем на ней модель, стартуя с весов, полученных на шаге 1;
  7. Фиксируем получившиеся точности.

Далее считаем корреляцию Спирмена между точностью модели, обученной на определённой выборке, и средним значением функции потерь по каждому из объектов выборки. А также вычисляем, как средняя точность модели коррелирует со средним значением параметра отступа (из метода margin sampling).


Таблица 1. Корреляции точности и метрик активного обучения для набора данных публикаций ВКонтакте


Корреляция Спирмена p-value
Точность и loss -0,2518 0,0115
Точность и margin 0,2461 0,0136

Как видим, для метода margin sampling корреляция слабая и положительная то есть, зная отступ, можно быть уверенными, что объект полезен для обучения модели. А в случае c функцией потерь корреляция слабая отрицательная.


Возникает вопрос: а что если попробовать выбирать для разметки объекты с наименьшими значениями функции потерь?
Как ни странно, эксперименты показали, что и такой вариант тоже не работает ожидаемым образом (рис. 14).


Рис. 14. Результаты применения обратного ideal learning loss для базовой модели в сравнении с прямым ideal learning loss и пассивным обучением
Рис. 14. Результаты применения обратного ideal learning loss для базовой модели в сравнении с прямым ideal learning loss и пассивным обучением


Несмотря на плохие результаты для целевого набора данных, для набора данных MNIST были получены следующие значения корреляции:


Таблица 2. Корреляции точности и метрик активного обучения для набора данных MNIST


Корреляция Спирмена p-value
Точность и loss 0,2140 0,0326
Точность и энтропия 0,2040 0,0418

При этом сам метод ideal learning loss работает так, как ожидается (рис. 15).


Рис. 15. Активное обучение классификатора символов из набора данных MNIST стратегией ideal learning loss. Синий график ideal learning loss, оранжевый пассивное обучение
Рис. 15. Активное обучение классификатора символов из набора данных MNIST стратегией ideal learning loss. Синий график ideal learning loss, оранжевый пассивное обучение

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


Сложность метода learning loss та же, что и для методов uncertainty sampling: $O(p\log{q})$, где $p$ размер неразмеченного набора данных, а $q$ число объектов в запросе к эксперту. Но важно учесть, что при его применении обучать нужно не только основную модель, но и вспомогательную. Этот метод сложнее предыдущих в практическом применении ещё и потому, что требует проводить обучение каскада моделей.


Заключение


Не будем бесконечно раздувать статью, рассказывая обо всех применённых методах и проведённых экспериментах. Здесь мы постарались осветить основные и наиболее интересные. Любопытно, что эффективнее всех оказался самый первый и простой метод margin sampling результаты его длинного запуска можно увидеть на рис. 16.
Рис. 16. Сравнение обучения на случайно выбираемых данных (пассивное обучение) и на данных, выбираемых стратегией margin sampling
Рис. 16. Сравнение обучения на случайно выбираемых данных (пассивное обучение) и на данных, выбираемых стратегией margin sampling


График показывает: тренируя модель с помощью активного обучения (в нашем случае стратегией margin sampling), можно достичь предельной точности такой же, как у модели, обученной пассивным способом. Но при этом использовать на 25 тыс. объектов меньше. Экономия ресурсов разметки составит порядка 25% это довольно значимо.


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


Все методы, о которых мы говорили, просты в реализации и обладают невысокой вычислительной сложностью. Но есть моменты, на которые стоит обращать внимание:


  • выбор batch size;
  • целесообразность использования для активного обучения подходов, зарекомендовавших себя в глубоких нейронных сетях, например, batch normalization.
Подробнее..

Перевод Краудмэтчинг через Snowdrift.coop. Научный подход к краудфандингу (Часть 1)

23.08.2020 12:14:59 | Автор: admin
Привет, хабравчане Хабр! Давно не виделись!)) Давно у меня не было постов.
Сегодня 22 августа праздник и годовщина сами знаете чего. Самое время поговорить о свободе, FOSS и свободных интернет-проектах. Представляю вашему вниманию перевод описания нового краудфандингового проекта Snowdrift.coop, который планируется запустить до конца 2020 года.
Если кратко, я бы описал проект как Patreon + Kickstarter. Snowdrift.coop задуман для финансирования неконкурентных общественных благ, то есть для СПО-проектов (на первом этапе), а также разных благотворительных и общественных проектов (следующим этапом). Я недавно узнал об этом проекте и уже подписался на пожертвования. Вы тоже можете.




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

К сожалению, мы сталкиваемся с большими препятствиями. Искусственные ограничения препятствуют инновациям и творчеству. Повсеместная реклама заполняет наше культурное пространство и отвлекает наше внимание. Широкомасштабная слежка за людьми угрожает нашим гражданским свободам. Организованные монополистические силы устанавливают свой контроль с помощью юридических монополий (законы об авторском праве и патентах), технического контроля (часто называемого Digital Restrictions Management или DRM), скрытности (например, распространение компьютерных программ с закрытым исходным кодом) и огороженных садов (недемократических платформ, которые запирают и захватывают творческие ценности, создаваемые пользователями этих платформ).

Но если мы отвергаем проприетарные ограничения и рекламу, как людям вообще будут платить за создание чего-то нового?

Прежде всего, люди получают удовольствие от участия в значимых проектах, независимо от денег. Удивительное количество проектов разрабатывается сегодня людьми, которые работают в свободное от работы время и свободно распространяют результаты по всему миру. Мы называем эти работы разными терминами: Free/Libre Software, Open Source, Свободная культура, Открытое знание С этого момента мы будем использовать инклюзивную комбинацию Free/Libre/Open или FLO.

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

Да тут всю систему надо менять! Нам необходимы системные изменения



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

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

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

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

Выбор между проприетарным и FLO



Что бы вы выбрали?

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


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

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

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

Представляем Snowdrift.coop



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

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



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



Патронат сообщества доноров позволяет лучше продвигать общественные интересы



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

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

Как это работает



  1. Зарегистрируйте аккаунт пользователя
  2. Добавьте платежные реквизиты
  3. Заявите о своей поддержке ваших любимых проектов


В базовом обещании жертвователя сказано:

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

  • Нет никакого риска для участников; если жертвовать будут немногие, то это ничего не будет вам стоить.
  • Когда Вы присоединяетесь, ваше обещание жертвовать означает, что существующие доноры будут жертвовать больше, чтобы соответствовать вам!
  • Вы контролируете свой бюджет. Если жертвуемая сумма поднимается до уровня, превышающего ваш бюджет, она будет автоматически снижена. Чтобы сохранить обещание жертвовать, вы можете увеличить свой бюджет на пожертвования или отказаться от поддержки других проектов.


Вы также можете внести творческий вклад в экосистему. Существует множество способов помочь. Кроме того, как покровитель самого проекта Snowdrift.coop, вы можете стать членом кооператива и иметь больше влияния в управлении всей системой.

Организация проектов в соответствии с самыми высокими стандартами



Мы требуем, чтобы все проекты пользовались лицензиями Free/Libre/Open, были прозрачными и соблюдали принципы честности (подробнее см. раздел Сообщество). Поскольку средства поступают из текущих ежемесячных платежей, проекты несут ответственность перед сообществом. Жертвователи могут корректировать свои взносы в зависимости от того, как они относятся к результатам работы каждого проекта.

Почему используется название Snowdrift?



Наше название происходит от дилеммы в теории игр под названием Дилемма сугроба. Представьте себе огромный сугроб, перекрывающий дорогу; кто его расчистит? У нас у всех есть другие дела. Например, при финансировании FLO, никто не хочет брать на себя эту ношу в одиночку. В дилемме FLO, препятствиями к устранению являются проприетарные ограничения и проблемы с финансированием, и мы можем решить эти дилеммы вместе, взяв на себя обязательство о совместном финансировании. Таким образом наше название: Snowdrift.coop. Чтобы узнать больше о теории игр, прочтите нашу страницу, подробно объясняющую дилемму сугроба.

Как насчет других вариантов финансирования?



Все существующие механизмы финансирования проектов FLO имеют различные проблемы (более детальные обзоры см. в разделе Исследование рынка), но мы можем работать параллельно с ними в любом случае. Мы просто требуем, чтобы проекты раскрывали все свои источники финансирования для обеспечения прозрачности.

Какие проекты могут участвовать?



Мы можем курировать набор проектов, участвующих в нашем начальном тестировании и запуске, но после этого мы будем рады участию всех проектов, отвечающих нашим требованиям (которые включают лицензирование Free/Libre/Open и некоторые другие детали), в том числе в области искусства, музыки, журналистики, учебников, исследований, технологий при условии, что основная работа проекта заключается в производстве общественных благ, которыми все могут свободно распоряжаться.

Авторы оригинала: Iko, wolftune, Aaron Wolf. CC-BY-SA 4.0.
Перевод текста доступен по лицензии Creative Commons Attribution-ShareAlike 4.0.

Обратите внимание, это копилефт-лицензия. Я автор более 100 статей на Хабре, но никогда не участвовал в Программе Поощрения Авторов (ППА) и не получал денег от Хабра. Как раз из-за таких случаев я не могу принять участие в этой программе, иначе бы я передал авторские права на перевод, а Хабр выпустил бы его по другой лицензии от своего имени. Тем самым я бы подставил юридическое лицо Хабра под нарушение авторских прав. Поэтому если мои посты были вам когда-либо полезны, вы можете напрямую отправить мне пожертвование (подарок) через сервис Liberapay (0% комиссии) или Яндекс.Деньги. С меня много статей в будущем!

P.S.: Статья чуть дорабатывается. Прошу отнестись с пониманием. Разучился писать статьи. Как и где именно разучился можете сообщить через хабрапочту.
Подробнее..

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

13.10.2020 16:15:52 | Автор: admin

Привет, Хабр! Меня зовут Дмитрий Браженко. Разработка продуктов и сервисов регулярно сталкивает нас с необходимостью выбрать лучший вариант: какая иконка красивее? Какая кнопка удобнее? Краудсорсинг отличный способ учесть мнение потенциальных пользователей, проведя несложные UX-тесты.


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



Выбрать метод ранжирования


Существует три основных подхода к обучению и оцениванию моделей ранжирования:


  • поточечный (pointwise): на вход для сравнения подаются пары запрос-документ, каждой из которых соответствует оценка краудсорсеров. Качество модели = точность оценки, полученной для пары запрос-документ;
  • попарный (pairwise): документы, соответствующие одному запросу, сравниваются между собой парами. Задача ранжирования уменьшать число инверсий для пар документов, т.е. чтобы то, что было оценено хуже, не оказывалось в топе ранжирования;
  • списочный (listwise): асессор составляет список идеальную выдачу сравнение идёт с ней.

Подробнее про подходы к ранжированию можно прочитать, например, в презентации или в статье. Для пайплайна выбрал самый популярный попарные сравнения. Всё-таки ответить на вопрос Что хочется больше: яблоко или апельсин? респондентам оказывается проще, чем оценить по шкале от 1 до 10, насколько хочется именно яблоко.



Подготовить шаблон к работе с данными


Перед тем как приступить к запуску пайплайна, понадобится:


  1. Зарегистрироваться в Толоке как заказчик.
  2. Получить OAuth-токен по ссылке (подробнее в документации).
  3. Выбрать способ хранения файлов, задействованных в задании.

На последнем пункте на всякий случай остановлюсь поподробнее:



Полный флоу расчётов с пояснениями на гитхабе. Весь приведённый код должен воспроизвестись, если указать свой токен заказчика (тем не менее, что-то может устареть и потребовать доработок). В статье я постараюсь сосредоточиться на содержательной стороне вопроса.


Ранжировать объекты


Что бы вы ни сравнивали поисковые выдачи, интерфейсные решения, иконки, картинки и даже видео суть метода не меняется: для наглядности покажу, как он работает, на конкретном примере.


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



Чтобы взаимное расположение картинок не влияло на выбор, половине опрашиваемых покажем их в порядке (A|B), другой (B|A).


После запуска эксперимента получим результаты в полусыром виде. В моём коде прописано как оформить их в виде таблички:


Группа людей Число проголосовавших лево Число проголосовавших право
Слева красная кнопка (A|B) 18 8
Слева белая кнопка (B|A) 7 17

Выполним несложные математические преобразования, чтобы понять, за какой цвет кнопки именно проголосовало больше людей.
Число выбравших красную кнопку: 18 + 17 = 35
Число выбравших белую кнопку: 7 + 8 = 15


Теперь представим результаты красивой табличкой, заодно подтянем примеры комментариев, которые оставляли наши респонденты (тоже есть в коде):


Красная кнопка Белая кнопка
Результат (pvalue=0.007) 70% (35/50) 30% (15/50)
Примеры комментариев под каждым из вариантов На красном фоне белыми буквами более заметно и больше обращает на себя внимание чем красными буквами на белом фоне у объявления. красный цвет забирает на себя все внимание а белый нет

На что стоит обратить внимание:


  1. Для оценки статистической значимости результатов подойдёт классический биномиальный тест. Сравниваем две картинки: если они одинаковые, score каждой из них будет близок к 0.5 (смутило слово score? не переживайте, в следующем разделе покажу, как его считать). Если картинки разные, мы должны с помощью статистического теста проверить, не случайный ли у нас у результат.
  2. Ещё раз напомню: одной половине респондентов выдаём картинки в виде (A|B), другой (B|A).
  3. Не следует использовать такой подход как серебряную пулю и принимать решения исходя исключительно из полученных цифр. Причиной выбора может являться не сделанное изменение, а, например, дефект одного из макетов.
  4. Garbage in garbage out: не стоит сравнивать заведомо плохие варианты, которые вы не стали бы отправлять в продакшн.

Ещё больше о том, как корректно поставить эксперименты Side-By-Side на видео с Я.Субботника: подводные камни, границы применимости методики.


Теперь пример посложнее: увеличим количество ранжируемых объектов. Допустим, требуется отсортировать несколько картинок и выбрать лучшие из них для галереи фонов.


image image image
image image image

Вернёмся к идее pairwise подхода: проведём попарное сравнение картинок. Получится 6 5/2 сравнений. Каждой картинке присвоим простую метрику:


$score = \frac{wins}{wins + losses}, $


где $wins$ число раз, когда картинка победила соперника, $losses$ проиграла ему. Интерпретировать полученный score можно как "вероятность выигрыша против случайно взятого соперника из набора".


Дальше можно сортировать картинки по этому скору. В моем случае получилась такая сортировка:


Посмотреть результат упорядочивания
$score=0.280$ $score=0.227$

$score=0.227$ $score=0.133$

$score=0.107$ $score=0.027$



Совпало с вашим ожиданием?


На что стоит обратить внимание:


  1. Если вариантов очень много, то сравнивать каждый с каждым будет дороговато, можно попробовать придумать опорные точки.
  2. В качестве сортировки можно использовать более умные скоры, например ELO-score.

Другие задачи, с которыми справится этот пайплайн


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


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



Готовим два пула, проверяем в интерфейсе, что в настройках не случилось ошибок, запускаем.


Результаты предсказуемы:


  • в Москве предпочтительнее шаурма: её выбрали 78% респондентов;
  • в Санкт-Петербурге, хотя отрыв и меньше, лидирует шаверма: 54% против 46%.

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


Есть два видео об Алисе:


Видео 1 (Алиса-Мечта) Видео 2 (Алиса-Планка)

Какое видео вам понравилось больше? Почему?


В нашем эксперименте получились такие результаты:
Видео 1
(Алиса-Мечта)
Видео 2
(Алиса-Планка)
score 72% 28%
Пример комментария за каждый вариант Ребёнок вызывает больше приятных эмоций, чем слабак из 2-го варианта, который отжаться не может. В варианте 1 показана возможная практическая польза от алисы для развития ребёнка Более позитивный, в первом ребенок как мне кажется, не понял шутки

Более сложные тесты
Как видите, всё ограничивается только вашей фантазией, нужно лишь подправить шаблон в Толоке: опросники по картинке, 5-секундный UX-тест (подробнее тут), тест на 1-й клик, Card Sorting продолжить вдохновляться можно здесь.
Для таких тестов часто бывает полезно сделать скринкаст запись того, как пользователь взаимодействовал со страницей. В этом нам поможет инструмент, входящий в Яндекс.Метрику, а именно Вебвизор. Его можно встроить в шаблон и смотреть, как пользователи работают с заданием. Для наглядности приведу видео:


Посмотреть запись скрикаста

Чтобы сделать вебвизорную запись, замените в коде с Гитхаба мой счётчик Яндекс.Метрики на ваш.


Вместо заключения


Спасибо, что дочитали до конца! Собрал основные тезисы и ссылки:


  1. Многие дизайны Яндекса проходят подобное тестирование. У нас существует автоматический пайплайн, который получает картинки, загружает их в Толоку, ждёт оценок и считает метрики.
  2. Толока гибкий инструмент для выполнения краудсорсных задач область применения ограничена только вашей фантазией. Вот тут рассказывали как обучать беспилотники и оценивать качество сервисов. А здесь коллеги из ODS создают датасет для распознавания счётчиков.
  3. Если у вас есть регулярный процесс с необходимостью механической, монотонной работы, его несложно автоматизировать через API Толоки.
  4. Конфигурация и настройка заданий могут вызывать трудности в тексте постарался подсказать, на что стоит обратить внимание. Для сбора результатов достаточно небольшого упорства и знания азов HTML/CSS/Js.
  5. Используйте код на Github. Можете контрибьютить сделаем библиотеку шаблонов для Толоки.
  6. Есть продукты, которые тестировать в Толоке всё же не стоит: что-то нестандартное, не подразумевающее массового использования неспециалистам будет очень сложно дать качественный фидбек, например, об утилите для управления космическим кораблём.
Подробнее..

Материалы Avito Design Talk видео и презентации

17.12.2020 18:19:07 | Автор: admin

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


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



Точки роста для дизайнера вкрупной компании Настя Ларкина, Авито


Работа дизайнера намного больше, чем красивые картинки. Настя рассказала, как участвовала взапуске чат-бота Авито Работы, икакие точки роста нашла для себя накаждом этапе создания продукта отформирования consumer journey map дообщения сразработчиками иредакторами.



00:00 Представление темы испикера
01:44 Что такое Авито Работа ивчём еёглавный продуктовый челлендж
08:09 Customer journey map Работы
09:13 Проблема продукта иеёрешение
13:16 Создание интерфейса чат-бота: исследование
17:22 Передача макетов вразработку
21:12 Проверка решения наканареечных запусках
26:49 Осознанная работа стекстом иеёвлияние нарезультат
31:00 Вывод: точки роста для дизайнеров


Посмотреть презентацию Насти

Значимость дизайнера наразных скоростях разработки Алексей Кандауров, Циан


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



00:00 Представление темы испикера
06:52 Определения: что такое значимость иразные скорости работы
13:13 Если нет ограничений посрокам, апостановка задач нечёткая
14:16 Край спектра нормальной продуктовой разработки
15:12 Другой край спектра нормальной продуктовой разработки
16:20 Метод быстрых экспериментов growth hacking
18:06 Дизайн кодом
22:20 Чему нас учит дизайн-сообщество
26:30 Мифы продуктового дизайна икак насамом деле
30:42 Парадокс значимости


Посмотреть презентацию Алексея

Дизайн вкраудсорсинге икраудсорсинг вдизайне Владимир Погорелов, Тинькофф


Владимир рассказал, как устроен внутренний краудсорс-проект Тинькофф под названием Klecks, поделился способами улучшенияUX, когда упроекта нетUI, иснижения порога входа вприложения для программистов.



00:00 Представление темы испикера
00:37 Что такое краудсорсинг иKlecks
02:58 Эволюция интерфейсов Klecks
14:20 Краудсорсинговые UX-исследования Тинькофф
21:23 Какие тесты можно проводить накрауде
22:38 Начто обращать внимание накрауд-тестах


Посмотреть презентацию Владимира

Круглый стол Личные проекты дизайнеров


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



На этом всё. Увидимся нановых митапах!

Подробнее..

Перевод Чему НКО могут поучиться у стартапов

21.12.2020 14:15:23 | Автор: admin
image

Y Combinator поддержал свою первую некоммерческую организацию, платформу финансирования лечения Watsi, в 2013 году.

Несколько выпускников некоммерческих организаций YC собрались вместе, чтобы обсудить свой опыт создания 501(3)-организаций в логике стартапов. Здесь мы хотели бы поделиться пятью ключевыми мыслями из их вечерней беседы:

Ставьте четкие цели для роста


Несмотря на свой статус 501(3), новые некоммерческие организации не должны думать о росте сильно иначе, нежели их некоммерческие коллеги.

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

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

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

Остерегайтесь дрейфа миссии


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

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

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

Придерживайтесь своих ценностей, даже когда это непросто


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

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

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

Поставьте сами крайний срок для сбора средств


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

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

Помните, на кого вы работаете


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

Важной частью этого является проведение времени с пользователями физически, что не всегда может быть удобно: если это означает, что вам нужно какое-то время жить в другой стране, например, значит нужно действительно пожить в другой стране.

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

За перевод спасибо Андрею Дунаеву.




Если вы хотите помочь с переводами полезных материалов библиотеки YC пишите в личку, телегу @jethacker или почту alexey.stacenko@gmail.com

Следите за новостями YC Startup Library на русском в телеграм-канале или в фейсбуке.

Полезные материалы


Подробнее..

Как сделать, чтобы базой знаний начали пользоваться человеческие люди

13.04.2021 10:07:06 | Автор: admin

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

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

Мой лучший портретМой лучший портрет

Про меня и мою базу знаний

В людях живал свету видал: топор на ногу обувал, топорищем подпоясывался

Ahoj. Меня зовут Коля, я QA тимлидер в компании Veeam. QA в нашей компании включает в себя не только тестирование, но и обеспечение качества в самом широком смысле. И среди этих смыслов затесалась такая штука, как управление знаниями. Я занимаюсь внутренней корпоративной базой знаний компании практически с самого ее появления, при этом поддержка базы знаний не входит в список моих обязанностей: это скорее что-то вроде pet-проекта. Долгое время у вики был статус поделочки, а мои попытки навязать вики коллегам приводили лишь к пополнению корпоративного стикер-пака моей фотографией.

Впрочем, время идет, времена меняются. Сейчас вики насчитывает 700 пользователей, 11 000 страниц, 56 000 правок и 688 000 слов (примерно полтора романа "Война и мир", если говорить только о тексте). Всего-то в 2 000 раз меньше русскоязычной Википедии, и это при условии работы на исключительно добровольных началах: никто не принуждает сотрудников пользоваться нашей вики.

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

Общий подход

Ищи себе прибыли, а другому не желай гибели

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

Главный совет, который я бы хотел дать в этой статье, звучит так: относитесь к проекту базы знаний как к публичному проекту. Скажем, если бы вы придумали Википедию или Хабрахабр, как бы вы продвигали их в массы? Реклама? Уникальный контент? Холодные как хвост вашей бывшей звонки на случайные номера из телефонной книги? Возможны любые варианты продвижения, но не забывайте адаптировать их к реалиям вашей компании и вашего коллектива. А еще не забывайте, что в случае недобросовестной рекламы коллеги узнают, где вас найти. Не перегибайте палку.

Кроме прочего, подход к вики как к публичному проекту позволяет проще относиться к проблеме продвижения. Я часто слышал обиды и сетования, что, мол, коллеги не делятся знаниями, не пишут внутреннюю документацию. Но вы же не обижаетесь на пользователей за то, что они не скачивают ваше приложение или не покупают ваши чудо-подушки за $9,99? Вы ищете способ понравиться вашим пользователям, ищете путь к их теплокровному сердцу, а не способ подчинить их вашей воле.

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

Собирайте статистику

Красна птица перьями, а человек знанием

А начнем мы с того, что нам нужно как-то оценивать качество тех способов продвижения, что мы будем пробовать. В связи с этим первое, чем стоит озаботиться это сбор статистики. Скажем, я пользуюсь Matomo (которые раньше звались Piwik), но похожий функционал есть у десятков аналогов.

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

Помимо оценки эффекта продвижения, статистика предоставляет и пачку других плюшек:

  • Анализ поисковых запросов решает сразу несколько проблем:

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

    • Кроме того, так вы можете понять, хорошо ли работает поиск, показывает ли он в поисковой выдаче правильные статьи. Если нет, то, возможно, стоит доработать поиск: убрать из индексинга ненужную информацию или добавить дополнительные ключевые слова в статью. А в особых случаях, возможно, имеет смысл задуматься о смене поискового движка.

  • Можно добавлять логирование конкретных действий, что позволит вам узнать, как часто пользуются тем или иным функционалом. Так вы не будете вкладывать силы в то, чем абсолютно никто не пользуется. И сможете продвигать базу знаний, подчеркивая в обсуждениях объективно самые популярные фичи.

Накопите критическую массу знаний

Там хорошо, где нас нет

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

Вполне возможно, что информация о продуктах, технологиях и фичах уже есть где-то, но в разрозненном неструктурированном виде: почтовые треды, сообщения в Slack/Teams, сетевые папки десятилетней давности, Sharepoint-ы, осколки прошлых неудачных попыток завести единую базу знаний и так далее.

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

Еще один очевидный источник контента ваши личные заметки и ваши личные знания. Об этом аспекте давайте поговорим поподробнее.

Вам надо вот сами и пользуйтесь

Не ищи в селе, а ищи в себе

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

Проанализируйте свои потребности: какая информация вам нужна в работе, какие знания значительно ускорили или улучшили бы вашу работу. Информация о сфере ответственности или компетенциях коллег? Детальные описания фичей и внутренних API? Правила оформления отпуска и процедура выпуска релиза? Найдите удобный способ хранить и обновлять информацию такого рода, поделитесь этим с коллегами. Наверняка это было не только вашей болью, но и их тоже.

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

Сделайте вики единой точкой доступа для поиска любых знаний

И чтец, и жнец, и на дуде игрец

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

  • Можно сделать просто каталог внутрикорпоративных сайтов (привет, девяностые). Да, подход, мягко говоря, не самый свежий, но и у вас в компании скорее всего не тысячи порталов. Для пары десятков сайтов и каталог обычно подходит неплохо.

  • Или же можно идти по пути Гугло-поисковика и встраивать себе поиск по другим сайтам. При этом необязательно писать свой краулер, можно обойтись и более дешевым решением. Например, воспользоваться поисковым API сторонних сайтов и выводить результаты поиска по другим сайтам, если на вашей вики результатов не нашлось.

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

Создавайте зону комфорта для окружающих

Не хвались теплом в нетопленой избе

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

  • Сделайте удобную главную страницу. У проектов Викимедиа особый подход к главным страницам, но мне он не нравится: их главные страницы перегружены информацией, они вызывают ужас и непонимание у неподготовленного пользователя.

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

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

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

  • Долго время на моей вики не было визуального редактора: его настройка для приватной MediaWiki на тот момент была делом нетривиальным, и руки у меня до него не доходили. Когда же наконец визуальный редактор появился, ежемесячное число новых статей увеличилось в полтора раза.

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

  • Моя любимая история про поиск. В Veeam используется невероятное количество внутрикорпоративного жаргона, равнодалекого от русского и английского языков. Звучать оно может примерно так: "Задизейбли шедул джобы и чекни базу вана, висит ли флаг". Адаптация к жаргону проходит не очень быстро, но это полбеды. Беда в том, что у разных отделов может отличаться терминология, так что не всегда мы понимаем друг друга. А еще мы почему-то очень любим трехбуквенные аббревиатуры, которых накопилось, наверно, больше сотни (и которые не всегда просто расшифровать).

    В базе знаний этот вопрос решился введением постоянно пополняемого словаря синонимов, аббревиатур и прочего. Словарь используется при поиске, так что пользователь всегда видит, что, например, по запросу "data mover" находится "VeeamAgent" компонент. Составлять словарь приходится вручную, так что иногда доводится выбираться в лингвистические экспедиции для сбора материала в соседние отделы.

    Конечно, остается проблема с тем, что одно и то же слово может означать сразу несколько вещей (скажем, "бекап" это резервная копия, задание резервного копирования, процесс резервного копирования, продукт Veeam Backup & Replication или отдел Backup QA в зависимости от контекста). Это пока что решаем по аналогии с Википедией: создаем страницу с термином и расписываем, что этот термин может значить.

  • На большой Википедии вместе с каждой страничкой создается страница для обсуждения. Я же со своей вики все страницы обсуждения убрал: на мой взгляд, реализация дискуссий на Википедии очень плохо подходит для внутрикорпоративных дискуссий. Куда лучше заставить людей пользоваться привычными средствами ведения дискуссий: почта, чаты и звонки в MS Teams. И вопрос решается быстрее, и негатива меньше.

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

Рассказывайте о новостях

Из серебряных речей пулю не отольешь

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

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

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

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

  • В группах по фиче/продукту/проблеме рассказывайте о новых статьях по теме, написанных вашими коллегами. Русскоязычные айтишники скромный народ, мы обычно не любим хвастаться плодами своего труда. Сделайте это за них: во-первых, авторам будет чертовски приятно, а во-вторых, это будет поводом ввернуть пассаж про важность, пользу или даже просто про существование базы знаний.

Как и во всем, здесь стоит знать меру. Однако не пренебрегайте информированием коллег о том, что происходит с вашей базой знаний.

Угрозы, вымогательства

Воруй любовь, убивай скуку

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

  • Рассказывайте коллегам про угрозы отсутствия документации. Если ранее у вас никогда не было базы знаний, то начать стоит с самых основ, пусть даже вам они могут показаться очевидными.

    Расскажите про пресловутый bus factor и проиллюстрируйте примером, ведь наверняка вы с этим уже сталкивались на практике (надеюсь, впрочем, что не в такой трагичной форме).

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

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

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

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

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

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

Играйте на здоровом самолюбии

Птицу кормом, а человека серебряной пулей обманывают

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

  • Добавьте блок новостей на главную страницу, где будет информация обо всех новых правках (или хотя бы обо всех новых статьях). Рядом с именем статьи непременно должен светиться ник автора правки.

  • Если вам позволяют ресурсы, можно попробовать варианты геймификации и добавить рейтинги или ачивки (например, за N статей/правок). Хотя есть мнение, что эти штуки сработают далеко не в каждом коллективе.

  • У меня не было столько времени, чтобы добавлять геймификацию, но я добавил блок "Your impact" на главную страницу. Там выводится 10 самых просматриваемых статей из числа отредактированных вами, а рядом с ними число просмотров с момента вашей первой правки.

    Идея эта не моя, я подсмотрел ее на MediaWiki хакатоне в Праге, где growth team рассказывали про свои исследования аналогичной фичи большой Википедии и предлагали поучаствовать в разработке. Конечно, мне пришлось переписать фичу с нуля, поскольку у меня совсем другие источники данных, чем у Wikipedia, но в остальном я старался следовать рекомендациям Growth team.

  • Маленькое расширение Thanks может послужить аналогом лайков для конкретных правок. Оно, конечно, не очень удобное, но лучше, чем ничего. И реагируют коллеги на такие "спасибо" обычно очень положительно.

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

Расскажу, как я начал заниматься базой знаний. На заре моего трудоустройства коллега организовал мини-конкурс: автор наибольшего вклада в развитие вики должен был получить награду, достойную чемпиона стакан черной смородины (напомню, Veeam IT компания с достойными зарплатами, мы тут не голодаем). Смородина та кончилась пять-шесть лет назад, а проектом я занимаюсь и поныне. Не могу сказать, что это был гениальный ход с его стороны, но он сработал, а это главное.

Присматривайте за другими

У семи нянек детеныш без серебряной пули

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

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

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

Вместо заключения или "насильно мил не будешь"

Лучше на гривну убытку, чем на алтын стыда

Ваша база знаний подойдет не для всего и не всем. Даже в моем случае MediaWiki самая популярная и большая внутренняя база знаний, но далеко не единственная. Есть команды, привыкшие на прошлых местах работы к Confluence/Sharepoint/впишите нужное. Отдельные команды все еще бойкотируют создание внутренней документации под теми или иными поводами. На мой взгляд, это нормально.

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

Пожелание "сделайте так, чтобы мою вики использовали, пожалуйста" мало чем отличается от "сделайте так, чтобы в мою игру играло много человек". Да, у продвижения разных сервисов и услуг есть свои особенности, но у них гораздо больше общего, чем может показаться. Чтобы продвигать базу знаний, попробуйте мыслить как SMM специалист и основатель стартапа в одном лице, а не как Пётр I, насильно сбривающий бороды (никаких претензий к Петру, просто подход другой). И хотя идеального способа продвижения нет и вероятно, никогда не появится, в ваших силах найти рабочие для вашей конкретной компании способы. Удачи!

Подробнее..

Пишем расширение для MediaWiki

12.05.2021 08:15:25 | Автор: admin

В рунете я почти не встречал материалов о том, как писать расширения для MediaWIki (платформы, на которой работает Википедия). Основной стартовой точкой при написании расширений был и остается официальный сайт платформы, но там процесс расписан не очень дружелюбно по отношению к новичкам. Попробуем же это исправить.

В этой статье я покажу, как написать простейшее расширение для Медиавики, включающее в себя новый метод API, расширение парсера и немного js/css для фронтенда. А чтобы не было скучно, приплетем сюда работу с Google Knowledge Graph.

Расширения MediaWiki

MediaWiki модульная платформа, куда можно устанавливать расширения для добавления самого разного функционала. Помимо того, что расширения могут реализовывать какой-то свой независимый функционал (например, добавлять какие-нибудь виджеты), оно также может и модифицировать функциональность платформы: например, менять принцип работы поиска или модифицировать внешний вид платформы. Посмотреть примеры расширений можно на официальном сайте платформы.

Пишутся расширения, как правило, на php+jQuery. Возможность встраиваться в код ядра MediaWiki (или в код других расширений) реализована через т.н. хуки. Хуки позволяют вызывать дополнительный код по заданным событиям. Примерами таких событий могут быть: сохранение страницы, вызов поиска по сайту, открытие страницы на редактирование и так далее.

Расширения MediaWiki позволяют делать что угодно: работать напрямую с базой, модифицировать вики-движок, работать с файловой системой и так далее. С одной стороны, это позволяет добавлять какой угодно функционал, но с другой накладывает на вас большую ответственность при установке новых сторонних расширений. Впрочем, довольно лирики, приступим к написанию своего расширения.

Что будем писать?

Готовое расширение можно взять тут:
https://github.com/Griboedow/GoogleKnowledgeGraph

Давайте развлечемся и напишем что-нибудь бесполезное. Скажем, расширение, которое будет вытаскивать описания с Google Knowledge Graph.

Т.е. расширение будет вот это:

Код этого приложения прост и изящен как <GoogleKnowledgeGraph query="Мэльхэнанвенанхытбельхын"/>

Превращать в это:

Штука довольно бесполезная, но она послужит хорошей иллюстрацией. Еще и с графом знаний Гугла поиграемся!

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

Как оно будет работать

Примерный принцип работы расширения выглядит так:

  1. Пользователь сохраняет страницу, где в тексте присутствуют теги <GoogleKnowledgeGraph query="Ричард Докинз">.

    • MediaWIki позволяет использовать не только формат тега, но и формат функции парсера <link>: {{#GoogleKnowledgeGraph||query=Ричард Докинз}}.

  2. Расширение функции парсера превращает тег в html код <span class="googleKnowledgeGraph">Ричард Докинз</span>

  3. JS код при загрузке страницы идет по всем элементам .googleKnowledgeGraph и запрашивает через API нашего же расширения описания терминов, подставляя их в title.

  4. API нашего расширения будет максимально примитивным: он будет передавать запросы от фронтенда на Google API, чистить ответ от всего лишнего и передавать очищенное описание сущности на фронт.

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

Итого, нам потребуется:

  1. Определить манифест нашего расширения.

  2. Расширить MediaWIki API, добавив запрос на получение описания из Google Knowledge Graph

  3. Расширить парсер MediaWiki, добавив обработку нового тега.

  4. Добавить JS код, который будет выполняться по загрузке страницы

  5. Подгрузить наше расширение в MediaWiki

  6. Поделиться результатом наших трудов с сообществом.

А еще перед началом работы вам потребуется токен для работы с Google Knowledge Graph API. Сгенерировать его можно тут.

Создаем структуру расширения

Типичная иерархия файлов и папок для MediaWIki расширения выглядит так:

extensions                    <-- Папка всех расширений MediaWiki GoogleKnowledgeGraph      <-- Подпапка с нашим расширением      extension.json   <-- Манифест нашего расширения     i18n           <-- Каталог с используемыми строками для разных языков      en.json    <-- Строки на английском      qqq.json   <-- Описания строк для облегчения жизни переводчиков      ru.json    <-- Строки на русском     includes                             <-- PHP код      ApiGoogleKnowledgeGraph.php      <-- Расширение API      GoogleKnowledgeGraph.hooks.php   <-- Расширение парсера и другие хуки     modules                                <-- Папка с JS модулями          ext.GoogleKnowledgeGraph           <-- В нашем случае модуль только 1             ext.GoogleKnowledgeGraph.css   <-- CSS стили нашего модуля             ext.GoogleKnowledgeGraph.js    <-- JS код нашего модуля

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

Интернационализация (i18n)

Для того, чтобы нашим расширением было удобно пользоваться на всех языках, можно воспользоваться стандартной системой интернационализации banana-i18n. Помимо облегчения интернационализации, эта система также позволяет хранить все тексты в одном месте (а не раскиданными по коду). Выглядит это примерно так:

qqq.json

{"@metadata": {"authors": [ "Developer Name" ]},"googleknowledgegraph-description": "Description of the extension, to be show in Special:Vesion.","apihelp-askgoogleknowledgegraph-summary" : "Help string for 'askgoogleknowledgegraph' API request","apihelp-askgoogleknowledgegraph-param-query": "Help string for 'query' parameter of API request 'askgoogleknowledgegraph'"}

en.json

{"@metadata": {"authors": [ "Nikolai Kochkin" ]},"googleknowledgegraph-description": "The extension gets brief description from Google Knowledge Graph","apihelp-askgoogleknowledgegraph-summary" : "API to get description from Google Knowledge Graph","apihelp-askgoogleknowledgegraph-param-query": "String to ask from Google Knowledge Graph"}

Создаем манифест расширения (extension.json)

Для начала разберемся, как нам сообщить MediaWiki, что нужно загрузить то или иное расширение. Путей на самом деле два:

  • Использоватьrequire_once( '/path/to/file.php' ). Этот метод считается устаревшим, так что мы его подробно не будем рассматривать.

  • Использовать функцию wfLoadExtension('ExtensionName'). Сейчас этот способ считается основным, так что на нем и остановимся. http://personeltest.ru/aways/habr.com/ru/company/veeam/blog/544534

Второй способ подразумевает наличие в папке файла extension.json с описанием манифеста приложения (как оно называется, из чего состоит, какие хуки использует и так далее).

Определяем манифест (файл extension.json):

{"name": "GoogleKnowledgeGraph","version": "0.1.0","author": ["Nikolai Kochkin"],"url": "http://personeltest.ru/aways/habr.com/ru/company/veeam/blog/544534/","descriptionmsg": "googleknowledgegraph-description","license-name": "GPL-2.0-or-later","type": "parserhook","requires": {"MediaWiki": ">= 1.29.0"},"MessagesDirs": {"GoogleKnowledgeGraph": ["i18n"]},"AutoloadClasses": {"GoogleKnowledgeGraphHooks": "includes/GoogleKnowledgeGraph.hooks.php","ApiAskGoogleKnowledgeGraph": "includes/ApiAskGoogleKnowledgeGraph.php"},"APIModules": {"askgoogleknowledgegraph": "ApiAskGoogleKnowledgeGraph"},"Hooks": {"OutputPageParserOutput": "GoogleKnowledgeGraphHooks::onBeforeHtmlAddedToOutput","ParserFirstCallInit": "GoogleKnowledgeGraphHooks::onParserSetup"},"ResourceFileModulePaths": {"localBasePath": "modules","remoteExtPath": "GoogleKnowledgeGraph/modules"},"ResourceModules": {"ext.GoogleKnowledgeGraph": {"localBasePath": "modules/ext.GoogleKnowledgeGraph","remoteExtPath": "GoogleKnowledgeGraph/modules/ext.GoogleKnowledgeGraph","scripts": ["ext.GoogleKnowledgeGraph.js"],"styles": ["ext.GoogleKnowledgeGraph.css"]}},"config": {"GoogleApiLanguage": {"value": "ru","path": false,"description": "In which language you want to get result from the Knowledge Graph","public": true},"GoogleApiToken": {"value": "","path": false,"description": "API token to be used with Google API","public": false}},"ConfigRegistry": {"GoogleKnowledgeGraph": "GlobalVarConfig::newInstance"},"manifest_version": 2}
Разбираем extension.json по частям

Первая часть файла определяет то, что пользователь увидит в описании расширения на странице Special:Version

"name": "GoogleKnowledgeGraph","version": "0.1.0","author": ["Nikolai Kochkin"],"url": "http://personeltest.ru/aways/habr.com/ru/company/veeam/blog/544534/","descriptionmsg": "googleknowledgegraph-description","license-name": "GPL-2.0-or-later","type": "parserhook",

Далее мы указываем зависимости нашего расширения: с какими версиями MediaWIki расширение может работать, какие версии php требуются, какие расширения должны быть уже установлены и так далее.

"requires": {"MediaWiki": ">= 1.29.0"},

Затем мы указываем, где искать файлы со строками i18n

"MessagesDirs": {"GoogleKnowledgeGraph": ["i18n"]},

И сообщаем, в каких файлах искать классы для автоподгрузки. Подробнее тут.

"AutoloadClasses": {"GoogleKnowledgeGraphHooks": "includes/GoogleKnowledgeGraph.hooks.php","ApiAskGoogleKnowledgeGraph": "includes/ApiAskGoogleKnowledgeGraph.php"},

Заявляем, что мы реализовываем API метод askgoogleknowledgegraph в классе ApiAskGoogleKnowledgeGraph

"APIModules": {"askgoogleknowledgegraph": "ApiAskGoogleKnowledgeGraph"},

Перечисляем, какие коллбеки для каких хуков у нас реализованы

"Hooks": {"BeforePageDisplay": "GoogleKnowledgeGraphHooks::onBeforePageDisplay","ParserFirstCallInit": "GoogleKnowledgeGraphHooks::onParserSetup"},

Сообщаем, что модули наши лежат в папке modules

"ResourceFileModulePaths": {"localBasePath": "modules","remoteExtPath": "GoogleKnowledgeGraph/modules"},

И определяем наш фронтенд модуль с js и css. Когда модулей несколько, можно указать в коде зависимости между ними.

"ResourceModules": {"ext.GoogleKnowledgeGraph": {"localBasePath": "modules/ext.GoogleKnowledgeGraph","remoteExtPath": "GoogleKnowledgeGraph/modules/ext.GoogleKnowledgeGraph","scripts": ["ext.GoogleKnowledgeGraph.js"],"styles": ["ext.GoogleKnowledgeGraph.css"]}},

И, наконец, задаем дополнительные параметры конфигурации нашего расширения

"config": {"GoogleApiLanguage": {"value": "ru","path": false,"description": "In which language you want to get result from the Knowledge Graph","public": true},"GoogleApiToken": {"value": "","path": false,"description": "API token to be used with Google API","public": false}},"ConfigRegistry": {"GoogleKnowledgeGraph": "GlobalVarConfig::newInstance"},

В LocalSettings.php опции будут иметь стандартный префикс wg

$wgGoogleApiToken = 'your-google-token';$wgGoogleApiLanguage = 'ru';

И, наконец, задаем версию схемы манифеста

"manifest_version": 2

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

Расширяем API

Для начала реализуем API.

В extension.json мы заявили, что у нас будет метод askgoogleknowledgegraph, реализованный в классе ApiAskGoogleKnowledgeGraph из файла includes/ApiAskGoogleKnowledgeGraph.php:

// extension.json fragment"AutoloadClasses": {    <...>    "ApiAskGoogleKnowledgeGraph": "includes/ApiAskGoogleKnowledgeGraph.php"},"APIModules": {           "askgoogleknowledgegraph": "ApiAskGoogleKnowledgeGraph"     },

Теперь реализуем наш метод. Файл includes/ApiAskGoogleKnowledgeGraph.php:

<?php/**  * Класс включает в себя реализацию и описание API метода askgoogleknowledgegraph * Для простоты я не реализую кеширование, любопытные могут подсмотреть реализацию тут:  * https://github.com/wikimedia/mediawiki-extensions-TextExtracts/blob/master/includes/ApiQueryExtracts.php */use MediaWiki\MediaWikiServices;class ApiAskGoogleKnowledgeGraph extends ApiBase {public function execute() {$params = $this->extractRequestParams();// query - обязательный параметр, так что $params['query'] всегда определен$description = ApiAskGoogleKnowledgeGraph::getGknDescription( $params['query'] );/** * Определяем результат для Get запроса.  * На самом деле Post запрос отработает с тем же успехом,  * если специально не отслеживать тип запроса \_()_/. */$this->getResult()->addValue( null, "description", $description );}/**  * Список поддерживаемых параметров метода */public function getAllowedParams() {return ['query' => [ApiBase::PARAM_TYPE => 'string',ApiBase::PARAM_REQUIRED => true,]];}/** * Получаем данные из Google Knowledge Graph,      * предполагая, что самый первый результат и есть верный. */private static function getGknDescription( $query ) {/** * Вытаскиваем параметры языка и токен. * Все параметры в LocalSettings.php имеют префикс wg, например: wgGoogleApiToken. * Здесь же мы их указываем без префикса */$config = MediaWikiServices::getInstance()->getConfigFactory()->makeConfig( 'GoogleKnowledgeGraph' );$gkgToken = $config->get( 'GoogleApiToken' );$gkgLang = $config->get( 'GoogleApiLanguage' );$service_url = 'https://kgsearch.googleapis.com/v1/entities:search';$params = ['query' => $query ,'limit' => 1,'languages' => $gkgLang,'indent' => TRUE,'key' => $gkgToken,];$url = $service_url . '?' . http_build_query( $params );$ch = curl_init();curl_setopt( $ch, CURLOPT_URL, $url) ;curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );$response = json_decode( curl_exec( $ch ), true );curl_close( $ch );if( count( $response['itemListElement'] ) == 0 ){return "Nothing found by your request \"$query\"";}if( !isset( $response['itemListElement'][0]['result'] ) ){return "Unknown GKG result format for request \"$query\"";}if( !isset($response['itemListElement'][0]['result']['detailedDescription'] ) ){return "detailedDescription was not provided by GKG for request \"$query\"";}if( !isset( $response['itemListElement'][0]['result']['detailedDescription']['articleBody'] ) ){return "articleBody was not provided by GKG for request \"$query\"";}return $response['itemListElement'][0]['result']['detailedDescription']['articleBody'];}}

Теперь мы можем обращаться по апи к нашей вики:

Get /api.php?action=askgoogleknowledgegraph&query=Выхухоль&format=jsonResponse body:{"description": "Выхухоль, или русская выхухоль, или хохуля,  вид млекопитающих отряда насекомоядных из трибы Desmanini подсемейства Talpinae семейства кротовых. Один из двух видов трибы; вторым видом является пиренейская выхухоль."}

Расширяем парсер и используем прочие хуки

// Фрагмент файла extension.json"AutoloadClasses": {"GoogleKnowledgeGraphHooks": "includes/GoogleKnowledgeGraph.hooks.php",<...>},"Hooks": {"BeforePageDisplay": "GoogleKnowledgeGraphHooks::onBeforePageDisplay","ParserFirstCallInit": "GoogleKnowledgeGraphHooks::onParserSetup"},

В extension.json мы заявили, что в классе GoogleKnowledgeGraphHooks из файла includes/GoogleKnowledgeGraph.hooks.php реализуем расширения для хуков:

  • OutputPageParserOutput в методе onBeforeHtmlAddedToOutput;

  • ParserFirstCallInit в методе onParserSetup

Немножко про используемые хуки:

  • OutputPageParserOutput позволяет выполнить какой-то код после того, как парсер закончил формировать html, но перед тем, как html был добавлен к аутпуту. Здесь мы, например, можем подгрузить фронтенд. Фронтенд мы целиком расположили в модуле ext.GoogleKnowledgeGraph, так что достаточно будет подгрузить его.

  • ParserFirstCallInit позволяет расширить парсер дополнительными методами. Мы добавим в парсер обработку тега <GoogleKnowledgeGraph>.

Итак, реализация (файл includes/GoogleKnowledgeGraph.hooks.php):

<?php/** * Хуки расширения GoogleKnowledgeGraph  */class GoogleKnowledgeGraphHooks {/** * Сработает хук после окончания работы парсера, но перед выводом html.  * Детали тут: https://www.mediawiki.org/wiki/Manual:Hooks/OutputPageParserOutput */public static function onBeforeHtmlAddedToOutput( OutputPage &$out, ParserOutput $parserOutput ) {// Добавляем подгрузку модуля фронтенда для всех страниц, его определение ищи в extension.json$out->addModules( 'ext.GoogleKnowledgeGraph' );return true;}/** * Расширяем парсер, добавляя обработку тега <GoogleKnowledgeGraphHooks> */public static function onParserSetup( Parser $parser ) {$parser->setHook( 'GoogleKnowledgeGraph', 'GoogleKnowledgeGraphHooks::processGoogleKnowledgeGraphTag' );return true;}/** * Реализация обработки тега <GoogleKnowledgeGraph>  */public static function processGoogleKnowledgeGraphTag( $input, array $args, Parser $parser, PPFrame $frame ) {// Парсим аргументы, переданные в формате <GoogleKnowledgeGraph arg1="val1" arg2="val2" ...> if( isset( $args['query'] ) ){$query = $args['query'];}else{// В тег не был передан аргумент query, так что и выводить нам нечегоreturn '';}return '<span class="googleKnowledgeGraph">' . htmlspecialchars( $query ) . '</span>';}}

Добавляем фронтенд

Фронтенд свяжет воедино все, что мы реализовали выше.

// Фрагмент файла extension.json    "ResourceModules": {"ext.GoogleKnowledgeGraph": {"localBasePath": "modules","remoteExtPath": "GoogleKnowledgeGraph/modules","scripts": ["ext.GoogleKnowledgeGraph.js"],"styles": ["ext.GoogleKnowledgeGraph.css"],"dependencies": []}},  "ResourceFileModulePaths": {"localBasePath": "modules","remoteExtPath": "GoogleKnowledgeGraph/modules"},

В extension.json мы заявили, что у нас есть один модуль ext.GoogleKnowledgeGraph, который находится в папке modules и состоит из двух файлов:

  • modules/ext.GoogleKnowledgeGraph/ext.GoogleKnowledgeGraph.js

  • modules/ext.GoogleKnowledgeGraph/ext.GoogleKnowledgeGraph.css

Загрузку модуля мы реализовали чуть раньше в методе onBeforeHtmlAddedToOutput. Определим теперь и сам код модуля.

Для начала зададим стили
(файл modules/ext.GoogleKnowledgeGraph/ext.GoogleKnowledgeGraph.css):

.googleKnowledgeGraph{    border-bottom: 1px dotted #000;    text-decoration: none;}

А теперь возьмемся за JS
(файл modules/ext.GoogleKnowledgeGraph/ext.GoogleKnowledgeGraph.js):

( function ( mw, $ ) {  /**   * Ищем все элементы с <span class="googleKnowledgeGraph">MyText</span>,   * вытаскиваем MyText и отправляем запрос   * /api.php?action=askgoogleknowledgegraph&query=MyText   * После чего добавляем результат в 'title'.   */$( ".googleKnowledgeGraph" ).each( function( index, element ) {$.ajax({type: "GET", url: mw.util.wikiScript( 'api' ),data: { action: 'askgoogleknowledgegraph', query: $( element ).text(),format: 'json',},dataType: 'json',success: function( jsondata ){$( element ).prop( 'title', jsondata.description );}});});}( mediaWiki, jQuery ) );

JS код довольно прост. jQuery нам достался даром, поскольку MediaWiki подгружает его автоматически.

Подгружаем наше расширение и радуемся

Для загрузки расширения, как мы уже обсуждали, потребуется поправить файл LocalSettings.php. Добавляем в самый конец:

// Фрагмент файла LocalSettings.php<?php<...>  wfLoadExtension( 'GoogleKnowledgeGraph' );$wgGoogleApiToken = "your-google-token";$wgGoogleApiLanguage = 'ru';

Можно пробовать! Добавим на страницу что-нибудь эдакое:

Даже <GoogleKnowledgeGraph query="прикольный флот"/> может стать отстойным.

И получим:

Делимся с сообществом

Если есть возможность поделиться расширением с общественностью, то можно создать страницу на MediaWiki с кратким описанием, что ваше расширение может сделать (не забудьте скриншоты: лучше один раз увидеть, чем сто раз прочитать). На страницы с описаниями расширений обычно добавляют шаблон Extension, поля которого хорошо задокументированы. Если же возникнут сложности, всегда можно скопировать его с другой страницы расширений и подправить отличающиеся поля.

Типичная страница с описанием расширенияТипичная страница с описанием расширения

Заключение

В статье был описан случай довольно простого расширения, но, на самом деле, такие расширения как iFrame, CategoryTree, Drawio и многие другие не очень далеко ушли по сложности.

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

Ссылки

Подробнее..

Перевод Пришло время и тебе встать на защиту Sci-hub

15.05.2021 18:08:01 | Автор: admin
image


  • Быстрый старт спасения Sci-Hub: загрузите 1 случайный торрент (100 ГБ) из коллекции scimag и скачайте его. Оставайтесь на раздаче навсегда.
  • Трекер успеха миссии, спасибо phillm
  • Участвуйте в проектах Sci-Hub с открытым исходным кодом: freereadorg/awesome-libgen
  • Присоединяйтесь к /r/scihub, чтобы оставаться в курсе


Спасательная миссия для Sci-Hub и Open Science


Elsevier и USDOJ объявили войну Sci-Hub и Open Science. Эпоха Sci-Hub и Александры, сражающихся в одиночку, должна закончиться. Мы должны встать на её сторону.

7 мая Александра Элбакян из Sci-Hub сообщила, что ФБР прослушивает ее аккаунты более двух лет. Эта новость появилась после того, как Twitter заставил замолчать официальный аккаунт Sci_Hub в Твиттере, потому что индийские ученые и Elsevier организовались против неё.

Сам Sci-Hub в настоящее время заморожен и не загружал никаких новых статей с декабря 2020 года. Эта спасательная миссия сосредоточена на поддержке раздач (seeding) коллекции статей, чтобы подготовиться к потенциальному закрытию Sci-Hub.

Александра Элбакян из Sci-Hub, книжный воитель Library Genesis, Аарон Шварц и бесчисленное множество других неназванных боролись за то, чтобы освободить науку от хватки коммерческих издателей. Сегодня они делают это скрытно, в одиночку, без ведома, опасаясь тюремного заключения, и даже сейчас их прослушивает ФБР. Они жертвуют всем ради одного видения: Open Science.

Почему они это делают? Они делают это для того, чтобы скромные ученые на другой стороне планеты могли практиковать медицину, создавать науку, бороться за демократию, учить и учиться. Такие люди, как Александра Элбакян, пожертвовали бы своей личной свободой ради единственной цели: освободить знания. Но Elsevier Corp (RELX, рыночная капитализация: 50 миллиардов) хочет заставить ее замолчать, хочет видеть ее в тюрьме и хочет закрыть Sci-Hub.

Пришло время отправить Elsevier и USDOJ более четкое сообщение о судьбе Sci-Hub и Open Science: мы библиотека, нас не заставят замолчать, мы не выключим наши компьютеры, и нас много.

Если вы следили за этой историей, то знаете, что это не первая наша спасательная операция.



Цель


Несколько сидеров Library Genesis в настоящее время раздают торренты Sci-Hub. Существует 850 торрентов scihub, каждый из которых содержит 100 000 научных статей, в общей сложности 85 миллионов научных статей: 77 ТБ. Это полная база данных Sci-Hub. Нам нужно это защитить.

Спасательная команда


Первая волна: нам нужно 85 сборщиков данных (datahoarders) для хранения и раздачи 1 ТБ статей каждый, всего 10 торрентов. Загрузите 10 случайных торрентов из коллекции scimag, затем загрузите торренты на свой клиент и храните столько, сколько сможете. Статьи кодируются DOI и в zip-файлах.

Вторая волна: обратитесь к 10 хорошим друзьям и попросите их скачать только 1 случайный торрент (100 ГБ). Это 850 сидов. Теперь мы библиотека.

Заключительная волна: разработка для Sci-Hub с открытым исходным кодом. freereadorg/awesome-libgen это коллекция достижений с открытым исходным кодом, основанная на базах данных Sci-Hub и Library Genesis. Конечная цель здесь децентрализация Sci-Hub с открытым исходным кодом, и она начинается с данных, но потребуются годы тяжкой работы разработчика, чтобы перенести эти библиотеки в будущее.

Сердечно благодарим сообщества /r/datahoarder и /r/seedboxes, seedbox.io и NFOrce за вашу поддержку предыдущих миссий и вашу любовь к науке.
Подробнее..

Перевод Википедия купается в деньгах зачем молить о пожертвованиях?

01.06.2021 16:23:51 | Автор: admin
Проект гораздо богаче, чем кажется.



Некоммерческая организация Wikimedia Foundation (WMF), которая владеет Википедией и другими сайтами UGC, вот-вот достигнет десятилетней цели: собрать $100 млн в долгосрочном резерве Wikimedia Endowment. Это произойдёт на пять лет раньше, чем планировалось. Объём чистых активов (net assets) составляет около $200млн по состоянию на июнь прошлого года. Сейчас уже около $300млн. Доходы непрерывно растут. Согласно внутренним документам, за первые девять месяцев текущего финансового года фонд собрал пожертвований на $142 млн и уже побил рекорд прошлого года.

Эта информация может удивить доноров и пользователей по всему миру, которые видели баннеры для сбора средств в Википедии. Их показывают в разное время в разных странах. В прошлом году их впервые начали крутить в Индии. В настоящее время эти баннеры показывают жителям охваченной пандемией Латинской Америки. Они создают впечатление, что WMF с огромным трудом поддерживает Википедию в рабочем состоянии Послания жалобные: В этот четверг Википедия действительно нуждается в вас. Это уже десятое обращение, которое мы вам показали. 98% наших читателей не жертвуют, они отворачиваются Мы просим вас, пожалуйста, не надо скроллить от нас (We ask you, humbly, dont scroll away).

Согласно примерной оценке вице-президента по разработке WMF Эрика Меллера, в 2013 году для поддержки Википедии вполне хватило бы $10 млн. Что же делает WMF с остальной суммой? Средства идут на зарплату сотням сотрудников и в резерв на чёрный день. У фонда есть амбициозные планы стать инфраструктурой экосистемы свободных знаний. Поэтому он говорит читателям Википедии, что их деньги действительно нужны. Хотя организация сейчас богаче, чем когда-либо в своей истории.

В 2016 году WMF объявил о создании резервного фонда Wikimedia Endowment совместно с Tides Foundation. Это было в день 15-летия Википедии. Цель накопить $100млн в течение десяти лет в качестве постоянного источника финансирования для процветания Википедии в будущих поколениях.

Всего через пять лет фонд собрал более $90 млн, а начальной цели в $100 млн достигнет в этом году благодаря крупным пожертвованиям от Amazon, Google, Facebook и других компаний вкупе с традиционными пожертвованиями, а также $25 млн от самого WMF.

Примечательно, что пожертвования в резервный фонд не включены в отчётность по чистым активам WMF ($180 млн по состоянию на июнь 2020 года) или годовой доход ($130 млн). Однако деньги, которые WMF перечисляет в этот фонд, отражаются в статье расходов (Премии и гранты). Эти два факта скрывают, что WMF в течение последних пяти лет де-факто работает с гораздо большим профицитом, чем указано в финансовых отчётах. Отчёты показывают увеличение чистых активов за данный период всего на $100 млн. На самом деле общий объём средств WMF увеличился вдвое.

Wikimedia Endowment не единственные деньги, которые Wikimedia направляет в Tides Foundation. В прошлом году, когда у WMF буквально не знала, как распорядиться огромным объёмом финансовых поступлений, а общественные мероприятия были отменены из-за пандемии, она дополнительно перевела $8,7 млн в новый фонд Tides Advocacy.

Кроме того, WMF открывает коммерческую фирму под названием Wikimedia, LLC. Она будет продавать API-сервисы крупным технологическим компаниям, облегчая им обработку контента Wikimedia, включая контент для голосовых помощников, такие как Siri от Apple и Alexa от Amazon, а также инфобоксы в поисковой выдаче Google. Все эти умные устройства Интернета вещей сейчас используют контент из Википедии, чтобы создать впечатление всезнаек.

Проект Wikimedia LLC тревожит многих редакторов-добровольцев Википедии. Они рассматривают прибыль как потенциально развращающее влияние. И существует явное неравенство в том, что штатным сотрудникам WMF платят, в то время как волонтёры работают бесплатно. Википедия составлена из примерно трёх миллиардов индивидуальных правок. Средняя правка в настоящее время приносит WMF около 4,3 цента в годовом доходе, и гораздо больше прибыли крупным технологическим компаниям. Википедисты с сотнями тысяч правок могут почувствовать, что кто-то другой наслаждается плодами их труда.

Наличие огромного богатства WMF особо не повлияло на внешний вид Википедии для читателя. Путешественник из 2007 года, когда Википедия вошла в топ-10 сайтов интернета, не заметит особой разницы. Но сам WMF изменился до неузнаваемости. В 2007 году в организации работало 11 сотрудников, а расходы составили $2млн.

Перенесёмся в 2021-й. В апреле из WMF ушла CEO Кэтрин Махер, так что фонд разместил вакансию. Там указана численность сотрудников WMF более 500 человек. Топ-менеджеры зарабатывают от $300000 до $400000 в год. Более 40 человек занимаются исключительно сбором средств. Современные баннеры учитывают количество показов каждому человеку (Привет, канадский читатель, похоже, вы часто используете Википедию; это здорово! Нам неловко, но в этот вторник нужна ваша помощь. Это десятое обращение, которое мы вам показали...) и умоляют: Пожалуйста, не надо скроллить от нас (dont scroll away) фраза показала удивительно высокую эффективность в A/B-тестировании. В декабре прошлого года читателям, отклонившим баннер, демонстрировали плакучий смайлик.



WMF снова и снова подчёркивает, что Википедия ничего не продаёт. Но собственные объявления для сбора средств описаны как баннеры, говорящие Мы никогда не будем показывать рекламу.

Это важный аспект пиара WMF. За несколько дней до ухода из WMF Кэтрин Махер выступила в ежедневном шоу Тревора Ноа (жена PR-консультанта WMF Крейга Минассиана из Clinton Foundation является продюсером шоу).

В интервью Ноа спросил о проблемах некоммерческой организации: правда ли не хватает денег, чтобы поддерживать Википедию в рабочем состоянии. И зачем делать то, что не приносит денег.

В бодром ответе Махер никак не упомянула огромные денежные резервы WMF. Зато подчёркнула, что отсутствие рекламы причина, по которой Википедии настолько доверяют, см. видео с отметки 4:30:


Это видео опубликовано на YouTube в комплекте с кнопкой для пожертвований: Помогите Википедии оставаться свободной, независимой и живой в онлайне (Help Wikipedia Stay Free, Independent & Online). (кнопка доступна не во всех странах прим. пер.).

Прошлым летом WMF отчитался о новых финансовых рекордах, а сразу после этого впервые в истории запустил кампанию по сбору средств в Индии, предложив читателям пожертвовать по 150 рупий (два доллара). Баннеры с надписями Википедия действительно нуждается в вас, Нам нужно, чтобы вы сделали пожертвование для защиты независимости Википедии, Помогите сохранить Википедию в интернете вызвали в Индии опасения, что Википедия умирает или может перейти на платную подписку.

Википедисты давно выражают возмущение этими баннерами по сбору средств. Википедия должна быть Cвободной Энциклопедией, а не вызывать у читателей чувство вины. Википедия никогда не рисковала потерять серверы или свою независимость, никогда не нуждалась в показе рекламы. Каждый год WMF собирал больше, чем годом ранее, и расширял штат.


Чёрный: чистые активы (без учёта резерва Wikimedia Endowment, в настоящее время на уровне $90+ млн)
Зелёный: доход (за исключением пожертвований третьих лиц в резерв Wikimedia Endowment)
Красный: расходы (включая выплаты в Wikimedia Endowment)


Этот год не стал исключением. В течение первых трёх кварталов годовая цель WMF и Wikimedia Endowment на текущий финансовый год оказалась превышена. Её пришлось увеличить со $108 млн до $125 млн. Но эту цель также к концу марта превысили на $17 млн. Тем не менее, несколько недель спустя фонд WMF начал сбор средств в охваченной пандемией Южной Америке. Читателей просят смиренно пожертвовать деньги, чтобы защитить независимость Википедии и показать редакторам-волонтёрам, что их работа имеет значение (некоторых из волонтёров это совсем не радует).

Финансовая независимость WMF явно в полной безопасности. Так что же происходит? Официальный ответ WMF: денег на чёрный день не бывает слишком много. Кроме того, у WMF амбициозные планы к 2030 году стать глобальной инфраструктурой для экосистемы свободных знаний. Организация хочет создать справедливый мир знаний (knowledge equity), в котором люди будут иметь такой же доступ к информации на родном языке, как и граждане первого мира на своём языке. Поэтому требуется постоянное увеличение бюджета. Для этих целей и предназначен денежный краник из Википедии, который можно открыть в любой момент.

В разгар пандемии жители Аргентины и Уругвая опасаются за свои жизни и источники средств к существованию, а WMF слёзно просит пожертвовать на независимость Википедии.

Возможно, людям лучше не видеть эти призывы.
Подробнее..

Википедия купается в деньгах? Обратная сторона вопроса

01.06.2021 18:16:36 | Автор: admin

Сегодня мы прочли статью Википедия купается в деньгах и были очарованы. Там рассказано, как фонд Wikimedia собирает пожертвования по всему миру, и как развивается его целевой капитал. Да, всё в статье правда: в США и фонд есть, и активы есть, и доход есть. Однако in Soviet Russia дело обстоит совсем иначе. Поистине тревожит российских редакторов-добровольцев Википедии совсем иное.

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

Вот, убедитесь своими глазами.

Во многих странах работают местные организации, созданные участниками Википедии. Конечно, головной фонд помогает им. С 2008 года в России тоже есть такой союз партнёрство Викимедиа РУ. И ему головной фонд не помогает никак, не перечисляет ничего.

Поэтому для нас, жителей России, пожертвования в Wikimedia Foundation напрочь бесполезны. Эти пожертвования никак не отразятся на русскоязычной Википедии, на российских участниках. Они останутся в заграничном обществе.

Значит, надо совсем по-другому относиться к пожертвованиям. И как же? А вот как.

1) Если вы хотите помочь Википедии помогите ей там, где вы живёте. Помогите участникам в вашей области, в вашем городе, в вашем селе. Свяжитесь с людьми, которые наполняют Википедию фотографиями и книгами (Викисклад), которые пишут статьи для неё. Спросите у них, какая помощь нужна. Отдайте деньги на конкретные местные задачи.

2) Если вы хотите поддержать конкретный проект, например, Викиновости или Викигид откройте форум того проекта, обратитесь к участникам, предложите им свою помощь.

3) Если вы хотите просто отдать деньги на Википедию обратитесь в Викимедиа РУ и отправьте деньги туда. Ваша помощь останется в России и перейдёт к тем, кто создаёт вики-материал на русском языке.

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

Пожалуйста, откройте им глаза. Зулейха Валиева не должна остаться в одиночестве.

Вот, собственно, и всё, что надо знать о пожертвованиях на Википедию в нынешней России.

Подробнее..

Полежать в эконом-классе? Zephyr Aerospace разработал двухэтажные купе для самолетов. И можно сделать почти кровать

10.06.2021 14:04:32 | Автор: admin

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

1 января 2021 года стартап Zephyr Aerospace закрыл сбор средств на краудфандинговой платформе republic, собрав чуть больше 739 тыс.долл при требуемых 100 тыс. Компания предлагает совершенно новый подход к проектированию посадочных мест вместо верхних полок для багажа будет второй этаж сидений (лестница выдвигается). Плюс конструкция самих кресел выполнена из композитных материалов, поэтому они на 80% легче стандартных кресел бизнес-класса. А комфорт на его уровне.

Авиакомпаниям: больше клиентов, больше прибыли

Хотя в итоге получается, что места одноместные (привет санитарным требованиям времен пандемии), пассажиров меньше не будет. Кресла Zephyr Seat ставятся вместо обычных эконом, причем стартап обещает что вместимость дальнемагистральных самолетов даже повысится на 20%.

То есть где было четыре кресла в центральном ряду, там они и останутся (где добавится еще, не знаю).

Новые самолеты не нужны, Zephyr Aerospace говорит, что без проблем можно переделать свой парк.

И в итоге получается настоящий премиум-эконом-класс, а не то, что сейчас. Особенно если авиакомпания добавит в конструкцию всякие плюшки, вроде OLED-дисплеев, сидений из пены с эффектом памяти (надеюсь, она быстро забудет предыдущего пассажира), плотные шторы (почти купе) и так далее. Все это разработчик тоже добавляет.

Собственно, выгода авиакомпаний складывается из таких факторов:

  • более дешевые и легкие кресла (больше багажа можно будет взять? или меньше топлива нужно будет, раз самолет легче? я не в теме);

  • увеличение пассажиропотока;

  • повышение стоимости билетов, ага. Все же не простой эконом, но и не неоправданно дорогой бизнес.

Думаю, очень многие выберут рейс с такими местами, а не с просто креслами, особенно если лететь 5-6 часов и больше. К тому же Zephyr Aerospace провели исследования, которые показали 70% пассажиров бизнес-класса с удовольствием бы обменяли вип-залы ожидания и другое меню на возможность просто полежать.

Так что ожидаемый рост дохода авиакомпаний составляет 30%.

Пассажирам: больше комфорта, больше приватности

Выглядят новые кресла (купе?) очень впечатляюще.

Можно просто сидеть, вытянув ноги, но можно выдвинуть дополнительную полочку и полежать (мы тут не сразу поняли, куда ноги деваются :)).

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

Безопасно?

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

Как бы там ни было, стартап собрал деньги, нужные для сертификации Федеральной авиационной ассоциации, и уже ищет первую авиакомпанию, готовую попробовать новые кресла.

Кстати, Zephyr Seat можно будет устанавливать на ж/д, автотранспорт и т.д. Так что вполне возможно, что скоро мы будем покупать купейные места в автобусах.

Источник: Republic


Дата-центр ITSOFT размещение и аренда серверов и стоек в двух дата-центрах в Москве. За последние годы UPTIME 100%. Размещение GPU-ферм и ASIC-майнеров, аренда GPU-серверов, лицензии связи, SSL-сертификаты, администрирование серверов и поддержка сайтов.

Подробнее..

Новые рекорды найдено 51-ое простое число Мерсенна

21.06.2021 00:15:47 | Автор: admin

(Примечание переводчика: не нашёл публикации (-ий) по данной теме на Хабре.)

Блоуинг Рок, Северная Каролина, 21 декабря 2018 года организация Great Internet Mersenne Prime Search (GIMPS, масштабный Интернет-проект по поиску простых чисел Мерсенна) обнаружила самое большое известное простое число 282589933 - 1, состоящее из 24 863 048 разрядов. Компьютер добровольца Патрика Ляроша вычислил его 7 декабря 2018 года. Патрик один из тысяч, использующих бесплатное ПО GIMPS.

Новое простое число, также известное как M82589933, вычислено перемножением 82 589 933 двоек и вычитанием единицы. Оно превосходит предыдущее рекордное простое число более, чем на полтора миллиона разрядов, в особом классе исключительно редких простых, известных как числа Мерсенна. Это всего пятидесят первое открытое простое число Мерсенна; вычисление каждого последующего становится сложнее. Простые числа Мерсенна названы по имени французского монаха Марина Мерсенна, изучавшего эти числа больше 350 лет назад. Основанная в 1996 году GIMPS обнаружила последние 17 простых чисел Мерсенна. Для поиска этих простых чисел скачивают бесплатную программу, и есть шанс выиграть денежный приз, если повезёт найти новое число. У профессора Криса Колдуэлла есть авторитетный веб-сайт, посвящённый самым большим известным простым числам с замечательной историей простых чисел Мерсенна.

Патрик Лярош 35-летний IT-шник, живущий в Окале, штат Флорида. За своё открытие он получил от GIMPS исследовательскую награду в 3 000 долларов.

Клиентское ПО Prime95 разработано основателем GIMPS Джорджем Уолтманом. Скотт Куровски написал системное ПО PrimeNet, координирующее компьютеры GIMPS. Аарон Блоссер теперь работает системным администратором и при необходимости выполняет обновление и обслуживание PrimeNet. Волонтёры имеют шанс получить вознаграждение в 3 000 или 50 000 долларов, если их компьютер откроет новое простое число Мерсенна. Следующей крупной целью GIMPS является выигрыш учреждённой Electronic Frontier Foundation награды в 150 000 долларов, которая будет вручена за нахождение простого числа со 100 000 000 десятичных разрядов.

Мы признательны за нахождение этого простого числа не только Патрику Лярошу, выполнявшему на своём компьютере ПО Prime95: Уолтману за написанное ПО, Куровски и Блоссеру за их работу с сервером Primenet, а также тысячам добровольцев GIMPS, просеявшим миллионы вариантов чисел. В благодарность всем этим людям официально это открытие приписывается Дж. Пейсу, Дж. Уолтману, С. Куровски, А. Блоссеру и коллегам.

Про Great Internet Mersenne Prime Search

Организация Great Internet Mersenne Prime Search (GIMPS) была сформирована в январе 1996 года Джорджем Уолтмана для нахождения новых мировых рекордов простых чисел Мерсенна. В 1997 году Скотт Куровски обеспечил GIMPS возможность использовать мощь тысяч обычных компьютеров для поиска этих иголок в стоге сена. Большинство участников GIMPS вступило в организацию ради захватывающей возможности обнаружения рекордного, редкого и исторического нового простого числа Мерсенна. Поиск следующих простых чисел Мерсенна уже продолжается. Возможно, существуют и меньше, но пока ненайденные простые, и почти абсолютно точно есть бОльшие, ждущие своего обнаружения. Любой человек с достаточно мощным компьютером может присоединиться к GIMPS и стать охотником за большими простыми числами с возможностью получить денежную награду за своё открытие. Всё необходимое ПО можно бесплатно скачать по адресу www.mersenne.org/download/. GIMPS сформирована как Mersenne Research, Inc., некоммерческая научная благотворительная организация 501(с)(3). Подробнее об этом можно прочитать на www.mersenneforum.org и www.mersenne.org; также принимаются добровольные пожертвования.

Дополнительная информация о простых числах Мерсенна

Простые числа давно восхищали и любителей, и профессионалов математики. Целое число больше единицы называется простым числом, если его единственными делителями являются единица и оно само. Первые простые числа: 2, 3, 5, 7, 11 и т.д. Например, число 10 не является простым, потому что делится на 2 и 5. Простое число Мерсенна это простое число, имеющее вид 2P 1. Первыми простыми числами Мерсенна являются 3, 7, 31 и 127, соответствующие P = 2, 3, 5 и 7. Пока известно 50 простых чисел Мерсенна. Простые числа Мерсенна были в центре внимания теории чисел с тех пор, когда их впервые рассмотрел Евклид около 350 до нашей эры. Человек, именем которого назвали эти числа, французский монах Марин Мерсенн (1588-1648 гг.), создал знаменитую гипотезу о том, при каких значениях P можно получить простое число. Чтобы подтвердить эту гипотезу, потребовались 300 лет и несколько важных открытий. Сегодня есть мало практических применений этого простого числа, что заставляет некоторых задаваться вопросом: Зачем вообще искать такие большие простые числа? Подобные сомнения существовали и несколько десятилетий назад, пока наконец не были разработаны важные криптографические алгоритмы на основе простых чисел. Ещё семь хороших причин для поиска больших простых чисел изложены здесь. Предыдущие открытия простых чисел Мерсенна в рамках GIMPS были совершены участниками из разных стран.

Евклид доказал, что каждое простое число Мерсенна генерирует совершенное число. Совершенное число это число, сумма собственных делителей которого равно самому числу. Самым малым совершенным числом является 6 = 1 + 2 + 3, вторым 28 = 1 + 2 + 4 + 7 + 14. Эйлер (1707-1783 гг.) доказал, что все чётные совершенные числа являются результатом простых чисел Мерсенна. Последнее открытое совершенное число это 277232916 x (277232917-1). Это число имеет более 49 миллионов разрядов! Всё ещё неизвестно, существуют ли нечётные совершенные числа.

Арифметические алгоритмы, лежащие в основе проекта GIMPS, имеют уникальную историю. Программы, нашедшие последние большие простые числа Мерсенна, основаны на специальном алгоритме. В начале 1990-х ныне покойный Ричард Крэндэлл, выдающийся учёный из Apple, обнаружил способы удвоения скорости выполнения свёрток очень больших операций умножения. Этот метод применим не только ко поиску простых чисел, но и к другим аспектам вычислений. В процессе работы над этим проектом он также запатентовал систему шифрования Fast Elliptic Encryption, которая теперь принадлежит Apple Computer. В ней для быстрой шифровки и дешифровки сообщений используются простые числа Мерсенна. Джордж Уолтман реализовал алгоритм Крэндэлла на языке ассемблера, создав таким образом программу поиска простых чисел с беспрецедентной эффективностью. Эта работа привела к созданию успешного проекта GIMPS.

Школьные учителя используют GIMPS, чтобы заинтересовать своих учеников математикой. Студенты, запустившие на своих компьютерах ПО, вносят свой вклад в математические исследования.

Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru