Рубрика «csv»

Всех с пятницей! В своём прошлом посте про хеш-стеганографию я предложил иной подход в стеганографии — не вкраплять никакой информации в контейнер, а просто упорядочивать контейнеры в нужном порядке и тем самым передавать скрытую информацию. Два дня назад romabibi опубликовал proof of consept для хеш-стеганографии в соц.сети вКонтакте.

Однако в использовании картинок как контейнеров есть важный изьян. Цитирую коммент alekseev_ap:

Всё это очень интересно, но КПД такой системы чрезвычайно низкий. Сколько надо отправить десятков (а то и сотен) килобайт чтобы передать строку из нескольких слов?!

Действительно, если изображение весит условно 0.5 — 2 Мбайт, а на каждое изображение мы передаем от 1 до 3 нибллов, то получаемая скорость очень мала: от 0.5 до 6 B/MB

Поэтому для практического применения нужно найти такой контейнер, который обладал бы следующими свойствами:

  1. был бы очень мал;
  2. при большом количестве контейнеров, стоящие друг за другом; не вызывал бы "подозрений";
  3. при смене порядка контейнеров, они бы не вызывали "подозрение".

Итак, капитан-очевидность решение: необходимо осуществлять хеш-стеганографию в больших датасетах. Одна строка — один ниббл (полубайт).

Хеш-стеганография в dataset-ах. На этот раз быстрая - 1

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

Среднее качество полноты извлечения ссылок на встроенные ресурсы html-парсерами Apache.JMeter
Среднее качество работы парсеров (для семи сайтов)

Предлагаю:

  • посчитать среднее качество полноты извлечения ссылок на встроенные ресурсы html-парсерами Apache.JMeter;
  • проверить правда ли извлечение ссылок в Apache.JMeter 3.0 стало более полным;
  • испытать в деле плагин CsvLogWriter.

Как гласит народная мудрость: Верить верь, но…
Читать полностью »

Плохой пример хорошего теста

Примечание переводчика:
Изначально статья задумывалась как вольный перевод текста Дона Дрейка (@dondrake) для Cloudera Engineering Blog об опыте сравнения Apache Avro и Apache Parquet при использовании Apache Spark. Однако в процессе перевода я углубился в детали и нашел в тестах массу спорных моментов. Я добавил к статье подзаголовок, а текст снабдил комментариями со злорадным указанием неточностей.

В последнее время в курилках часто возникали дискуссии на тему сравнения производительности различных форматов хранения данных в Apache Hadoop — включая CSV, JSON, Apache Avro и Apache Parquet. Большинство участников сразу отметают текстовые форматы как очевидных аутсайдеров, оставляя главную интригу состязанию между Avro и Parquet.

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

Как любой уважающий себя инженер, я подумал, что было бы неплохо провести полноценные performance-тесты, чтобы наконец проверить, на чьей стороне правда. Результат сравнения — под катом.

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

Работая над проектами связанными с авионикой мне потребовалось оформить несколько комплектов документации с полным описанием проекта. Также следовало учитывать требования многих ГОСТов на оформление и на содержание документации, таких как ЕСПД, КТ-178B и других.

Описание должно было в себя включать:

  • Планы разработки ПО
  • Требования к ПО
  • Описание реализации требований к ПО
  • Таблицы трассируемости(соответствия) требований к ПО и реализации
  • Описание тестов на ПО (Примеры и процедуры верификации ПО)
  • Таблицы трассируемости(соответствия) требований к ПО и тестов
  • Отчет об обнаруженных проблемах
  • Указатель конфигурации(описание версии ПО и совместимости со сторонним ПО и оборудованием)

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

Автоматизация оформления документации - 1

Далее в статье я расскажу как я решил эту проблему.

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

Cайт без доступов

По долгу службы на мои плечи легла задача перенести пачку(>100) статей с одного сайта заказчика на другой. Одно из условий было — переносить не только название и текст статьи, но и метатеги keywords и description. В итоге статьи должны были перекочевать в инфоблок битрикса.

В силу реализации сайта-источника на неком конструкторе сайтов сделать sql dump никак не представлялось возможным, т.к. все, что позволяла админка сего конструктора — выбрать шаблон, привязать домен и, как бонус, добавлять/редактировать контент. Не было там ни phpMyAdmin, ни ftp, ни какого-либо инструмента, позволяющего легким движением руки осуществить задуманное.
Читать полностью »

image
На сегодняшний день существуют два типа систем управления версиями: клиент-серверный и распределенный. Но несмотря на огромное различие между ними мы все-равно продолжаем использовать центральный сервер для синхронизации работы между участниками команды.
А что будет если в один прекрасный день центральный сервер сгорит?
Давайте это обсудим
Читать полностью »

Не многие разработчики наполняют сайт реальными, или похожими на них, данными. В большинстве случаев все заканчивается созданием категорий Тест1, Тест2… и товаров Товар1, Товар2… Естественно, это не может отразить/показать настоящее поведение сайта/шаблона. Если с товаром еще не всегда все плохо, то с категориями почти всегда что-то не в порядке. Читать полностью »

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

В результате слегка погуглив, но не найдя простого решения пришлось налабать скриптик на великом и могучем, который создает vcf-файл контактов, который в свою очередь легко импортируется в Андроид стандартными средствами телефона.
Читать полностью »

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

Он перепробовал множество конвертеров и способов, но все они либо не давали нужного результата — быстрого и бесплатного конвертирования в два клика, либо искажали информацию из-за кучерявой реализации локализации его версии Аутлука. Использовать привязку контактов к аккаунту он отказался по религиозно-политическим соображениям, велению внутренней морали или уклада жизни, я не уточнял.

В результате слегка погуглив, но не найдя простого решения пришлось налабать скриптик на великом и могучем, который создает vcf-файл контактов, который в свою очередь легко импортируется в Андроид стандартными средствами телефона.
Читать полностью »