Обновить
980.3

Программирование *

Искусство создания компьютерных программ

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

Как летает космическая ракета (на примере РН Союз)? Отвечаем методом структурного моделирования

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

В предыдущей части мы запустили двухступенчатую ракет в космос. Вторая ступень достигла космической скорости по формуле Циолковского и согласно законам Ньютона. Это, конечно, хорошо и правильно, но не совсем. Точнее не совсем правильно. В наших расчетах мы запускали ракету в белый свет, как в копеечку, вертикально вверх. В этом случае первая ступень улетает в открытый космос по инерции и летит, черт знает куда (а черт – потому что бога нет, Гагарин, когда летал, не видел). 

Реальные ракеты выходят на орбиту по-другому, не вертикально вверх. После старта ракета начинает отклонятся программой управления с тем, чтобы при выходе на орбиту, она имела направление движения параллельно земле (по-грамотному это называется угол тангажа). Давайте сделаем модель, которая будет это учитывать. Если использовать методы структурного моделирования, это будет сделать не сильно сложнее, чем модель артиллерийского снаряда, который мы перехватывали в задаче про волка и зайца.

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

А для того, чтобы наша ракета была не абстрактная, возьмём данные по ракете «СОЮЗ», к тому же на хабре уже есть решение этой задачи.  Больше спасибо автору, что уже собрал все необходимые данные.  https://habr.com/ru/articles/649961/

Тем, кто первый раз пытается создать структурную модель, и кому покажутся сложными физическая модель сферического коня в вакууме или численное интегрирование обыкновенных дифференциальных уравнений, я рекомендую почитать статью про противоракетную оборону Израиля, где все это объясняется на основе знаний математики 4 класса. https://habr.com/ru/articles/878168/

Читать далее

В топку Live Coding. Он измеряет уровень стресса, а не навыки программирования

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

Некоторым людям нравятся собеседования с написанием кода. Я к их числу не отношусь.

Недавно мне на LinkedIn попался пост такого содержания:

"Мы задаём каждому соискателю тривиальную задачу на программирование. Что-нибудь вроде: «Дан список чисел, нужно вернуть сумму чётных из них». И такая задача не предполагается как сложная или заумная, и её цель не в том, чтобы кого-то отсеять, теоретически.

Это лишь базовая проверка. Разработчик или SRE с опытом от 6 до 10 лет должен решать такие во сне, согласитесь?

Оказывается, нет.

Где-то 75% кандидатов не справляются. И не только джуниоры. Я говорю о людях с приставкой «Senior» в их квалификации. О людях, которые заявляют, что учат новичков. О тех, кто говорит, что имеет за плечами годы опыта в продакшене.

Для меня это загадка".

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

Читать далее

Моё знакомство с процессором Эльбрус-8СВ. Оптимизирую сложение массива байтов

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

Месяц назад мне в телеграм написал человек и предложил доступ к системе с процессором Эльбрус-8СВ.

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

Разве может что-то пойти не так?

Андрей Карпаты: итоги LLM-экосистемы за 2025 год

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

Команда AI for Devs подготовила перевод обзорной статьи о ключевых сдвигах в развитии LLM в 2025 году. Андрей разбирает, почему Reinforcement Learning from Verifiable Rewards стал новой базовой стадией обучения, откуда взялся «рваный интеллект», как появился новый слой LLM-приложений и почему ИИ всё чаще «живёт» прямо на компьютере разработчика.

Читать далее

Идемпотентность в скриптах

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

Привет, Хабр! Как часто Ваш скрипт падает при повторном запуске? Или, может, портит конфиги, создавая дубли? Я с этим сталкивался не раз, особенно в начале своего пути автоматизации.

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

Читать далее

Spring Boot наконец получил нативную поддержку gRPC

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

Забудьте о сторонних стартерах и костылях — Spring gRPC 1.0 GA уже здесь. Теперь можно строить высокопроизводительные RPC-сервисы с Protocol Buffers прямо из коробки, без плясок с бубном.

