Как стать автором
Обновить
12
0
Игорь Щегловитов @Ins4n3

Пользователь

Отправить сообщение

Как я проходил первый хак квест CTF Ratazana

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


Введение


В качестве введения я расскажу кратко о хак квесте Ratazana CTF. Его организовали специалисты из ЦИС (Центр Информационной Безопасности), представительство которого располагается в г. Бишкек Киргизия. Это первый отлично организованный хак квест. Он был прост и интересен и скорее всего служил так называемой отправной точкой (так сказать организаторы хотели прощупать уровень участников).

Коротко о квесте


По легенде квеста компания VideoCorp столкнулась с утечкой исходных кодов ее продукта, в результате чего EvilCorp выпустила очень похожу версию ПО раньше, чем компания VideoCorp, что привело к убыткам компании и потере хороших клиентов. Нужно было найти крота и собрать доказательства. На весь квест отводилось 7 дней. В квесте 8 миссий. Итак, приступим!
Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии6

Машинное обучение — 4: Скользящее среднее

Время на прочтение3 мин
Количество просмотров33K
Принято считать, что две базовые операции «машинного обучения» — это регрессия и классификация. Регрессия — это не только инструмент для выявления параметров зависимости y(x) между рядами данных x и y (чему я уже посвятил несколько статей), но и частный случай техники их сглаживания. В этом примере мы пойдем чуть дальше и рассмотрим, как можно проводить сглаживание, когда вид зависимости y(x) заранее неизвестен, а также, как можно отфильтровать данные, которые контролируются разными эффектами с существенно разными временными характеристиками.

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



Читать дальше →
Всего голосов 15: ↑12 и ↓3+9
Комментарии13

Inno Setup: создание инсталлятора на примере развертывания C# приложения

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

Введение



Я не являюсь профессиональным программистом. В том смысле, что не зарабатываю денег этим ремеслом, а использую свои навыки в качестве инструмента для основной, научной, деятельности. Поэтому все мои «поделки» живут лишь отведенный им на решение конкретной задачи период и не выходят за пределы каталогов проекта. Кроме того, уже довольно давно я отошел от разработки под ОС Windows, ибо Linux для решения моих задач более удобен.

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

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

Созданием инсталляторов я не занимался никогда. Поэтому данный вопрос был основательно «загуглен», в числе прочего попалась и такая статья с Хабра. Выбор средств для подобной задачи довольно широк, и включает как проприетарные, так и открытые продукты. Вот список того, что я «пощупал»

  1. InstallShield — классика жанра, достаточно солидный проприетарный продукт
  2. Adnvanced Installer — проприетарный инструмент с широкими возможностями кастомизации через GUI. На сайте сказано, что если Вы блоггер и будете писать об этом продукте много хороших слов, то у Вас есть возможность получить Free License
  3. WiX — открытый бесплатный продукт, основанный на XML-скриптах. Мощная, хорошо документированная штука. Разбираться с ним я пока не стал, ибо время дорого (да и к XML душа лежит не очень). Возможно когда нибудь я к нему вернусь. Да, к нему есть плагины для Visual Studio, что несомненный плюс.
  4. Inno Setup — опенсорсный проект, код которого доступен на гитхабе. В силу бесплатности и низкого порога вхождения мой выбор остановился именно на нем, как инструменте позволившем выполнить работу быстро и качественно.


Так что в статье мы будем рассматривать пример использования Inno Setup, для которого имеется полезный фронтэнд Inno Script Studio, позволяющий выполнять создание простых инсталляторов с помощью мастера и менять настройки через GUI. GUI понадобился мне для первого знакомства, с продуктом, но мы не будем уделять ему большого внимания — мой «линукс головного мозга» в последнее время всё больше и больше уводит меня от желания использовать разного рода «мастера» (это субъективно, прошу не пинать). Мы рассмотрим хардкорный способ написания скрипта с чистого листа.

Поехали!
Всего голосов 20: ↑18 и ↓2+16
Комментарии14

Azure Machine Learning для Data Scientist

