Как стать автором
Обновить

Все потоки

Сначала показывать
Порог рейтинга
Уровень сложности

Кто такой Майкл Рейнштейн и почему он скупает технологические СМИ по всему миру (в том числе TechCrunch)

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.1K

В последние годы имя Майкла Рейнштейна (Michael A. Reinstein) всё чаще мелькает в новостях о сделках по покупке медиаактивов и брендов. Этот малоизвестный широкой публике инвестор за короткий срок приобрел десятки газет, журналов, цифровых платформ и брендов в разных странах. Кто он, какую стратегию преследует и почему его деятельность вызывает вопросы? Особенно после покупки TechCrunch (одно из самых влиятельных технологических медиа) и других IT-СМИ.

Читать далее

Technical Product Manager — кто это, а главное, зачем?

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров4.6K

Technical Product Manager — относительно новая специализация, которая только набирает обороты в России, но о ней мало информации на русском языке. Между тем, с ростом количества отечественных технических продуктов растет и спрос на таких людей.

Делюсь опытом работы в этой роли:

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

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

Читать далее

От идеи до платформы: полгода разработки собственного AI радио

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров3.5K

В своей предыдущей статье я рассказал читателям Хабра о пути, который привёл меня к разработке автоматизированного AI-радио с новостными блоками, подкастами и музыкальным контентом. Я получил много ценных отзывов — спасибо за это! Работа над AI-вещанием продолжается, но за последние месяцы всё выросло в нечто большее: в полноценную платформу.

Читать далее

Olimex RP2040-PICO-PC на стезе эмуляции ретро-платформ

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров2K

Olimex RP2040-PICO-PC - небольшая платка, типа "материнской", в которую можно воткнуть микроконтроллерную плату форм-фактора Raspberry Pi Pico, которых выпускается достаточно много.

Я много писал про аналогичную плату, разработанную нашими ребятами (см. Мурмулятор), однако, имеются и некоторые альтернативы, включая разработку от Olimex.

Читать далее

Обзорная экскурсия в мир сетевых контейнеров

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров3K

Приветствую профессиональное сообщество. Здравствуй, Хабр! Это первая обзорная статья из серии, посвящённой ContainerLab.

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

Читать далее

Open source Self-Hosted убийца убийц Notion. Как установить?

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров13K

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

Сегодня расскажу про то что нашел для и себя и как это похостить.

Читать далее

Go synctest: Решение проблемы нестабильных тестов

Время на прочтение7 мин
Количество просмотров896


Чтобы понять, что решает synctest, мы должны сначала рассмотреть основную проблему: недетерминизм в конкурентных тестах.


func TestSharedValue(t *testing.T) {
    var shared atomic.Int64
    go func() {
        shared.Store(1)
        time.Sleep(1 * time.Microsecond)
        shared.Store(2)
    }()

    // Проверяем общее значение через 5 микросекунд
    time.Sleep(5 * time.Microsecond)
    if shared.Load() != 2 {
        t.Errorf("shared = %d, want 2", shared.Load())
    }
}

Этот тест запускает горутину, которая изменяет общую переменную. Она устанавливает shared в 1, спит 1 микросекунду, а затем устанавливает её в 2.


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


Однако...

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

Как наша студия ушла от гиперказуала и что из этого вышло

Время на прочтение2 мин
Количество просмотров2.7K

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

Пришло время выбора: продолжать штамповать одноразовые проекты или рискнуть и сделать что-то своё. Мы выбрали второе.

Читать далее

100K юзеров за 3 дня — что сломалось после релиза

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

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

В этой статье — история запуска Telegram Mini App, куда за трое суток пришло 100.000 реальных пользователей.

Покажу, как мы масштабировали Node.js приложения на многоядерных серверах, увеличивали RPS в 10 раз, боролись с N+1 проблемой в MongoDB и снижали нагрузку на CPU. А ещё расскажу как мы быстро настроили мониторинг через Grafana, подключили Cloudflare и интегрировали Sentry. Поделюсь практическими инсайтами о том, на что стоит обращать внимание в первую очередь, и как эти инструменты помогли нам оперативно находить узкие места и устранять сбои в реальном времени. Всё, о чём будет в этой статье, основано на том, что действительно сработало. Кроме того, расскажу, какие моменты мы упустили до запуска.

Это разбор с цифрами, графиками и практическими выводами. Он может сэкономить вам время, нервы и деньги, если вы готовитесь к запуску Telegram Mini App или просто работаете с Node.js-приложениями, которые могут оказаться под серьёзной нагрузкой.

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

Первая часть про подготовку к запуску доступна здесь.

Читать далее

Летний апдейт: что умеют новые мини-ПК на Arrow Lake, Strix Halo и RTX 50

Время на прочтение5 мин
Количество просмотров5.3K


Май и июнь 2025 года выдался жарким для рынка мини-ПК. Производители выкатили сразу несколько моделей, в которых компактность уживается с топовыми процессорами Intel Arrow Lake, RyzenTM Strix Halo и дискретной графикой NVIDIA RTX 50-й серии. Некоторые из них — абсолютно бесшумные, другие готовы заменить рабочую станцию или игровой ПК. Разбираем главные новинки месяца — от Asus NUC и Zotac ZBOX до мини-NAS на Twin Lake и миников с откидными экранами. Поехали!
Читать дальше →

