javascript
Как я сделал групповые звонки в React Native мессенджере: WebRTC, CallKit и грабли production'а

Уровень: senior мобильная разработка и WebRTC Стек: React Native, Expo SDK 54, @livekit/react-native-webrtc, expo-notifications, CallKit, FCM Что внутри: production WebRTC с trickle ICE, VoIP push notifications, CallKit интеграция, обработка фоновых состоянийВступлениеЭто третья статья из серии про инженерные решения в ONEMIX — моём мессенджере на React Native. В первой я разбирал трёхуровневый кэш сообщений, во второй — реализацию Double Ratchet E2E. Сегодня — про звонки.Звонки в мессенджере —…

  • среда, 13 мая 2026 г. в 00:00:17
javascript
Запустил AI-репетитор английского месяц назад: технические грабли соло-дева

Я соло-делаю Speakwithai — AI-репетитор английского для русскоязычной аудитории. Месяц назад выкатил публично, за этот месяц получил 50 регистраций, 3 платящих и набор технических граблей, которые честнее разобрать, пока они свежие, а не через год по сглаженной памяти.Это не история успеха — продукт ещё ничего не доказал. Это разбор конкретных инженерных решений, которые я бы хотел увидеть в чужом посте перед стартом.КонтекстЧто построил: web + Android-приложение, в котором пользователь голосом…

  • среда, 13 мая 2026 г. в 00:00:16
javascript
n8n + мессенджер MAX: почему я отказался от community-ноды и перешел на «чистый» HTTP Request

Когда строишь B2B-автоматизацию, главная метрика — это стабильность. Недавно я наступил на классические грабли: использовал для интеграции готовую community-ноду. В один «прекрасный» момент после обновления окружения нода просто отвалилась, и мой бот встал.Для продакшена это недопустимо. Чтобы не зависеть от сторонних разработчиков и их темпов обновления, я перевел всю логику на стандартный узел HTTP Request. В этой статье поделюсь опытом настройки, разберу баги API MAX и дам готовую структуру …

  • среда, 13 мая 2026 г. в 00:00:14
javascript
Книга: «Фулстек JavaScript: Секреты, которые должен знать каждый мидл»

Привет, Хаброжители! Как практикующий разработчик ПО вы уже умеете качественно выполнять задачи — на фронтенде или бэкенде. Пора перейти на следующую ступеньку карьерной лестницы и развить навыки, которыми обладают эксперты и senior-разработчики. Милесия МакГрегор поможет разобраться, как работает вся система и как senior-разработчики принимают технические решения. Вы изучите все необходимое для создания фулстек веб-приложения, развернутого на облачной платформе, поймете, как выявлять источник…

  • среда, 13 мая 2026 г. в 00:00:13
javascript
Как я сделал desktop-версию мессенджера на vanilla Electron, не на React Native for Desktop. И не п…

Уровень: middle/senior, кросс-платформенная разработка Стек: Electron 28, electron-builder, electron-updater, vanilla HTML/JS Что внутри: архитектурные решения, IPC между окнами, deep links на трёх ОС, tray-first паттерн, auto-updater grace, custom протоколыКонтекстЭто четвёртая статья из серии про инженерные решения в ONEMIX — моём мессенджере на React Native. В предыдущих разбирал трёхуровневый кэш сообщений, Double Ratchet E2E и WebRTC звонки с trickle ICE. Последняя про звонки набрала больш…

  • среда, 13 мая 2026 г. в 00:00:11
github
anonfaded / FadCam

Open-source, ad-free Android multimedia recorder with background video recording, screen recording, live streaming, and remote camera control TipThis project is part of the FadSec Lab suite. Discover our focus on ad-free, privacy-first applications and stay updated on future releases! NoteUnlock FadCam Pro with lifetime access: Visit the Shop >_ FadCam Privacy-focused Android multimedia suite: background video recording, dashcam, screen recorder, live streaming & remote contro…

  • среда, 13 мая 2026 г. в 00:00:02
golang
Code Review Horror Stories. Часть 2: API, ошибки и graceful shutdown

Продолжение разбора реального кода с собеседования. В первой части разобрали 8 проблем concurrency и memory: race conditions, утечки горутин, проигнорированный mutex, TOCTOU. Это была первая половина из 21 бага в одном сервисе на 150 строк.Сегодня — вторая часть. Тут нет страшных race conditions, но есть то, что выдаёт уровень разработчика на собесе: отношение к ошибкам, валидация, API design, graceful shutdown, observability. Эти баги не упадут “вдруг” в продакшене — они будут тихо пилить вам …

  • вторник, 12 мая 2026 г. в 00:00:18
golang
От LLM к агенту: Как заставить Go приложение думать и действовать

От автора: Эта статья родилась из желания разобраться в том, что осталось за кадром отличного доклада.1. Введение1.1. История создания проектаВсё началось с доклада Антона Юрченко «Улучшаем качество отчётов нагрузочного тестирования с помощью Go, LangChain и GigaChat».Доклад мне понравился: чёткая постановка проблемы, грамотный подход к автоматизации, отличная идея с использованием LLM для генерации человекопонятных отчётов. Но после просмотра осталась одна проблема — код интеграции так и не по…

  • вторник, 12 мая 2026 г. в 00:00:17
golang
Почему ваш Go‑сервис ломается под 1000 RPS и как найти узкое место за полчаса

Go‑сервис на малых нагрузках работает идеально. Горутины дешёвые, GC быстрый, net/http из коробки тянет приличный трафик. Разработчик прогоняет функциональные тесты, видит зелёное, деплоит. Приходят 1000 RPS, и latency p99 взлетает с 50ms до 5 секунд, в логах начинают мелькать таймауты, а в Grafana рисуется красивая кривая деградации.Инструменты: vegeta и wrk2Для нагрузочного тестирования Go‑сервисов используем два инструмента.vegeta написан на Go, понимает гошные паттерны, выводит результаты в…

  • вторник, 12 мая 2026 г. в 00:00:16