Время на прочтение8 мин
Количество просмотров22K
Эта статья создана нашим другом из коммьюнити, Дмитрием Петуховым, Microsoft Certified Professional, разработчиком компании Quantum Art.
Статья — часть цикла про Fraud Detection, остальные статьи можно найти в профиле у Дмитрия.




Azure Machine Learning – облачный сервис для выполнения задач прогнозной аналитики (predictive analytics). Сервис представлен двумя компонентами: Azure ML Studio – средой разработки, доступной через web-интерфейс, и web-сервисами Azure ML.
Типичная последовательность действий data scientist'a при поиске закономерностей в наборе данных с использованием алгоритмов обучения с учителем изображена и подробно описана под хабракатом.
Читать дальше →
Всего голосов 26: ↑23 и ↓3+20
Комментарии6

Приемы разработки ASMX веб-сервисов

Время на прочтение99 мин
Количество просмотров121K
В этой статье я расскажу о различных приемах разработки SOAP веб-сервисов по технологии ASMX, а также об этой технологии в целом. Кроме SOAP, также будет рассмотрена реализация AJAX. Статья будет полезна как тем, кто уже знаком с ней, так и тем, кто только собирается создать свой первый веб-сервис.
Читать дальше →
Всего голосов 30: ↑23 и ↓7+16
Комментарии71

Введение в ASP.NET 5

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

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

Я сегодня сильно взволнован из-за того что пишу новость о новом релизе ASP.NET, над которым работает наша команда, и который называется ASP.NET 5. Этот релиз – одно из самых значимых обновлений архитектуры, которое мы делали когда-либо. В рамках этого релиза мы сделали ASP.NET более компактным, модульным и кросс-платформенным, а также ориентированным на облачные хостинги. ASP.NET 5 Preview доступна для скачивания в последнем Visual Studio 2015 CTP, которая стала доступна совершенно недавно.
Читать дальше →
Всего голосов 40: ↑37 и ↓3+34
Комментарии15

Гид по заголовкам кэширования HTTP для начинающих

Время на прочтение8 мин
Количество просмотров87K
В статье данные сведения по заголовкам кэширования (ЗК) для HTTP и соответствующее поведение сетей доставки контента (CDN). Если вам хочется разобраться, каким образом заголовки кэширования вписываются в современный веб, или вам просто интересно, о чём говорят ваши коллеги – эта статья для вас.

Если вы уже понимаете преимущества ЗК, и хотите расширить свои знания, я рекомендую вам обратиться к документации от W3.

Что могут ЗК сделать для вас?


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

Настройки кэширования веб-трафика крайне важны для посещаемых сайтов. Если вы платите за трафик, получаете доход от электронной коммерции, или просто хотите поддерживать свою репутацию хорошего веб-разработчика, вам нужно разбираться в том, как работает кэширование.
Читать дальше →
Всего голосов 36: ↑33 и ↓3+30
Комментарии8

Powershell для тестировщиков

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


Перед вами «быстрый старт» для работы с PowerShell для начинающих тестировщиков. Вы работаете и в один из дней, наконец, смиряетесь с тем фактом, что человек по сути своей ленивое существо, но при этом достаточно хитрое, чтобы облегчить себе жизнь. И, не долго думая, решаете автоматизировать повседневные задачи. Естественно, минимальными усилиями.
Читать дальше →
Всего голосов 24: ↑17 и ↓7+10
Комментарии18

Машинное обучение — 2. Нелинейная регрессия и численная оптимизация

Время на прочтение4 мин
Количество просмотров23K
Прошел месяц с появления моей первой статьи на Хабре и 20 дней с момента появления второй статьи про линейную регрессию. Статистика по просмотрам и целевым действиям аудитории копится, и именно она послужила отправной точкой для данной статьи. В ней мы коротко рассмотрим пример нелинейной регрессии (а именно, экспоненциальной) и с ее помощью построим модель конверсии, выделив среди пользователей две группы.

