Обновить

Все потоки

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

Сам себе VoLTE. Запускаем сотовую сеть 4G LTE с поддержкой звонков и SMS

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

Приветствую всех!
Два года назад я уже рассказывал о том, как запустить у себя дома базовую станцию 4G LTE. Тем не менее, в той сети работал только мобильный интернет, тогда как при попытке позвонить или отправить SMS связь немедленно обрывалась.

Самое время восполнить это упущение. Сегодня мы поднимем сеть, в которой будут работать все эти функции. Заодно разберёмся, как работают звонки в LTE-сетях, как запустить такую сеть при помощи SDR и как заставить это всё работать. Как водится, будет много интересного.

Open5GS

Новости

Фитнес в VR? Добавляем свою музыку в BeatSaber

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

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

Игра Beat Saber — это впечатляющий источник домашней физической нагрузки под музыку. В этой статье разберем, как играть на треках из пользовательской библиотеки, и попытаемся создать свою карту c любимой музыкой. Спойлер: инструменты не так страшны.

Отработать салатики

Структуры данных на практике. Глава 1: Разрыв в производительности

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

Часть I: Основы

«В теории теория и практика одинаковы. На практике это не так». — авторство приписывается разными специалистам по computer science

Загадка

Два часа утра. Я смотрю на совершенно нелогичные данные профилирования.

В процессе работы над загрузчиком для SoC RISC-V у нас возникла проблема с производительностью. Загрузчик должен был искать конфигурации устройств в таблице: примерно пятьсот элементов, каждый с 32-битным ID устройства и указателем на данные конфигурации. Всё просто.

Мой коллега реализовал эту систему с помощью хэш-таблицы. «Поиск за O(1), — сказал он уверенно, — лучше уже некуда».

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

Я попробовал использовать очевидную оптимизацию: заменить хэш-таблицу двоичным поиском по отсортированному массиву. Двоичный поиск занимает O(log n), что теоретически хуже, чем O(1). Так написано в учебниках. Мой преподаватель алгоритмов был бы разочарован.

Но в результате загрузчик оказался на 40% быстрее.

Как O(log n) смогло победить O(1)? Что происходит?

Читать далее

Карьерный потолок в IT: почему я перестал стремиться в менеджмент и начал делать свой продукт

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

Каждый разработчик в начале пути видит перед собой ясную лестницу: Junior → Middle → Senior. Рост компетенций сопровождается ощутимым ростом зарплаты, и это даёт мощный заряд мотивации. Но что происходит, когда вы достигаете уровня Senior? Зарплата упирается в «стеклянный потолок», задачи становятся однотипными, а привычный драйв исчезает.

Читать далее

Нескучное программирование.История концептов

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

История концептов в C++ – один из самых показательных примеров того, как язык развивается не линейно, а через десятилетия экспериментов, откатов и переосмыслений. Первые идеи, которые мы сегодня называем концептами, появились ещё в конце 1990-х, когда стало очевидно, что шаблоны C++ имеют колоссальную выразительность, но практически не дают средств для описания намерений программиста. Шаблон можно было инстанцировать почти с любым типом, но ошибка проявлялась либо в виде километров сообщений компилятора, либо в виде неожиданного поведения в рантайме. Уже тогда Страуструп сформулировал проблему как «отсутствие контрактов для шаблонов», когда программист знает, что от типа требуется оператор + или ==, но язык этого не выражает.

Ранние предложения концептов были чрезвычайно амбициозными и стремились описывать не только синтаксис, но и семантику. Например, концепт EqualityComparable должен был означать не просто наличие operator==, но и выполнение математических свойств эквивалентности: рефлексивности, симметричности и транзитивности. Аналогично, концепты для упорядоченных типов предполагали строгую слабую упорядоченность, а для итераторов корректное поведение при многократном проходе. Это отражало академический взгляд на обобщённое программирование, сильно вдохновленный функциональными языками и работами Степанова.

Читать далее

Лошадка мохноногая торопится бежит…

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

Чисто DIY-статья как я делал электронно-механическую новогоднюю лошадку. Под катом – кинематика, механика, электроника и всякое шитьё. Кому интересно рукоделие и самоделки в стиле Юных техников...

Иго-го!

Счастливые автобусные билетики. Магия чисел для советских школьников

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

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

Очень меня интересовали эти самые билетики! Я их коллекционировал. На даче у меня был специальный дерматиновый красивый полупрозрачный конверт (от старых фломастеров), в котором я хранил все свои билеты. Номера автобусных билетов состояли из шести цифр, и я отдельно выделял те, у которых сумма первых трёх цифр была равна сумме трёх последних. Конечно, самыми ценными были бы те билеты, у которых все цифры одинаковые...

Читать далее

Легкий способ развить свой блог. Как развивать личный бренд и зачем он IT-шнику?

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

Девять месяцев назад я начал вести свой канал t.me/siliconchannel. Писал статьи для Хабра на свою профессиональную тему - Go-разработку - и задумался: а могут ли эти статьи и вложенный в них труд приносить кратно больше пользы и мне, и Хабру? В итоге это привело к блогу на 4000 подписчиков с 0 рублей вложений.

Читать далее

Как устроена электронная почта на VPS: основы SMTP, IMAP и POP3

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

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

Читать

23 сервиса для поиска дизайн-референсов, о которых молчат на Dribbble

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

Многие дизайнеры используют 2-3 источника референсов: Dribbble, Behance, Pinterest. Проблема в том, что это решает лишь 20% задач. Статичные картинки не показывают анимации. Нет доступа к исходникам. Невозможно увидеть, как дизайн менялся во времени.

Я решил найти все существующие сервисы для поиска референсов и детально изучить их возможности. Потратил кучу времени на исследование 50+ платформ. Выяснилось: Dribbble и Behance — это лишь верхушка айсберга.

Читать далее

AI убила бизнес Tailwind CSS. Компания сократила 75% разработчиков

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

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

Читать далее

Из ручной инженерии в системную: как управлять командой, когда она перестает помещаться в один созвон

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

Привет, Хабр! Меня зовут Антон, я руковожу направлением автоматизации тестирования BIOS/BMC в YADRO. Как-то раз я моргнул — и наша команда из 10 инженеров выросла до 35. Вместе с этим у нас появились направления и лиды, а значит, я больше не могу прийти в любую задачу и сам ее быстро закрыть.

Общий дейлик тоже изменился: большая часть информации стала полезна конкретным группам людей внутри команды, а остальные просто теряли фокус. Конечно, ломалось не только это. В статье расскажу, что стало для меня неожиданным, где я ошибался и как мне удалось во всем этом выжить. А в конце поделюсь выводами, как при масштабировании команды избежать мучительной боли. Погнали!

Читать далее

Полезное использование запирания потока

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

Давайте для начала я задам два странных вопроса:

1. Можно ли постоянный магнит «выключить»?

2. Можно ли электромагнит сделать «постоянным»?

Смотря на эти вопросы, не правда ли, возникает ощущение, что здесь всё перепутано? :-)

Как ни странно, нет, и эти вопросы вполне себе корректны! ;-)

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

Читать далее

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

Почему главный венчурный фонд планеты находится в Пентагоне?

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

Существует агентство DARPA, созданное в годы холодной войны. Благодаря нему зародился интернет, GPS, Siri, появился ИИ, беспилотные авто и даже вакцина от COVID-19. О передовых разработках человечества: от насекомых-киборгов и стимуляторов для солдат до передачи тока на расстоянии.

Читать далее

Нейро-дайджест: ключевые события мира AI за 1-ю неделю января 2026

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

Привет, это новый выпуск «Нейро-дайджеста» — коротких и полезных обзоров ключевых событий в мире искусственного интеллекта и технологий. 

Неделя выдалась насыщенной: китайцы выкатили MiniMax-M2.1 для кодинга и агентных задач, новая мультимодальная опенсорс LTX-2 и обновлённый Qwen-Image-2512. ИИ для документаций, озвучка текста в браузере и штрафы за нейро-видео.

Всё самое важное — в одном месте. Поехали!

Читать дайджест →

