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

Разработка

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

Как мы решали задачу оптимизации доставки грузов с использованием численных методов на примере метода имитации отжига

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

В статье хотим поделиться своим опытом реализации алгоритма решения задачи маршрутизации на основе метода имитации отжига в Norbit CDS – умной системе управления доставкой. 

Проанализировав материалы, можно обнаружить различные предлагаемые способы решения VRP-задач (Vehicle Routing Problem). Главная их цель – планирование маршрутов для транспортных средств оптимальным способом. Основными критериями, как всегда, остаются наикратчайший путь для транспортного средства и доставка услуг во все заданные точки. В рабочем месте логиста Norbit CDS задача не отличается. 

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

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Новости

Найм хакеров глазами рекрутера: аналитика и советы для пентестеров и хедхантеров

Время на прочтение 14 мин
Количество просмотров 605

Привет! Меня зовут Альбина Семушкина, я — лид рекрутинга в Бастионе. Именно я занимаюсь поиском и наймом хакеров, которые затем проводят оценку безопасности IT-инфраструктуры наших клиентов. Недавно я провела небольшой эксперимент и выложила на HeadHunter резюме пентестера, чтобы проанализировать предложения и требования работодателей. Сегодня расскажу о результатах и поделюсь профессиональными секретами.

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

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 0

Играем с KAT Walk C2. (часть 1: собственно, играем)

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

У меня есть дурная привычка: я играю в игры. Впрочем, понятие "играю в игры" довольно своеобразное.

Уже несколько лет как я обзавелся VR платформой от KAT VR. Согласно её внутренней статистики, я прошел на ней около 30 километров и сделал 40к шагов. Статистика, конечно, врёт и сильно, было гораздо, гораздо больше. Однако же да, на ней я играл гораздо меньше времени чем с ней.

Впрочем, обо всём по порядку.
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 2

Методика D.I.Y. проекта. Стратегия выживания

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

Каждый, кто начинал D.I.Y.-проект, помнит душевный подъём вначале, когда ты полон идей и решимости воплотить их в жизнь, а затем угасание энтузиазма, чем дальше, тем больше. И если в коммерческой разработке вероятность достижения целей проекта в срок и в рамках бюджета и так не очень высока, то вероятность завершения D.I.Y.-проекта хоть с каким-нибудь положительным результатом – ещё ниже. Всегда найдётся что-то более срочное, более важное, да и более выгодное тоже, и выделенные на D.I.Y. деньги и время уйдут туда.

Бывает и так, что энтузиазм не угасает, но после многочисленных безрезультатных попыток и серьёзных материальных вложений становится предельно ясно, что целей D.I.Y.-проекта достичь невозможно. Результатами такого проекта становятся все пять стадий принятия неизбежного, и радостно от этого никому не бывает.

При этом D.I.Y.-проекты нужны для творческой самореализации, а не для того, чтобы быть как тяжёлый чемодан без ручки, который и нести тяжело, и бросить жалко. И этот рассказ о том, как организовать свой проект так, чтобы, с одной стороны, достичь поставленных целей без каких-либо существенных затрат, а с другой, иметь возможность при необходимости закрыть этот проект без всякого сожаления.
Как это работает
Всего голосов 27: ↑26 и ↓1 +25
Комментарии 4

Истории

Как защитить бизнес при внедрении LLM (часть 1)

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

Новый мир с LLM — прекрасен! Нам, инженерам, он открывает много перспектив. А тем, кто его незаконно использует — предоставляет новые страшные инструменты. Как же защитить свой бизнес от угроз нейросетей?

Меня зовут Евгений Кокуйкин и я — руководитель AI продуктов компании Raft. Занимаюсь внедрением технологий искусственного интеллекта. В течение карьеры работал с протоколами баз данных, проводил фишинговые тренинги и аудит веб приложений. Расскажу про безопасность решений на больших языковых моделях!

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 2

Подкаст «Скрамное IT»: о чем говорят айтишники (и что они недоговаривают)

Время на прочтение 4 мин
Количество просмотров 494

Привет, уважаемые хабровчане!

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

Читать далее
Всего голосов 6: ↑3 и ↓3 0
Комментарии 1

Проверка мужского здоровья, печать книги с постами из соцсетей – эти и другие российские стартапы

Время на прочтение 3 мин
Количество просмотров 343

10 новых российских проектов для подбора ИТ-решений, общения в команде, внедрения партнерки в SaaS-сервисы, совместного выбора еды, автоматизации процессов и многого другого. Битва за «Продукт недели» началась!

Product Radar — здесь каждую неделю публикуются лучшие онлайн-сервисы и железки от русскоязычных команд.

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 1