Когда известно, что случайная величина y зависит от чего-то (например, от времени или от другой случайной величины x) линейно, т.е. по закону y(x)= Ax+b, то применяется линейная регрессия (так в прошлой статье мы строили зависимость числа регистраций от числа просмотров). Для линейной регрессии коэффициенты A и b вычисляются по известным формулам. В случае регрессии другого вида, например, экспоненциальной, для того чтобы определить неизвестные параметры, необходимо решить соответствующую оптимизационную задачу: а именно, в рамках метода наименьших квадратов (МНК) задачу нахождения минимума суммы квадратов (y(xi) — yi)2.

Итак, вот данные, которые будем использовать в качестве примера. Пики посещаемости (ряд Views, красный пунктир) приходятся на моменты выхода статей. Второй ряд данных (Regs, с множителем 100) показывает число читателей, выполнивших после прочтения определенное действие (регистрацию и скачивание Mathcad Express – с его помощью, к слову, вы сможете повторить все расчеты этой и предыдущих статей). Все картинки — это скриншоты Mathcad Express, а файл с расчетами вы можете взять здесь.


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

Седьмая ежегодная Летняя школа Microsoft Research по машинному обучению и интеллекту — сотрудничество с ACM Europe

Время на прочтение1 мин
Количество просмотров6.9K
Привет!

Как мы писали ранее, 29 июля в Санкт-Петербурге в седьмой раз откроется ежегодная Летняя школа Microsoft Research по машинному обучению.
Обычно следующий за открывающим постом пост пишут, когда известны докладчики, но тут я не смог удержаться.



Школа получила поддержку ACM Europe! На ней выступит докладчик от ACM, и все участники получат статус профессионального члена ассоциации (ACM Professional Membership) и доступ к цифровой библиотеке (ACM Digital Library) на один год. В один из вечеров ассоциация организует вечеринку (beer party) для участников школы. Для нас это большая радость — подобное происходит впервые, и докладчик от АСМ, который знают все как старейшую ИТ-организацию — ценность для слушателей.

Напоминаем, что регистрироваться надо все еще здесь.
Всего голосов 15: ↑13 и ↓2+11
Комментарии1

Reconnect — уязвимость в Facebook Login

Время на прочтение2 мин
Количество просмотров36K
image

Все очень просто — если мы можем перелогинить пользователя в свой фейсбук то мы можем присоединить свой фейсбук к аккаунту жертвы на других вебсайтах. Жертва загружает нашу страничку и мы получаем доступ к аккаунту жертвы на Booking.com, Bit.ly, About.me, Stumbleupon, Angel.co, Mashable.com, Vimeo и куче других вебсайтов.
Читать дальше →
Всего голосов 85: ↑81 и ↓4+77
Комментарии19

Как взламывают корпоративный Wi-Fi: новые возможности

Время на прочтение4 мин
Количество просмотров89K
Статей о взломе Wi-Fi в Интернете достаточно много, но большинство из них касаются режима работы WEP/WPA(2)-Personal, в котором необходимо перехватить процедуру «рукопожатия» клиента и Wi-Fi-точки. Во многих корпоративных Wi-Fi-сетях используется режим безопасности WPA2-Enterprise, с аутентификацией по логину и паролю — как наименее затратный способ. При этом аутентификация осуществляется с помощью RADIUS-сервера.

image

ОС клиента устанавливает соединение с RADIUS-сервером, используя шифрование при помощи TLS, а проверка подлинности в основном происходит при помощи протокола MS-CHAPv2.
Читать дальше →
Всего голосов 45: ↑41 и ↓4+37
Комментарии29

Настройка TeamCity в Azure — постоянно-доступная система для командной работы в облаке

Время на прочтение6 мин
Количество просмотров7.8K
Эта статья продолжает цикл, начатый нашими друзьями из Лаборатории Касперского и описывает реальный опыт использования инструментов тестирования от Microsoft (и не только) с рекомендациями и выводами. Автор — инженер по тестированию, Игорь Щегловитов (@ins4n3 на хабре). Наши статьи, посвященные тестированию, помечены тегом #mstesting.

