Обновить

Моя лента

Тип публикации
Порог рейтинга
Уровень сложности
Предупреждение
Войдите или зарегистрируйтесь, чтобы настроить фильтры
Статья

Как разобрать macOS на части

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели6.8K

Всем привет! Меня зовут Игорь Белов, я инженер в команде Мобильной Архитектуры Авито. Больше 6 лет занимаюсь iOS-разработкой, а ещё мне нравится изучать фундаментальные темы Computer Science и разбираться, как те или иные вещи работают под капотом.

В статье я расскажу, как исследовать произвольные приложения macOS с помощью отладчика LLDB и сопутствующих инструментов, и тем самым прокачать свой повседневный инструментарий разработчика. Сначала исследуем произвольно запущенные процессы в macOS с помощью LLDB. Затем на основе собранных знаний сделаем инъекцию своего кода, чтобы изменить их поведение. Ещё немного затронем теорию, подготовим и настроим окружение. В конце я посоветую, что почитать, чтобы углубиться в тему.

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

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

Читать далее
Статья

Меня достала реклама, и я сделал свой торрент-клиент для Windows

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели7.6K

Меня достала реклама в торрент-клиентах. Хотелось открывать программу, выбирать нужные файлы и оставлять загрузку в фоне. Так появился Tern: бесплатный клиент для Windows с открытым кодом, светлой и тёмной темами и автообновлением.

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

Показываю, что получилось, какие компромиссы остались и что удалось измерить в локальных тестах. Исходники и установщик доступны на GitHub.

Посмотреть, что получилось
Статья

Соглашение о неконкуренции в ИТ‑отрасли: работает ли это в России?

Время на прочтение19 мин
Охват и читатели5.3K

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

Что такое соглашение о неконкуренции?

Зачем работодателю соглашение о неконкуренции (NCA)?

Законно ли заключение соглашения о неконкуренции с работником?

Как защититься работодателю без классического NCA?

Можно ли заключить соглашение о неконкуренции с компанией?

Ответственность за заключение незаконного соглашения о неконкуренции

Что нужно указать в соглашении о неконкуренции?

Что нельзя делать при заключении NCA?

Законные альтернативы соглашению о неконкуренции?

Читать далее
Новость

Минпромторг и НИИМЭ обсуждают создание полигона для отработки микроэлектроники

Время на прочтение3 мин
Охват и читатели6K

АО «Научно‑исследовательский институт молекулярной электроники» (НИИМЭ, входит в состав ГК «Элемент») обсуждает с Минпромторгом создание испытательного полигона при институте, рассказал «Ведомостям» его гендиректор Александр Кравцов. Площадки нужны для отладки новых компонентов, прежде чем встроить их в серийное производство. Ведомство уже начало создавать два испытательных полигона для микроэлектроники, рассказал заместитель министра промышленности и торговли Василий Шпак.

Читать далее
Пост

«Хабр Торт» на STM32H750

Купил на одном из маркетов платку STM32H750VBT6-0.96 Core Board от WeAct Studio. Контроллер довольно мощный, 480MHz, много всяких примочек, TFT дисплей 0.96. Интересно было какими минимальными усилиями хоть что‑то с ней сделать бесплатно, то есть на бесплатных аккаунтах ИИ.

С кубом от ST не хотелось связываться, там даже vpn не помогает вроде как, да и кода там больше, чем в Ардуино среде — для бесплатных аккаунтов ИИ это важно. Поспрашивал ИИ какую среду выбрать. Посоветовали, если именно для STM32H750, то расширение PlatformIO в VS Code в среде Arduino Framework подходит, поддержка комьюнити солидная. Устанавливаю Vs Code, PlatformIO, дальше похоже без vpn никак, — не вопрос, ну да ладно.

Спрашиваю первую попавшуюся элэлэмку, кажется чатжпт, сделай код platformio.ini и main.cpp, чтобы светодиод мигал на этой плате, подключенной к компьютеру через ST‑LINK V2. Очень простой код, эти два файла переношу в проект, клацаю на значке Build, потом Upload — светодиод мигает. Потом его же спрашиваю — А слабо Вольдемару в фонтан нырнуть? Сделай код, чтобы на дисплее текст отображался «Habr Tort!». Только не лазай где попало, а сразу на гитхабе под эту конкретную плату ищи инфу. Нашел. Код прилагается. Habr Tort!

platformio.ini

