Самат Галимов

Feb 2018

  • Отдел разработки Медузы ведет неравный бой с эмбедами фейсбука, инстаграма и твитера уже третий год. Постоянно что-то меняется и ломается.

  • The Guardian Mobile Lab выпустили классную интерактивную стори — соединение чатбота и аудио (demo, статья) и на этом завершают свою работу.

  • Снепчат провел крупный редизайн, разделив личные истории от influencers & media (в попытке защититься от fake news).

    Больше миллиона человек подписали петицию с требованием откатить редизайн, говорят неудобно пользоваться. ДУРОВ ВЕРНИ СТЕНУ

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

  • Краткие тезисы из статьи «как построена работа в Basecamp»:

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

    • между циклами есть 1-2 недельное «свободное время», когда они чинят баги, занимаются side project и думают над следующим циклом;

    • вся пачка мелких проектов делается одной командой, если в цикле два больших проекта — их делают две отдельные команды;

    • самое необычное: команда это 1 дизайнер и один или два программиста; менеджером команды является дизайнер, но вся работа происходит сообща;

    • чтобы пропитчить идею, её нужно оформить в связный текст с формулировкой проблемы и решения. Почему не голосом? 1) питчера не могу прервать и загнобить пока он не рассказал идею целиком 2) при написании текста питчер хорошенько над ней думает 3) асинхронное взаимодействие, они не особо любят слеки и личные встречи для работы 4) все комментарии к питчу собираются внизу как единый источник истины. Пример питча;

    • координация и трекинг задач происходят в бейзкемпе, внутри всё стандартно;

    • в цикле участвуют 2 QA-специалиста, они кочуют между проектами;

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

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

  • Господи, какое же классное видео https://www.youtube.com/watch?v=9SOFqWYpf9Y

    Каждый раз начинаю смотреть и не могу остановиться.

  • Никогда бы не подумал, но «починить стремный контент» в соцсетях (fake news, расизм, сексизм, террористы и toxic content for children) собирается Unilever (Lipton, Rexona, Domestos, Calve: это пятая по размеру FMCG компания в мире). Они пугают Google и Facebook, что откажутся от рекламы на их площадках, если те не решат проблему трешового user generated content.

    А что, они ведь платят деньги и являются настоящими клиентами Google и Facebook (в прошлом году Unilever потратил 2.4 миллиарда долларов на онлайн-рекламу).

    http://www.latimes.com/business/technology/la-fi-tn-unilever-ads-google-facebook-20180212-story.html

  • Некоторые программисты недавно начали говорить, что у Apple «проблемы с софтом». Мол, во времена Джобса такого не было и вообще, раньше софт был надежнее.

    Вот ответ от Стивена Сифонски. Это один из ключевых чуваков в MS: пришел в 1989, уволился в 2012 в должности руководителя разработки Windows https://medium.learningbyshipping.com/apples-software-problem-and-fixing-it-via-twitter-c941a905ba20

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

  • https://www.youtube.com/watch?v=56_lO4WCIX0

  • Смотрю трансляцию конференции AMP Conf 2018 из Амстердама.

    1. Анонсировали новый формат stories (ссылка на timecode в трансляции). Vox и прочие уже сделали примеры, вот прямая ссылка на один Story от них. Для этих stories будет отдельная карусель в результатах поиска. Чтобы посмотреть карусель — откройте ссылку на телефоне или симуляторе, наберите в строке поиска vox или cnn — второй строкой будет карусель.

    2. Рассказывают о хороших сайтах, которые AMP-first (а не обычная версия + AMP версия для трафика). Примеры: Tasty (базфид про еду) и новый сайт BMW.

    3. Пушат свои крупные компоненты вроде date-picker, gallery, lightbox и sharing-buttons. Давят на то, что эти компоненты респонсив и хорошо оттестированы на сотнях кейсов. Tasty рассказывает, что с этими компонентами на самом деле гораздо проще жить.

    4. Рассказывают про amp-optimizer (внутри AMP-toolbox), который круто оптимизирует AMP-сайты.

    Fun fact: на презентации были видео админок Stories от Vox и Washington Post. Обе компании были в ситуации, когда нужно запрогать что-то прямо сейчас. У Vox в результате получилась отдельная супер-красивая админка (говорят, что разработка заняла 3 дня), а у WaPo — франкенштейн из Chrome extension, который перехерачивает обычный редактор статей на лету. Очень хочется быть как Vox.

  • Из новостей медиа: Salon.com начал просить разрешение майнить криптовалюту в браузерах читателей, включивших блокировщик рекламы.

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

    Их FAQ — классический пример умолчания важной части правды. Эта технология будет сажать батарейку, увеличивать счет за электричество и ухудшать user experience. Бесплатного сыра нет.

    Идея была бы ок, если бы там были деньги. А денег там, к сожалению, нет. Я «посчитал на салфетке» сколько бы «заработала» на этом Медуза; получилось около тысячи долларов в месяц, если все десктоп-читатели будут майнить без остановки (читай не имеет смысла).

    Готовая библиотека, если хотите поиграть с майнингом в браузере — Coinhive. Таблица в google docs, в которой вы можете рассчитать «прибыли» от майнинга для своего проекта я сделал публичной тут. Для расчета сделайте себе копию, вбейте число десктоп сессий, среднюю продолжительность сессии и расстройтесь от результата.

  • Фейверки 2.0 из дронов (1280 штук!) на открытии Олимпиады в Сеуле: https://twitter.com/WIRED/status/962174291235127297

    Откройте видео, оно короткое, но это очень красивое.

    Спасибо @rivaldovsky за подгон в чатике @ctodailychat

  • Многие читатели пишут, что на свете существовали достойные десктоп SQL-клиенты и до TablePlus.

    Замечание принимается — меняю в предыдущем посте «приличный» на «классный» и привожу список программ, которые упоминали дорогие читатели:

    1. Navicat — очень мощный комбайн, давно на рынке, есть под все три ОС. Полная версия стоит 1300$;

    2. DataGrip от JetBrains — неплохой клиент, если вам нравится IntelliJ IDEA (мне субъективно нет), 200$ в год;

    3. Postico — симпатичный postgres клиент под мак, 40$;

    4. SequelPro — хороший opensource клиент для MySQL под мак.

  • Наконец-то классный десктоп-клиент для баз данных. Нативный, Mac & Win, поддерживает кучу СУБД, классный редактор SQL и умная подсветка изменений.

    Платная версия стоит 50$ в год, бесплатная ограничена двумя табами.

    Хороший лендинг, все функции показаны https://tableplus.io

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

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

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

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

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

    Идеальный рассказ на ночь.

    https://www.newyorker.com/magazine/2018/02/12/why-paper-jams-persist

  • Хороший профайл на финских парней (и девушек, наверное), которые делают терминалы «оцените наш сервис». Это те самые, в которых 4 кнопки-смайлика — очень довольный, средне-довольный, средне-недовольный и очень недовольный (от зеленого к красному).

    Очень классная идея; из тех, что «не может быть, чтобы никто этого не делал раньше» и годная реализация. Для меня это пример хорошего стартапа.

    А ещё это история про измерения и аналитику продуктов. Сложное искусство, но очень ценное.

    https://www.newyorker.com/magazine/2018/02/05/customer-satisfaction-at-the-push-of-a-button

  • Не знаю как вам, мне Facebook messenger до этого никогда не показывал рекламу. Сегодня вот начал.

  • Google Chrome начнет блокировать «плохую рекламу» меньше чем через две недели. И сделает это довольно интересным способом.

    Что такое плохая реклама? По определению «коалиции за более лучшую рекламу» (sic: coalition for better ads), это: попапы, автоплей видео со звуком (без звука ок), большая реклама закрывающая контент, крупная реклама с обратным отсчетом (хорошо помню крестик «закрытия» размером два на два пикселя у полноэкранной рекламы на сайте РБК). Список чуть жестче для мобил и чуть мягче для десктопа.

    Как будет работать блокировка? Инженеры довольно сообразительно соединили два старых механизма.

    Первый: Гугл уже много лет поддерживает список сайтов, распространяющих вирусы (это называется Safe Browsing API). При попытке зайти на сайт из этого списка с помощью Chrome, вы увидите красный экран, предупреждающий об опасности (наверняка вы сталкивались с таким, хотя бы однажды). Теперь они добавят в этот список страницы, имеющие в себе плохую рекламу; красного экрана на таких страницах не будет, chrome только заблокирует рекламу.

    Во вторых, 13 лет назад Рик Пентель составил список адресов «серверов рекламы» для самого известного блокировщика рекламы — Adblock. Правнуки этого списка — EasyList и EasyPrivacy используются почти во всех современных блокировщиках рекламы. Дело в том, что технически, реклама почти никогда не скачивается напрямую с сайта, на который вы заходите — поставкой рекламы занимаются специальные выделенные серверы. Схема работы блокировщиков простая: блокируешь запросы к серверам, поставляющим рекламу → реклама не может загрузиться → страница грузится без рекламы → профит. Гугл собирается использовать эти списки как есть, включая имеющиеся в списках адреса Google AdSense (вижу в этом некоторую самоиронию). То есть на сайтах с «плохой рекламой» будет блокироваться вообще вся реклама, а не только «плохая».

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

    Спасибо Даниэлю Александерсену за отличный разбор со ссылками на исходники хрома.

  • Хорошая статья про «искусственный интеллект» и этические проблемы, которые он несет.

    Автор (кстати, он технический руководителем группы сервисов в гугле) на пальцах объясняет, как работает пресловутый искусственный интеллект — машинное обучение, в чем его сильные и слабые стороны. Дальше он рассказывает о нескольких вопросах, которые ярко подчеркивают этические проблемы ML.

    • Проблема вагонетки: должен ли автопилот пожертвовать пассажиром или пешеходом?

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

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

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

    «Честность с собой», на которую толкают нас машины — возможно, самое главное достижение технологий, заключает автор. Ух, спорное утверждение.

    В начале статьи приложена ссылка на mp3-версию и её очень удобно слушать в дороге. Качество человеческого диктора пока ещё существенно лучше, чем iOS-ный «Экран вслух» (Speak Screen).

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

  • Твиттер представил новое Premium API для поиска. Он позволяет делать достаточно хитрые запросы по твитам за всё время жизни твиттера, но стоит 1$ за запрос (и это не шутка).

    Исторически у твиттера было две версии API: бесплатная и enterpise.

    Бесплатное API даёт смотреть последние твиты и постить новые.

    Вся статистика и нормальный поиск входили в Enterprise API. Годовой контракт - персональный менеджер - стоит как самолет - точная цена по запросу.

    В ноябре 2017 они объявили о создании нового тарифа Premium. Он дешевле Enterprise и при этом позволяет делать более сложные поисковые запросы по твитам за последние 30 дней — не особо интересно.

    Новый endpoint позволяет искать твитам за всё время. И главное — 50 (пятьдесят, это не опечатка) запросов в месяц бесплатно. Дальше запросы докупаются пачками, пакет в 100 запросов в месяц стоит 99$, с объемом пакетов цена падает, 2500 запросов стоят 1899$.

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

    Угадайте, кому нужны такие запросы? Мне кажется — следователям, которые хотят нарыть на тебя всё, что ты когда-либо писал. Уверен, что крупные компании делали это с Enterprise API, теперь это могут себе позволить и фрилансеры.