В данной статье я хотел бы поделиться о своём первом опыте настройки процесса Continuous Integration c помощью популярной системы TeamCity, на виртуальной машине в Azure. Это хорошо тем, что у нас всегда будет доступна наша система с удобным доступом и контролем над ресурсами.


Читать дальше →
Всего голосов 27: ↑23 и ↓4+19
Комментарии2

Опыт решения проблемы созданием OLAP-куба, используя С#

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

Предыстория


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

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

image
Читать дальше →
Всего голосов 17: ↑14 и ↓3+11
Комментарии1

Application Insights – собираем телеметрию Windows Phone и Windows приложений

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


Я рада сообщить вам о том, что теперь Application Insights поддерживает сбор телеметрии Windows и Windows Phone приложений. Теперь вы можете получить информацию о том, как пользователи взаимодействуют с вашим приложением, а также диагностировать проблемы, возникающие при работе приложения. Все полученные данные визуализируются на портале Azure Preview.
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии5

DevCon 2015: анонс первых спикеров и докладов конференции

Время на прочтение6 мин
Количество просмотров6.9K
Дорогие друзья!

Мы рады представить вам первую волну докладчиков конференции DevCon 2015 и открыть вам некоторые темы и подробности технической программы конференции.



Первым делом разрешите представить Роберта Айхензеера и Марио Шпушта – наших гостей из офисов Microsoft Германии и США. Роберт и Марио привезут в Москву самые последние новости и новинки Microsoft для разработчиков и в рамках своих докладов, а так же глубоких мастер-классов поделятся с вами следующими темами: интернет вещей, .NET 5 Core, ASP.NET 5, архитектура построения гибридных облачных решений.

Следующий гость – Алан Менделевич — известный на весь мир автор и директор проекта AdDuplex. Алан выступит на DevCon 2015 с руководством по раскрутке и монетизации мобильных Windows-приложений.

Другим экспертом по разработке мобильных приложений на DevCon 2015 стал Михаил Самарин – наш гость из Финляндии, который тесно работал с командами Nokia и Microsoft и имеет большой опыт создания разнообразных мобильных приложений. Михаил расскажет участника самые интересные подробности новых технологий Windows.

Еще один наш гость – наш старинный друг – Георгий Могелашвили, который сегодня работает на известную компанию Booking.com. Георгий расскажет на конференции интересные подробности об удобной разработке и A/B-тестировании облачных веб-сайтов.

Мы рады приветствовать Сергея Звездина – ветерана разработки и одного из самых опытных и известных докладчиков конференций Microsoft в России. Сергей привезет на конференцию ряд докладов на самые горячие темы веб-разработки и ASP.NET.

Одним из самых интересных и оригинальных докладов можно ожидать доклад Александра Кирсанова, который расскажет про реактивное программирование в робототехнике и работу в реальных проектах с сенсорами Kinect.

И наконец, я очень рад представить моих коллег-экспертов по разработке приложений из российского Microsoft, которые поделятся с вами самыми последними анонсами и новинками технологий компании: Дмитрий Сошников расскажет про Cortana и голосовой ввод, Дмитрий Андреев – про новейший DirectX 12, Александр Белоцерковский – про современные технологии интернета вещей и я, Владимир Юнев расскажу вам про самые новейшие сервисы и компоненты облака Azure, которые помогут сделать ваши приложения быстрее, надежнее и безопаснее.

Ниже вы найдете подробные описания всех докладчиков:
Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии1

Ядро .Net (GC, JIT, interop, ...) в Open Source

Время на прочтение5 мин
Количество просмотров36K
Мы рады сообщить что CoreCLR теперь находится на github и теперь вы имеете доступ ко всем его исходным кодам. CoreCLR является средой исполнения .NET Core, выполняя такие функции как сборку мусора или компиляции в конечный машинный код. .Net Core – это модульная реализация .Net, которая может быть использована как база для огромного количества сценариев, масштабы которых варьируются от простых консольных утилит до веб-приложений, хостящихся в облаке. Чтобы понять, чем отличается .Net Core от .Net Framework, посмотрите на пост «Введение в .Net Core»

