запуск завтра
27.6K subscribers
326 photos
34 videos
3 files
1.21K links
Будни технического директора @samatg (ex-CTO Meduza, Bookmate, RAWG, Pure)

«Закрытие Parse и куда с него переехать», очередной лонгрид «как программируют в NASA» и прочие ссылки с hackernews. Ну и истории, конечно.

Чатик @ctodailychat

Рекламу не продаю
Download Telegram
Хакеры почти взломали все серверы на планете, но мир спас чувак, которого напрягли лишние полсекунды задержки в работе программы.

Эксперты по безопасности уже много лет пугают нас так называемыми supply chain attacks — то есть атаками «через поставщиков». Например, хакеры могут сначала взломать производителя ноутбуков, подсадить в них «троянского коня» на заводе и получить доступ уже к нам — конечным пользователям этих устройств. Чуть менее масштабные атаки такого рода становятся известны каждые несколько лет.

Это ад безопасника (и параноика), потому что такие атаки сложнее всего отследить. В 1984 году создателю языка Си Кену Томпсону вручили премию Тьюринга — аналог Нобелевки в IT. Темой своей праздничной лекции Томпсон выбрал как раз вопрос доверия: «можно ли в принципе убедиться, что наши устройства делают только то, о чем мы их попросили»?

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

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

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

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

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

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

Или не повезло? Откуда мы знаем, сколько ещё подобных атак было произведено? Что, если другие атакующие не допустили такой ошибки?

Кстати, кто они? Учитывая, что псевдоним хакера Jia Tan и он вносил правки в китайский дистрибутив линукса — он наверное китаец. Или это русские (или израильтяне? или американцы?) научились нормально подделывать следы? Это вообще коммерческая атака или государство? Мы не знаем.

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

Мы живем в очень хрупком мире. Даже дух захватывает, как мы все ещё живы.



Для технарей:

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

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

Хороший технический FAQ: технический разбор атаки, инструкции как проверить, что ваша машина уязвима (и как обновиться) и ещё много всего.
Рассказываем, как перезапускали разработку медицинской информационной системы (МИС) для сети клиник «Чайка».

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

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

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

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

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

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

Вы техдир и хотите поделиться похожей историей? — заходите в чатик @ctodailychat.

Хотите ускорить свою команду разработки или просто запустить новый продукт? — пишите мне в личку @samatg, мы ищем клиентов!
Про подкаст: мы начали работу над новым сезоном, планируем и нарративные и разговорные эпизоды. Пока не готовы назвать сроки, но есть идеи, что сделать в межсезонье, так что stay tuned.

Отзывы и предложения присылайте в чат подкаста @zapuskzavtra или приватно через бота @zapuskzavtrabot.

Соскучился.
Роскомнадзор начал блокировать индивидуальные Outline VPN серверы. Пока это происходит только через некоторых провайдеров и только у части пользователей, но ситуация тревожная.

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

То есть Роскомнадзор из кучки бюрократов-клоунов превращается в серьезного технического оппонента.

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

Пока что моя рекомендация про личный VPN остается прежней.

Китайская модель интернета — прямо на наших глазах.
​​Figma красиво рассказывает, как они масштабируют свою базу данных (горизонтальное шардирование Postgres).

Всего 4 года назад они хвастались, что все данные помещаются в одной БД на самой жирной тачке в AWS и выросли с тех пор в 100 раз.

Во-первых, прикольно читать, как устроен сервис, которым пользуешься почти каждый день. Во-вторых, в «internet-scale компаниях», мне кажется, засилие MySQL, так что приятно, когда делятся серьезными инсталляциями Postgres, который предпочитаем мы и большинство наших знакомых.

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

1. Вот техническая команда инстаграма в 2012 году дает прикольные советы и рассказывает про шардирование постгреса. Заметьте, совсем другой вайб — не огромный лонгрид, а короткие заметки «с чем столкнулись и что сделали».

2. Культовая статья Uber 2016го года, которая называется «Почему мы переехали с MySQL на Postgres». Прикол в том, что название не отражает сути: они отказались от реляционной БД и сделали свою собственную СУБД на основе MySQL — срачи про это не утихают до сих пор, вот последнее обсуждение 2021 года и набор ссылок на предыдущие.

Вот неплохой список подходов к масштабированию БД, пускай они и не нужны в 99% проектов.
В околотехнической тусовке уже несколько лет обсуждают, что качество Гугл-поиска снизилось: постоянно натыкаешься на SEO-оптимизированный спам вместо нормальный статей и сайтов.

Я к этому приспособился так: добавляю в поисковую строку reddit.com или stackoverflow.com, чтобы читать живых людей и спрашиваю chatGPT, чтобы не продираться через рекламу. Федя вон вообще, как и многие технари, перешел на модный платный поисковик (!) Kagi (5-10$ в месяц).

Внутренняя переписка Гугла о том, как меняется поиск из-за денег, ставшая доступной благодаря антимонопольному судебному процессу — документ эпохи.

Три главных действующих лица:

1. Сундар Пичай: ныне CEO Гугла, а в прошлом — консультант МакКинзи.

2. Прабхакар Рагхаван: в прошлом — крупный ученый в области поиска, написал фундаментальные книги в этой области; после академии дозакопал поиск Yahoo (принял с 30% рынка, через 5 лет Yahoo отказался от своего поискового движка и лицензировал Bing) и отвечал за рекламу в Гугле, до того, как начать отвечать за поиск.

3. Бен Гомес: инженер, который больше 20 лет работал над поисковым движком Гугла, недолгое время (сейчас поймете почему недолгое) был «царем поиска» в компании.

(Переписка происходит на жестком корпоративном жаргоне, для удобства читателя дается перевод)

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

Статья называется «Человек, который убил гугл».

Мне кажется, что проблема всё-таки не в конкретном менеджере гугла, а в культуре, в которой краткосрочные улучшения метрик ставятся впереди реальной пользы людям. Просто гугл закончил превращение из стартапа в «классическую американскую корпорацию».
(продолжение) Самое удивительное то, что можно назвать дату, когда появилась эта корпоративная культура и даже людей, которые её создали. В 1981 году Джек Велч стал главой General Electric. GE, основанная ещё в 19 веке, была тогда одним из главных технологических гигантов. Она связана с возникновением телевидения, электрификацией США и созданием современной микроэлектроники.

Путем невиданных ранее сокращений (сортируем сотрудников «по ценности» и каждый год увольняем нижние 10%), жесткого аутсорсинга и других «эффективных мер», Велч в кратчайшие сроки в разы повысил прибыльность, сделав GE одной из самых «успешных» компаний в мире и абсолютной любимицей Wall Street. Все инвесторы захотели в свои компании директора из учеников Велча!

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

Удивительно, как важны идеи и цели, которые мы перед собой ставим, дальше всё раскладывается как по полочкам.
​​Меня зовут Самат, мне 35 лет и пару месяцев назад я научился точить ножи.

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

Оказывается, это легко, быстро и дешево. Схема следующая:

1. Покупаешь на амазоне или алиэкспрессе «алмазный точильный камень». На самом деле это не камень, а супер плоская железка, на которую нанесен тонкий слой алмазной крошки. Отличается тем, что не нуждается в особом уходе и живет практически вечно. Бывает разной агрессивности — нам нужна 200/400 — это грубая поверхность, которая съедает металл очень быстро. Стоит 20 баксов.

2. Ставишь нож на камень и выставляешь угол, на который будешь точить нож — можно с помощью пирамидки, которая идет в комплекте, можно тупо палец подставить. Важно не менять этот угол в процессе заточки, для этого фиксируешь запястье, а ещё лучше двигаться всем телом, зафиксировав руку целиком. Водишь ножом по камню туда-обратно, сильно не давишь. Камень съедает метал ножа. Проведя ножом по камню 5-10 раз, можно почувствовать, что с обратной стороны ножа, по всей его режущей кромке появляется заусенец. Увидеть его без лупы нельзя, а вот почувствовать пальцем — легко. Главное вести пальцами не вдоль кромки ножа, а поперек — не то палец порежете.

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

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

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

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