Как перестать переусложнять и начать жить

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

Мое наблюдение состоит в том, что мы — разработчики и продукты, сильно переусложняем, осознанно или нет, но всякие «„Архитектурные комитеты“, „Планирования“, „Апрувы у 50 отделов“ и деплои в 2-часовые окна, простыни текста сопровождающие простейшие фичи — это просто какой‑то бич современной разработки. Умные дяди с 20 летним опытом за плечами, с невозмутимыми лицами сутки напролет на созвонах обсасывают простейшие вещи вроде замены кнопки. Что это? Следствие усложнения программного обеспечения или засилие не тех людей не на тех местах? Или следствие входа в индустрию новичков, стремящихся простое сделать сложным?

В статье мы разберем что такое „переусложнение“, дадим ему определение и на реальных примерах разберем во что это выражается и как с этим бороться.

Читать далее
Всего голосов 14: ↑13 и ↓1 +12
Комментарии 6

Большой код. Учимся генерировать F#-исходники с помощью Fantomas. Часть 3. Модули и типы

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

В прошлых двух частях мы ознакомились с синтаксической моделью F#-кода и с инструментами для неё. Объёмный пример туда уже не влез, но необходимость в нём осталась. Так родились ещё две заключительные части цикла. Их объединяет общий проект, но в остальном они представляют собой сборную солянку фактов, практик и наблюдений, которые было бы трудно разместить в каталогизированной документации.

Мы возьмём сугубо игровую задачу с понятным результатом и на её примере узнаем:

• на какие ноды AST стоит обратить внимание в первую очередь;
• где Fantomas-у нельзя доверять;
• где можно хакать;
• где лучше придерживаться пуризма;
• и как на F# можно строить Fluent API.

В этой части мы сосредоточимся на общей организации генератора, входных данных и основных элементах AST. В следующей сделаем то же самое, но на более сложном уровне, сместив повествование в сторону устройства Fluent API.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Инструкция по SCA: генерация SBOM, инструменты, отличия

Время на прочтение 11 мин
Количество просмотров 165

Анализ сторонних компонентов ПО становится всё более актуальным в свете увеличения числа уязвимостей в открытом исходном коде. Популярные репозитории содержат более 20 тысяч потенциально опасных пакетов. Сегодня мы поговорим о спецификации SBOM (Software Bill of Material), обсудим, в каких сферах она используется, какими форматами представлена и какое применение находит в информационной безопасности, в частности, в рамках SCA-анализа.

Эта статья будет интересна как специалистам ИБ, так и разработчикам, желающим сделать свой продукт безопаснее.

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 0

Прямое моделирование: изменение топологии и адаптация скруглений

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

Евгений Кондратюк, математик-программист, C3D Labs, представляет обзор возможностей геометрического ядра C3D в области прямого моделирования, или прямого редактирования.

Геометрическое ядро C3D обладает функционалом, который позволяет работать с моделями без истории построения. Например, теми, которые были получены из импорта, или теми, у которых нет истории по каким-либо другим причинам. Такой функционал предусмотрен для работы непосредственно с гранями тела — либо с отдельными, либо с группами. В ядре C3D имеются такие опции, как удаление граней, очистка скруглений, отделение части тела, выступающих фичерсов, замена гладко стыкующихся граней одной гранью, замена одной грани сплайн-поверхностью для последующих модификаций и других действий, удаление вершин на открытых оболочках. Отдельный блок отвечает за модификацию граней — параллельное перемещение, перемещение грани по нормали, вращение грани относительно некоторой заданной оси и изменение радиуса скругления. Рассмотрим иллюстрации, демонстрирующие содержание данного функционала.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

ПИУ-2. Оживляем плазменный текстовый индикатор из СССР

Уровень сложности Средний
Время на прочтение 17 мин
Количество просмотров 1.1K
Приветствую всех!
Месяц с небольшим назад я рассказывал о таком девайсе как МС6205. Тема подобных экранов меня заинтересовала, и вот ко мне в руки попал другой экземпляр, однострочный и с более простым управлением. Тем не менее, несмотря на схожий вид, внутри он устроен совершенно иначе — если в МС6205 был матричный индикатор, то тут используется панель с самосканированием. Как же оно работает и как это запустить? Давайте разбираться.



Итак, в сегодняшней статье поговорим о семействе советских текстовых индикаторов ПИУ. Узнаем, как они устроены и как работают. Попутно поговорим о текстовых газоразрядных дисплеях с самосканированием. Традиционно будет много интересного.
Читать дальше →
Всего голосов 21: ↑21 и ↓0 +21
Комментарии 8