[env:weact_mini_h750vbtx]
platform = ststm32
board = weact_mini_h750vbtx
framework = arduino
upload_protocol = stlink
monitor_speed = 115200
lib_deps =
    adafruit/Adafruit GFX Library
    adafruit/Adafruit ST7735 and ST7789 Library

main.cpp

#include <Arduino.h>
#include <Adafruit_GFX.h>
#include <Adafruit_ST7735.h>
#include <SPI.h>

// WeAct STM32H750VBT6 0.96" ST7735 TFT

#define TFT_SCLK PE12
#define TFT_MOSI PE14
#define TFT_CS   PE11
#define TFT_DC   PE13
#define TFT_RST  -1       // Display uses system reset
#define TFT_LED  PE10     // Backlight

// Software SPI
Adafruit_ST7735 tft(TFT_CS, TFT_DC, TFT_MOSI, TFT_SCLK, TFT_RST);

void setup()
{
    // Backlight ON
    // PE10 is active-low on this board
    pinMode(TFT_LED, OUTPUT);
    analogWrite(TFT_LED, 0);

    // Initialize the 80x160 ST7735 display
    tft.initR(INITR_MINI160x80_PLUGIN);

    // SPI speed
    tft.setSPISpeed(40000000);

    // Landscape
    tft.setRotation(1);

    // Clear screen
    tft.fillScreen(ST77XX_BLACK);

    // Display text
    tft.setCursor(20, 30);
    tft.setTextColor(ST77XX_WHITE);
    tft.setTextSize(2);
    tft.println("HABR TORT!");
}

void loop()
{
}
Теги:
0
Комментарии2
Статья

Как посчитать статистику переписки на 500 тысяч сообщений в браузере и не увидеть ни одного

Время на прочтение10 мин
Охват и читатели6.1K

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

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

Читать далее
Пост

Вышел открытый проект REA: Reverse Engineer Anything, который воспроизводит механики сторонних проектов. Никаких исходников и дополнительных данных не нужно, ИИ-агент сам исследует нужное приложение и соберёт его копию. На выходе получается декомпилированное ПО с возможностью полностью повторить конкретные фичи или вообще приложение целиком.

Теги:
+4
Комментарии0
Новость

UserGate Factor предупреждает: мошенники рассылают фальшивые налоговые уведомления от лица ФНС

Время на прочтение2 мин
Охват и читатели4.7K

UserGate Factor (uFactor) предупреждает: вместе со стартом осенней рассылки традиционных налоговых уведомлений россиянам вновь активизировались прежние мошеннические схемы, а также стали появляться новые механики обмана налогоплательщиков.

Читать далее
Новость

Reddit прекратит поддержку RSS‑каналов и закроет публичный API

Время на прочтение1 мин
Охват и читатели5.9K

Reddit прекратит RSS‑каналов начиная с 13 ноября. В компании заявили, что RSS стал основным инструментом для скрейпинга и «злоупотреблений автоматизации». Публичный API Reddit будет отключён в марте 2027 года.

Читать далее
Статья

Прячем сервер за прокси. Часть 1: iptables и его пределы

Время на прочтение10 мин
Охват и читатели8.5K

Как спрятать реальный IP сервера?

В первой части серии разбираемся с iptables: как устроены таблицы и цепочки netfilter, что происходит с пакетом на пути от клиента до бэкенда и как с помощью DNAT/SNAT организовать простой прокси-узел. Покажем рабочую конфигурацию для HTTPS, TCP и UDP, разберём типичные проблемы с FORWARD, conntrack и маршрутизацией, а главное — выясним, почему простой NAT не позволяет одновременно скрыть IP сервера и сохранить реальный IP клиента. В конце сравним подход с nftables и разберём, в какой момент iptables перестаёт подходить для цепочки прокси.

Читать далее
Статья

Эскроу‑счета из двух банков в 1С по API с нуля: из чего состоит интеграция и где подстелить соломку

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели5.4K

Застройщику нужно было видеть в 1С движение по эскроу‑счетам и расчётным счетам — раньше этих данных в системе не было вообще. Интеграции со Сбербанк API и Альфа‑Банк API написали с нуля: около 24 000 счетов, 30 объектов строительства, у банков разная авторизация, API и форматы. Рассказываю, из каких слоёв состоит такая интеграция, почему документация банка — не последняя инстанция и что проверить в первую очередь.

Читать далее
Пост

В открытом доступе появился открытый проект Visual Basic Browser Studio — классическая среда разработки (IDE) Visual Basic 6 (VB6), работающая непосредственно в браузере.