Как измерили Землю без GPS: дуга Струве длиной 2820 км

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

О том, что Земля имеет форму шара, знали задолго до Нового времени. Но одно дело общее представление, и совсем другое — точные измерения размеров и формы планеты.

Для этого нужны были не рассуждения, а масштабные геодезические работы: измерения углов, расстояний и сложные вычисления на тысячах километров. В XIX веке такую «линейку» создал астроном Василий Струве, построив величайшую геодезическую дугу своего времени — цепочку из 265 треугольников от Северного Ледовитого океана до Чёрного моря.

В этой статье разберёмся, как работала «Дуга Струве» и почему без неё современная геодезия выглядела бы иначе.

Читать далее

Что показали вендоры в 2025 году? Самые интересные железные новинки

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

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

Привет! Меня зовут Сергей Ковалёв, я менеджер выделенных серверов в Selectel. В этой статье я собрал самые интересные видеокарты, процессоры, диски и другие технологии за 2025 год. Подробности под катом!

Узнать подробности

Главное — это хорошая ZOPA (простое применение теории игр к переговорам)

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

Вот вы покупаете б/у сервер у компании, которая закрывается. Никто не знает точно, сколько он стоит, но есть ощущение, что сделка возможна.

Всё это отлично покрывается теорией игр.

Вам нужно две границы:

1. За сколько максимум вы готовы его купить. Это можно посчитать по предполагаемому износу, цене б/у комплектующих и цене аналогов.

2. За сколько минимум его могут продать. Надо посмотреть на ситуацию их глазами: они распродают оборудование, не хотят возиться и готовы на быструю сделку.

Разница между вашей максимальной ценой и их минимальной — это и есть ZOPA. То есть Zone of Possible Agreement, или зона возможного соглашения. Это пространство между вашей точкой ухода и точкой ухода продавца, то есть диапазон, в котором торговаться вообще имеет смысл.

ZOPA существует, если максимальная цена покупателя ВЫШЕ или равна минимальной цене продавца. Если нет — сделка невозможна.

Вам надо:

— Понять, существует ли ZOPA вообще.

— Постараться выяснить границы ZOPA (особенно точку ухода оппонента).

— Добиться результата внутри ZOPA, который будет максимально близок к вашей цели.

Вторая важная концепция — BATNA. Это лучшая альтернатива. Например, если вы идёте к руководителю на переговоры по повышению зарплаты, возможно, надо выяснить Best Alternative. Если вы придёте просто так, с аргументом «я хорошо работаю», ваша лучшая альтернатива — остаться на текущей зарплате. Это слабая BATNA. Но если вы придёте с офером от другой компании на 30% выше, ваша BATNA — это переход на новую, высокооплачиваемую работу. Либо вы выбесите руководителя и эйчара, либо покажете, что есть чёткое основание, куда торговаться, и ваша ценность на рынке подтверждена.

Вы можете управлять BATNA, добавляя что-то в сделку, например, «В этом году я активно менторил джунов, так как никто из коллег не мог выступать наставником. В другой компании за менторство мне предложили +15% к окладу, но я бы хотел обсудить новые условия нашего с вами сотрудничества». В общем, давайте покопаемся ещё немного в теории игр на практике. В том числе про то, как готовиться к переговорам по зарплате.

Читать далее

«Работаю на 200%, но меня не замечают»: 4 категории людей, которых не повышают, иногда даже специально

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

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

Меня зовут Яна Шаклеина, 8 лет в ИТ. Начинала карьеру как разработчик, работала в сопровождении, потом начала всё совмещать с обязанностями руководителя. Не с первого раза, но получила руководящую должность и сейчас работаю CPO в Outlines Tech. Делюсь опытом со стороны исполнителя и руководителя, каких специалистов не повышают и почему, даже если они объективно лучше других, и что с этим можно сделать.

Читать далее

Как из идеи Shared Memory кэша родился LensDB

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

Всем привет!

Идея LensDB родилась с простого поста моего друга. он делился своим опытом создания Shared Memory кэша для своего пет-проекта на C#. В этом посте он написал:

Читать далее
1
23 ...