Дави жуков

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

Существует много курсов программирования и повышения IT-квалификации, но ни на одном из них не учат системно искать и исправлять ошибки. В реальных крупных проектах до 30% времени может уходить не на написание нового кода и фич, а на поиск первопричин неисправностей и их устранения. Именно недочёты и ошибки будут мешать вашему клиенту составить положительное впечатление о продукте, а в некоторых случаях они полностью блокируют процесс. Кроме того, инженер, который только пишет новый код и не решает ошибки, не получает архитектурный опыт и не расширяет кругозор, что приводит к появлению новых недочётов в проектах. Я опишу наш инструментарий для исправления ошибок в веб-приложениях и поделюсь опытом.

Читать далее
Всего голосов 13: ↑12 и ↓1 +11
Комментарии 1

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

DI CONF SMM — большая конференция по соцсетям в России
Дата 2 марта
Время 09:30 – 18:00
Место
Краснодар Онлайн
Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн

Gemini ➜ OpenAI API прокси. Serverless

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

API Gemini бесплатен, но существует множество инструментов, которые работают исключительно с API OpenAI.

Проект openai-gemini даёт позволяет с лёгкостью создать персональный Gemini API-endpoint, совместимый с OpenAI, бесплатно.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Halloween Protection

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

В предыдущей статье Внутренняя оптимизация операций изменения для индексов было рассказано о том, что планы запроса для UPDATE состоят из двух частей: курсора чтения, который выбирает строки, которые необходимо изменить, и курсора записи, который и выполняет изменения. SQL Server использует такую логику изменения, следуя которой курсоры чтения и записи в плане с UPDATE выполняются двумя отдельными шагами или фазами. Другими словами, фактическое изменение в строке не должно влиять на выбор строк изменения. С этим связана описанная ниже проблема, для преодоления которой нужно обеспечить такую работу курсора записи в плане с UPDATE, чтобы он не влиял на курсор чтения, эта проблема известна под названием «Halloween Protection». Такое имя она получила поскольку была обнаружена исследователями IBM более 30 лет назад в Хэллоуин.

Читать далее
Рейтинг 0
Комментарии 0

Как расширить возможности стандартного Enum

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

А может всё-таки есть способ сделать такой Enum, используя стандартную библиотеку Python?!

Под катом будем разбираться в существующих вариантах решения. 

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 1

Что такое архитектура приложений MACH и есть ли там технологический прорыв — кроме пиара и маркетинга

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

Вы наверняка слышали термин «MACH-архитектура», которая включает в себя Микросервисы, API-First дизайн, Cloud-Native инфраструктуру и Headless фронтенд. На Хабре тема MACH архитектуры практически не поднимается ввиду как сложности полной реализации и того факта, что MACH обычно ассоциируют только с E-Commerce уровня enterprise. Настораживает, что вокруг МАСН много пиара, но очень мало кейсов внедрений. Собственно, данный обзор — об этом.

Читать далее
Всего голосов 2: ↑2.5 и ↓-0.5 +3
Комментарии 0

Что нового в планировщике / оптимизаторе запросов Postgres 16

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

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

Если вы посмотрите на PG16 release notes, то увидите некоторые из этих улучшений. Но из-за объема изменений, вносимых в каждом выпуске PostgreSQL, невозможно предоставить достаточно подробную информацию о каждом изменении.

В этом посте вы получите глубокое представление о 10 улучшениях, внесенных в планировщик запросов PostgreSQL 16. Для каждого из улучшений будет сравнения выходных данных планировщика PG15 и PG16, а также примеры того, что изменилось, в виде автономного теста, который вы можете попробовать сами.

Читать далее
Всего голосов 13: ↑13 и ↓0 +13
Комментарии 0

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

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

Всем привет, вас ждет история, разрывающая стереотипы! Многие до сих пор считают, что “девушка в IT — это горе в семье”. А у нас в компании есть живое опровержение этой идеи — наша руководитель отдела разработки Ксения Липская.

О том, как “девочка-девочка” учится на айтишника, уходит и возвращается к IT-истокам, секретах управления и увеличении скорости разработки — расскажет сама Ксения. А я всего лишь записал этот рассказ и задавал уточняющие вопросы ;)

Читать далее
Всего голосов 11: ↑4 и ↓7 -3
Комментарии 3

Как я перестал бояться и полюбил автоматизацию мобильных приложений — Robot Framework

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

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

Это, конечно, не так. Я предлагаю вам познакомиться с Robot Framework — инструментом, который позволит писать автотесты, даже если у вас не было никакого опыта программирования.

Изучить Robot Framework
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0