Как стать автором
Обновить

Разработка

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

3 метода состязательных атак на глубокие нейронные сети: как обмануть ИИ

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

Состязательные атаки используют уязвимости глубоких нейронных сетей (DNN), внося минимальные изменения во входные данные, чтобы заставить модель ошибаться. Они часто незаметны для человека, но могут полностью изменить результат работы модели. В этой статье рассмотрим три популярных метода состязательных атак.

Читать далее

Как мы накормили драконов (и заработали кучу золота)

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

Старейшины говорят, что это история о масштабировании SaaS-приложения, но я таких слов не понимаю — слишком заумно. Для меня это история о золоте, драконах с всё возрастающим аппетитом и фермерах, которые кормят этих драконов.

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

Что делать, когда одна ферма больше не может прокормить всех? Как не дать городу сгореть от драконьего гнева? Зачем строить заморские колонии и создавать параллельные измерения?

За 10 лет наше королевство прошло путь от маленького города с одной фермой до федерации независимых государств, специализированных поселений и городов в параллельных мирах. И да, драконы всё ещё голодны.

Это сказка о том, как накормить растущих драконов и не потерять при этом ни золота, ни головы. С картинками, моралью и счастливым концом.

Узнать, как накормить драконов

Краткая история бесконечности. Часть 2

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

В прошлой статье мы остановились на том, как Коши навел порядок в матанализе, изгнав из него актуальную бесконечность. Казалось бы, всё устаканилось, и можно строить математику на строгих и достоверных основаниях. Но история сказала на это «три раза ха». С конца XIX века и по сей день в математике творится такое, что Аристотелю не привиделось бы и в кошмаре. Сегодня у нас в программе: множество множеств, бесконечность бесконечностей, несколько парадоксов и один глобальный кризис оснований математики. Сделайте глубокий вдох и ныряйте под кат.

Читать далее

ChatGPT o3 Pro: новый флагман OpenAI или маркетинговый ход? Разбираемся

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

OpenAI снова удивляет: новая модель ChatGPT o3 Pro обещает революцию в аналитике, науке и разработке. Но так ли она хороша? Читайте разбор архитектуры, тестов и подводных камней «самого вдумчивого ИИ» 2025 года.

В этом обзоре: бенчмарки (93% точности в математике, 84% в прочих областях), генерация 3D‑шейдеров, сравнение с DeepSeek R1–0528, Gemini 2.5 Pro, Claude Opus 4. А ещё мы проверили, как o3 Pro справляется с написанием рефератов и кодингом. Узнайте, стоит ли подписка за 200 $/мес своих денег и кому o3 Pro реально нужен.

Читать далее

«Где мои strings, чувак?» Или как организовать удобную работу команды по локализации интерфейсов мобильных приложений

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров790

Когда речь заходит о локализации приложений, многие представляют себе просто перевод текста на другие языки. Но на самом деле — это адаптация интерфейса и контента под конкретную культуру и привычки пользователей в разных странах. Здесь важно все: формат даты, стиль кнопок, длина фраз и даже выбор слов.

В мобильных приложениях весь текст, который видит пользователь, разработчики хранят в виде строк — strings. Когда приложение работает только на одном языке, процесс относительно простой: дизайнер обновляет тексты в макетах, разработчики — в strings.

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

В этой статье дизайнер интерфейсов CleverPumpkin Фёдор Миронов, расскажет, как наша команда справляется со сложностями локализации — путь от макета в Figma до финальной сборки на Android и iOS. Как синхронизироваться с разработчиками и переводчиками? Почему Crowdin стал нашим незаменимым инструментом и как с его помощью команда избегает хаоса, экономит время и ресурсы, повышает качество перевода и ускоряет релизы.

Читать далее

Опыт использования ИИ Claude для написания мобильного приложения

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

Часть 2: Загрузка данных and Improving или "Хождение по промтам"