Примечательно, у разработчика этого проекта Веслава Шолтеса есть также решение SharpForge — браузерная IDE для C#, вдохновленная современной Visual Studio.

Теги:
+9
Комментарии0
Новость

Минцифры предложило регистрировать M2M‑устройства в ЕСИА для борьбы с мошенничеством

Время на прочтение3 мин
Охват и читатели7.7K

Данные о телефонных номерах SIM‑карт, встроенных в устройства межмашинного взаимодействия (M2M), адресах их владельцев или местах установки таких гаджетов, а также другие сведения, позволяющие идентифицировать пользователей и умное оборудование, потребуется вносить в Единую систему идентификации и аутентификации (ЕСИА). Это следует из законопроекта «Антифрод 3.0», опубликованного Минцифры, пишут «Известия».

Читать далее

Ближайшие события

Новость

Утечка: новые подробности о сюжете и ключевых персонажах Assassin’s Creed Hexe

Время на прочтение1 мин
Охват и читатели4.8K

В Сети появились новые слухи и инсайды о следующей части Assassin’s Creed с кодовым названием Hexe. Она обещает быть самой мрачной во всей серии. События игры развернутся в Германии XVI века в самый разгар охоты на ведьм. Портал MP1St поделился новыми подробностями о героях игры, раскрытыми через утечки с кастингов актеров.

Читать новость далее
Статья

Что происходит после нажатия Play. Разбираем архитектуру Spotify

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели6.7K

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

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

Где физически лежит музыка? Почему один и тот же трек существует в нескольких версиях? Кто отправляет аудио пользователю? Почему Spotify не отдаёт весь файл через свой backend? Как музыка успевает загрузиться раньше, чем мы до неё дослушали? И откуда приложение знает, где мы остановились на другом устройстве?

Давайте разберёмся.

Читать далее
Статья

Scala Digest. Выпуск 45

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели6.2K

Привет, Хабр! Мы — Настя и Эвелина — бэкенд-разработчики Т-Банка, пишем код на Scala и горим желанием его популяризировать. Мы собираем и агрегируем новости из разных источников, включая Scala Times, блог Petr Zapletal, добавляем дополнительные материалы и собственные комментарии. Мотивацию черпаем из желания wразвиваться и делиться полученными знаниями.

Приветствуем любую обратную связь! (づ ◕‿◕ )づ

Читать сорок пятый выпуск
Новость

Capcom намерена использовать ИИ для ускорения разработки игр и поэтапной перестройки собственного движка RE Engine

Время на прочтение2 мин
Охват и читатели5.2K

Японская Capcom намерена использовать искусственный интеллект для ускорения разработки игр и поэтапной перестройки под эту технологию собственного движка RE Engine. Об этом игровой издатель сообщил во время технологической конференции Capcom Open Conference RE: 2026 в начале октября.

Читать далее
Пост

15 вебинаров недели: от AI-агентов и пентеста до микросервисов и GitOps

В ИТ постоянно появляются новые инструменты и подходы, а времени разбираться во всём самостоятельно обычно не хватает. Где-то остаются пробелы в базе, где-то хочется проверить новую технологию на практике, а где-то — понять, стоит ли погружаться в тему глубже.

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

5 октября, понедельник:

6 октября, вторник:

7 октября, среда:

8 октября, четверг:

Полный список бесплатных открытых уроков можно посмотреть в дайджесте.

Теги:
+3
Комментарии0
Новость

Количество провайдеров в России за год сократилось на 17%

Время на прочтение1 мин
Охват и читатели5.6K

Количество операторов связи в России за год (июль 2025-го к июлю 2026 года) сократилось на 17%, до чуть более 7 тыс., пишет «Ъ» со ссылкой на данные Роскомнадзора. Число лицензий, которые приходятся на эти компании, также сократилось на 17%, до более 21 тыс. Прекращение действия лицензий связано в большинстве случаев с тем, что компании не оказывали по ним услуги связи, поясняли в ведомстве.

Читать далее
Новость

Эксперт GlowByte обсудит внедрение ИИ на конференции «Selectel ТехноДень»

Время на прочтение2 мин
Охват и читатели5.2K

GlowByte примет участие в десятой конференции «Selectel ТехноДень» о бизнесе и технологиях. Она пройдет 8 октября 2026 г. в Москве, в кластере «Ломоносов». Компанию представит Александр Ефимов, директор практики искусственного интеллекта и машинного обучения GlowByte.

Читать далее