В новом переводе от команды Spring АйО рассмотрим пошаговую миграцию со старых решений, генерацию кода из .proto, и сравнение с тем, как это работает в Quarkus. 

Читать далее

Prompt Caching: токены LLM в 10 раз дешевле — но за счёт чего?

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

Команда AI for Devs подготовила перевод и разбор статьи о Prompt Caching — технологии, которая делает входные токены LLM в разы дешевле и заметно снижает задержки. Внутри — подробное объяснение, что именно кэшируют OpenAI и Anthropic, как KV-кэш связан с attention в трансформерах и почему это не имеет ничего общего с повторным использованием ответов.

Читать далее

Получаем красивый автомобильный номер при помощи TypeScript

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

Большинство людей не задумывается о случайном наборе букв и цифр, выдаваемых им Департаментом транспортных средств.

Но я не такой.

В Интернете я всегда стремлюсь получить понятный и запоминающийся цифровой идентификатор. Многие годы мне удавалось подбирать идентификаторы в виде моего имени + фамилии в Instagram* (@jlaf) и осмысленных слов на других платформах (@explain, @discontinue). Поэтому когда ДТС в третий раз прислал мне письмо с напоминанием о необходимости обновления номера, у меня сработал тот же инстинкт: почему я даже не задумался о том, чтобы получить номер с красивым сочетанием символов?

Читать далее

Как Apple пропатчила «антеннагейт» в 20 байт

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

Хотите увидеть нечто любопытное? Вот, как устранили проблему «антеннагейта» на iPhone в 2010 году. 20 байт.

iOS 4.0: 8d ff ff ff 91 ff ff ff 95 ff ff ff 99 ff ff ff 9d ff ff ff iOS 4.0.1: 86 ff ff ff 98 ff ff ff 9e ff ff ff a7 ff ff ff b0 ff ff ff

Контекст: в 2010 году, когда выпустили iPhone 4, пользователи заметили, что если взять телефон определённым образом, то количество полосок сигнала сети падает с 5 до примерно 2. Спустя насколько недель компания опубликовала письмо, в котором свалила вину за это на неправильную формулу.

Читать далее

Экспериментальная система skills в OpenAI Codex: как агент учится пользоваться инструментами

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

В Codex появилась экспериментальная фича — skills: декларативное описание локальных «навыков» агента с автоматическим discovery и строгими правилами применения. В статье разберём, как это работает под капотом, зачем нужно и как использовать это в своих проектах.

Читать далее

Настраиваем ИИ-помощника бесплатно и без вендорлока в IntelliJ IDEA, GoLand, WebStorm, OpenIDE и GigaIDE

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

AI-помощники в IDE — уже не фантастика, а ежедневная реальность. Но как сделать так, чтобы они действительно помогали, не лезли не в тему, не сливали код в облако и не требовали подписку на каждого чиха? Ответ — Continue: open source AI-ассистент, который интегрируется с IntelliJ IDEA, GoLand, WebStorm, OpenIDE и другими IDE на базе IntelliJ Platform. 

Он предоставляет автодополнение, чат, команды над выделенными фрагментами и даже агентный режим с патчами на несколько файлов. Главное — вы выбираете модель и правила игры.

Читать далее

Защита контейнеров изнутри: как работает первый российский open-source-инструмент для мониторинга рантайма

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

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

В данном случае на классические средства защиты рассчитывать не приходится: они охраняют контейнеры снаружи и не видят, что происходит внутри. А большинство инструментов для выявления угроз в среде выполнения — сложные и дорогие. Тем не менее выход есть: недавно специалисты из команды PT Container Security представили рынку первое в России открытое решение для защиты рантайма контейнерных сред — Runtime Radar. Подробнее о нем в нашей статье рассказывают руководитель разработки Никита Ладошкин и эксперт Виталий Шишкин (@JCD3nt0n).

Читать далее

Эволюция плеера RUTUBE: от монолита к гибким модулям

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

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

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

Читать далее

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

Настоящее и будущее поиска в Ecommerce

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

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

Читать далее

Использование библиотеки spaCy для поиска сущностей в тексте

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

Снова приветствую всех читателей Хабр.

В предыдущей статье был приведен пример создания кода проекта для задачи автоматизации обработки данных, в результате чего получилось подготовить нужную информацию по модели данных ЛОЦМАН: PLM. Эти данные планируется использовать для построения механизмов обработки поисковых запросов пользователей к базе ЛОЦМАН:PLM — в частности, для распознавания сущностей в тексте запроса. Это позволит понимать, на какие объекты модели данных ссылается пользователь: изделия, их параметры, типы документов и так далее.

Для решения новой задачи я решил опробовать возможности библиотеки spaCy, в которой сущности можно распознавать на основе заранее заданных паттернов. В ходе экспериментов с библиотекой и её модулями EntityRuler и SpanRuler я столкнулся с рядом особенностей, и в данной статье делюсь накопленным опытом и наработками — надеюсь, они окажутся полезными и для вас.

Читать далее

Я написал алгоритм вычисления дат, который на 30–40% быстрее остальных

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

В этой статье я представлю мой завершённый очень быстрый алгоритм преобразования дат.. Он обеспечивает существенный прирост скорости, по величине сравнимый с приростом, достигнутым предыдущим самым быстрым алгоритмом (Neri-Schneider 2021) относительно его предшественника (C++ Boost). Полная реализация алгоритма на C++ выпущена как свободное и бесплатное ПО (лицензия BSL-1.0).

Алгоритм генерирует точные результаты за период ±1,89 триллиона лет, поэтому подходит для обработки полного 64-битного времени UNIX (в секундах).

Читать далее

Обзор Divoom Times Gate для любителей кастомизации

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

Привет, Хабр! На связи Владимир Туров, разработчик в Selectel. В рекомендациях одного маркетплейса мне попалось чудо китайской киберпанковой мысли — часы и по совместительству пиксельный дисплей Divoom Times Gate. Мне понравился визуальный стиль и потенциальная возможность выводить любую информацию. У часов есть свое приложение с регистрацией, что навевает грустные мысли… Вдруг часы управляются исключительно через серверы производителя? 

Я купил девайс и немного разобрался в его интерфейсах. В этой статье проведу минимальный обзор устройства и расскажу про возможности API и локального управления на примере шуточной интеграции с Baldur’s Gate 3.

Читать далее

Как я писал книгу «Python для инженерных задач»

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

Пост о том, как появилась идея написать книгу «Python для инженерных задач», и о том, как эта идея реализовывалась.

Читать далее

10% на LLM и 90% на инженерию: как российские компании используют ИИ

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

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

Продолжаю делиться материалами живых дискуссий, которые идут на телеграм-канале Dev Q&A. На этот раз тема — выбор между open source и коммерческими LLM для корпоративных задач. Обсудили главные болевые точки: почему почти все корпоративные заказчики требуют он-прем, как узкоспециализированные модели обходят универсальные решения, насколько реален GPU-дефицит для практических задач.

Читать далее

Трактор без тракториста: почему разработка не упрощается при наличии современных инструментов

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

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

Продолжаю делиться дискуссиями из нашего телеграм-канала Dev Q&A. На этот раз собрались поговорить о том, почему при всём богатстве инструментов — Kubernetes, CI/CD, low-code, AI-ассистенты — разработка не становится ни быстрее, ни дешевле.  Собрал ключевые мысли в статью. Получилось про три столпа эффективности, про хаос который понятнее порядка, и про то, почему скрам по книжке остановил компанию на две недели, а Waterfall принёс миллиард. 

Читать далее

Вклад авторов