Цель этой публикации — показать процесс взаимодействия с ИИ при написании мобильного приложения. Обычно в таких историях публикуют исходный промт, а затем готовый результат. Здесь же хотелось показать более подробно именно сам процесс «Хождения по промтам», как по ходу выстраиваются «взаимоотношения» и происходит взаимообучение ИИ и разработчика. Думаю это будет полезно как уже работающим с ИИ для написания кода, так и тем, кто только начинает входить в этот сегодняшний main stream.

Статья написана в продолжение поста, в котором рассказывалось как с помощью Claude Sonnet 3.7 было написано небольшое мобильное приложение на SwiftUI. Это пользовательский список фильмов. И да, я знаю, что таких приложений вагон и маленькая тележка, но как любому разработчику не нравится брать что‑то навороченное и непонятное, а хочется, как всегда, сделать что‑то «простое и удобное».

Загрузка данных

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

Но текстовый файл, куда ранее вносил заметки о фильмах, получился очень большой. И по прикидкам вручную пришлось бы их вносить где‑то с месяц. Что, конечно же, надоест через несколько дней. И тогда появилась идея — а почему бы не использовать все тот же ИИ и для этой задачи?

Читать далее

Perfect Dark: файлообменная сеть самураев

Время на прочтение6 мин
Количество просмотров3.6K

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

Cети вроде eDonkey2000 (она же eDonkey или eD2k), Gnutella или Freenet до сих пор живы, хотя и не могут похвастаться значительным количеством пользователей. Ретроэнтузиасты даже сейчас поддерживают серверы Gopher, древнего протокола для распределенного поиска и передачи документов. А еще уже почти 20 лет существует P2P-сеть, которая была разработана анонимным программистом с ником «председатель». Подробнее об этом — дальше!

Читать далее

KubeVirt: глубокое погружение для администраторов VMware vSphere

Уровень сложностиСложный
Время на прочтение28 мин
Количество просмотров5.2K

KubeVirt — это расширение для Kubernetes, которое позволяет запускать виртуальные машины внутри K8s-кластера. Именно эта технология, пусть и существенно доработанная, лежит в основе Deckhouse Virtualization Platform. Недавно наша команда встретила статью Дина Льюиса, которая отлично объясняет внутреннее устройство KubeVirt, принципы его работы и то, как они соотносятся с более привычными многим концепциями vSphere. Мы решили перевести её для сообщества. 

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

Читать далее

Массовый фишинг с использованием элементов целевой атаки

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров750

Привет! Меня зовут Леонид Плетнев, я бизнес-партнер по информационной безопасности в Битрикс24. Это обзорная статья о фишинге и о новой тенденции — массовом фишинге, использующем элементы целевой атаки. Объясню, как действуют злоумышленники, и на что обратить внимание в противостоянии с ними.

Для начала немного статистики. По данным Центра мониторинга и управления сетью связи общего пользования (ЦМУ ССОП) Роскомнадзора (РКН) в 2024 году было заблокировано 30 тыс. фишинговых ресурсов — это в семь раз больше по сравнению с 2023 годом. В целом за 2024 год количество фишинговых атак в России выросло на 425%.

Значительная часть атак направлена на малый и средний бизнес — об этом тренде пользователей предупреждает Центр информационной безопасности и мониторинга инцидентов «1С-Битрикс». В период майских праздников был зафиксирован резкий рост целевых фишинговых атак на малый и средний бизнес — злоумышленники целились на компании, использующие самые популярные у бизнеса CRM-системы. От этой схемы пострадали уже есть пострадавшие компании.

Читать далее

Импортозамещение в проектах имплементации корпоративных информационных систем

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров784

Сегодняшняя ситуация вокруг спецоперации в Украине и последовавшие рестрикции со стороны европейских стран и США обнажили и без того известные проблемы импортозамещения западной продукции. Не исключением в этом вопросе стало программное обеспечение (далее – ПО), о старте импортозамещения которого заговорили еще в 2016 года. По изначальному плану замещение программного обеспечения должно было завершиться в 2024 году. Однако, не смотря на столь амбициозный план, ощутимых результатов это не дало как несколько лет назад, так и сейчас. Да, конечно, на протяжение всего этого времени публиковалось множество материалов на тему успешного замещения части западного ПО отечественным, однако это была лишь каплей в море ИТ-решений и технологий.

Последовавший в начале 2022 года уход из России практически всех известных вендоров от Microsoft, до SAP и Oracle, показал нашу сильную зависимость от прививаемого годами зарубежного ИТ-сервиса. По существу, начало полноценного замещения зарубежного ПО началось именно с этого момента, когда российские компании поставили перед фактом остановки поддержки, продления лицензий и работы самого ИТ-решения. Большинство ИТ-менеджером и директоров судорожно стало думать о переходе на российские аналоги, в частности на продукты 1С, как базового корпоративного решения. Однако, использование нового ПО на предприятии возможно лишь после его имплементирования, процесс которого оказался также сильно завязан на страны запада.

В это статье мы рассмотрим вопрос импортозамещения приложений класса ERP и ERP2, принимая во внимание тот факт, что это далеко не единственный компонент корпоративной информационной системы (далее – КИС). Для целей удобства повествования термины программное обеспечение, информационные и корпоративные системы, а также ERP-системы для нас будут тождественны. В работах [1-2] выделяют четыре основных уровня задач для внедрения КИС, к которым относят процессы, данные, приложения и технику, а также два вспомогательных: управление проектном и изменениями. Собственно говоря, процесс внедрения и импортозамещения ERP-систем мы будем рассматривать сквозь указанные 6-ть параметров.

Читать далее

Как разработчики убивают бизнес

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

Доброго времени суток!

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

Если вы проджект-менеджер и не поймёте содержание этой статьи, это только подтверждает, что вы не способны контролировать данный процесс, и вас практически наверняка водят за нос. Хотя текст по написанию планировался максимально понятным и наглядным с учётом специфики проблематики.

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

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

Читать далее

Недельный геймдев: #230 — 15 июня, 2025

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

Из новостей: почему и как провалилась Dragon Age: The Veilguard, Sony сняла региональную блокировку почти со всех своих игр в странах без PSN, сотрудников Ubisoft привязывали к стулу.

Из интересностей: интервью с командой CDPR и сотрудником Эпиков про демку Ведьмака 4, работа со светом в Godot, своя система анимации на C примерно в 14 раз быстрее Юнитишной.

Читать далее

Паяльная паста: все, что нужно знать. Памятка снабженца и шпаргалка технолога

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

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

Что входит в состав пасты? Как выбрать нужный тип припоя? Почему от характеристик флюса зависит не только качество пайки, но и долговечность всего изделия? И наконец, какие требования предъявляют к хранению и подготовке этого, казалось бы, простого вещества?

Эта статья – не просто технический разбор, а структурированное и живое исследование, написанное инженером для инженеров. Она поможет разобраться в нюансах, которые определяют успех сборки, будь то массовое производство или ручной монтаж опытного образца. Узнайте больше – и ваша пайка станет не просто хорошей, а безупречной.

Читать далее

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

Как мы участников ЦИПР обучали пилотированию МС-21

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

Многие из тех, кто подходил к нашему стенду на ЦИПРе в этом году, пытались угадать – «О, это Microsoft Flight Simulator?» или – «Вы что, игры разрабатываете?». Возможно, порой стоило согласиться – для непосвящённых наши демонстрации визуально больше похожи на игры. Но представьте себе игру, которая учитывает каждый параметр движения самолёта – от трения элеронов о воздух до запаздываний при передаче данных в системе управления. Игру, которая работает в режиме жёсткого реального времени и по мультиплексному каналу информационного обмена (МКИО) взаимодействует с бортовым оборудованием. Это уже не просто описание физики полёта, система управления или игра для PC. Это всё и сразу! Как так получается, мы с вами разберём по порядку:

Поехали!

Проектирование Информационных систем. Часть 8. Разработка логической структуры данных. 8.2. Шаблонный подход

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров2.3K

