Обновить

Разработка

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

Хватит кормить облака: переезд пет-проектов на старый ThinkPad с разбитым экраном

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

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

В какой-то момент жаба победила. Я посмотрел на полку, где пылился списанный корпоративный ноутбук с мертвой батареей, и решил: пора.

Если вы думаете, что это история про успешный успех и экономию - вы ошибаетесь. Это история про боль, перегрев и Docker на bare metal, но я ни о чем не жалею.

Вводные данные были так себе.

Ноутбук 2015 года. Core i5, 8 ГБ памяти, ssd на 256. Экран разбит, клавиатура залита кофе еще прошлым владельцем.

Главный плюс ноутбука в качестве домашнего сервера - встроенный ups. Батарея держала минут 15, но этого хватало, чтобы пережить мигание света в подъезде и корректно погасить базу, если электричество отрубили надолго.

Я накатил туда ubuntu server, кинул ноутбук под шкаф в прихожей и подключил витую пару. Сразу совет: не используйте wifi для сервера, даже если роутер стоит в метре. Пакеты будут теряться, а вы будете терять нервы при дебаге, почему ssh отваливается каждые полчаса.

Читать далее

Митап n8n в Сан-Франциско: Нам подарили – 1000 премиум-доступов к n8n (забирайте без VPN и зарубежной карты)

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

Всем привет! С пылу с жару: мы только что вернулись с одного из главных митапов n8n в Сан-Франциско, где выступали сами основатели.

Внутри статьи: 3 инсайда о будущем n8n (новые фичи, ИИ-интеграции) и наш эксклюзивный бонус. Спойлер: Мы вывезли 1000 премиум-доступов к n8n, которые они выдали эксклюзивно для вас. Эти ключи очень ценны, и мы готовы подарить их нашим читателям.

Забрать подписку к n8n

Pydantic V2: Почему dataclasses вам больше не нужны

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

Вы пишите age: int, а Python спокойно пропускает туда строку. Программа падает, но не сразу, а в самый неподходящий момент.

Я расскажу, почему пора переходить на Pydantic V2. Он теперь работает на Rust (очень быстро), сам исправляет типы и спасает от глупых ошибок. Внутри: сравнение кода, работа с .env и немного практики.

Читать далее

Я всё сделаю сам: синдром спасателя у менеджера

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

Каждый менеджер хотя бы раз ловил себя на мысли: «Если не я, то кто?» Это вроде бы простая фраза, но за ней скрывается куда больше, чем желание увидеть проект успешным. Она задаёт тон всей культуре управления: той, где руководитель становится «героем», который раз за разом вытаскивает команду из дедлайнов, конфликтов и хаоса. 

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

Читать далее

Страх и ненависть вайб-кодинга: как я сделал для ребенка игру и попал в топ приложений на android-TV

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

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

Привет, Хабр! Меня зовут Леонид Калядин, я Cluster Data lead в МТС Web Services. Я отлично разбираюсь во всем, что связано с data, но вот в мобильной разработке — полный ноль. Во всяком случае был до недавнего времени. В этом материале я расскажу, как решил спасти дочь от надоедливой рекламы и навайбкодил Adventure Mazes — игру, которая вошла в топ Android TV в Google Play. Итак, кому интересны подробности — велкам под кат. 

Читать далее

Итоги встречи ISO C++ на Гавайях: начинаем полировку стандарта С++26

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

Привет! На связи Антон Полухин из Техплатформы Городских сервисов Яндекса. Сегодня я расскажу о ноябрьской встрече Международного комитета по стандартизации языка программирования C++, в которой принимал активное участие. Это была первая из встреч, связанных с «полировкой» C++26. Другими словами, новые фичи C++ пока не появятся — комитет должен только проработать замечания всех стран-участников, включая наши замечания от России.

Однако от плана немного отступили и втащили некоторые новинки как ответы на пожелания участников комитета: std::integer_sequence оброс новой функциональностью, а std::format научился в constexpr.

Помимо этого, поправили множество багов, перековыряли связку Hardening + Contracts, внесли улучшения во многие части стандартной библиотеки.

Читать далее

Почему все ненавидят 1С, но продолжают на нём работать?

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

Привет, Хабр! И тебе, случайный читатель, который зашёл сюда в перерыве между поиском ответа на очередную ошибку в типовой конфигурации — возможно, с горящим взором и трясущимися от гнева руками.

Сегодня поговорим о феномене: странной, почти мазохистской привязанности 1С-разработчиков к своему инструменту. Это как брак, в котором ты ежедневно угрожаешь разводом, но остаёшься — потому что «а куда деваться?».

Читать далее

Забавный парадокс отправки в канал в Go

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

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

(UPD - нет не единственный, смотри примечание в конце - код более похожий на то что можно встретить в жизни)

Читать далее

Превращаем C# в Python, JavaScript и F#

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

