Search
Write a publication
Pull to refresh
-30
@in_hebread⁠-⁠only

Пользователь

Send message

eBPF: современные возможности интроспекции в Linux, или Ядро больше не черный ящик

Reading time18 min
Views44K


У всех есть любимые книжки про магию. У кого-то это Толкин, у кого-то — Пратчетт, у кого-то, как у меня, Макс Фрай. Сегодня я расскажу вам о моей любимой IT-магии — о BPF и современной инфраструктуре вокруг него.

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

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

Я бы очень хотел, чтобы после прочтения моей статьи у вас зажглись глаза так, как зажигаются глаза у ребёнка, впервые прочитавшего книгу о Гарри Поттере, чтобы вы пришли домой или на работу и попробовали новую «игрушку» в деле.
Читать дальше →

Объявляем о новом наборе в программу по выводу российских стартапов на глобальный рынок Global Pilots

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

Microsoft, EY и Startupbootcamp при поддержке инвестиционного холдинга Altergate объявили о наборе участников в новый поток программы Global Pilots, направленной на поддержку российских стартапов в выходе на глобальный рынок и подготовке к пилотным проектам с международными клиентами.

Участниками второго набора программы могут стать зрелые B2B-стартапы направлений ритейл и финтех. Также будет организован дополнительный трек для стартапов из сферы поддержки бизнеса – организаторы будут рассматривать сильные проекты без индустриального профиля. У компаний должен быть готовый продукт и продажи на локальном рынке. Всего эксперты выберут 20 стартапов для участия в программе.

Читать дальше →

Почему так важна иммутабельность

Reading time5 min
Views9.7K
Привет, Хабр!

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

Война за TikTok

Reading time14 min
Views8.1K

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

Аналоговый мир

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

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

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

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

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

Читать далее

Мы тратим годы на то, что делается неделю — потому что все ларьки заигрались в IT-гигантов

Reading time5 min
Views128K


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

Если бы меня кто-то спросил, за сколько можно сделать такое приложение в одиночку — я бы сказал: «два месяца на разработку, один на тестирование». Но нас было много, поэтому мы работали больше двух лет.
Читать дальше →

Не стоит пользоваться OFFSET и LIMIT в запросах с разбиением на страницы

Reading time5 min
Views56K
Прошли те дни, когда не надо было беспокоиться об оптимизации производительности баз данных. Время не стоит на месте. Каждый новый бизнесмен из сферы высоких технологий хочет создать очередной Facebook, стремясь при этом собирать все данные, до которых может дотянуться. Эти данные нужны бизнесу для более качественного обучения моделей, которые помогают зарабатывать. В таких условиях программистам необходимо создавать такие API, которые позволяют быстро и надёжно работать с огромными объёмами информации.


Читать дальше →

Как найти скрытую камеру в съемной квартире или номере отеля

Reading time4 min
Views214K

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

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

Основы Ansible, без которых ваши плейбуки — комок слипшихся макарон

Reading time12 min
Views156K

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


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


Ожидаемый уровень читателя — уже написано несколько тысяч строк ямла, уже что-то в продакшене, но "как-то всё криво".

Читать дальше →

Telegram как публичный NAS/FTP

Reading time7 min
Views11K

image


Привет, Хабр!


Эта статья — продолжение первой статьи Telegram как NAS/FTP.


Речь всё о том же боте — TeleFS, он приобрёл важную составляющую — публичность. Точнее, пользователи бота теперь могут делиться своими файлами и папками с любыми другими пользователями Telegram.


И в этот раз расскажем о том как и с помощью чего создавался бот.

Читать дальше →

ClickHouse для продвинутых пользователей в вопросах и ответах

Reading time44 min
Views37K

В апреле инженеры Авито собирались на онлайн-посиделки с главным разработчиком ClickHouse Алексеем Миловидовым и Кириллом Шваковым, Golang-разработчиком из компании Integros. Обсуждали, как мы используем систему управления базами данных и какие сложности у нас возникают.


По мотивам встречи мы собрали статью с ответами экспертов на наши и зрительские вопросы про бэкапы, решардинг данных, внешние словари, Golang-драйвер и обновление версий ClickHouse. Она может быть полезна разработчикам, которые уже активно работают с СУБД «Яндекса» и интересуются её настоящим и будущим. По умолчанию ответы Алексея Миловидова, если не написано иное.


Осторожно, под катом много текста. Надеемся, что содержание с вопросами поможет вам сориентироваться.


Читать дальше →

История одного переключения

Reading time10 min
Views12K

У нас в агрегации локальной сети было шесть пар коммутаторов Arista DCS-7050CX3-32S и одна пара коммутаторов Brocade VDX 6940-36Q. Не то, чтобы нас сильно напрягали коммутаторы Brocade в этой сети, они работают и выполняют свои функции, но мы готовили полную автоматизацию некоторых действий, а этих возможностей мы на этих коммутаторах не имели. А еще хотелось перейти с 40GE интерфейсов на возможность использования 100GE, чтобы сделать запас на следующие 2-3 года. Так мы решили поменять Brocade на Arista.
Читать дальше →

HighLoad++, Михаил Макуров (Интерсвязь): опыт создания резервного и кластеризованного Zabbix-сервиса

Reading time18 min
Views8.9K
Zabbix — популярная открытая система мониторинга, используется большим количеством компаний. Я расскажу об опыте создания кластера мониторинга.

В докладе я коротко упомяну о сделанных ранее правках (патчах), которые существенно расширяют возможности системы и готовят базу для кластера (выгрузка истории в «Кликхаус», асинхронный поллинг). И подробно рассмотрю вопросы, возникшие при кластеризации системы — разрешение конфликтов идентификаторов в БД, немного о CAP theorem и мониторинге с распределёнными БД, о нюансах работы Zabbix в кластерном режиме: резервирование и координирование работы серверов и прокси, о «доменах мониторинга» и новом взгляде на архитектуру системы.

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



HighLoad++ Siberia 2019. Зал «Томск». 24 июня, 17:00. Тезисы и презентация. Следующая конференция HighLoad++ пройдет 6 и 7 апреля 2020 года в Санкт-Петербурге. Подробности и билеты по ссылке.

Тензоры в TensorFlow

Reading time6 min
Views33K

image


Основным объектом которым манипулируют в Tensorflow, является тензор. О том, что такое тензор, какие бывают тензоры, какие у них есть свойства и как ими манипулировать читайте в переводном руководстве с сайта tensorflow.org.

Читать дальше →

Введение в ELF-файлы в Linux: понимание и анализ

Reading time11 min
Views111K
Есть в мире вещи, которые мы принимаем как нечто само собой разумеющееся, хотя они являются истинными шедеврами. Одними из таких вещей являются утилиты Linux, такие, как ls и ps. Хотя они обычно воспринимаются как простые, это оказывается далеко не так, если мы заглянем внутрь. И таким же оказывается ELF, Executable and Linkable Format. Формат файлов, который используется повсеместно, но мало кто его понимает. Это краткое руководство поможет вам достичь понимания.



Прочтя это руководство, вы изучите:

  • Зачем нужен формат ELF и для каких типов файлов он используется
  • Структуру файла ELF и детали его формата
  • Как читать и анализировать бинарное содержимое файла ELF
  • Какие инструменты используются для анализа бинарных файлов
Читать дальше →

ЗА и ПРОТИВ A/B-тестов: опыт крупных компаний

Reading time8 min
Views11K
Привет, хабровчане. Уже завтра мы запускаем курс «Product Manager IT-проектов». В преддверии старта курса спешим поделиться с вами опытом наших действующих преподавателей.




Один из самых популярных инструментов продакт-менеджера — A/B-тесты, и именно этой теме был посвящён очередной вебинар в OTUS. В нём приняли участие сразу три специалиста:

Сергей Колосков — Product Manager в OZON.
Александр Поваров — Product Manager в TransferWise.
Андрей Менде — Product Owner в Booking.com.

Дискуссия получилась содержательной и жаркой. Обсудили:

  • в каких случаях лучше всего применять A/B-тесты?
  • как определять метрики и правильно интерпретировать результаты?
  • как можно навредить A/B-тестами?
  • какие могут быть альтернативы А/В-тестов?
  • чем лучше проводить тестирование?
  • кейсы финтеха, e-commerce и маркетплейсов.

Что интересно — действительно сошлись во мнениях по поводу границ применения А/В-тестов. Но давайте обо всём по порядку.
Читать дальше →

Так все же, зачем нужен make?

Reading time3 min
Views24K