7. Всё, у нас супер острый нож, который долго не будет тупиться.

Никакой магии, никакого секретного знания, передающегося из поколения в поколение.

Первый раз это у меня заняло час. Теперь — пару минут. И это медитативный процесс, но не потому, что занимает часы, а потому что сразу виден результат труда — очень приятно.

Всему этому я научился у простого американского парня Outdoors55. Вот 5-минутное (!) видео, где кроме наглядной демонстрации процесса, автор показывает чудеса макро-съемки, демонстрируя тупой нож, заусенец, процесс его удаления и получившуюся режущую кромку ножа крупным планом.

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

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

На картинке — общая архитектура сервиса.

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



Хотите запустить новый продукт с нуля или сервис внутри существующей архитектуры? Пишите в личку @samatg! Мы берем новых клиентов.
Docker Hub теперь блокирует запросы с российских IP-адресов. Обратите внимание, могут сломаться пайплайны.

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

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

Upd: разблокировали!
​​Когда заказчик на Бали, программист в Красноярске, менеджер в Ванкувере, а я — в Риге, найти удобное всем время созвона — то ещё упражнение.

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

Дизайн старенький, инструмент незаменимый.
Друзья, сегодня мы начинаем новый, 11 сезон подкаста «запуск завтра».

Помните, я писал о проекте по расшифровке древнегреческих свитков, которые сгорели 2000 лет назад?

Для первого эпизода я поговорил с Антоном Репушко — программистом, который участвовал в этом конкурсе и даже выиграл призы. История там совершенно безумная и гораздо глубже, чем я писал в тексте.

Слушайте и подписывайтесь: Apple, Google, Яндекс, Spotify, Castbox, Overcast, веб-версия.

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

Многие потешаются над тем, что в новой версии iOS иконки можно будет поставить в любое место на рабочем столе, а ещё их можно покрасить в свой цвет — мол, «в Андроиде всю жизнь так».

На самом деле, все анонсы бьются на три категории:

1. 🛠️ Обновления и улучшения встроенных программ, «иконки» отсюда и они — далеко не самое интересное;

2. 🤪 Хайповый AI «для всех даром и пусть никто не уйдет обиженным»;

3. AI-магия.

🛠️ Из первой категории:

1. Возможность отправлять и получать смски и iMessage через спутники! Бесплатно! Прямо в лесу или в горах и посреди океана. 📡 Техническая возможность общения со спутником появилась в айфонах начиная с 14го, но раньше Apple использовал её только для связи со спасателями; теперь вот можно будет с семьей и друзьями переписываться.

2. Продвинутый калькулятор везде во всех текстовых полях. Можно прямо в сообщениях написать 273/3 EUR in TRY и он подскажет, что это 3 тысячи турецких лир. Это прямая калька с гениального приложения Soulver, и оно недавно вышло для айфонов — горячо рекомендую.

3. Десятки приятных мелочей — начиная с отслеживания сложности тренировки в «здоровье» и настроения в «дневнике» и заканчивая по полноценным приложением для хранения паролей!
🤪 Во вторых, Apple встроила большинство популярных AI-инструментов в айфоны и макбуки. Они будут работать быстро, даже без интернета и абсолютно бесплатно.

1. Автоматическое написание ответов на письма и сообщения.

2. Изменение тона текста — можно выделить любой написанный текст и «сделать поофициальнее» или «сократить».

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

