Те, кто занимаются 3d печатью, а, особенно, инженерной 3d печатью, для создания разнообразных технических конструкций, не понаслышке знают, что постоянно приходится ломать голову над прочностью получаемых конструкций.
Первым побуждением в этом процессе является «залить наглухо, на 100% — и гори оно всё…» (грешен, сам практикую :-B).
Однако, есть и гораздо более интересные варианты, которые позволяют добиться достаточно впечатляющих результатов…
Читать далееПротокол CalDAV существует с 2007 года (RFC 4791), и за это время он стал стандартом де-факто для синхронизации календарей. Казалось бы, стандарт — значит, всё одинаково. На практике же каждый крупный провайдер реализовал его по-своему, зачастую отходя от стандарта.
Для меня всё началось с простой задачи: автоматизировать управление своими календарями. Один pet-проект, один провайдер — ничего сложного. Но когда я решил попробовать поддержать второй, третий, четвёртый — оказалось, что CalDAV у каждого свой. В этой статье я расскажу, с чем вы столкнётесь, если решите написать клиент, работающий одновременно с Google, Apple, Яндексом и Mail.ru.
Читать далееИнтернет полон историй безупречного успеха: «Мы взяли модный фреймворк, переписали систему с нуля, и всё стало летать». Но реальный мир корпоративной разработки – это legacy. Это системы вроде Redmine, которые живут десятилетиями, хранят в себе терабайты критических данных, и чья миграция обойдется бизнесу слишком дорого.
Мы в команде ArcFront решили, что хватит терпеть интерфейсы из 2006 года. Вместо того чтобы убегать на платные облачные трекеры, мы совершили хирургическую инъекцию. Мы внедрили молниеносный React SPA прямо в ядро старого Ruby-монолита. Без микросервисов. Без CORS.
Рассказываем, как мы заставили старого пса выучить новые трюки: от архитектуры инъекции и парсинга Textile до психологии интерфейсов и нашего официального перехода на бизнес-модель Open Core.
Читать далееЧто делать, если автоматизация дома уже началась, деньги потрачены, кабели проложены, а подрядчик перестал отвечать на звонки?
В этой статье разбираем реальный проект загородного дома площадью около 500 м², который пришлось фактически восстанавливать после неудачного внедрения. Покажем архитектуру системы, расскажем о проблемах с проводкой, щитами и управлением шторами, а также о решениях, которые помогли завершить проект без переделки отделки.
Читать далее
Вероятно, вы хоть однажды наблюдали картину, когда заказчик макета пытается объяснить дизайнеру, что нужно исправить в оформлении, но диалог почему-то не клеится. Дизайнер обижается на критику своих творений, менеджер нервничает, сроки горят.
Я руковожу отделом дизайна в ЛАНИТ. В этой статье расскажу, как давать обратную связь дизайнеру, чтобы макеты становились лучше, а командное взаимодействие – комфортнее.
Читать далееВ последние годы недорогие ноутбуки часто уступали более дорогим моделям по качеству корпуса, автономности и экранам. Intel считает, что часть этих проблем связана не только с процессорами, но и с самим подходом к разработке устройств. Поэтому вместе с процессорами Wildcat Lake компания представила Project Firefly — набор стандартизированных решений для производителей ноутбуков.
Проект анонсировали вместе с запуском процессоров Core Series 3 (кодовое имя Wildcat Lake) в мае 2026 года в Китае. Что за инициатива? Если кратко, то вместо того чтобы просто выпустить новые чипы и оставить производителям самим решать, как собрать из них недорогой ноутбук, компания предложила готовый набор стандартизированных решений. Цель — использовать опыт массового производства смартфонов, чтобы снизить себестоимость и ускорить вывод устройств на рынок. Давайте разберем подробности.
Читать далееЯ наткнулся на подход к функциональным тестам, который меня по-настоящему удивил. Тесты в нём вообще не знают, что внутри Spring: стучатся в реально поднятый сервис по HTTP, как обычный клиент, гоняются параллельно и проходят за секунды. Я разбирал это на код-ревью и сначала прифигел, а потом не стал переходить на него сам, но кое-что забрал себе. В статье сравниваю оба подхода, разбираюсь где какой уместен, и показываю три вещи, которые подсмотрел и притащил в свой Spring
Сравнить подходыОпубликован Flatpak 1.18.0 — новый стабильный выпуск системы для сборки, распространения и запуска изолированных Linux-приложений. Flatpak позволяет разработчикам выпускать одно приложение для разных дистрибутивов, поставлять собственные зависимости и запускать программы в предсказуемой среде. Общее описание проекта приведено на сайте flatpak.org, а список изменений опубликован в официальном релизе Flatpak 1.18.0 на GitHub. Дополнительный краткий разбор выпуска опубликован Linuxiac в заметке Flatpak 1.18 Released with AMD Compute Interface Support.
Основные изменения Flatpak 1.18.0:
( читать дальше... )
Представьте измерительный инструмент с неприятным дефектом: чем выше его положение в системе, тем сильнее он врёт — и тем увереннее показывает, что откалиброван верно. Самопроверка всегда выдаёт «норма», ошибка не ловится изнутри в принципе. Инженер на этом месте напрягается: систематическая погрешность, замаскированная под исправность, — худший вид поломки. Так вот, у каждого из нас есть такой инструмент. В роли датчика в нём — другие люди, а измеряем мы их состояние. И похоже, он действительно врёт тем сильнее, чем выше мы поднимаемся
У каждого из нас есть способность, которой мы пользуемся постоянно и почти не замечаем, — умение считывать других людей. Понимать по лицу, голосу, паузе, что человек напротив на самом деле чувствует: раздражён, врёт, выгорел, вот-вот сорвётся или, наоборот, открыт. Это наш главный инструмент восприятия в любых отношениях — и в дружеских, и в рабочих. А для того, кто руководит людьми, он же — основной рабочий инструмент: на нём держатся и найм, и мотивация, и разрешение конфликтов.
У этого инструмента есть особенность, про которую редко думают. Как и у зрения, у него есть слепое пятно — участок, который мы не видим и, что важнее, не знаем, что не видим. У глаза слепое пятно физиологическое: там, где зрительный нерв входит в сетчатку, рецепторов нет, и мозг просто достраивает картинку, не сообщая нам о провале. Со способностью считывать людей происходит похожее, и подтверждается это исследованиями: она может слабеть — а ощущение, что мы понимаем других хорошо, при этом не слабеет, а иногда даже растёт. Мы видим хуже и одновременно увереннее считаем, что видим ясно.
Читать далееКогда я отвечал за бизнес-юнит МСБ в Кайтене, мне нужно было посчитать юнит-экономику B2B SaaS с длинным циклом сделки. Задача казалась простой — поделить LTV на CAC и сравнить с порогом. Я неоднократно так делал для B2C для сделок короче месяца.
Взял свои старые таблицы и попробовал адаптировать их под новый процесс. Не сработало. Цифры расходились в разы в зависимости от того, как считать, и ни одной нельзя было верить. Посидел подумал и выяснил, что, пожалуй, главная причина — это готовые формулы, которые привязывают расходы к месяцу привлечения, а сейлз ведет сделку месяцами.
Как считать CAC в B2BПривет, Хабр! Меня зовут Михаил Богатиков, я Android-разработчик в ПСБ. В своей работе я часто сталкиваюсь с задачей отображения сложных и динамических списков.
Казалось бы, RecyclerView — давно знакомый инструмент. Но когда данные становятся разнородными, а списки — большими, простой вызов notifyDataSetChanged() превращается в узкое место, вызывающее фризы и дергающуюся анимацию. Как перейти от лобового обновления к точечным изменениям? Как объединить несколько типов элементов в одном адаптере?
В этой статье я пройду путь эволюции работы с RecyclerView.Adapter:
- Разберу, как работает система уведомлений под капотом.
- Вспомню, как DiffUtil и ListAdapter спасли нас от ручных вычислений.
- Расскажу про AsyncListDiffer, ConcatAdapter и нюансы восстановления позиции.
- И наконец, покажу, как спроектировать универсальный адаптер с поддержкой разных ViewHolder, частичным обновлением (Payloads) и ViewBinding — с полным примером кода.
Поехали!
Читать далееВ свободное время я периодически захожу на Upwork, чтобы посмотреть, какие проекты там сейчас появляются и как устроен рынок изнутри.
Если убрать фильтры и посмотреть общий поток вакансий, довольно быстро становится видно типичную картину: большое количество разработчиков конкурируют за очень стандартные и недорогие задачи. В таких условиях основная проблема смещается не на поиск интересных проектов, а на скорость их обработки и подачи предложений. Это особенно заметно в сегменте разработчиков, которые работают на массовом рынке: важно быстро отсекать нерелевантные предложения и экономить connects.
Именно это стало отправной точкой для идеи Chrome-расширения, которое добавляет слой аналитики поверх списка проектов Upwork и позволяет быстрее принимать решение, стоит ли откликаться на вакансию.
Читать далееЯ много слышу о том, что у компаний не получается сделать так, чтобы их продукт продавали интеграторы.
Даже если есть приток новых партнеров, выйти на какой-то заметный уровень активных продаж не получается. В итоге партнерский канал растет медленно. Хотя, казалось бы, это база.
У меня есть свой взгляд на эту тему — все-таки 12 лет в роли CMO Битрикс24, где партнерская сеть насчитывает более 10 тысяч компаний, дает определенную пищу для размышлений. Но в этот раз я решила пойти другим путем и спросить самих интеграторов: а что им нужно, чтобы принять решение о работе с вендором?
Почему-то при работе с интеграторами компании чаще всего сосредоточены на том, чтобы рассказать о себе. Но гораздо реже задают простой вопрос: «А чего на самом деле хочет партнер?»
Мы сделали серию интервью с интеграторами и с удовольствием делимся ею с вами. Надеемся, будет полезно.
Первый разговор — с Марией Бар-Бирюковой, директором департамента e-commerce ГК «КОРУС Консалтинг».
Читать далееCodex хорош, пока не приходится в пятый раз объяснять ему одни и те же правила проекта: где проверки прав, как запускать тесты, почему не надо тащить старые alias-модули и что мы уже решали в прошлом чате.
Поэтому я сделал Hermes Codex Plugin — плагин, который хранит правила, summaries и прошлые решения в SQLite, ищет их через FTS5 и подкладывает Codex только маленький релевантный кусок контекста.
Читать далееЗапустил openai/gpt-oss-20b в варианте MXFP4 GGUF на обычном ноутбуке без дискретной видеокарты: только CPU, встроенная Radeon 780M и общая оперативная память.
Тест проводился на ASUS Vivobook S 16 M3607HA: Ryzen 7 260, Radeon 780M, 32 GB DDR5 5600, Windows 11 и LM Studio 0.4.16-1 x64. Модель ноутбука указываю не ради привязки статьи к конкретному устройству, а для воспроизводимости. В таких тестах важны не только CPU и RAM, но и охлаждение, лимиты питания и shared memory у встроенной графики.
Главный вопрос был практический: можно ли реально пользоваться локальной 20B-моделью на ноутбуке с 32 GB RAM, если отдельной видеокарты нет?
Сразу оговорюсь это не научный benchmark, а пользовательский case study на конкретном железе. Проверял скорость, расход RAM/CPU/GPU, поведение при разных лимитах контекста и качество ответов на технических prompt сценариях.
20B-модель, 32 GB RAM и встроенная графикаНа связи Сергей Смирнов, AI-инженер и основатель LLMStart.ru. Сегодня разбираем, как написать биллинг для продакшн ИИ-агента.
Когда ваш ИИ-бот начинает отвечать клиентам в B2B-сегменте, каждый его ответ стоит токенов. Чтобы экономика продукта сходилась, расходы на LLM нужно жестко контролировать и тарифицировать. Кажется, что достаточно просто прикрутить калькулятор, но на деле всё сложнее: один HTTP-запрос может дергать до пяти разных нейросетей, и не все они идут через стандартный граф фреймворка.
В новой статье на Хабре рассказываю: — Почему считать деньги по чатам — это путь к хаосу. — Зачем мы изобрели «микрокредиты» вместо наивных токенов. — Как протащить контекст биллинга через пять LLM-вызовов в одном запросе с помощью магии ContextVar + Mixin.
Разбор для тех, кто делает multi-tenant LLM-сервисы и уперся в ограничения готовых прокси-решений.
Читать далееПривет, Хабр! Меня зовут Виталий, я занимаюсь развитием Венчурной студии РСХБ и проектами для молодых ИТ-специалистов в команде РСХБ.Цифра. В этой статье расскажу о том, как мы в банке придумали сделать полноценную мобильную игру и зачем вообще финансовой организации понадобился такой, на первый взгляд, нетипичный продукт.
Читать про игруОбычно, когда речь заходит о корпоративной безопасности, все спорят про настройку VPN, межсетевые экраны, выбор EDR‑систем и Zero Trust. Сам кабель при этом воспринимается как нечто стерильное и надежное по умолчанию. Но что, если забытая Ethernet‑розетка в переговорной — это идеальная точка входа, полностью обходящая внешний периметр? Как работают пассивные сетевые TAP‑врезки, не имеющие IP‑адреса и невидимые для IDS? И почему ваша операционная система доверяет копеечному USB‑шнурку больше, чем вам самим?
Оставляем привычные метрики в стороне и спускаемся на физический уровень инфраструктуры, чтобы посмотреть на знакомое железо под другим углом.
Читать далееПродолжаю рассказывать широкой общественности об интересном ML проекте, результаты которого внедряются в реальный технологический процесс. В первой части разобрались, что такое глушение и почему важно уметь рассчитывать объемы жидкостей глушения. В этой части будет непосредственно все то, как мы решали эту задачу с помощью МЛ:
Построили двухконтурную систему: офлайн-обучение на XGBoost и CatBoost — и лeгкий онлайн-инференс через Flask.
Вместо одного .fit() с дефолтным лоссом внедрили K‑method — асимметричную функцию потерь. Теперь модель «боится» недолить жидкость сильнее, чем перелить, потому что в реальности эти ошибки стоят по-разному.
CatBoost лучше по удобству работы с «сырыми» категориями, XGBoost потребовал кастомного кодирования, но дал сравнимые метрики.
На малых данных (~350 строк) случайное разбиение творит хаос: метрики скачут от сида к сиду. Поэтому отбираем топ‑20 лучших random_state, а гиперпараметры усредняем частотным методом.
Весь пайплайн — от подбора параметров до прогона K‑сетки — завернули в Airflow ради повторяемости, а все эксперименты и логи складываем в MLflow.
Читать далееМы, devrel-ы, привыкли, что удивлять и креативить — это наша работа, поэтому к чужим приглашениям часто относимся со сдержанным профессиональным прищуром. Однако когда я получила пригласительное письмо на 20-й День рождения Хабра с темой «Дача 2.0», внутри что-то щёлкнуло раньше, чем я успела включить своего внутреннего скептика: я поняла, что точно не пропущу это событие.
Читать далее