Все началось, казалось бы, с простого вопроса, который сначала ввел меня в ступор — "Зачем нужен make? Почему нельзя обойтись bash скриптами?". И я подумал — Действительно, зачем нужен make? (и самое важное) Какие проблемы он решает?

Читать дальше →

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

Reading time7 min
Views274K


Дерьмовое утро удалёнщика всегда начинается одинаково. Если детский плач не смог вытащить меня из кровати, то нытье жены сделает это с гарантией. Сумасшедшие девять утра, через час дейли-синк-ап, а за вчера, как всегда, сделано нихрена. Быстро варю кофе и за комп. За пять минут до созвона пулл реквест с кодом энтерпрайзного качества увесисто встал в очередь на билд. Иду курить, но по дороге телефон заорал — я зачем-то установил на него скайп, и теперь работа может добраться до меня где угодно. Курение откладывается, я готовлюсь возмущаться, что мне позвонили раньше положенного. Напялил наушники, принял вызов. Вместо привычной девушки менеджера созвон начал какой-то незнакомый мне чел. «Всем привет, Аня заболела, я буду её замещать». Окей, кому какое дело, с таким же успехом они могли бы прислать нам в качестве менеджера собаку — ничего бы не изменилось.
Читать дальше →

Как работает криптография на основе эллиптических кривых в TLS 1.3

Reading time23 min
Views34K
image

Пара предупреждений читателю:

Для того, чтобы (насколько это возможно) упростить процесс объяснения и сжать объем публикации, стоит сразу же сделать ключевую оговорку — все, что мы пишем, касаемо практической стороны рассматриваемой проблематики, корректно для протокола TLS версии 1.3. Это значит, что хотя ваш ECDSA сертификат и будет, при желании, работать с TLS 1.2, описание процесса хендшейка, наборов шифров и бенчмарков сделано на основании последней версии протокола TLS — 1.3. Как вы понимаете, это не относится к математическому описанию алгоритмов, лежащих в фундаменте современных криптографических систем.

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

(Elliptic Curve) Diffie-Hellman (Ephemeral)


Наследие Диффи — Хеллмана в XXI веке

Естественным образом, данная тема начинается не с Уитфилда Диффи и не с Мартина Хеллмана. Алан Тьюринг и Клод Шеннон сделали огромный вклад в теорию алгоритмов и теорию информации, равно как и в область криптоанализа. Диффи и Хеллман, в свою очередь, официально признаются авторами идеи криптографии с публичным ключом (также называемой асимметричной) — хотя теперь известно, что в Великобритании были также достигнуты серьезные результаты в этой области. Однако они оставались засекреченными длительное время — что делает двух джентльменов, упомянутых в подзаголовке, первопроходцами.

В чем именно?
Читать дальше →

Введение в Git

Reading time17 min
Views160K

Оглавление


Предисловие
1. Настройка git
....1.1 Конфигурационные файлы
....1.2 Настройки по умолчанию
....1.3 Псевдонимы (aliases)
2. Основы git
....2.1 Создание репозитория
....2.2 Состояние файлов
....2.3 Работа с индексом
....2.4 Работа с коммитами
....2.5 Просмотр истории
....2.6 Работа с удалённым репозиторием
3. Ветвление в git
....3.1 Базовые операций
....3.2 Слияние веток
....3.3 Rerere
4. Указатели в git
....4.1 Перемещение указателей
5. Рекомендуемая литература

Предисловие


Git — самая популярная распределённая система контроля версиями.[1][2]

Основное предназначение Git – это сохранение снимков последовательно улучшающихся состояний вашего проекта (Pro git, 2019).
Читать дальше →

Нативное редактирование Jupyter Notebooks в VS Code

Reading time3 min
Views41K
С октябрьским релелизом расширения Python, мы рады объявить о поддержке нативного редактирования Jupyter Notebooks в Visual Studio Code! Теперь вы можете напрямую редактировать файлы .ipynb и получать интерактивность Jupyter Notebooks с полной мощью VS Code.

Вы можете управлять исходным кодом, открывать несколько файлов и использовать такие функции, как IntelliSense, интеграцию с Git и управление несколькими файлами. Все они предлагают совершенно новые способы для дата-сайнтистов и разработчиков эффективно экспериментировать и работать с данными. Вы можете попробовать все это уже сегодня, загрузив последнюю версию расширения Python и создав/открыв Jupyter Notebook внутри VS Code.



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

Information

Rating
Does not participate
Registered
Activity