Теперь вы можете скачивать исходники CoreCLR, бранчеваться, и делать pull requests, также вы можете компилировать его прямо на своем ПК. Мы выпустили полную и актуальную реализацию CoreCLR, которая включает RyuJIT, .Net GC, родной Interop и множество других компонент .Net runtime. Данный релиз следует тем же принципам, что и все наши последние релизы библиотек, вышедших в open-source: сделать весь .Net Framework open sourced.

Сегодня ядро .Net компилируется и отрабатывает (видимо имеется в виду CI) на Windows. Мы добавим имплементации для специфических для Mac и Linux платформенных вещей в ближайшие пару месяцев. Также мы уже имеем некоторый специфический для Linux код в .Net Core, однако мы только начали портировать с Windows на остальные платформы. Напротив, мы хотели открыть исходные тескты с самого начала, чтобы вы вместе с нами пропутешествовали бы к другим платформам, возможно, внося свой вклад.
Читать дальше →
Всего голосов 74: ↑64 и ↓10+54
Комментарии40

Инструменты тестирования Visual Studio Online, опыт использования и сравнение с ручным подходом

Время на прочтение6 мин
Количество просмотров9.1K
Эта статья продолжает цикл, начатый нашими друзьями из Лаборатории Касперского и описывает реальный опыт использования инструментов тестирования от Microsoft с рекомендациями и выводами. Автор — инженер по тестированию, Игорь Щегловитов (@ins4n3 на хабре). Наши статьи, посвященные тестированию, помечены тегом #mstesting.

Введение


В предыдущем посте мы рассмотрели создание инфраструктуры для облачного нагрузочного тестирования на виртуальных машинах Microsoft Azure. Теперь мы рассмотрим инструмент для нагрузочного тестирования — Visual Studio Online – и сравним его с ручным подходом.

Нагрузочное тестирование с использованием Visual Studio Online позволяет автоматически создавать и конфигурировать всю необходимую инфраструктуру в облаке — разворачивая контроллер и необходимое количество агентов с определенными настройками. Результаты прогона того или иного теста всегда остаются в облачной базе VS Online, и к ним в любой момент можно получить доступ.

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

Тестирование с инструментами Microsoft — полевой опыт

Время на прочтение7 мин
Количество просмотров20K
Эта статья создана нашими друзьями, партнерами из компании Лаборатория Касперского и описывает реальный опыт использования инструментов тестирования от Microsoft с рекомендациями. Автор — инженер по тестированию в Лаборатории Касперского, Игорь Щегловитов.


Привет всем. Я работаю инженером по тестирования в Лаборатории Касперского в команде, занимающейся разработкой серверной облачной инфраструктуры на облачной платформе Microsoft Azure.

Команда состоит из разработчиков и тестировщиков (примерно в соотношении 1 к 3). Разработчики пишут код на C# и практикуют TDD и DDD, благодаря этому код получается пригодным для тестирования и слабосвязанным.  Тесты, которые пишут разработчики, запускаются либо вручную из Visual Studio, либо автоматически при сборке билда на TFS. Для запуска билда у нас установлен триггер Gated Check-In, таким образом он запускается при чекине в Source Control. Особенностью данного триггера является, то что если по каким-то причинам (будь то ошибка компиляции либо тесты не прошли) билд падает, то сам чекин, который запустил билд не попадает в SourceControl.
Вы, наверное, сталкивались с утверждением, что код протестировать сложно? Некоторые прибегают к парному программированию. В других компаниях специально выделены отделы тестирования.  У нас же это обязательное код-ревью и автоматизированное интеграционное тестирование. В отличие от модульных — интеграционные тесты разрабатываются специально выделенными инженерами по тестированию, к которым отношусь и я.
Читать дальше →
Всего голосов 30: ↑25 и ↓5+20
Комментарии13

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность