Рубрика «XML»

Смотрю на этот текст и понимаю, что все пользуются ИИ, просто кто-то это хорошо скрывает.

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

Проблема не только в том, чтобы открыть сайт ЕИС и вбить пару фильтров. Проблема в том, что нужно быстро понять: подходит закупка или нет, относится ли она к нужной теме, есть ли там нужные работы, стоит ли тратить время на документацию.

Читать полностью »

Всем привет!

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

Читать полностью »

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

Дисклеймер (обязательно к прочтению)

Если вы гоняете клауд-код по подписке от антропиков за 20+ баксов и у вас все работает — это нормально. Если наоборот, вы попробовали этот самый вайб-кодинг и получили кучу бесполезного кода — это тоже нормально. У всех опыт разный, и я хочу примирить адептов двух лагерей, потому что каждый лагерь по-своему прав.

Я не собираюсь тут никого учить «как правильно». Все мои знания — от противного. Я могу лишь рассказать, чего делать точно не стоит, чтобы не сжечь нервы и бюджет.

Читать полностью »

Отладка с помощью сил древнего зла - 1

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

Читать полностью »

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

DITA расшифровывается как Darwin Information Typing Architecture. Фактически это формат, основанный на Читать полностью »

Команда AI for Devs подготовила перевод статьи о том, в каком формате лучше всего передавать таблицы LLM. Исследование охватило 11 популярных форматов — от CSV и JSON до YAML и Markdown. Результаты неожиданны: разница в точности достигает 16 процентных пунктов, а выбор формата напрямую влияет на стоимость инференса и стабильность RAG-пайплайнов.


Читать полностью »

Практика — лучший способ глубокого понимания теории. Рассмотрим на примере, как работают веб-сервисы с протоколом SOAP, для чего нужен WSDL и как он связан с XML-документом в теле POST-запроса.

Для изучения работы веб-сервисов на основе протокола SOAP 1.1:

  • разработаем клиентскую и серверную части веб-приложения на Python

  • проанализируем структуру WSDL 1.1 (Web Services Description Language) описания веб-сервиса, сгенерированную серверной частью

  • создадим пользовательское пространство имен в формате XSD (XML Schema Definition)

  • проведем тестирование приложения с помощью Postman

SOAP, REST и немного теории.

Читать полностью »

Привет! Сегодня расскажу, как я автоматизировал поиск внешних ссылок в Excel-файлах с помощью PowerShell, и какие технические сложности пришлось преодолеть по пути. История включает работу с COM-объектами, разбор ZIP-архивов, XML-парсинг, многопоточность и создание GUI на Windows Forms.

Предыстория и постановка задачи

Читать полностью »

Компактные структуры данных - 1

Введение

Несколько месяцев назад в поисках идей по ускорению кода я изучал множество научных статей по computer science. Не буду притворяться, что хорошо их понимал, но меня не пугает непонятное, и я готов признать своё невежество1. Я обнаружил статью, написанную пятнадцать лет назад2, в которой было множество новых для меня концепций. Мне никак не удавалось в них разобраться.

Что же делать дальше? Можно искать другие статьи, чтобы они заполнили мои пробелы. Это рискованное предприятие, потому что они могут запутать ещё больше, но избежать этого нельзя. Я нашёл статью с нужной структурой данных, в которой упоминался исходный код с веб-сайта. Код был написан на C++, а я работаю на Rust, но решил, что всё равно стоит на него взглянуть. Однако зайдя на сайт, я не обнаружил там ресурс, поэтому я написал владельцу веб-сайта, который оказался преподавателем computer science.

Этот преподаватель (Гонсало Наварро) очень тепло меня принял и сразу же ответил мне3 4. И только в процессе общения с ним я осознал, что видел его фамилию на множестве статей в этой области. Оказалось, я познакомился с одним из специалистов мирового уровня в области компактных структур данных (succinct data structure). Невежество может завести очень далеко.

Что же такое компактные структуры данных? Если вы изучали в последние десятилетия computer science, то могли сталкиваться с ними, но мне не доводилось встречаться с ними в процессе работы программистом, а если и доводилось, то я сразу же о них забыл. Но я считаю, что эти структуры данных обладают потрясающими свойствами.

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

Я решил, что стоит немного о них рассказать.Читать полностью »

Когда речь заходит о форматах обмена данными, сразу на ум приходят два давних соперника: XML и JSON. Это как сравнить эпическое повествование с краткой заметкой на полях. XML — это длинный роман, где каждый нюанс тщательно прописан и обрамлен тегами. JSON — это записка на холодильнике с краткими инструкциями. Оба формата выполняют свою задачу, но важно понимать, когда лучше использовать один, а когда другой. Ведь забивать гвозди молотком — это хорошо, а вот пытаться забивать им шурупы — уже не так весело.

Читать полностью »

https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js