В 1950 году математик по имени Клод Шеннон опубликовал в журнале статью «Как запрограммировать компьютер для игры в шахматы». В этой статье он подсчитал, что количество комбинаций в шахматах будет равно 10120. Это на самом деле превосходит количество атомов в известной Вселенной, которое оценивается от 1078 до 1082 атомов. Но среднестатистическому шахматисту для успешного старта не обязательно изучать все существующие варианты начала игры, а достаточно выбрать несколько популярных дебютов за каждый цвет. По факту это использование формализованных шаблонов успешных тактических позиций для достижения желаемых результатов.

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

Приспособленец (Flyweight) - структурный паттерн проектирования, который нужен для эффективной работы с большим количеством мелких объектов.

Основная идея: разделить общее состояние объектов и вынести его в отдельное место, чтобы не плодить кучу дубликатов данных и экономить место.

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

Читать далее

Витрина данных: сверка с эталоном

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

Одним из этапов разработки витрин данных является тестирование результата и подтверждение корректности разработанного функционала. При этом организовано тестирование может быть по-разному.

Определим несколько видов тестирования:

1.     Технические тесты

Техническими тестами легко можно проверить корректность сборки витрины. Из основных видов технических тестов можно выделить:

·       Дубли - проверка на наличие дублей по ключу

·       Разрывы - проверка на разрывы в истории

·       Перекосы - проверка наложения исторических записей друг на друга

·       Даты - проверка корректности формирования дат

·       NULL в ключе - проверка NULL в ключевых и обязательных к заполнению полях

Подробно на этих тестах останавливаться не будем, информация по ним есть в открытом доступе.

2.     Бизнес-тесты

Это набор тестовых запросов, направленных на выявление ошибок в бизнес-данных. Как правило набор бизнес-тестов предоставляет владелец объекта.

Бизнес-тестов может быть великое множество, здесь все зависит от вашего бизнес-домена и от конкретных требований к витрине.

Приведу примеры некоторых бизнес-тестов:

Читать далее

Dagaz: Вторжение в трёхмерность

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

Эдвин Эбботт, "Флатландия"



Эта статья про застарелые комплексы, а также про успешное их преодоление. Восемь лет назад, Dagaz создавался не на пустом месте. В его основу легли Zillions, Axiom и… Jocly. Как раз с последним и было связано больше всего терзаний. Сейчас Jocly выглядит как 100%-ый 3D-проект, но так было не всегда. Когда-то в нём были 2D-игры (например манкалы). Где они теперь? Всё просто, разработчики выпилили их из проекта, поскольку посчитали, что те не вписались в новую концепцию трёхмерности. Было понятно, что это не путь для Dagaz, но какой путь для Dagaz было непонятно…
Читать дальше →

Модель суперпрогрессий и квантово-подобные свойства распределения простых чисел

Уровень сложностиСложный
Время на прочтение23 мин
Количество просмотров1.4K

Тэкс...
Сразу обозначу — я не математик, а посему прошу некоторого снисхождения к тексту ниже.

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

Читать далее

Пробный поход в веб-kubernetes-1С, вопреки привычкам

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

Поскольку компания со страшной силы использует 1С, то сложились некие неизменные традиции, одна из которых – это веб-публикации 1С. Плодятся они примерно так: 1 ИБ (информационная база) + например несколько ИБ с тем же смыслом = 1 отдельный web(iis)-сервер, а таких конструкций полно. Получается, что помимо лицензий, мы тратим кучу ресурсов просто на веб-доступ. Поступила идея, что пора экономить (а заодно отказоустойчивость). Пока на этапе экспериментов/тестов.

Читать далее

Как и когда использовать Celery — мой опыт на проде

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.2K

Как и когда использовать Celery — мой опыт на проде

Недавно мне пришлось обрабатывать множество долгих запросов к внешней API, и я внедрил Celery. В этом посте — практический разбор:
что такое Celery,
когда он реально нужен,
и какие подводные камни есть на проде.

Читать далее