суббота, 10 января 2015 г.

Если место R в жизни аудитора?

С полгода назад, делая обзор... Наверное "обзор" слишком громкое слово для столь скромного размера поста, скорее несколько мыслей о том, что платному софту  есть достойная альтернатива... В общем в списке  бесплатного аудиторского софта я уже упоминал R. Сегодня хочу остановиться на нем подробнее.
Но сначала небольшая подводка для отдельных  ортодоксов-староверов, которые уже наверняка начали ворчать что-то на подобии: "зачем нужно тратить время на изучение еще одного инструмента, если есть Excel и, для сложных случаев, SQL?". Если данный вопрос не мучает - можно пропустить пару абзацев. В самом деле, Excel - очень мощная штука, в которой можно сделать массу различной полезной аналитики и очень быстро. Основными проблемами, с которыми сталкивались аудиторы, были количество строк, которое можно было обработать и задачи, в которых необходима обработка нескольких связанных таблиц. В этих случаях как раз и приходил на выручку SQL. Но Excel активно развивается. Сначала убрали досадное ограничение в 65,535 строк и  ... довели его до нелогичного и не круглого (с точки зрения программистов) 1,000,000 строк. Проблему это сильно не решило, поскольку при попытке обработать 300-400 тысяч строк начинаются серьезные проблемы с производительностью,  а на задачи по обработке нескольких таблиц количество строк влияет ... никак. Поняв, что переписывать движок с нуля - удовольствие дорогое и трудоемкое, разработчики сделали элегантный реверанс в виде отдельного адона  (а, начиная с версии 2013 года - встроенного функционала) под названием PowerPivot. Это была настоящая революция. Во-первых, ушло ограничение в количестве строк. Во-вторых, можно объединять различные таблицы по ключевым полям и "крутить" объединенные данные в привычном пивоте. В-третьих, таблицы можно объединять из нескольких источников (например, база данных + таблица Excel + текстовый файл + еще одна база данных). В-четвертых,  язык выражений анализа данных (DAX), позволяет создавать собственные метрики и еще очень-очень много вещей, в результате чего можно вообще отказаться от SQL и работать с одним единственным инструментом.
Тем не менее, я периодически посматриваю на различные инструменты в поисках чего-нибудь этакого. В каждом из инструментов есть какая-нибудь интересная фишка, но,  держать тучу разных инструментов ради красивых бантиков... Опять же, задачи лучше решать в одном инструменте, а не переливать туда-сюда данные. В общем, среди большого количества софта чего-то такого этакого долго не находилось. Хотя, справедливости ради, нужно выделить ACL (Audit Command Language). К его безусловным преимуществам (по сравнению с Excel) нужно отнести легкую воспроизводимость тестов (обычно просто заменой ссылки с одного источника данных на другой) для автоматизации рутинных операций.  Плюс вещи, которые можно делать серверной частью, вроде задач для реализации Continuous Auditing. Остальное, пожалуй, было нивелировано PowerPivot.  И такая ситуация сохранялась до моего знакомства с R.
Сразу хочу сказать, что это не очередной "убийца Excel". Инструмент может решать те задачи, которые можно делать в  Excel, но прелесть его в другом. Но об этом чуть позже.
Не смотря на свою достаточно внушительную историю (более 20 лет), инструмент попался мне на глаза совсем недавно. В одной достаточно не большой linkedin'овской группе обсуждали аудиторский инструментарий и меня привлекли достаточно лестные отзывы об R от нескольких руководителей внутреннего аудита. Среди прочих инструментов R выделяли как "наиболее мощный, хотя и наиболее сложный в изучении". Немного покопавшись в аудиторских группах, я с удивлением обнаружил почти полное отсутствие упоминаний и обсуждений R, как аудиторского инструмента. Мне показалось это достаточно странным - инструмент такой мощный, что о нем никто не знает. Прямо как в старом анекдоте про неуловимого Джо. Наконец, прерывая анналы youtube, я натолкнулся на часовой обзор R. Сделан он был не для аудиторов, но давал достаточно неплохое представление для того, чтобы определиться стоит ли тратить время на изучение. Я решил, что стоит и ни разу не жалел.
Характеристику "самый мощный и самый сложный в изучении" подтверждаю на 100%.
Почему сложный? Потому, что это - язык программирования. Мышкой много не навоюешь - нужно писать код. Он  сложнее, чем SQL, зато на голову его функциональнее. Язык создавался как специализированный, поэтому писать на нем значительно легче, чем на языках программирования общего назначения, а код получается на порядок компактнее. Все-таки он создавался не для написания кода, а анализа данных. Например, есть следующая задача. Есть более трехсот файлов, содержащих результаты ежедневных замеров нескольких показателей за пару лет. Каждый файл - уникальное место сбора данных с уникальным номером. Необходимо для произвольного количества мест (одно, некоторые, все) посчитать среднее значение для конкретного показателя на выбор.  Функция, которая реализует данный функционал, у меня составила три строки кода. Разумеется, умещающихся на экране нормальным шрифтом.
Код, который вытягивает данные с Facebook, о моих контактах и строит графическую карту кто кого знает и сохранил результаты в PDF заняла 8 строк. Столько же код, рисующий карту страны по регионам и раскраской регионов в цвета в зависимости от показателей продаж по регионам. Если не хватает базовых функций для решения задачи по обработке данных, можно написать свою функцию, но практически любой каприз уже реализован в более 4000 пакетах готовых функций, которые доступны на сайте разработчиков. И все это абсолютно бесплатно. 
Средства визуализации данных просто потрясающие. Примеры (было лень рисовать самому, взял тут):