Апгрейд по реверс-инженерски: хакаем прошивку кнопочного телефона и пишем для него программы

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров5K

Осторожно: в данной серии статей я рассказываю о реверс-инжиниринге и хакинге простых кнопочных звонилок. Цель простая: расширить скудный функционал телефонов ценой до 1 000 рублей и сделать их привлекательной платформой для самых разных гиков. Если вам интересно узнать, как происходит процесс взлома и изучения прошивок, а также написания новых программ для кнопочников — жду вас под катом!

Читать далее

Коротко объясняем, что такое поток, буфер, дуплекс и канал

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

Поток — это последовательность элементов данных, предоставляемых за некоторое время. Концепция потока (stream) позволяет обрабатывать или передавать данные поэлементно, а не как одно целое. Потоки особенно полезны в сценариях, когда приходится работать с большими множествами данных, непрерывными данными или данными реального времени.

Читать далее

Не выходя из CLI: решения для планирования и трекинга задач

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.5K

В MWS мы используем платформы для совместной работы и автоматизации, которые легко подключить, настроить и использовать без нагрузки на ИТ-отдел (например, MWS Tables). Но если вам привычнее работать не покидая пределы консоли, собрали терминальные инструменты, которые помогут вывести продуктивность на новый уровень: планировщики задач, органайзеры и вот это всё.

Читать далее

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

Про деревянные подшипники

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров16K
Картинка 1, 2, Freepik

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

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

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

Эта проблема ещё более усугубляется, если надо изготовить нечто чуть более масштабное, чем «подшипник с ноготь мизинца диаметром» :-)

Тем не менее, есть один широко распространённый материал, о котором прекрасно известно профессионалам, но он малоизвестен для применения в подшипниках широкой публике — и это древесина!

Да-да, как ни странно, она вполне может быть применена для этой цели, и далее мы посмотрим, каким именно образом…
Читать дальше →

Кригинг F-фактора или кормить, любить и никогда не покидать

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров641

Девочка и мальчик — метисы хаски жили в трубах на стройке, в феврале 2025 года спасены волонтерами, откормлены и подлечены. Сейчас у них появились хозяева и теперь их будут "Кормить, любить и никогда не покидать!". Про любовь может быть как-нибудь в другой раз, а сегодня поговорим про "кормить".

Канули в лету времена, когда своих маленьких друзей все кормили "со стола".

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

Чаще всего домашних собак и кошек мы кормим влажными консервированными кормами. Сегодня мы поговорим о производстве влажных кормов, узнаем почему F-фактор критически важен и зачем ему самому нужен кригинг.

Читать далее

EPT-MX-ADM: Новый уровень управления Matrix Synapse — Бета-версия v0.0.1

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров345

Привет, Хабр! Меня зовут Brabus, я разработчик из EasyProTech LLC, и сегодня я хочу рассказать о моём проекте - EPT-MX-ADM. Это современная админ-панель для Matrix Synapse, которая решает проблемы устаревших инструментов вроде Synapse Admin. Если ты админ Matrix-сервера и устал от CORS-ошибок, древнего UI и вечных плясок с Nginx-конфигами, этот проект для тебя. 😎

Читать далее

Как устроен отбор на стажировку в Big Tech

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров681

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

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

Читать далее

DIY проект: cистемная информация на LCD дисплее GC9A01 (часть 1)

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров3.4K

Всем доброго дня! Мой никнейм Arduinum628, я занимаюсь DIY проектами и программированием на Python и C++. В этой статье пойдёт речь о выводе системной информации с ПК на круглый LCD дисплей GC9A01.

Сама идея проекта мне пришла во время разговора с другом Иваном @proDream Я рассказал ему, что заказал пару LCD дисплеев GC9A01 с Ali Express для своих будущих DIY проектов. Во время разговора Иван внезапно сказал, что ему-бы пригодился девайс для вывода системной информации с ПК. Я подумал - почему-бы не научиться использовать этот дисплей на подобном проекте?!

Сам проект я буду писать не для нужд друга, а скорее в целях обучения работы с этим дисплеем. Как я понял, что ему нужно что-то более компактное и встраиваемое в корпус ПК. По моему совету он купил компактную плату esp32 с дисплеем и будет писать своё решение сам. Я же собираюсь делать что-то вроде приборной панели и поставлю её за клавиатурой. Это чем-то будет напоминать спидометр автомобиля =)

Читать далее

Соединяем физику и лирику. Как я собрал рекомендательную систему для стихов с помощью Flask, sqlite-vec и Hugging Face

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров1.1K

Для песен рекомендательные системы есть, для книг — есть, для фильмов — есть, для стихов — нет. Непорядочек 🤔

Используя Flask, Jinja2, Sentence-Transformers и sqlite-vec, собрал первый прототип рекомендательной системы для стихов. Для машины измерить в цифрах схожесть двух стихов трудно. А для человека — в самый раз. Прикрутил форму оценки рекомендаций, собрал человеческий фидбек.

В статье подробно рассказываю о деталях конструкции.

Читать далее

Карьера системного администратора на заводе

Уровень сложностиПростой
Время на прочтение25 мин
Количество просмотров2.9K

Что это и зачем?

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

Я также прекрасно понимаю, что некоторые люди читают мои статьи только ради шуток и картинок. Что ж, весёлые шутки и смешные картинки вы получите.

Читать далее