В С# 14 появился новый синтаксис расширений (extension members), позволяющий добавлять методы, свойства и даже перегружать операторы для существующих типов без создания врапперов и без изменения исходных типов.

Благодаря этому, стал возможен код как на обложке.

Выглядит, мягко говоря, необычно. Давайте разберёмся, что тут вообще происходит…

Читать далее

SVG, Canvas, WebGL, WebGPU — кто здесь вообще главный? Большой тест 2D-графики в браузере

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

В последние годы спрос на 2D/3D-инструменты в веб-сервисах растет довольно стремительно, технологии развиваются, появляются новые подходы и библиотеки — а вместе с ними растёт и путаница: что где использовать, где грань между похожими решениями и почему у разработчиков часто возникают противоположные мнения?

Так что я решила устроить небольшой тест 2D-решений: посмотреть, на что они реально способны, понять, почему результаты местами вызывают большое удивление, и ответить себе (и вам) на вопрос: а WebGPU вообще зачем?

Спойлер: всё далеко не так очевидно, как кажется.

Читать далее

Управление потоком в Kotlin Flow

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

Поколение большого пальца – вот как нас называли. Какие глубокомысленные переписки мы ухитрялись вести на кнопочных телефонах, набирая текст SMS большим пальцем асинхронно с конспектированием лекций…

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

Естественно, в Kotlin Flow, где данные текут непрерывным потоком и легко провоцируют избыточные реакции, эта проблема стоит особенно остро. Например, если мы построим на Flow систему автодополнений, то увидим что-то такое:

Читать далее

Разработка peer-to-peer мессенджера на Rust

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

История о том, как написать свой P2P-мессенджер, когда Discord и Telegram перестали устраивать. В статье разбирается устройство транспортного протокола с ECDH и ротацией ключей, решение проблем с NAT traversal, реализация голосовых звонков и работа с аудиоустройствами. Бонусом — откровенный опыт использования LLM для написания кода: что работает из коробки, а какие модули пришлось полностью переписывать.

Читать далее

4QS-преобразователь на подвижном составе переменного тока: принцип действия

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

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

Читать далее

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

Самый маленький микроконтроллер в мире

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

Недавно я получил письмо с embedded.com о новом микроконтроллере MSPM0C1104. Что в нем такого кроме размеров? Разбираемся.

Читать далее

Протокол TBFP

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

В этом тексте я бы хотел рассказать про простой бинарный протокол, который я сам придумал для всяческих нужд при разработке приборов на микроконтроллерах. Называется он TBFP (Trivial Binary Frame Protocol)

Читать далее

Nano Banana Pro и история развития ЭВТ

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

В настоящее время я занимаюсь подготовкой рукописи для второго издания книги «История моей страны. Записки военного инженера-программиста». Естественно, в ней много старых черно-белых фотографий разного качества. Это не только бытовые фотографии, но и уникальные фотографии вычислительной техники, которая сегодня не только не выпускается, но порой и не сохранилось ни одного экземпляра. В 90-е года эту технику бойко сдавали на драгметаллы. Но сегодня еще живут люди, которые работали в те времена, видели и даже творили на этой техники. Они могут рассказать, как и что выглядело. Я знаю многих людей глубоко пенсионного возраста, которые занимаются восстановлением старых фотографий в цвете. Это тяжелая и кропотливая работа. Но в конце августа сего года вышла модель генерации изображений Nano Banana от компании Google, которая просто совершила революцию в этом деле, но и она, несмотря на свои возможности, имела недостатки:

Читать далее

Baseline: октябрь 2025

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

Обзор на браузерные API, которые стали Widely available в октябре 2025. Раз в месяц я буду вам напоминать, что вы уже можете использовать в проде.

Каждый месяц выходят новые CSS-свойства, HTML-атрибуты, JavaScript-методы и WebAPI, но применять в проде мы их конечно же не будем. 2.5 года назад также каждый месяц выходили новые фичи в браузере, а вот их уже пора начинать применять.

Узнать, что можно взять в прод

Как забытый API-ключ открыл нам мир мошенников

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

Сегодня история на грани техники, психологии и детектива. Расскажу о том, как мы (я и мой коллега) попали во внутренние чаты мошенников и что из этого вышло.

Читать далее

За пределами embeddings: комбинируем векторный и лексический поиск для повышения релевантности

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

Привет, Хабр! В предыдущем материале мы упомянули, что при работе с текстовыми корпусами embedding-модели не всегда оптимальный инструмент. В этой публикации на примере задачи поиска релевантных документов по запросу рассмотрим ограничения такого варианта решения, разберем на практике гибридный подход и оценим его эффективность.

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

— сформулируем основные моменты, которые нужно знать и описать, прежде чем передать проект команде разработки;

— рассмотрим, как быстро проверить подходы к решению.

Читать далее

Настоящий Heavy Digital: цифровые инструменты, чтобы раскрыть любое дело

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

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

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

Читать далее