Однажды на работе возник вопрос — насколько вероятно, что в случайно сгенерированном идентификаторе (отдаваемом пользователю, к примеру) вдруг обнаружится плохое слово. Приблизительная оценка была дана достаточно быстро, а вот точное решение — уже не так тривиально. Я решил всерьёз выяснить, чему равна эта вероятность в зависимости от длины случайной строки? Можно ли получить явную математическую формулу для ответа? Что, если взять другое слово? Что, если взять другой алфавит? Обо всём по пор…
Хабр, привет! Меня зовут Алексей Ватутин, я руководитель практики инфраструктуры рабочих мест в компании К2Тех. Мы с командой давно изучаем рынок корпоративного ПО, но с тех пор, как российские разработчики пустились догонять и обгонять зарубежных, мониторить новинки стало вдвойне интереснее. На этот раз наше внимание привлекла разработка Orion soft, призванная заменить решения для терминального доступа от Citrix и Microsoft. Мы ее изучили, попробовали и делимся первыми впечатлениями под катом…
Мы привыкли к тому, что в нашем IT-мире всё течёт и меняется. Постоянно появляются новые версии операционных систем, сменяют друг друга приложения и фреймворки. То, что ещё вчера было мейнстримом, сегодня считается безнадёжно устаревшим.Но у многих из нас есть любимые программы, которые путешествуют с компьютера на компьютер, от одной версии операционной системы к другой. И продолжают служить нам верой и правдой — привычные и надёжные, как старые друзья.Для меня таким старым надёжным другом ст…
После 15 лет наблюдения за 68 объектами, известными как миллисекундные пульсары, мы обнаружили фоновый сигнал гравитационных волн во Вселенной!На этой карте показано относительное расположение 68 миллисекундных пульсаров относительно нашего — в пределах Млечного Пути. Некоторые из них находятся на расстоянии ~10 000 световых лет, но многие — ближе, и измерение разницы в пульсарном времени между парами пульсаров (относительно угла между ними) — это способ извлечения сигнала гравитационной волны…
«Мужики! Я вам запрещаю выпускать меньше 200 тонн хлеба в сутки», — примерно это 92 года назад заявил Георгий Марсаков, и перевернул игру, создав инженерное чудо. Что же такого он придумал? Давайте разбираться.1920-е годы в Москве, как и во всем СССР были не сладкими. Население города неумолимо росло, еды не прибавлялось. Пекарни просто физически не могли обеспечить достаточный выпуск одного из главных продуктов питания, — хлеба, по причине того, что не смотря на век индустриализации, его вы…
В этой статье я расскажу вам о том, как мы в Ozon оптимизируем базовый поиск: как у нас выстроены процессы, как найти бутылочное горлышко, конкретные рекомендации по написанию горячего кода, реальные примеры значимых оптимизаций и что делать, когда все низко висящие фрукты уже сорваны, а хочется ещё.Из статьи Сергея Саияна вы можете узнать, что мы в Ozon написали на Java свой поисковый движок на базе Apache Lucene, который пришёл на смену Elasticsearch пару лет назад и используется для обработ…
Начнем издалека. В спецификации любого компьютера и в частности сервера непременно числится надпись "N гигабайт оперативной памяти" - именно столько в его распоряжении находится физической памяти.Задача распределения доступных ресурсов между исполняемым программным обеспечением, в том числе и физической памяти, лежит на плечах операционной системы, в нашем случае Linux. Для обеспечения иллюзии полной независимости, она предоставляет каждой из программ свое независимое виртуальное адрес…
Несколько лет назад уже писал про свои поиски идеальной и недорогой панели управления умным домом (статья собрала 200 закладок), тогда в 2020 году я остановился на недорогом андроид планшете, который перепрошил на чистый андроид для выполнения удаленных команд через ADB. Программно меня всё устраивало, но вот красиво закрепить планшет на стене без колхоза и дополнительных действий было трудно. Пришлось отдавать его в багетную мастерскую для оформления в рамку, выпиливания в стенках мест под ка…
Современная разработка охватывает широкий диапазон от работы с алгоритмами до системного дизайна. По большей части разработка ПО укладывается в эти рамки. Основная масса разработчиков занимается созданием приложений, что ближе с системному дизайну, чем к низкоуровневым алгоритмам. Большинство вакансий рассчитано на что-то между разработкой приложений и системным дизайном. Но при этом многие из тех, кто проводит технические собеседования, уделяют время только задачам на знание алгоритмов и сис…