Хабр. Разработка

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

    В .NET живёт старый, понятный инструмент для конкурентной обработки — BlockingCollection<T>. Коллекция, которая упрощает модель producer–consumer, даёт строгую ограниченную вместимость и предсказуемую блокировку при пустоте или переполнении. Да, у нас есть Channel<T>, есть TPL Dataflow, есть миллион самодельных очередей на SemaphoreSlim. Но когда нужны простые правила и железный backpressure без BlockingCollection по-прежнему закрывает задачи хорошо.

    Читать далее
  2. Пару дней назад я наткнулся на пост на HN про игру Tron Light Cycle. Если вы не знаете, что такое Light Cycle — позор вам. Кто только не писал Light Cycle. На самом деле, игра достаточно простая. И её писали раньше чисто для тренировок. Написать её просто, и в ней достаточно сложно что‑то запороть.

    Но, кто‑то всё‑таки умудрился.

    Читать далее
  3. Рассмотрим, как добавить конфигурационную activity для виджета, как сохранять, доставать и применять настройки.

    Читать далее
  4. Российский ученый сделал научное открытие в области сверхпроводимости — он обнаружил, что в тонкий слой нормального металла (N), покрывающий сверхпроводник, могут входить и там находиться вихри, несмотря на малую толщину N слоя, а также в N слое может существовать пространственно-модулированное безвихревое состояние. Работа была опубликована в Physical Review B.

    В новом исследовании было обнаружено, что в тонкий нормальный слой, покрывающий сверхпроводник, могут входить и там располагаться вихри. Известно, что из-за проникновения сверхпроводящих электронов в нормальный слой в нем наводится сверхпроводимость, и появляется своя длина когерентности xN, которая может быть много больше xS. Удивительным свойством данной системы оказалось возможность размещения в N слое вихрей, несмотря на его малую толщину dN<<xN. Этот результат противоречит устоявшимся представлениям о том, что размер сверхпроводника должен превышать xS или xN, чтобы в нем мог разместиться вихрь.

    Читать далее
  5. Последние годы у нас был рефлекс: нужна мелочь — ставим библиотеку; нужен каркас — берём шаблон; надо что‑то «на лету» — подключаем генератор кода. С появлением рабочих моделей кода появился более приземлённый путь: сформулировать требование, написать тесты и получить небольшой, понятный модуль без лишних зависимостей. Это не война с OSS, а сдвиг точки равновесия: сложное и критичное остаётся за проверенными библиотеками, а утилитарное всё чаще выгоднее сгенерировать под себя. Дальше — что именно поменялось, где ИИ «откусил» повседневные задачи, где границы и какие практики работают. При этом пишу с позиции алготрейдинга — поэтому примеры и формулировки из этой области; но сам подход уже заметно работает почти во всех направлениях разработки.

    Читать далее
  6. Всем привет! С вами Дима Юдин — технический лидер по развитию искусственного интеллекта, а сегодня еще и ведущий трека про AI&ML. Прямо сейчас проходит наша вторая технологическая конференция — GoCloud Tech 2025. Поделюсь live-контентом и атмосферой, фидбэком участников и их мыслями о том, что они думают о будущем с AI.

    Узнать больше
  7. Всем привет! Я являюсь создателем распределённого поисковика rats-search на базе DHT ( GitHub ). Его принцип работы довольно прост: поисковик собирает торренты у всех участников сети и формирует большую распределённую базу для поиска, включая метаданные (например, описания и прочую информацию).

    В этой статье я хочу рассказать о своей новой библиотеке для построения распределённых приложений (p2p), где знание IP-адресов участников не обязательно, а поиск ведётся через различные протоколы — DHT, mDNS, peer-exchange и другие. Думаю, с учётом постоянных неприятностей, которые происходят вокруг, это может оказаться полезным ;-).

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

    Читать далее
  9. Привет дорогой читатель, не спеши листать дальше, ведь тут очередной раз «без всякого вранья», автор пишет про то как он за 1-у неделю сделал игру своей мечты и заработал миллионы миллионов...Ладно, шучу. Хочу просто жестко проехать по вот таким вот статьям.

    Много «букаф» не планирую, хотя как пойдет. Итак — добро пожаловать в Netkot бар:‑)

    Читать далее
  10. Привет, Хабр!

    Монорепозитории удобны, пока CI не начинает пробегаться по всему дереву. Сегодня рассмотрим, как на GitLab собрать внятный pipeline для монорепы так, чтобы на каждое изменение реагировали только нужные куски. Базовых кирпичиков тут три: rules:changes, условные include и тонкое клонирование репозитория.

    Читать далее
  11. Привет хабр!

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

    В этой статье расскажу о своём небольшом тесте open-source проекта CAI (Cybersecurity AI) от компании Alias Robotics, анонсированного 28 мая 2025 года.

    Читать далее
  12. Мир устроен так, что самые опасные угрозы обычно скрываются там, где их меньше всего ожидают. Мы в ИБ привыкли к фишинговым письмам и вирусам, но редко думаем, что обычная картинка в мессенджере может превратиться в инструмент шпионажа. Именно поэтому мы решили рассказать о громкой уязвимости PT-2025-34177 (CVE-2025-43300) – zero-day, которая, говоря простыми словами, позволяет злоумышленнику совершить атаку через вредоносную картинку, открытую пользователем на своем устройстве. И на этом примере показать, почему безопасность разработки — это не абстрактная теория, а жизненно важная практика для бизнеса, разработчиков, обычных пользователей и нас самих. Да-да, мошенники пишут даже сотрудникам службы ИБ, и картинки тоже отправляют.

    Читать далее
  13. В начале июля мы в Linx Cloud запустили облачную платформу на OpenStack. В процессе работы мы изучали открытые решения в этой экосистеме. Некоторые из них, хотя и не были для нас актуальны на текущем этапе, показались нам интересными, и мы решили поделиться находками здесь.

    Читать далее
  14. GameDev тернист и неисповедим. Как и любой проект, он проходит испытания кровью и потом, сражаясь с тварями, тьмой порождёнными: барнаклы, пиявки, муравьиные львы. И это ещё не сказочка, это только смазочка. Больше всего стоит остерегаться жуков хедкрабов. Да, это те самые баги в коде. Если их вовремя не убить монтировкой, то ваша участь — стать отвратительным кадавром. Предлагаем читателю побывать в роли Гордона Фримена, погрузиться в недры Source SDK и побороться с хедкрабами. В качестве монтировки же выступит PVS-Studio.

    Читать далее
  15. Привет, уважаемые Хаброжители ;-) Сегодня мы поговорим о данных, которые представляют собой весьма специфичный случай, а именно о «шумных» данных. Предлагаю вам поразмыслить на тему обратного инжиниринга применительно к таким данным и попытаться поставить всё с ног на голову. О чем речь: не так давно мы написали модель машинного обучения по предсказанию одного тренда и пытались улучшить ее предсказания, применяя различные модификации фильтра Калмана (Kalman Filter, EnKF, Kalman Filter + Numba (Just-in-Time), EnKF + Numba (Just-in-Time)). Другими словами, фильтровали обучающую и тестовую выборку в надежде поднять скор на модели, выделив более качественный сигнал. При этом получили, в целом, весьма хорошее решение. И тут мы начали размышлять: «Так, пааажди… Мы же просто учились всегда на отфильтрованных данных, почему ускорение кода даёт нам поднятие скора на модели, и более того, более качественную балансировку предсказания для наших классов?» Если вам интересно, что у нас получилось, то приглашаю под кат.

    Читать далее
  16. У нас в Высшей школе бизнеса ВШЭ есть хорошая традиция — два раза в год мы проводим очный фестиваль «Хочу в геймдев» в Москве. Следующий пройдет 27 сентября с 11:30 до 17:00. Приходите, будет интересно. Всё бесплатно, вход по пропускам, поэтому необходима регистрация. И трансляция тоже будет, ссылку в преддверии ивента разошлем всем зарегистрировавшимся. Под катом программа фестиваля.

    Читать далее
  17. Это — текстовая расшифровка небольшого доклада с  Форума молодых учёных, про Web 4.0: проблематика, решения и даже прототип, с которым можно невозбранно поиграться.

    Прикоснуться к будущему 🖐
  18. Привет, мир! Меня зовут Павел, я IT инженер и руководитель службы технической поддержки.

    Работая в формате крупного IT-аутсорсинга, мы в компании столкнулись с проблемой: использование общего WhatsApp/Telegram Web, подключённого на компьютерах сотрудников поддержки, оказалось неэффективным. Такой подход не позволял контролировать качество диалогов, а также затруднял перевод обращений клиентов в структурированные тикеты, вследствие чего была начата разработка коннектора к нашему корпоративному порталу Bitrix24.

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

    Читать далее
  19. Основная часть работы современных разработчиков ПО1 связана с API: публичными интерфейсами для общения с программой, например, API Twilio. Я потратил кучу времени на работу с API как их разработчик и пользователь. Я писал публичные API для сторонних разработчиков, приватные API для внутреннего использования (или для потребления одной страницей фронтенда), API REST и GraphQL и даже несетевые интерфейсы, например, для инструментов командной строки.

    Думаю, большинство рекомендаций по проектированию API слишком уж уходит в тонкости. Разработчики отвлекаются на обсуждения того, что же такое «реальный» REST, правильно ли использовать HATEOAS и так далее. В этом посте я попытаюсь рассказать всё, что знаю о проектировании хороших API.

    Читать далее
  20. Ваше взаимодействие с Claude Code всё ещё ограничивается простой схемой «ввод команды -> ожидание выполнения -> проверка результата»? Если это так, то вы, вероятно, упускаете его истинный потенциал. С сегодняшнего дня я запускаю серию уроков «Визуальное руководство по продвинутым методам работы с Claude Code», которая поможет вам исследовать те расширенные функции Claude Code, которые требуют первоначальных усилий для освоения, но после овладения ими значительно повышают эффективность работы.

    По сравнению с официальными руководствами, данная серия ставит перед собой цели:

    Читать далее