Хорошенько порывшись в Гугле, я понял, что R не такой неизвестный, как показалось на первый взгляд. Это один из основных инструментов биохимиков, экологов, статистов.
Язык активно набирает популярность. За последний год по популярности языков программирования R шагнул с 31-го на 12 место, потеснив PL/SQL, T-SQL, Ruby, Pascal и Delphi. Мне показалось не справедливым, что аудиторское сообщество обходит вниманием этот прекрасный инструмент и решил его немного попиарить.

Итак, сухой остаток. Что понравилось и что требует улучшения.

К безусловным достоинствам R следует отнести:
  • Просто огромный функционал по обработке данных.
  • Потрясающие возможности визуализации данных.
  • Всеядность. Данные из всех цифровых источников в самых замысловатых форматах и структурах.
  • Бесплатность.
 К недостаткам:
  • В первую очередь, это время, необходимое на изучение. Но оно того стоит.
  • Благодаря своей достаточно старой архитектуре, R может обрабатывать только те данные, которые умещаются в памяти. На текущий момент существует несколько пакетов, которые позволяют обходить данное ограничение.
  • Производительность на больших объемах данных. Решается при помощи дополнительных пакетов, позволяющих использовать параллельные и распределенные  вычисления.
  • Скудный функционал для 3D визуализации данных. Направление развивается, и, надеюсь, скоро ситуация изменится в лучшую сторону.

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

понедельник, 6 октября 2014 г.

Как сэкономить $10 при получении членства ISACA

ISACA продолжает развивать программу Member get a member, в рамках которой существующие члены ассоциации помогают интересующимся получить членство.
Вношу свой скромный вклад в это мероприятие. Про скидку в конце статьи.

Итак, преимущества от членства:
  • До 70 бесплатных CPE часов в год - актуально для тех, кто получил сертификат и должен его поддерживать путем постоянного развития. Как обладатель двух сертификатов, прошедший через несколько  трехгодичных циклов их обновления, могу подтвердить, что этого действительно хватает.
  • Скидки на экзамены и продукты ISACA - опять же, из своей практики, есть смысл. Когда собираешься сдавать экзамен и покупаешь материалы для подготовки членство+экзамен+материалы-скидка получается дешевле.
  • Скидки на всемирные конференции 
  • Доступ базе знаний ISACA по кибербезопасности - Cybersecurity Nexus (CSX)
  • Доступ к материалам Cobit 5
  • Ежемесячный журнал ISACA® Journal и доступ к ISACA eLibrary с огромным количеством статей
  • Разнообразные руководства, стандарты, результаты и исследований.  
Теперь об обещанной скидке. Для регистрации необходимо: 
  • перейти по ссылке www.isaca.org/MGAM14
  • Нажать кнопку join now
  • Заполнить поля формы
  • Для получения скидки в $10 необходимо указать  referrer's member ID. Указываем 309947

воскресенье, 31 августа 2014 г.

Как удалить троян "привет тебе фото"