Если вы продвинутый пользователь и следите за AI-сценой — то вас не удивишь, но обычные люди откроют для себя много нового. Ждем открыточек с красивыми котиками и цветами, сгенерированных искусственным интеллектом под чутким руководством бабушек! А ещё, теперь вместо душевных коротких строк мы получим тонны бездушного, грамматически выверенного текста. :(
Ну и наконец, AI-магия.

Во первых, Apple обещает нормального ИИ-ассистента. Пример на презентации следующий: утром у тебя рабочая встреча, а вечером — выступление дочки. Коллега спрашивает в письме, можно ли подвинуть встречу на попозже. Ты спрашиваешь у Сири, успеешь ли к дочке на выступление. Сири находит сообщение, в котором дочка писала про выступление, определяет, сколько ехать до аудитории, отвечает утвердительно первому собеседнику и создает оба события в календаре. В общем, то, что нам обещают всякие Rabbit AI и Humane AI — то, что ни у кого до сих пор не получалось. Фильм «Она».

Во вторых, техническая реализация AI. Тут три аспекта:

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

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

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

В общем, я ожидал анонса «мы заменили Siri на ChatGPT, так что теперь она тупит поменьше», но Apple в очередной раз сумели удивить. Браво! (ChatGPT теперь на самом деле можно вызвать из сири напрямую, но не сказал бы, что это особая интеграция)

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



Два видео-первоисточника: Keynote и 5-минутная официальная выжимка Platforms State of the Union. Все анонсы, включая сессии для разработчиков (XCode кажется наступает на пятки IDEA) — как обычно на официальном сайте.
Про новые софтверные санкции, которые США ввели 12 июня.

С 12 сентября, американским компаниям (и американцам) будет запрещено:

1. разрабатывать любой кастомный софт для работы в России;

2. предоставлять облачные сервисы и услуги техподдержки для следующих категорий софта: корпоративный софт — ERP, CRM, BI, supply chain management (SCM), enterprise data warehouse (EDW), computerized maintenance management system (CMMS), project management, and product lifecycle management (PLM) и софт для инженерии и производства — BIM, CAD, CAM, engineer to order (ETO) для работы в России.

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

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

В общем, у обычного пользователя отнимают облачную жиру и табло (Tableau) и CRM-ки все, и slack с notion тоже попадают под новые ограничения. Так победят Российскую Армию.

Что с большими дядьками, которые пользуются ERP, SCM, EDW, CMMS и PLM — не знаю, но уверен, что договорятся.

Первоисточники: PDF решения, FAQ №1185, 1186, 1187 и 1188 на официальном сайте OFAC. Там всё очень понятно расписано, с примерами.
Друзья, у нас освободилась команда! Если вам нужен сайт, приложение, есть идеи автоматизации работы или не хватает рук на отдельный бэкенд-сервис — сейчас редкий случай, когда не нужно будет ждать и мы сможем начать работу в ближайшие недели.

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

Примеры наших проектов: перезапуск сервиса подготовки к ЕГЭ «Вебиум», Медицинская Информационная Система (МИС) для сети клиник «Чайка», облачная платформа для Wirenboard.

Пишите мне в личку @samatg!
Помните, как несколько месяцев назад в российских СМИ писали, что в марте этого года VPN заблокируют? Сейчас июнь, а мы по-прежнему им пользуемся.

Что пытались сделать власти и что из этого вышло? Безопасно ли подключаться к бесплатному VPN и как вообще работает эта технология? Почему скорость интернета упала и как обычным пользователям сохранить к нему доступ?

В новом выпуске подкаста говорим с Михаилом Климарёвым — руководителем проекта VPN Generator и исполнительным директором фонда «Общество защиты интернета».

Слушайте и подписывайтесь: Apple, Youtube, Яндекс, Spotify, Castbox, Overcast, веб-версия.
Мы с клиентом запустили стартап. Он помогает малым локальным бизнесам — кофейням, барбершопам и другим — зарабатывать по модели, которую применяют Amazon и Яндекс.

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

В новой статье делимся, как у нас получилось успеть всё это за 6 месяцев при том, что требования постоянно менялись (стартап!)

Хотите запустить проект с нами? Пишите в личку @samatg или оставляйте заявку на сайте.