Jan 2018

  • Газета или портал? ;)

  • Google обновил свою Google Search Console.

    Google Webmaster Tools в общем и Google Search Console в частности — самые недооцененные инструменты веб-разработчика и аналитика.

    Вот неполный список того, что можно в них посмотреть:

    • по каким запросам сайт показывается в поисковой выдаче гугла;

    • на каких позициях находятся ваши страницы (и видео);

    • какой у этих показов CTR (сколько увидевших ссылку на неё кликнули);

    • какие страницы имеют ошибки (404, 500 и прочие);

    • какие элементы находятся в мобильной верстке слишком близко, так что на них неудобно кликнуть с телефона (!).

    Новая версия Search Console раскатывается постепенно. Дождитесь приглашения на почту, если ссылка выше ещё не показывает ваш сайт.

  • «Производство современных компьютерных чипов: неотличимо от магии»

    Исключительно хороший доклад и отличное видео на выходные.

    Я посмотрел ещё меньше половины и вот что мне запомнилось:

    • заводы по производству процессоров гигантские - площадью в несколько футбольных полей;

    • в них есть «чистые комнаты», в которых пыли в 10000 раз меньше, чем в операционной (и это не фигура речи);

    • сначала они выращивают кремниевую трубку - цилиндр диаметром 30 см и длиной в несколько метров. Вся трубка - единый кристалл, то есть атомная решетка идёт ровно от одного конца до другого!

    • дальше её нарезают на блинчики толщиной 200 микрометров (толщина волоса - около 80мкм). Эти блинчики - основа, на которой «рисуют» детальки;

    • я пишу рисуют, но размер элементов картины - десятки нанометров (на срезе волоса помещаются тысячи);

    • фотолитография (то самое прижигание/выжигание) - это снос башки: сначала делают относительно крупную «маску», через которую светят ультрафиолетом и пропускают картинку через линзу, которая делает луч меньше - таким образом рисунок получается меньше маски (и даже меньше длины волны);

    • эти линзы меняют раз в несколько лет из-за износа от бомбардировки фотонами! Представьте, если бы у вас объектив на фотике истерся от света;

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

    • там такие точности, что заметна осцилляция фотонов (!), и используются способы ее компенсации.

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

    https://youtube.com/watch?v=NGFhc8R_uO4

  • Поправка (если прочитали пост в первые 10 минут после публикации): обе эти PDF-ки - слитые кем-то документы.

    Телеграм их не подтверждал и не комментировал.

    Фраза «телеграм представил» - некорректная. Приношу свои извинения.

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

  • В сети лежат файлы описания телеграм-криптовалюты и сети TON (Telegram Open Network). Телеграм их не комментирует.

    Кроме собственно криптовалюты, обещают (все имена с приставкой TON):

    • сеть типа i2p (можно обходить цензуру(!) Proxy);

    • распределенное хранилище типа торрентов (Storage);

    • некую сеть для децентрализованных приложений и смарт-контрактов (Services);

    • аналог сервиса DNS, чтобы не запоминать длинные адреса (DNS);

    • платежную систему (Payments).

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

    Это означает, что телеграм будет иметь власть над этой валютой и этим платформами. Готовы ли будут люди сторговать часть власти на удобство — интересный вопрос. Как власти будут прессовать телеграм применять эту власть, если система «взлетит» — вообще попкорна не напасешься.

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

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

    Вот краткое описание TON в картинках (23 страницы) и статья в научном стиле (132 страницы A4).

  • Провели поверхностный анализ и поняли, что речь не о тупом алгоритме, в котором «читал Медузу — лови ещё пачку статьей Медузы». Во всяком случае (по данным GA), процент «новых пользователей» пришедших из suggestions равен среднему проценту «новых пользователей» на сайте.

    Скорее всего, алгоритм следующий: определяем интерес человека (в случае аккаунта из скриншотов это общественно-политические новости) и выдаем ему новости по этой теме. Как у людей появляется Медуза — мне пока не ясно.

    Нейросети. Магия.

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

    Не уверен в этом и буду рад, если кто-то проведет исследование и расскажет.

  • Если вы видите у себя в источниках трафика домен googleapis.com — не удивляйтесь. Посмотрите на страницу перехода — скорее всего там будет /auth/chrome-content-suggestions.

    Это переходы на ваш сайт с «article suggestions» на «новой вкладке» в мобильном Google Chrome.

    Пруфы: 12.

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

    Создаешь трелло доску со столбцами «описание», «разработка», «тестирование», «готово». Заводишь в неё все задачи. Даёшь внутри ссылки на .sketch-файлы. Созваниваешься перед началом проекта, обсуждаешь его голосом. Дальше постоянно контролируешь результат. Главное не забыть, что хотел получить в конечном счете.

    Меня беспокоит этап, когда разработка формально ещё не началась. Собрать требования, разобраться в документации, разбить проблему на меньшие части, понять, что мы можем себе позволить, а что нет — всё это большая работа. В ней участвует не только разработка, но и дизайнеры и редакция. Сейчас эта работа делается ad-hoc, без «единого источника правды». Из-за этого возникает несколько связанных между собой проблем: 1. сложно оценить объем работы (сколько было/сколько сделано/сколько осталось) 2. сложно её делегировать (делать вместе) и делиться результатом 3. задачи теряются и забываются.

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

    Попробуем сделать это с несколькими следующими проектами. Расскажу потом, что получилось.

    Спасибо большое Боре Горячеву, что заметил проблему и указал на решение.

  • Если вы пользуетесь ssh и терминалом на маке — вы наверное заметили, что теперь после каждой перезагрузки мак просит ввести пароль от файла ключа. Вот как это починить: https://apple.stackexchange.com/a/264974

  • Помните, у издателей бомбило от того, что из результатов поиска AMP-страницы открываются не с оригинального сайта, а с адресов (и серверов) Google.com?

    Дело в том, что отдавать страницы с серверов Google быстрее по двум причинам: 1) ни у кого нет так много компьютеров на всех континентах, как у Google 2) можно сделать предзагрузку результатов поиска.

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

    И вот, Google придумал решение. Это новый формат архива, в который можно сложить всё, что нужно для открытия страницы в офлайне (картинки, стили, скрипты, etc.). Что-то типа MHTML, только для 2018 (в этом формате, например, есть поддержка цифровых подписей). Называется эта штука Web Packaging Format. Если у вас аллергия на RFC (я их обожаю), то вот explainer на гитхабе.

    Для нормального использования, это должно работать во всех крупных браузерах. Google контролирует Chrome, но есть ведь Safari. В этот раз Google пошел не путем уговоров Apple, но решил сам запилить поддержку WPF в Webkit (это open source основа Safari).

    Понятно, что Google делает это для CDN. Тем не менее, потенциально это означает, что можно будет «перекинуть страницу на флешку» / «через ватсап» (или что там у нас тогда будет в моде) и сайт нормально откроется даже без интернета. Мечты…

    Возможность делать хорошие packaged web apps может подточить ультимативную власть апстора. Очень интересно, что из этого получится.

  • Воскресная подборка, если хочется почитать:

    • восстановление того, что видит человек, по fMRI! (pdf). Довольно огненно, это как если бы шуму вентилятора процессора можно было понять, что на этом процессоре считается (oh wait);

    • ещё один side channel attack (в шумихе с процессорами был именно этот тип атаки) — можно понять, что за тобой следит дрон, даже не взламывая шифрование канала связи дрона (по объему передаваемых данных);

    • Apple обновил документ по безопасности iOS — канонический пример того, как хорошо рассказать о технологиях;

    • очень красивые фотки с завода карандашей (production porn);

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

    • безопасники убера заплатил хакеру 100k USD, чтобы тот не говорил об уязвимости, через которую можно было вытащить все личные данные (и никому об этом не сказали). CSO уволили, у всех бомбит.

  • Paw.cloud — самый крутой способ делиться API-запросами в команде. Paw — лучший клиент для тестирования API (только под мак).

    Переделываем пуши в Firebase. Нужно сначала написать, а потом протестировать разные запросы. Без Paw это заняло бы гораздо больше времени, чем с ним.

    Пример крутой фичи: легко включить бесчеловечную Oauth 2 JWT-авторизацию и добавлять (и обновлять) токен при каждом запросе. А уж версионирование и однокнопочная синхронизация проекта внутри команды — магия.

    Paw.cloud стоит 10$ на члена команды в месяц. Одноразовая лицензия на клиент без синхронизации — 50$.

  • Игровые автоматы, веселая ферма, фейсбук, другие технологические компании и медиа (г-н Киселев, привет!) эксплуатируют «уязвимости» наших мозгов. Слава богу, мозги людей адаптируются к любым таким «атакам».

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

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

    https://locusmag.com/2018/01/cory-doctorow-persuasion-adaptation-and-the-arms-race-for-your-attention/

  • Google обновил в ноябре Firebase Cloud Messaging — одну из самых крутых систем для рассылки пуш-уведомлений в мобильные приложения и браузеры (при этом — бесплатную!).

    В новой версии API можно в едином сообщении указать два разных payload; клиент получит свою версию в зависимости от платформы — iOS или Android. Ура! Ложка дёгтя: авторизация теперь богопротивным Oauth2 JWT.

    P.S. Документация у Firebase — тихий ужас :(

    P.P.S. Никогда не собирайте тестовые приложения с продакшен-ключами. Я сегодня таким макаром отправил в продакшен iOS Медузы тестовый пуш. Слава богу, не в канал «breaking». Слава богу, что тексты тестовых пуши — копии недавних легитимных, а не «тестовый пуш, йоу» или «alert(‘fuck’)». Храни вас бог при тестировании пушей и почтовых рассылок. Аминь.

  • Apple передаст данные iCloud китайских пользователей китайской государственной компании 28 февраля.

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

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

    1. насколько хорошо архитектура iCloud защищает от атакущего, контролирующего серверы и ПО iCloud? Стоит перечитать их whitepaper. Я сейчас пробежался глазами, кажется, что большинство сервисов становятся небезопасны;

    2. легко ли сменить страну iCloud? Что для этого нужно сделать? Вот инструкция от самого Apple. Кажется, что это — самый правильный вариант защиты. Всё что потребуется — карточка иностранного банка. Китайцам объявили о передаче аккаунтов более чем за месяц (их передадут 28 февраля), так что время у нас будет, но подготовиться лучше заранее;

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

    4. когда ожидать этой передачи российских аккаунтов структуре, подконтрольной правительству (какому-нибудь ГУП «Облачные технологии»)? Тут я спокоен — от российских чиновников и подрядчиков инфа утечет за полгода до трансфера. Дело такого масштаба нельзя провернуть за месяц и в одиночку. Утечка будет точно.

    Ох, придется теперь объяснять, что «айфоны — самые безопасные, только iCloud русский не включай». Печально, iCloud — очень удобная штука.

  • Рекламная сеть Criteo понизила ожидания прибыли на 15. В прошлом году они заработали 730 миллионов долларов.

    Всему виной «умная блокировка cookies» (Intelligent tracking prevention), которую Apple недавно ввела в свой браузер.

    Cледить за пользователем смогут только те сайты, которые этот пользователь посещает.

    Как это работает? Если Safari определяет (классификация методами машинного обучения прямо на устройстве), что куки сайта используются для трекинга пользователя, то он начинает блокировать доступ к этим кукам. Для внешних сайтов (third-party) — уже через сутки после последнего посещения основного сайта, а через месяц вообще удаляет эту куку.

    Интересно, что это не затронет Google и Facebook, ведь на эти сайты мы заходим почти каждый день. Прямо по Матфею (25:29): …ибо всякому имеющему дастся и приумножится, а у неимеющего отнимется и то, что имеет.

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

    Кстати, раз уж про рекламу: жду, когда GDPR заработает в полную силу. Это правила, по которым сайтам придется явно рассказывать, для чего они собираются использовать информацию о вас. Посмотрите разбор GDPR от pagefair, это адуха. Уж проще не собирать данные вовсе. Интересно, смогут ли чиновники Евросоюза заставить этот закон работать в полную силу? Если смогут — онлайн рекламщиков ожидают времена.

  • Вы лучше посмотрите, как чувак делает HDR фотки в экселе!111

    Магия происходит на 07:11

    https://www.youtube.com/watch?v=bkQJdaGGVM8

  • Написал утром пост про очередную историю [1] [2], как разработчики удалили свои библиотеки в NPM и другие чуваки смогли загрузить другой код вместо легитимных библиотек. Вы посмотрите, какие эмоции испытывали разработчики.

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

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

    Но это всё происходит раз в месяц и уже набило оскомину.

  • Продолжаем новогодние видео-каникулы.

    Первая лекция из вводного курса MIT по программированию, 1986 год. Классика computer science.

    Насколько я понимаю, по-русски эту дисциплину принято называть «информатика».

    Послушайте, как классно лектор определяет computer science: «Геометрия началась в Египте с восстановления границ участков после разливов Нила. Но геометрия - наука гораздо более глубокая, чем измерение площади. Так же computer science началась с попытки считать всякое с помощью компьютеров, но суть её в стремлении человечества научиться описывать процессы.» (Мой вольный пересказ)

    Дальше автор за пару минут объясняет основы языка Lisp.

    Вот такие лекции по программированию нам нужны!

    https://m.youtube.com/watch?v=2Op3QLzMgSY (в ролике можно включить хорошие субтитры, если хотите)

  • Гугл наконец-то опубликовал нормальный разбор «что делать», а то PR-опусы как исследователей безопасности (мы всё умрём) так и Intel (ничего не происходит) надоели.

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

    Детали: CVE-2017-5753 нужно фиксить отдельно в каждом бинарнике, способном выполнять недоверенный код (читай браузеры, ОС и прочий JIT) — они не пишут, как именно это нужно делать; CVE-2017-5715 чинится обновлением CPU или перекомпиляцией важных бинарников (ОС и гипервизоры) компилятором, умеющим хитрый хак (Google назвал этот хак Retpoline и опубликовал его для GCC и LLVM); CVE-2017-5754 чинится обновлением ОС. Обратите внимание, что гугл не называет эти баги именами собственными, видимо не хочет добавлять хайпа.

    На сладкое: status page проектов гугла относительно этих уязвимостей. Мы в Медузе не используем виртуальные машины (только baremetal, только хардкор) и у нас почти нет untrusted code execution, так что в этой серии я участвую только как зритель.

    Продолжение истории: чуваки уже смогли эксплуатировать CVE-2017-5753 в Firefox для кражи паролей из джаваскрипта. Mozilla выпустил обновление только что. В обновлении они уменьшают точность таймеров и API получения времени до 20µs (sic, 20 микросекунд), пока не починят корень проблемы. Напомню, что атака основана на замере скорости выполнения операций процессором, так что не имея точного времени произвести её будет нельзя.

  • Вот эпичное видео эксплуатации схожей уязвимости.

    Ролик очень плохого кавера на Hello Адель (зато слова по теме!) передаётся между двумя виртуальными серверами в Amazon AWS через кеш процессора (!) и проигрывается в реальном времени.

    https://www.youtube.com/watch?v=yPZmiRi_c-o

    Важно, что в этом докладе речь идёт не о взломе или краже данных через процессор - на обоих серверах запущена программа, которая общается с «коллегой» с соседнего сервера через кеш процессора. Если на вашем виртуальном сервере в AWS запускают программы злоумышленники - то факт того, что ваши секретные данные были переданы наружу не через сетевое соединение, а через кеш процессора - не самая большая проблема. Это просто очень мощный пример of things to come.

    Полный доклад: https://youtu.be/6bCdFmehMSY

  • Вчера ночью сняли эмбарго с информации об уязвимостях процессоров.

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

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

    Самих дыр не достаточно - нужно сочетание многих условий для того, чтобы извлечь из неё какую-либо «выгоду». Думаю, многие «исследователи» в кавычках и без занимаются этим вопросом прямо сейчас. Будет ли идти речь о таргетированных атаках, когда отсифонят секретные данные конкретной жертвы и используют их для дальнейших этапов атаки или о каких-то «массовых изъятиях денег у населения» - пока говорить рано. Поживём-увидим. (Я бы назвал эти уязвимости popcorn time)

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

    Строго говоря, речь идёт о 3 уязвимостях: bounds check bypass CVE-2017-5753, branch target injection CVE-2017-5715 и rogue data cache load CVE-2017-5754.

    Интересно, что их одновременно нашли две независимые групп исследователей. Первая - звездный Project Zero из Google. Они отправили письма производителям процессоров ещё 1 июня (!) 2017. Вторая - группа исследователей из универов. Project Zero опубликовал классный технический разбор, а университеты максимально отработали PR-сторону, нагнав страху на массовую аудиторию «дизайнерским лендингом».

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

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

    Microsoft выпустила программный патч для Windows в ноябре. Патч к ядру Линукс от группы исследователей из технического университета Граза был окончательно принят разработчиками Linux буквально несколько дней назад. Изменения в исходном коде Linux доступны публике, но из них изъяты комментарии, объясняющие причины происходящего.

    🍿🍿🍿

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

    AMD утверждает, что их процессоры не имеют этой ошибки.

    Супер разбор ситуации http://pythonsweetness.tumblr.com/post/169166980422/the-mysterious-case-of-the-linux-page-table

    Кра**ткий пересказ:

    **Указанные патчи к ядру Linux включают kernel page-table isolation_. До этих изменений, таб*лица страниц (*page table_) ядра (таблица, содержащая схему перевода адресов виртуальной памяти ядра в адреса физической памяти) хранилась вместе с таблицей страниц пользовательского процесса. Пользовательским процессам эта таблица была не доступна. Это хак, но он позволяет не сбрасывать очень дорогие кеши процессора. По всей видимости, существует апп*аратная ош*ибка в процессоре, позволяющая пользовательскому процессу прочитать, что же в этой таблице лежит.

    Возможно, это timing attack, в которой измеряется время, необходимое менеджеру памяти процессора (MMU*, Memory Management Unit) д*ля того, чтобы получить физический адрес той или иной области памяти. Интересно, что другая команда исследователей из того же университета Граза буквально на днях представила доклад, где показала, как можно узнать адрес js-объекта в памяти из джаваскрипта именно через timing attack на MMU!

    Пока я писал эти буквы, исследователь уже написал программу, позволяющую узнать адрес функции ядра в памяти! https://twitter.com/brainsmoke/status/948561799875502080?s=09

    Так или иначе, одного этого кажется недостаточным для срочных патчей в режиме «горящей задницы». И тут мы вспоминаем третью недавнюю статью от группы исследователей из университета Граза (!). Есть так называемая Row hammer-атака. Современные DRAM-модули оперативной памяти имеют такую высокую плотность, что при обращении к определенным ячейкам памяти с высокой частотой, можно изменить данные в совершенно других областях памяти. Это происходит из-за электромагнитных наводок (!). В статье исследователи показали новую, более крутую эксплуатацию электромагнитного эффекта и успешно обошли все существующие методы защиты.

    Если совместить вместе патч, доклад и факт, что в почтовой переписке разработчиков ядра Linux участвовали разработчики из Google и Amazon (два крупнейших поставщика облаков), разумно предположить, что речь идет об атаке, позволяющей злоумышленнику вылезти из виртуальной машины.

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

    Запасаемся попкорном и ждём дальнейших подробностей. 2018 начинается оче*нь интересно.

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

    P.P.S. Ноябрьская новость, что глава Intel продал все свои акции Intel заиграла новыми красками.

  • Представьте, вы получили секретный документ. Как не запалить источник?

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

    Какие есть способы пометить документ?

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

    Если говорить о цифровой передаче, то есть несколько механизмов. Самый кондовый — умышленно допустить разные орфографические ошибки в разных версиях файла. Вариант поизощреннее - заменять буквы на похожие. Кириллическую (русскую) букву «а» сложно отличить на глаз от латинской (английской) буквы «a», но это разные символы. Даём каждому потенциальному источнику «утечки» файл с уникальными заменами и потом смотрим, какая версия оказалась в паблике. У этого способа есть недостаток — компьютерная проверка орфографии живо выявит все такие «метки».

    Сегодня я наконец-то увидел в паблике гораздо более крутой способ, основанный на «символах нулевой ширины». Вот самые известные: разделитель нулевой ширины, нужный, чтобы две буквы не «слиплись» в лигатуру; пробел нулевой ширины, порой используемый для расстановки «точек желаемого переноса»; и соединитель нулевой ширины, который, как ни странно, соединяет две буквы, которые иначе бы не слиплись (используется, например, в арабском).

    Как вы уже наверное догадались, эти символы можно щедро расставить в тексте (даже автоматически, на каждое скачивание секретного файла отдавать его с уникальным «цифровым отпечатком»), и потом точно определить источник утечки. Я только что проверил популярные типографы, все они оставляют эти символы нетронутыми.

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

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

    Для желающих позалипать в википедию - вот релевантная статья про «canary trap».

  • **Ностальгическая статья про историю Hotmail. **

    Молодежь, у которой первый в жизни «ящик» заведён на Gmail, может не понять, но были времена, когда «почта» не равнялось Gmail. (Ох, сейчас прибегут адепты mailru и яндекс.почт, я знаю, вас тоже много)

    Hotmail - один из первых и самых крупных бесплатных почтовых сервисов, доступный через веб. Эта была рекордно дорогая покупка стартапа - Майкрософт заплатил 450 миллионов долларов кешем в 1997 году!

    Внутри статьи много историй, за которые мы и любим Hotmail. Например, как команде Windows понадобилось около 3 лет совместной работы с Hotmail, чтобы довести Windows и его веб-сервер ISS до состояния, в котором они могли заменить Solaris на бэкенде Hotmail. (Фронтенд был на FreeBSD).

    Или как для установки HTTPS на страницу логина им пришлось купить аппаратные криптографические карты (процы тогда ещё не умели аппаратный TLS).

    Автор проговорил с руководителем интеграции Hotmail в Microsoft Маком деМелло, рекомендую прочитать для острого приступа ностальгии.

    Моя первая почта была у кировского провайдера Ezmail. Я её завёл для переписки с 2 адресатами,

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

    Кстати, давайте попробуем «початиться»? Если хотите что-то обсудить по теме канала - добро пожаловать в @ctodailychat

    С Новым годом!

    https://arstechnica.com/information-technology/2017/12/how-hotmail-changed-microsoft-and-email-forever/

Dec 2017

  • Если вы вдруг не смотрели видео про посадку шатла — очень рекомендую — тоже отличное новогоднее залипалово https://www.youtube.com/watch?v=Jb4prVsXkZU

  • Ультимативный доклад-разбор компьютера программы Аполлон.

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

    По скорости похоже на класическое видео «как посадить space shuttle», но в этом докладе гораздо больше технических деталей.

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

    https://media.ccc.de/v/34c3-9064-the_ultimate_apollo_guidance_computer_talk

  • Если после обновления слека тормозит набор слов в слеке на маке — поможет удаление всех локальных данных.

    Придется перевойти во все слек-аккаунты, зато можно опять нормально печатать https://gist.github.com/skoji/6778eb42312bc846573e

  • 38% из 1000 самых популярных сайтов определяют, блокируете ли вы рекламу. Только 10% этих сайтов говорят вам что-либо, если вы блокируете рекламу. Подавляющее большинство «просто пишет в блокнотик».

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

    Кстати, мы в Медузе пока с блокировщиками ничего не делаем. Я сам пользуюсь классным экстеншеном Ka-block для сафари на телефоне и десктопе, но основной рабочий браузер для компа хром и там все по-ванили. Знаете почему? Потому что блокировщики рекламы для хрома частенько ухудшают финальный UX, а не улучшают. Причина - в отсутствии в хроме АПИ, оптимизированного для блокировки рекламы. При этом хром собирается сам начать блокировать рекламу, начиная с февраля 2018. Обратите внимание, редкий случай, когда Эпл делает апи, а Гугл - готовое решение.

    http://homepage.divms.uiowa.edu/~mshafiq/files/adblock-ndss2018.pdf

  • Кстати, иногда совсем старые батареи айфонов вздуваются (и портят экран).

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

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

    Обещают выпустить в начале 2018 апдейт, который покажет статус батареи (сейчас для этого нужны сторонние программы).

    И ещё - весь 2018 год замена старых батарей будет стоить всего 29$, вместо обычных 79$.

    Молодцы они https://www.apple.com/iphone-battery-and-performance/

  • OpenSSL - один из самых важных IT-проектов, на нем держится практически все шифрование. После недавних адских ошибок безопасности они улучшили ситуацию с разработкой, но вот с документацией и UX ситуация все ещё аховая.

    Хорошая порка: https://jameshfisher.com/2017/12/02/the-sorry-state-of-openssl-usability.html

  • Ученый замерил задержку между нажатием на клавишу и появлением символа на экране компьютера. Это супер-важная метрика; чем меньше задержка — тем приятнее работать за компом.

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

    В этой новой статье ученый Дан Лу пошел по-хардкору и сравнил разные компьютеры, используя высокоскоростную камеру. Выиграл музейный экспонат — Apple IIe, 1983 года выпуска — 30 миллисекунд задержки. Единственный, кто можешь сравниться с победителем — это iPad Pro Pencil (в тачскринах замерялась отзывчивость скролла).

    Очень приятное исследование.

    https://danluu.com/input-lag/

  • (спасибо за наводку @ngalayko)

  • Моя предъява только к процессу запуска, вот тут https://twitter.com/durov/status/944360557318205440 он сам строит совершенно правильные ожидания «всё что не на официальном сайте — обман», а потом сам же их ломает.

  • Я почти уверен, что это просто такой stealth-запуск тестового рефакторинга приложения на Swift, но хоть на официальном сайте-то можно было бы дать ссылку, да?

    UPD: спасибо Андрею @sanss3rif что подсказал, официальное приложение под Мак тоже выложено от имени Telegram Messenger LLP. И всё-таки странно, что приходится вот такими вот способами верифицировать.

  • Журналист TechCrunch забыл пароль к своей личной почте на Gmail. Он пользовался этим ящиком 12 лет. Кроме почты в аккаунте хранились файлы, календари и фотографии. Даже с помощью своих контактов в PR-службе Google (а техкранч — одно из самых важных около-технологических изданий) восстановление доступа заняло у него месяц. Без PR-контактов почта могла быть потеряна навсегда.

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

    Больше года назад мне надоело читать подобные истории с мыслью «когда это коснётся меня». За 60 долларов я купил год сервиса у австралийской Fastmail и ещё ни разу не пожалел. За те же деньги можно купить корпоративный Google Suite for Business. В случае гугла обязательно потребуется домен, он будет стоит ещё 5 долларов в год.

    Бесплатных сервисов не бывает, в этом цифровой мир мало отличается от обычного.

    https://techcrunch.com/2017/12/22/that-time-i-got-locked-out-of-my-google-account-for-a-month/

  • Хорошая полемическая статья (aka trolling) на на тему «чем плох REST».

    1. Переводить сложные операции на язык, в котором всего 4 глагола - то ещё развлечение.

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

    3. Коммуникация ошибок и других особых состояний: «всегда HTTP 200 OK, а ошибка в теле» или придумаем свои коды?

    https://medium.com/@pakaldebonchamp/rest-is-the-new-soap-97ff6c09896d

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

  • У нас есть «традиция»: каждый раз, когда Медуза что-то отмечает, происходит новостной движняк.

    Прямо сейчас у нас новогодняя вечеринка в редакции.

    Кто-то нашел уязвимость в ВК, которая позволила постить от имени невинных пользователей.

    Двухходовочка следующая: чуваки заводят группу, называют её «Медуза» и ставят на аватарку наш логотип.

    Дальше делают в фейковой группе пост «Навальный умер» и репостят её от имени популярных сообществ (в том числе официальных сообществ ВК).

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

    С наступающим!

  • https://www.youtube.com/watch?v=r0lsyTaAuJE

  • Сервис-открытие года - Airtable.com

    Это такие Гугл-таблицы на стероидах.

    Завели таблицу сотрудников, в ней 20 столбцов. Почти ни для одной задачи не нужны все столбцы сразу. Создаём 4 разных view, в каждом из которых видны только нужные столбцы и нужные записи.

    Как насчет учета техники? Заводим табличку, указываем какие нужны столбцы. Связываем две таблицы. Хотим посмотреть, у кого ноутбук c 4 гигами памяти и маленьким диском? 3 клика!

    В таблице сотрудников есть столбец дат рождения. Хотите посмотреть календарь дней рождения на месяц? 3 клика.

    А ещё можно отобразить записи в виде trello board, так что перетаскивание между столбцами транслируется в изменение указанного столбца! Представьте себе таблицу претендентов на вакансию. Можно посмотреть количество претендентов в каждой стадии пайплайна в виде карточек, имея при этом в доступе всю мощь фильтрации.

    А группировка записей и сноски с суммами/средним для каждой группы! После того, как я перевел покупки техники в Airtable, я наконец-то легко могу ответить, какую технику, в какой месяц, для какого отдела и на какую сумму мы покупаем.

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

    Это я ещё не начал рассказывать про его отличный API, хранение истории редактирования каждой записи, возможности обсуждения каждой записи по-отдельности, мобильные приложения… Бесплатный аккаунт имеет лимит в 1500 записей на базу.

    Космический продукт. Посмотреть бы, как они его делают (всего 25 человек в команде).

    https://airtable.com/product

    1. Гугл уже имеет 3D схемы большинства зданий на планете. Он распознает их со спутниковых снимков методами машинного обучения.

    2. Каждый город имеет «островки коммерческой активности», где кучкуют магазины и рестораны. Раньше эти «островки» нельзя было быстро отыскать на карте. Теперь гугл научился подсвечивать их желтеньким (тоже ML).

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

    Очередной титанический лонгрид с картинками от любимого картографического аналитика. https://www.justinobeirne.com/google-maps-moat

  • Google Prompt — очень хорошая штука для 2-факторной авторизации в гугл, гораздо человечнее всех этих totp-based решений, рекомендую https://gsuiteupdates.googleblog.com/2017/10/making-google-prompt-primary-choice-for-2sv.html

    А если у вас не включена 2-факторная авторизация — самое время её включить.

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

    И рассказывают, как много хорошего фб сделал в последнее время.

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

    https://newsroom.fb.com/news/2017/12/hard-questions-is-spending-time-on-social-media-bad-for-us/

  • Хорошая статья про будущее интернет-протоколов.

    Рассматриваются:

    • TLS 1.3 - крупный релиз новой версии протокола, который принято называть HTTPS. Во-первых, сейчас HTTPS можно сломать, установив на компьютер клиента корневой сертификат атакующего. После этого можно слушать и изменять вообще всю шифрованную переписку компьютера. Так делает антивирус Касперского, так хотело делать правительство Казахстана. Вообще, классный способ - «установи сертификат для получения доступа к сайту госуслуг», например, и все - контора довольна. Механизм эфемерных ключей делает такую атаку невозможной. Интересно, что некоторые организации негодуют, банки, например, которым нужно мониторить весь трафик. Во-вторых, HTTPS-сайты начнут открываться существенно быстрее. При не-шифрованной передаче сайт начинает загружаться сразу после запроса, при шифрованной - серверу и вашему компьютеру нужно сначала договориться о ключах шифрования. Новая версия TLS позволяет делать это всего раз в неделю, то есть вы почувствуете разницу на страницах, которые открываете часто;

    • HTTP/2 - свежий протокол (2015), позволяет запросить несколько файлов параллельно, не создавая очередь, что сильно ускоряет загрузку. Не работает без шифрования;

    • QUICK - протокол для ускорения загрузки страниц, не работает без шифрования;

    • DNS over HTTP (DOH). Подмена DNS ответов - самый простой способ блокировки сайтов. Протокол DNS устроен так, что его тривиально заблокировать или подменить ответ сервера. В протоколе DOH это невозможно, а заблокировать сервер с DOH можно только заблокировав HTTPS сайт этого сервера. Представьте, если google.com начнёт предоставлять сервис DOH. Половина механизмов блокировки можно будет выкинуть на свалку. Дополнительный кайф - через DNS легко подсмотреть, на какие сайты вы заходите, DOH и от этого защищает тоже.

    Как видите, все шифрованное. Ещё лет 5 и метод «сижу на трубе, все контролирую» перестанет работать.

    Вообще, большая часть общения сейчас происходит в соцсетях - именно с ними нужно научиться договариваться Роскомнадзору, чтобы быть эффективным цензором. И быть готовым заблокировать соцсеть или поисковик целиком, если они не идут навстречу. Конференции вроде недавней китайской, где главы крупнейших IT-корпораций «целуют кольцо» - влажная мечта Жарова. Слава богу, для такого «сотрудничества» нужно быть одним из крупнейших рынков и быстрорастущей экономикой, имеющей крепкие «отечественные» аналоги всех западных сервисов. Тогда у цензора есть мощный рычаг. У российского правительства, насколько я понимаю, такого рычага нет, так что особо сильно прогибаться под хотелки русских цензоров западные компании не будут. Аминь.

  • Стремная автономная система из России анонсировала 80 префиксов таких компаний как Google, Apple, Facebook, Microsoft, Twitch и Riot Games. Вчера утром было два инцидента длительностью 3 минуты, роуты успели утечь в некоторые крупные провайдеры, так что часть трафика этих компаний какое-то время ходила через Россию. Почему такое возможно я объяснял на пальцах вот тут. Тот случай, когда «ночью наши учёные чуть-чуть изменят гравитационное поле Земли…»

  • Душевная история про «обратную совместимость».

    https://www.sigbus.info/software-compatibility-and-our-own-user-agent-problem.html

    Взял в кавычки, потому что когда тебе приходится добавлять «GNU» в первую строку вывода программы, чтобы ./configure скрипты не думали, что твой линкер из эпохи 80-х — это уже нездоровый уровень мимикрии. Правда, почти весь софт на таком держится, так и живем.

    Ах да, всем Mozilla/5.0, пацаны!

    Вместе с запросом страницы браузеры передают своё имя и версию (user agent). В теории, это позволяет серверу отдать страницу, оптимизированную под возможности конкретного браузера. В какой-то момент 90-х нормальным браузером был Mozilla 5.0. Ему серверы отдавали нормальные страницы, всем остальным - стремный кал. В результате, даже сегодня, user agent всех современных браузеров начинается с Mozilla/5.0. Такая вот история.