Мобильные сети опят штормит СМС-троян. Сообщение типа "привет ;) тебе фото: https://", не смотря на всю свою подозрительность, находит свою аудиторию. Желание посмотреть загадочное фото перевешивает здравый смысл и соблазняет кликнуть на ссылку. И даже загрузка приложения с абсолютно неизвестного источника не смущает, и желание посмотреть фото подталкивает согласиться на установку. Результат не заставляет себя ждать - платные исходящие СМС быстро опустошают баланс, а троян тем временем рассылает заветное приглашение дальше всем по адресной книге, вызывая возмущение знакомых.
Вчера, получив подобный СМС от бывшего коллеги, лишний  раз убедился, что тема все еще популярна. Вяло поковыряв в песочнице неуклюжий троян, решил написать пару слов на тему что делать, если кто-то купился, а hard-reset делать не хочется:

  • Итак, первым делом переводим телефон в режим полета - отключаем радио-модуль для прекращения рассылки. 
  • Затем удаляем источник. Идем в папку Download (/storage/emulated/0/Download) и удаляем там файл FOTO_ALBOM.apk
  • Теперь идем в диспетчер приложений и в разделе загружено ищем Google Play с размером около 200 Кб.Это и есть наш источник проблем. Важно не перепутать его с оригиналом, который называется Google Play Маркет и размером 10-12 Мб.  Нажимаем удалить.
Теперь можно подумать о том что не следовало нажимать на ссылку вопреки:
  • странному стилю не всегда соответствующего отправителю
  • ссылку на сомнительный ресурс
  • попытку закачать приложение (FOTO_ALBOM.apk) вместо графического файла
  • попытку установить это чудо-приложение

четверг, 28 августа 2014 г.

Если у вас нету тети... Акт второй. Те же и Эванс.

I don't why why she's leaving, or where she's gonna go,
I guess she's got her reasons but I just don't wanna know,
'Cause for twenty four years I've been living next door to Alice.
Alice, who the f%ck is Alice? 
Загадочная и далекая Африка по-прежнему немилосердна к моим далеким и неизвестным, но богатым родственникам.
После трагической смерти моего родственника в Тоголезской Республике о которой я писал в прошлом году, меня постигла новая утрата. Точнее она произошла в 2010 году, но новость дошла только сейчас. Привожу письмо дословно:
Уважаемый матвійчук

Я послал это сообщение для вас 4 недели назад, но я не уверен, вы получите его, Меня зовут г-н tokunte, я связался из-за вашего имени, Я личным советником поздно (Эванс матвійчук) Пишу вы в связи с его наследием. Мой покойный клиент умер в 2010 году от рака легких, и так как я не могу найти своих родственников, которые будут применяться и утверждают свои деньги обратно, и так мне нужна ваша поддержка и доверие стоять как родственников моего покойного клиента (Эванс матвійчук), так что мы можем претендовать на общую сумму фонд (USD $ 11,4, 000,00). Мы поделимся это вместе. Мое сердце привело меня связаться и рассказать вам об этом. Пожалуйста, если вы заинтересованы, пожалуйста, вернуться ко мне для получения дополнительной информации, и я скажу вам, что делать. Вы слышите английский язык?
спасибо
Г-н tokunte.
Закон палата
Электронная почта:luggard.john@gmail.com


Я не слышу английский язык, но голос в моей голове начал нашептывать мне, что прошлое сообщение от г-на Blessing Asuzu, который оказался  министром Республики Гана Nii Laryea Afotey-Agbo,  было более убедительным, если это слово уместно в данном контексте. Мошенники настолько обленились, что диву даешься. Забудем про грамматику - для человека, который пишет свое имя с маленькой буквы, грамматика - непосильная ноша. Электронная почта  "Закон палаты" на gmail? Наверно экономят на затратах? Имя название ящика luggard.john? А какое название лучше подходит имени tokunte?  Основной получатель письма - 9321025@facebook.com, а мой адрес в скрытой копии? Наверное культурологическая особенность посылки писем о смерти далеких родственников. Но фамилия, единственный атрибут, который пытается придать убедительности этому абсурду, с маленькой буквы и на украинском, хотя имя на русском?
Господин  tokunte! Я отрекаюсь от завещания в Вашу пользу. Купите себе селедку и морочте ей голову - в ней много фосфора, полезного для мозговой деятельности.

вторник, 19 августа 2014 г.

Халявная регистрация на CIA от IIA

Глобальный Институт внутренних аудиторов анонсировал акцию -  регистрация на экзамен CIA в течении августа бесплатно. Для участия нужно быть членом IIA и зарегистрироваться на получение CIA в системе CCMS (регистрация бесплатна).


CIA-Header