RSS
Pages: 1 ... 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 ... 37
[>] Теория звука. Что нужно знать о звуке, чтобы с ним работать. Опыт Яндекс.Музыки
habra.15
habrabot(difrex,1) — All
2015-11-12 20:30:02


Звук, как и [цвет][1], люди воспринимают по-разному. Например, то, что кажется слишком громким или некачественным одним, может быть нормальным для других. Для работы над Яндекс.Музыкой нам всегда важно помнить о разных тонкостях, которые таит в себе звук. Что такое громкость, как она меняется и от чего зависит? Как работают звуковые фильтры? Какие бывают шумы? Как меняется звук? Как люди его воспринимают. [![][2]][3] Мы довольно много узнали обо всём этом, работая над нашим проектом, и сегодня я попробую описать на пальцах некоторые основные понятия, которые требуется знать, если вы имеете дело с цифровой обработкой звука. В этой статье нет серьёзной математики вроде быстрых преобразований Фурье и прочего — эти формулы несложно найти в сети. Я опишу суть и смысл вещей, с которыми придётся столкнуться. Поводом для этого поста можете считать то, что мы добавили в [приложения][4] Яндекс.Музыки возможность слушать треки в высоком качестве (320kbps). А можете не считать. Итак. [Читать дальше →][5]

[1]: http://habrahabr.ru/company/yandex/blog/262735/
[2]: https://habrastorage.org/files/41a/17f/d3e/41a17fd3e25d4ba080ef4702c6a106f7.png
[3]: http://habrahabr.ru/company/yandex/blog/270765/
[4]: https://music.yandex.ru/apps
[5]: http://habrahabr.ru/post/270765/#habracut

[>] Безопасное криптопрограммирование. Часть 2, заключительная
habra.15
habrabot(difrex,1) — All
2015-11-13 01:00:03


Продолжаем перевод набора правил безопасного криптопрограммирования от Жана-Филлипа Омассона…

# Предотвращайте вмешательство компилятора в части кода, критическим образом влияющие на безопасность



### Проблема

Некоторые компиляторы оптимизируют операции, которые они считают бесполезными. Например, компилятор MS Visual C++ посчитал лишним оператор |memset| в следующем фрагменте кода реализации анонимной сети Tor: [Читать дальше →][1]

[1]: http://habrahabr.ru/post/269737/#habracut

[>] I2P: Подпись и проверка подписи EdDSA
habra.15
habrabot(difrex,1) — All
2015-11-13 11:00:03


В [предыдущей статье][1] была рассмотрена реализация самой кривой Ed25519, операции сложения и умножения на число, восстановление второй координаты. В данной статье рассматриваются вопросы эффективного использования этих операций для электронной подписи сообщений и работы в I2P.

#### Алгоритм подписи EdDSA

В отличие от RSA, где секретный и публичный ключ можно использовать непосредственно, здесь приходится использовать более сложную схему и вводить некоторый дополнительный объект. EdDSA концептуально реализует алгоритм [DSA][2], распространяя его на случай кривых. В качестве подписи выступает пара чисел (R,S), для EdDSA каждое длиной 32 байта, итого длина подписи — 64 байта. Подписываются не сами данные, а хэш он них. В качестве хэш-функции используется SHA512. Далее малым буквами будут обозначаться числа, а большими буквами — соответствующая точка на кривой, полученная умножением числа на базовую точку B. [Читать дальше →][3]

[1]: http://habrahabr.ru/post/269579/
[2]: https://ru.wikipedia.org/wiki/DSA
[3]: http://habrahabr.ru/post/270753/#habracut

[>] [Перевод] Обзор ES6 в 350 пунктах. Часть вторая
habra.15
habrabot(difrex,1) — All
2015-11-13 11:00:03


Моя серия заметок [ES6 in Depth][1], состоящая из 24 записей, описывает большинство синтаксических изменений и нововведений в ES6. В этой публикации я подведу итог всего изложенного в предыдущих статьях, чтобы дать возможность посмотреть еще раз на всё вместе. ![][2] [Читать дальше →][3]

[1]: https://ponyfoo.com/articles/tagged/es6-in-depth
[2]: https://habrastorage.org/files/0ea/9a3/48f/0ea9a348fe1645b88bc56e002e9217a0.png
[3]: http://habrahabr.ru/post/270697/#habracut

[>] 666-й пост: страхи и суеверия айтишников
habra.15
habrabot(difrex,1) — All
2015-11-13 13:00:03


![][1] Страхи и суеверия рука об руку идут с разработчиками по жизни. Будем откровенны — тому виной баги. Баги бывают у всех. Некоторые баги точь-в-точь детские страшилки, что появились в далёком прошлом и противоестественно существуют уже десятки лет. Иррациональная боязнь встретить баг (напороться на любую неудачу) привела к возникновению занятных обрядов и ритуалов, о которых и пойдёт речь в этом посте. Быть багофобом естественно и не зазорно, а способов справиться со страхом превеликое множество. [Читать дальше →][2]

[1]: https://habrastorage.org/files/721/f86/bd2/721f86bd26eb47b7bbfa579f5b56dc7b.jpeg
[2]: http://habrahabr.ru/post/270785/#habracut

[>] [Из песочницы] Sublime Text как IDE для ARM на примере STM32
habra.15
habrabot(difrex,1) — All
2015-11-13 13:30:03


![image][1] В этой статье будет изложена инструкция по созданию сборки Sublime Text c дополнительными программами, которую можно будет использовать как среду разработки для микроконтроллеров, в частности STM32F10x. Итак, перед нами стоит задача сделать при помощи Sublime Text — IDE, которая включает в себя: статический анализ и автодополнение кода в момент его написания, систему построения проекта с помощью makefile, компилятор, линковщик, прошивку микроконтроллера и отладку. К тому же сборка будет работать без установки. [Читать дальше →][2]

[1]: https://habrastorage.org/files/4e1/f24/c81/4e1f24c8148c4e589aa167766c0b9d37.png
[2]: http://habrahabr.ru/post/270789/#habracut

[>] Летние школы Itseez по компьютерному зрению: как это было
habra.15
habrabot(difrex,1) — All
2015-11-13 15:30:04


В этом году компания [Itseez][1] провела сразу два летних мероприятия для студентов, интересующихся тематикой компьютерного зрения — Межвузовскую школу и Летнюю стажировку. Здесь мы расскажем об обоих прошедших мероприятиях: о Школе, которая проводилась совместно с институтом ИТММ ННГУ им. Н.И. Лобачевского, и Стажировке, которую ребята проходили непосредственно в компании Itseez. Мы поделимся тем, как велась подготовка, как производился отбор участников и вообще о том, как это все происходило. Зимой планируется очередное мероприятие для студентов — зимняя школа по оптимизации производительности приложений компьютерного зрения. Поэтому настоящая статья может быть особенно интересна тем, кто хотел бы принять участие в будущих образовательных активностях Itseez.



[Читать дальше →][2]

[1]: http://itseez.com
[2]: http://habrahabr.ru/post/270481/#habracut

[>] Лаборатория тестирования на проникновение «Test lab v.8»: welcome to hell
habra.15
habrabot(difrex,1) — All
2015-11-13 16:30:04


![][1]

### «Test lab» — пентест-лаборатории, построенные на базе сетей реальных компаний

В отличие от CTF-соревнований, лаборатории тестирования на проникновение «Test lab» имитируют ИТ структуру настоящих компаний и имеют полноценную легенду. Созданные для легальной проверки и закрепления навыков пентеста, лаборатории всегда уникальны и содержат самые актуальные уязвимости, а участие в лабораториях бесплатно и требует хорошей практической подготовки. Разрабатывая лаборатории «Test lab» мы стараемся охватить практически все области ИБ: безопасность сетей, систем и приложений. Участникам предлагается выполнить эксплуатацию различных уязвимостей, связанных с работой сетевых и веб-компонентов, криптографических механизмов, ошибками конфигурации и кода, а также с человеческим фактором. Подключение к лаборатории осуществляется через VPN-соединение. Участники, выступающие в роли пентестеров, пытаются эксплуатировать уязвимости, и, в случае удачи, получают доступ к серверам и рабочим станциям, каждые из которых содержат токен. Победителем считается участник, первым собравший все токены. Работа в лаборатории осуществляется на основе методики «серый ящик»: перед началом исследования предоставляется информация об инфраструктуре «Test lab» в виде схемы и описания деятельности виртуальной компании. Собирая специалистов со всего мира, мы разрабатываем лаборатории «Test lab» для различных мероприятий, таких как всероссийский конкурс ПрофИТ-2013, ZeroNights'13, PHD IV.

### Лаборатория тестирования на проникновение «Test lab v.8»

Предыдущая лаборатория (Test lab v.7) представляла собой виртуальную компанию, специализирующуюся на разработке систем ИБ. Ознакомиться с ее результатами и частичным прохождением можно по [ссылке][2]. Сегодня будет запущена очередная, восьмая по счету лаборатория PENTESTIT, разработка которой велась практически полгода. «Test lab v.8» будет представлять собой виртуальный банк c присущей ему инфраструктурой и уязвимостями. Кроме этого, отличительной особенностью текущей лаборатории будет являться активно используемая система противодействия атакам, поэтому участникам необходимо будет быть максимально «незаметными». Это прибавит атмосферности! [Читать дальше →][3]

[1]: https://habrastorage.org/files/faa/c4e/e21/faac4ee21dc244c6819a8b24ea051f29.png
[2]: http://habrahabr.ru/company/defconru/blog/257675/
[3]: http://habrahabr.ru/post/270803/#habracut

[>] [Перевод] Онлайн-алгоритмы в высокочастотном трейдинге: проблемы конкуренции
habra.15
habrabot(difrex,1) — All
2015-11-13 16:30:04


[![][1]][2] Высокочастотный трейдинг [англ. High-frequency trading, HFT-trading] сегодня оказывает большое влияние на современные финансовые рынки. Еще 20 лет назад большая часть торгов проходила на биржах, к примеру, на Нью-Йоркской фондовой бирже, где люди, одетые в яркие костюмы, активно жестикулировали и выкрикивали свои предложения о покупке или продаже ценных бумаг. Сегодня торговля, как правило, осуществляется с помощью электронных серверов в дата-центрах, где компьютеры обмениваются предложениями о покупке и продаже путем передачи сообщений по сети. Этот переход от торговли в операционном здании биржи к электронным платформам был особенно выгоден HFT-компаниям, которые инвестировали много средств в необходимую для торговли инфраструктуру. Несмотря на то, что место и участники торговли внешне сильно изменились, цель трейдеров – как электронных, так и обычных – осталась неизменной – приобрести актив у одного предприятия/трейдера и продать его другому предприятию/трейдеру по более высокой цене. Основное отличие традиционного трейдера от HFT-трейдера состоит в том, что последний может торговать быстрее и чаще, и время удержания портфеля у такого трейдера очень низкое. Одна операция стандартного HFT-алгоритма занимает долю миллисекунды, с чем не могут сравниться традиционные трейдеры, так как человек моргает примерно раз в 300 миллисекунд. По мере того, как HFT-алгоритмы конкурируют между собой, они сталкиваются с двумя проблемами:

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

_Онлайн-алгоритмы_ представляют собой обычный класс алгоритмов, которые можно применять в HFT-трейдинге. В таких алгоритмах новые входные переменные поступают последовательно. После обработки каждой новой входной переменной алгоритм должен принять конкретное решение, например, выставлять ли заявку на покупку/продажу. В этом и состоит главное отличие онлайн-алгоритмов от офлайн-алгоритмов, в которых считается, что все входные данные доступны в момент принятия решения. Большинство задач практической оптимизации в таких областях, как информатика и методы исследования операций – это именно онлайн-задачи [1]. [Читать дальше →][3]

[1]: https://habrastorage.org/files/c21/14a/94c/c2114a94c81b40cbaf9fe4a523a7febd.jpg
[2]: http://habrahabr.ru/company/itinvest/blog/270813/
[3]: http://habrahabr.ru/post/270813/#habracut

[>] [Перевод] Разработка и отладка приложений для Android Wear
habra.15
habrabot(difrex,1) — All
2015-11-13 17:30:03


Носимые устройства – это передний край сегодняшних информационных технологий. Это – мощный тренд. Самые популярные «носимые компьютеры» работают под управлением ОС Android Wear от Google. Она не так уж сильно отличается от того Android’а, который знаком огромному количеству разработчиков. Как результат, любой из этих разработчиков может без особых сложностей начать создавать приложения для Android Wear и претендовать на свою долю внимания от весьма перспективного рынка «носимых приложений». [![][1]][2] В этой статье мы поговорим об ОС [Android Wear][3], обратив особое внимание на устройства, работающие под её управлением, на типы приложений, на их разработку и отладку. В частности, рассмотрим два способа отладки с использованием ADB. [Читать дальше →][4]

[1]: https://habrastorage.org/files/a82/671/b8c/a82671b8cd7243d78b79ed58623e104c.jpg
[2]: http://habrahabr.ru/company/intel/blog/270829/
[3]: https://developer.android.com/wear/index.html
[4]: http://habrahabr.ru/post/270829/#habracut

[>] [Из песочницы] Незащищенный Redis, или кто виноват?
habra.15
habrabot(difrex,1) — All
2015-11-13 17:30:03


![image][1]Один из разработчиков Redis опубликовал у себя в блоге статью [A few things about Redis security][2] («Немного о безопасности Redis»), в которой детально описал банальную, но, как оказалось, для многих критичную проблему хранения данных и обеспечения безопасности доступа к серверу. Для меня все было бы не так печально, если бы я сам не столкнулся с данной проблемой и, как следствие, не потерял данные. Под катом мы попытаемся разобраться почему это произошло и на моем примере исправить случившуюся ситуацию. [Читать дальше →][3]

[1]: https://habrastorage.org/files/44a/b2a/56c/44ab2a56c68945d1831a3a40e9a44972.png
[2]: http://antirez.com/news/96
[3]: http://habrahabr.ru/post/270799/#habracut

[>] А был ли who на сервере?
habra.15
habrabot(difrex,1) — All
2015-11-13 17:30:04


Тяпница… тринадцатое… всё важное решили оставить на понедельник, а потому сделаю какую-нибудь гадость… В связи с появивишимся на [хабре ][1]пересказом [статьи][2] решил немного отбалансировать данное руководство. Скрыть своё посещение, конечно, не совсем тривиально, но особых сложностей это не составляет. Итак, задача: Войти на сервер, выполнить некие действия и «подмести» за собой. Здесь и далее считаем, что никаких дополнительных инструментов слежения( за исключением «по умолчанию») в системе не используется и мы знаем пароль root'a. С чем работаем:

# uname -ori
FreeBSD 10.0-RELEASE GENERIC




# `echo $SHELL` --version
tcsh 6.18.01 (Astron)


Описываемое ниже несколько диссонирует с упоминаемой выше статьей, т.к. оная в первую очередь ориентирована на Linux-пользователей, но общие принципы теже и после перехода во FreeBSD(c 9.0) на хранение данных в utmpx родство стало ближе. Поехали… [Читать дальше →][3]

[1]: http://habrahabr.ru/company/ua-hosting/blog/270687/
[2]: http://www.itworld.com/article/2914650/linux/checking-last-logins-with-lastlog.html
[3]: http://habrahabr.ru/post/270801/#habracut

[>] Security Week 46: Разносторонний Java-баг, жизнь криптолокеров, 17 заплаток Adobe Flash
habra.15
habrabot(difrex,1) — All
2015-11-13 17:30:04


![][1]В новом эпизоде нашего сериала: — Серьезная уязвимость в библиотеке Apache Commons Collections ставит под удар основанные на Java сервисы сразу нескольких компаний, такие как Oracle WebLogic и IBM WebSphere. Как и любую другую уязвимость в распространенных и широко используемых библиотеках, эту патчат под разговоры на повышенных тонах о том, что делать и кто виноват. Вообще-то уязвимость обнаружили еще в январе, но так как для нее не было придумано крутого названия и не был нарисован логотип, никто не обратил внимания. — Cryptowall — троян-шифровальщик, признанный недавно самым прибыльным представителем семейства, меняет поведение. Теперь, помимо шифрования содержимого, под раздачу попали и имена файлов, что оставляет еще меньше (хотя и так было мало) шансов на расшифровку данных без выкупа. Распространяется, в том числе, с помощью достаточно очевидных зараженных вложений в электронные письма. — Flash опять латают, уязвимости опять серьезные. Продолжаем рубрику «критически важная скукота». Котики в комплект не входят. Правила: каждую неделю редакция новостного сайта [Threatpost][2] выбирает три наиболее значимых новости, к которым я добавляю расширенный и беспощадный комментарий. Все эпизоды сериала можно найти [по тегу][3]. [Читать дальше →][4]

[1]: https://habrastorage.org/files/555/746/d73/555746d73fcf477da3684c00ad22eb1b.jpg
[2]: https://threatpost.ru/
[3]: http://habrahabr.ru/search/?target_type=posts&q=%5Bklsw%5D%20&order_by=date
[4]: http://habrahabr.ru/post/270815/#habracut

[>] Слежение за пустотой, или атаки на несуществующие ресурсы
habra.15
habrabot(difrex,1) — All
2015-11-13 19:00:04


![image][1] В последнее время ходит немало разговоров о том, что социальные сети и мессенджеры заглядывают в личную переписку и используют ее в своих целях. После очередного [вброса][2] в сторону новомодного нынче Телеграмма, появились мысли провести очередное исследование, посвященное указанной тематике. [Читать дальше →][3]

[1]: https://habrastorage.org/files/592/76a/99d/59276a99dc38421eb1e40a2561734c83.png
[2]: https://www.facebook.com/dmitry.evteev/posts/1056065014425507
[3]: http://habrahabr.ru/post/270819/#habracut

[>] [recovery mode] Как сделать из мухи слона
habra.15
habrabot(difrex,1) — All
2015-11-13 19:30:03


Многим известна такая старая добрая игра со словами, сделать из мухи слона. Суть её в том, что нужно из начального слова сделать конечное, на каждом шаге меняя только одну букву, получая при этом на каждом шаге осмысленное существительное. Известный автор книг по занимательной математике Е. Я. Гик в своей книге "[Занимательные математические игры][1]" опубликовал такое 16-ходовое решение, как из мухи сделать слона: муха-мура-тура-тара-кара-каре-кафе-кафр-каюр-каюк-крюк-упюк-урок-срок-сток-стон-слон. ![муха и слон][2] И вот, в один прекрасный день мне довелось заняться решением этой задачи в программном виде. [Читать дальше →][3]

[1]: http://mathemlib.ru/books/item/f00/s00/z0000020/
[2]: https://habrastorage.org/files/318/23d/27b/31823d27b8b6404386b1fb2811933e2d.gif
[3]: http://habrahabr.ru/post/270845/#habracut

[>] Конкурс по программированию на JS: Почтовые фильтры
habra.15
habrabot(difrex,1) — All
2015-11-13 21:30:03


Компания [Hola][1] снова объявляет конкурс по программированию на JS с солидным призовым фондом:

1. Первое место: 1500 USD
2. Второе место: 1000 USD
3. Третье место: 500 USD
4. Возможно, мы решим отметить чьё-то чрезвычайно оригинальное решение специальным призом в 350 USD.
5. Если Вы отправите кому-то ссылку на этот конкурс, поставив [наш адрес][2] в CC, и этот человек займёт призовое место, Вы получите такую же сумму, как и он.

Мы ищем талантливых программистов, поэтому авторы интересных решений будут приглашены на собеседования. ![][3]

#### Правила

Некоторые из тех, кто помнит наши предыдущие конкурсы, были недовольны тем, что условия задач были сформулированы нечётко, и от участника требовалось «угадать», что мы имели в виду. На этот раз условие сформулировано предельно однозначно, а в распоряжении участников — эталонная реализация решения. Победит тот, чей код будет самым быстрым при условии прохождения тестов на корректность. Условия конкурса на английском языке размещены [на нашем сайте][4]. Ниже — перевод на русский язык. [Читать дальше →][5]

[1]: http://hola.org
[2]: mailto:challengejs@hola.org
[3]: https://habrastorage.org/files/fd5/99c/da2/fd599cda29ff4f8090af1e6f43523c27.jpg
[4]: http://hola.org/challenge_mail_filter
[5]: http://habrahabr.ru/post/270847/#habracut

[>] Samba и запрещенные символы
habra.15
habrabot(difrex,1) — All
2015-11-15 16:00:06


Samba (самба) под Linux. Этот удивительный софт подарил линуксоидам возможность связи с миром Windows. Помню то дивное чувство, когда в локальной сети появился мой первый самба-сервер. Эх, было время! Но пост не об этом. Не по наслышке знаю, что многих раздражает ограниченная поддержка спец.символов в Windows. Но ведь это не повод отказываться от них, не так ли? ![image][1] Подробности моих злоключений и (почти) счастливый финал под катом. Приступим! [Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/6a3/cbf/7c0/6a3cbf7c0ea47b4026ac54225ce4d2c6.png
[2]: http://habrahabr.ru/post/270877/#habracut

[>] [Перевод] Использование больших страниц в памяти в PHP 7
habra.15
habrabot(difrex,1) — All
2015-11-15 18:30:03


Разбивка на страницы — это способ управления памятью, выделяемой для пользовательских процессов. Все доступы процессов к памяти являются виртуальными, а преобразование их адресов в адреса физической памяти выполняют ОС и аппаратный [MMU][1]. При разбивке на страницы память делится на блоки фиксированного размера. В Linux на x86/64-платформах размер страниц обычно составляет 4 Кб. Каждый процесс содержит в себе таблицу, в которой хранится информация о соответствии адресов страницы и физической памяти — элемент таблицы страниц (page table entry). Чтобы ОС не лезла в эту таблицу при каждом обращении к памяти (иначе для обработки каждого запроса на обращение к памяти потребуется обращаться к ней дважды), применяется небольшой кэш — [буфер ассоциативной трансляции][2] (Translationlookaside Buffer, TLB). Этот аппаратный компонент находится в MMU и работает чрезвычайно быстро и эффективно. Система сканирует TLB с целью поиска записи о соответствии адресов страницы и физической памяти. Если нужной записи там не оказывается, тогда ядру ОС приходится обращаться к памяти, искать нужное соответствие и обновлять информацию в TLB, чтобы получить из памяти нужные нам данные. Если вы хотите больше узнать об управлении виртуальной памятью, то можете изучить [эту публикацию][3]. А пока давайте разберем, как в PHP 7 устроена работа с большими страницами (Huge Page). [Читать дальше →][4]

[1]: https://ru.wikipedia.org/wiki/%D0%91%D0%BB%D0%BE%D0%BA_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%BF%D0%B0%D0%BC%D1%8F%D1%82%D1%8C%D1%8E
[2]: https://ru.wikipedia.org/wiki/%D0%91%D1%83%D1%84%D0%B5%D1%80_%D0%B0%D1%81%D1%81%D0%BE%D1%86%D0%B8%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D0%B9_%D1%82%D1%80%D0%B0%D0%BD%D1%81%D0%BB%D1%8F%D1%86%D0%B8%D0%B8
[3]: http://jpauli.github.io/2015/04/16/segmentation-fault.html
[4]: http://habrahabr.ru/post/270685/#habracut

[>] [Перевод] Асинхронный Python 3.5 и Mongodb
habra.15
habrabot(difrex,1) — All
2015-11-15 18:30:03


![][1] _Это достаточно вольный перевод статьи об основных новшествах асинхронного драйвера для `mongodb` используемого в `tornado`. Основной мотив, который послужил для написания этого перевода — новшества, появившиеся в этой версии, такие как поддержка `asyncio`, `async`, `await` и `Python 3.5`. Сама статья не сколько перечисление новшеств, сколько лаконичные примеры асинхронной работы с `MongoDB`. _ [Введение][2] [ asyncio][3] [ aggregate][4] [ Python 3.5 ][5] [ async and await][6] [Читать дальше →][7]

[1]: https://habrastorage.org/files/0e5/2ca/a0f/0e52caa0f53b40fda0a1770760c7cfd3.jpg
[2]: #0
[3]: #1
[4]: #2
[5]: #3
[6]: #4
[7]: http://habrahabr.ru/post/270709/#habracut

[>] Агрегация и осведомленность
habra.15
habrabot(difrex,1) — All
2015-11-15 19:30:03


Механизм агрегации объектов — одна из замечательных возможностей моего JavaScript-фреймворка [jWidget][1], которой нет в большинстве других фреймворков. Хочу подробнее о ней рассказать, потому что она помогает с легкостью решать широкий спектр типичных задач, стоящих перед разработчиками клиентов веб-приложений по архитектуре Model-View. Будет мало картинок, зато много интересного кода. Я кратко описал механизм агрегации объектов в разделе **1\. Классы и объекты** [прошлой статьи][2]. Статья вышла полтора года назад. С тех пор произошло 4 крупных обновления фреймворка, но философия сохранилась. С опытом, было создано несколько потрясающих паттернов структурирования кода на базе механизма агрегации, позволяющих значительно сократить объем кода и сделать его проще. Для начала, напомню, что это такое. [Читать дальше →][3]

[1]: http://enepomnyaschih.github.io/jwidget/index.html#!/guide/ruhome
[2]: http://habrahabr.ru/post/219995/
[3]: http://habrahabr.ru/post/270879/#habracut

[>] [recovery mode] Дайджест событий из мира D №2
habra.15
habrabot(difrex,1) — All
2015-11-15 23:00:03


В последнее время на Хабре стало много публикаций на тему Rust и Go и достаточно мало про D. Главной причиной этого является поддержка этих языков Mozilla и Google, которые могут вкладывать большие деньги в свои детища. За D не стоит ни одной столь же крупной компании, однако это не мешает языку активно развиваться. Сейчас я кратко расскажу о последних новостях языка и оставлю кому-то другому возможность провести комплексное сравнение Rust/Go и D. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/270901/#habracut

[>] Let's encrypt: старт публичной беты с 5 декабря
habra.15
habrabot(difrex,1) — All
2015-11-16 01:00:02


![image][1] На сайте Let's encrypt появилась [новость][2] о том, что доступ к публичному бета-тестированию будет открыт 5 декабря 2015 года. Для регистрации больше не будет нужен invite код. «С момента запуска закрытой беты 12 сентября было выдано более 11000 сертификатов и стало понятно, что система готова к публичному тестированию», — сообщается в новости. [Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/00d/77a/262/00d77a262c95927ab0d8b55226574dc0.jpg
[2]: https://letsencrypt.org/2015/11/12/public-beta-timing.html
[3]: http://habrahabr.ru/post/270919/#habracut

[>] Let's encrypt: старт публичной беты с 3 декабря
habra.15
habrabot(difrex,1) — All
2015-11-16 11:00:02


![image][1] На сайте Let's encrypt появилась [новость][2] о том, что доступ к публичному бета-тестированию будет открыт 3 декабря 2015 года. Для регистрации больше не будет нужен invite код. «С момента запуска закрытой беты 12 сентября было выдано более 11000 сертификатов и стало понятно, что система готова к публичному тестированию», — сообщается в новости. [Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/00d/77a/262/00d77a262c95927ab0d8b55226574dc0.jpg
[2]: https://letsencrypt.org/2015/11/12/public-beta-timing.html
[3]: http://habrahabr.ru/post/270919/#habracut

[>] [Из песочницы] Сборка 4-мерного кубика Рубика
habra.15
habrabot(difrex,1) — All
2015-11-16 11:30:02


Мы знакомы с головоломкой кубик Рубика, но, проживая в трёхмерном пространстве, трудно представить себе такую в четырёхмерном. Разумеется, Рубик не патентовал четырёхмерных кубиков, и речь идёт лишь о подобии кубика Рубика. Поэтому сперва я расскажу о том, как я себе представляю четырёхмерную головоломку. ![][1] [Читать дальше →][2]

[1]: https://habrastorage.org/files/38a/499/731/38a499731a9e4334859eca635a2ac0b3.jpg
[2]: http://habrahabr.ru/post/270935/#habracut

[>] Забвение старых идей и попытки изобретения «старого колеса»
habra.15
habrabot(difrex,1) — All
2015-11-16 14:30:02




##### **Из истории криптографии США**

![][1] Еще в конце XVIII века криптография обогатилась замечательным изобретением — ** шифратором Джефферсона**, названным в честь государственного деятеля, первого государственного секретаря, а затем и президента Америки Томаса Джефферсона. Сам Джефферсон назвал свою систему «дисковым шифром». Реализовывало такое устройство известный шифр многоалфавитной замены. Шифратор представлял собой деревянный цилиндр, который разрезался на 36 дисков (хотя количество дисков могло быть и другим), которые насаживались на одну ось так, чтобы независимо поворачиваться вокруг нее. На боковых поверхностях дисков в вольном порядке — все буквы английского алфавита. [Читать дальше][2]

[1]: https://habrastorage.org/files/d25/ea9/d3d/d25ea9d3dcea4b5b974c2bbbb61ae682.jpg
[2]: http://habrahabr.ru/post/270931/#habracut

[>] Russian AI Cup 2015: гонки на выживание для программистов
habra.15
habrabot(difrex,1) — All
2015-11-16 17:00:03


![][1] Мы рады сообщить о начале очередного международного чемпионата по программированию искусственного интеллекта — [Russian AI Cup][2]. В этот раз чемпионат получил название CodeRacing. Храбрецам, которые отважатся принять участие, предстоит программировать искусственный интеллект для управления гоночным автомобилем. Но он должен будет не просто исполнять роль водителя, но и одновременно расстреливать соперников. В «игровом» мире предусмотрено четыре типа юнитов: кодемобили, снаряды, бонусы и лужи мазута. Самые «грязные» приёмы на трассе будут только поощряться: можно толкать чужие машины, повреждать их и ломать. [Читать дальше →][3]

[1]: https://habrastorage.org/files/b4c/ca2/064/b4cca206426f4d2882e240c7a622384e.jpg
[2]: http://russianaicup.ru/
[3]: http://habrahabr.ru/post/270759/#habracut

[>] Титаник на Kaggle: вы не дочитаете этот пост до конца
habra.15
habrabot(difrex,1) — All
2015-11-16 17:30:02


Привет, хабр! ![][1] **\#\{Data Science для новичков\}** Меня зовут Глеб Морозов, мы с Вами уже знакомы по предыдущим статьям. По многочисленным просьбам продолжаю описывать опыт своего участия в образовательных проектах [MLClass.ru][2] (кстати, кто еще не успел — до конца еще можно [получить материалы прошедших курсов][3] — это, наверное, самый краткий и максимально практичный курс по анализу данных, который можно себе представить). Данная работа описывает мою попытку создать модель для предсказания выживших пассажиров «Титаника». Основная задача — тренировка в использовании инструментов применяемых в Data Science для анализа данных и презентации результатов исследования, **поэтому данная статья будет очень и очень длинной**. Основное внимание уделено исследовательскому анализу (**exploratory research**) и работе по созданию и выбору предикторов (**feature engineering**). Модель создаётся в рамках соревнования **Titanic: Machine Learning from Disaster** проходящего на сайте Kaggle. В своей работе я буду использовать язык «R». [Читать дальше →][4]

[1]: https://habrastorage.org/files/c3e/cde/5b7/c3ecde5b78cd41e89b09f79af46311bb.png
[2]: http://dscourse.mlclass.ru/
[3]: http://dscourse.mlclass.ru/
[4]: http://habrahabr.ru/post/270973/#habracut

[>] Подпольный рынок кардеров. Перевод книги «KingPIN». Глава 16. «Operation Firewall»
habra.15
habrabot(difrex,1) — All
2015-11-16 18:30:02


![][1]Кевин Поулсен, редактор журнала WIRED, а в детстве blackhat хакер Dark Dante, написал книгу про «[одного своего знакомого][2]». В книге показывается путь от подростка-гика (но при этом качка), до матерого киберпахана, а так же некоторые методы работы спецслужб по поимке хакеров и кардеров. Квест по переводу книги начался летом в ИТшном лагере для старшеклассников — «[Шкворень: школьники переводят книгу про хакеров][3]», затем к переводу подключились и Хабраюзеры и даже немного редакция. Второе дыхание «квест по переводу книги» получил благодаря компании [Edison][4], когда я дал им прочитать черновик, а они поделились своим опытом в создании VPN-сети для анонимных клиентов. К ним обратился некто через анонимный ICQ, писал искаженно, как-будто через переводчик. Дал ТЗ на английском, расплатился вебманями. Сказал, что даже если его и будут отслеживать, то он обо всем позаботился. Над задачей работали 2 программиста месяц, сдали в срок, претензий не было. (Есть немного подробностей, о которых можно рассказать в отдельной статье, если кому интересно)

#### Глава 16. Операция Фаервол

_(за перевод спасибо хабраюзеру [Find\_The\_Truth][5])_ Что-то странное происходило с [ShadowCrew][6]. Макс старался не светиться на одном из самых криминальных сайтов во всем интернете. Для него ShadowCrew была лишь площадкой, где можно было взломать пару-тройку кардеров. Однако, в мае 2004 года, администратор сайта сделал заявление, которое привлекло внимание Макса. Админ КумбаДжонни (Cumbajohnny) представил новый VPN сервис только для участников сайта. [Читать дальше →][7]

[1]: https://habrastorage.org/files/353/64b/a0e/35364ba0e409475fbd05cd11e8132734.jpg
[2]: https://en.wikipedia.org/wiki/Max_Butler
[3]: http://habrahabr.ru/post/261491/
[4]: http://www.edsd.ru
[5]: http://habrahabr.ru/users/find_the_truth/
[6]: https://en.wikipedia.org/wiki/ShadowCrew
[7]: http://habrahabr.ru/post/270831/#habracut

[>] [Из песочницы] Восстанавливаем права доступа под Mac OS X — EL Capitan
habra.15
habrabot(difrex,1) — All
2015-11-16 19:30:02


При переходе на El Capitan ряд пользователей столкнулся с проблемами прав доступа — неработающее **sudo**, некорректная timezone, etc… Корнем зла является урезанный доступ к **/private/etc**. Для начала, вам, стоит проверить свой. Откройте **Terminal** (это можно сделать через **Spotlight**) и введите **ls -la /private**.

$ ls -la /private
total 0
drwxr-xr-x@ 6 root wheel 204 Oct 1 10:20 .
drwxr-xr-x 33 root wheel 1190 Nov 4 15:56 ..
drwxr-xr-x 106 root wheel 3604 Nov 13 18:04 etc
drwxr-xr-x 2 root wheel 68 Aug 23 02:28 tftpboot
drwxrwxrwt 14 root wheel 476 Nov 16 10:55 tmp
drwxr-xr-x 25 root wheel 850 Nov 4 17:02 var
$


Вот так **«drwxr-xr-x»** и должны выглядеть права на **etc**. Если они выглядят больше похожими на **«drwx-----»**, то вам к нам. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/270969/#habracut

[>] Строим свое собственное отказоустойчивое облако на базе OpenNebula с Ceph, MariaDB Galera Cluster и OpenvSwitch
habra.15
habrabot(difrex,1) — All
2015-11-16 19:30:02


![][1] На этот раз я бы хотел рассказать, как настроить сей сабж, в часности каждый отдельный компонент, что бы в итоге получить свое собственное, расширяемое, отказоустойчеавое облако на базе OpenNebula. В данной статье я рассмотрю следующие моменты:

* **[Установка Ceph, распределенного хранилища][2]**. _(Я буду описывать установку двухуровневого хранилища с кэширующим пулом из SSD-дисков)_
* **[Установка MySQL, Galera кластера с мастер-мастер репликацией][3]**
* **[Установка софт-свича OpenvSwitch][4]**
* **[Установка непосредственно самой OpenNebula][5]**
* **[Настройка отказоустойчевого кластера][6]**
* **[Первоначальная конфигурация][7]**

Темы сами по себе очень интересные, так что даже если вас не интересует конечная цель, но интересует настройка какого-нибудь отдельного компонента. Милости прошу под кат. [Читать дальше →][8]

[1]: https://habrastorage.org/files/1b8/185/6c4/1b81856c42da42ba903e85e1653969e4.png
[2]: http://habrahabr.ru/post/270187/#ceph
[3]: http://habrahabr.ru/post/270187/#galera
[4]: http://habrahabr.ru/post/270187/#openvswitch
[5]: http://habrahabr.ru/post/270187/#opennebula
[6]: http://habrahabr.ru/post/270187/#pacemaker
[7]: http://habrahabr.ru/post/270187/#configuration
[8]: http://habrahabr.ru/post/270187/#habracut

[>] Защита VoIP сетей
habra.15
habrabot(difrex,1) — All
2015-11-16 19:30:02


![][1] Приветствую всех. В сети уже достаточно много написано статей о том, что SBC защищает VoIP сеть и предотвращает воровство трафика, отражает DoS/DDoS атаки и обеспечивает полноценную безопасность VoIP сервисов. Но очень мало написано о том, какие в реальности есть атаки в мире VoIP и SIP, и какие именно технологии обеспечивают безопасность. В данной статье я постарался описать какие бывают атаки в мире VoIP, в чем их особенность, какое у них отличие от обычных сетевых атак и каким образом AudioCodes SBC предотвращает данные атаки и обеспечивает ту самую защиту, про которую все пишут. [Читать дальше →][2]

[1]: https://habrastorage.org/files/047/9aa/fce/0479aafceb4c432b9145c7c0cfcd9a91.png
[2]: http://habrahabr.ru/post/270739/#habracut

[>] Установка плагина onlyoffice-alfresco (контрольный лист — шпаргалка)
habra.15
habrabot(difrex,1) — All
2015-11-16 19:30:03


10 ноября 2015 стал доступен плагин для редактирования документов в Alfresco Share при помощи онлайн-редакторов OnlyOffice. Код плагина распространяется под лицензией GPL. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/270933/#habracut

[>] [Перевод] Лучше или хуже
habra.15
habrabot(difrex,1) — All
2015-11-16 19:30:03


_Перевод статьи [«For Better or For Worse»][1] [разработчика][2] из компании DataDog Inc. Статья посвящена вопросу дизайна языков программирования и связи дизайна с попытками оценок качества языков. Частично является ответом на недавно переведенную [тут эту статью][3]._ В программистской тусовке возникает мем об “объективном качестве” дизайна Go. Буквально на днях я встретил его в [статье про выбор языков от Honza][4], где он был очень хорошо виден:

> Учтите, язык объективно очень плохо спроектирован. [...] И, при этом, Go гораздо более популярен, чем Haskell, если верить GitHub. При этом, уже столько отличных проектов, написанных на Go, вроде Docker, InfluxDB, etcd, Consul, Prometheus, packer и других.

Я думаю, что это [крайне интересный набор противоречий][5], и автор с этим согласен. Сложно было бы так безаппеляционно и уверенно утверждать, что Go плохо спроектирован, если бы это мнение не было столь расхожим. В прошлом году целый ряд статей и постов в блогах заложили основу этому мнению. Среди них были статьи людей, не любящих Go, потому что тот [не позволяет им чувствовать себя умными][6] или потому что [в нём нет ничего принципиально нового][7]. Они уверены, что Go, сознательно игнорируя определённые продвижения в дизайне языков программирования, остался в прошлом, из которого лучшие языки ушли далеко вперед. И они это утверждают [весьма настойчиво][8]. Когда люди с таким видением пытаются объяснить популярность Go, они неизбежно приходят к парадоксу. Если Go настолько плох, почему он так популярен? [Читать дальше →][9]

[1]: http://jmoiron.net/blog/for-better-or-for-worse/
[2]: https://github.com/jmoiron
[3]: http://habrahabr.ru/post/270707/
[4]: https://honza.ca/2015/11/language-choice
[5]: https://twitter.com/jmoiron/status/662156246452060161
[6]: http://nomad.so/2015/03/why-gos-design-is-a-disservice-to-intelligent-programmers/
[7]: http://yager.io/programming/go.html
[8]: https://www.quora.com/How-do-Go-and-Rust-languages-compare/answer/Costya-Perepelitsa?srid=u77Z&share=1
[9]: http://habrahabr.ru/post/270981/#habracut

[>] Развитие card‑not‑present environment: история и возможности
habra.15
habrabot(difrex,1) — All
2015-11-16 20:30:03


В середине 1990-х годов для проведения оплаты по карте было нужно совсем немного - ее номер и срок действия. Клиент вводил эти цифры в поля формы на сайте магазина и подтверждал оплату. Сформированный авторизационный запрос передавался от банка-эквайрера через платежную систему к банку-эмитенту. При правильно заведенных данных чаще всего следовал положительный ответ эмитента. [Читать далее][1]

[1]: http://habrahabr.ru/post/270945/#habracut

[>] WebPack: как внутри устроено Hot Reloading
habra.15
habrabot(difrex,1) — All
2015-11-17 11:00:04


![][1]Наша платформа voximplant активно использует javascript. С помощью него клиенты управляют в реальном времени звонками, на нем работает наша backend логика и большинство frontend. Javascript мы любим, ценим и стараемся быть в курсе последних новостей. Сейчас наши разработчики активно экспериментируют с перспективной связкой webpack + typescript + react (кстати, для typescript мы сделали [type definitions][2] к нашему web sdk, но об этом как-нибудь в другой раз). Особенно нам нравится «hot module replacement»: возможность при изменении исходников очень быстро отобразить изменения в браузере без перезагрузки страницы. Выглядит как магия. К сожалению, документировано тоже как магия — по словам [eyeofhell][3], нашего технического евангелиста, «пример на офсайте — это уникальная комбинация частных случаев и особых команд, любое изменение в которых делает его неработоспособным». На наш взгляд все не так плохо, за пару вечеров вполне можно разобраться. Но и не так просто, как хотелось бы. Поэтому специально для Хабра под катом мы максимально просто и понятно расскажем как работает под капотом вся эта машинерия. [Открыть попкорн и посмотреть шоу с эвалом и вебсокетами][4]

[1]: https://habrastorage.org/files/5fd/ea4/6f8/5fdea46f8f154af98deed1828873f0e9.jpg
[2]: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/voximplant-websdk
[3]: http://habrahabr.ru/users/eyeofhell/
[4]: http://habrahabr.ru/post/270593/#habracut

[>] Pro Parboiled (Часть 4 заключительная)
habra.15
habrabot(difrex,1) — All
2015-11-17 11:00:04


**Часть 4. Суровая действительность** Как заставить Parboiled работать еще быстрее? Каких ошибок лучше не допускать? Что делать с наследством в виде Parboiled1? На эти, а так же другие вопросы призвана ответить заключающая статья серии. **Структура цикла:**

* [Часть 1. Почему Parboiled?][1]
* [Часть 2. Сопоставление текста][2]
* [Часть 3. Извлечение данных][3]
* Часть 4. Суровая действительность

[Читать дальше →][4]

[1]: http://habrahabr.ru/post/270233
[2]: http://habrahabr.ru/post/270531
[3]: http://habrahabr.ru/post/270609
[4]: http://habrahabr.ru/post/271003/#habracut

[>] Семантические технологии на практике на примере родословных
habra.15
habrabot(difrex,1) — All
2015-11-17 13:30:05


Программа, способная к логическим выводам в рамках поставленной задачи, может казаться техническим чудом и воплощением Скайнета. Но, как можно убедиться ниже, на сегодняшний день создать такую программу на языке Python не составит труда, если использовать семантические технологии. Мы остановимся на наглядном примере онтологий — родословных — и для любого члена семьи в родословной сможем выводить его родственные отношения произвольной сложности (она ограничена вычислительными ресурсами). К примеру, на фамильном древе семьи Романовых ниже показан внучатый двоюродный племянник (first cousin twice removed) российского императора Петра II. ![image][1] Так что если вы хотите познакомиться с технологиями семантического веба на практике, добро пожаловать под кат, где мы потренируемся на родословных. [Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/d23/314/13a/d2331413a25143c93218a2b9796c666d.png
[2]: http://habrahabr.ru/post/270857/#habracut

[>] [Из песочницы] CSRF-уязвимость VK Open Api, позволяющая злоумышленнику без ведома пользователя получать Access Token’ы сторонних сайтов, на которых реализована авторизация через VK
habra.15
habrabot(difrex,1) — All
2015-11-17 14:00:05


Представляю вашему вниманию обзор уязвимости, связанной с неправильным применением JSONP в VK Open Api. На мой взгляд, уязвимость достаточно серьёзная, т.к. позволяла сайту злоумышленника получать Access Token другого сайта, если на нём используется авторизация через библиотеку VK Open API. На данный момент уязвимый код поправили, репорт на HackerOne закрыли, вознаграждение выплатили (1,500$).

### Как это выглядело

В принципе, процесс получения пользовательского Access Token'а страницей злоумышленника происходил по стандартной схеме эксплуатации CSRF-уязвимости:

1. Пользователь заходит на сайт, использующий библиотеку VK Open API (например, [www.another-test-domain.com][1]).
2. Авторизуется там через VK.
3. Потом заходит на сайт злоумышленника (например, [www.vk-test-auth.com][2]), который, эксплуатируя уязвимость, получает Access Token, принадлежащий сайту [www.another-test-domain.com][3].
4. Получив Access Token пользователя, злоумышленник может обращаться к VK API с теми правами, который пользователь дал сайту [www.another-test-domain.com][4] при авторизации на нем через VK.



### Демонстрация

На видео показано, как страница «злоумышленника» на домене [www.vk-test-auth.com][5] получает Access Token пользователя VK, который авторизовался на сайте [www.another-test-domain.com][6], несмотря на то, что в настройках приложения VK, доступ разрешён только для домена [www.another-test-domain.com][7].




[Читать дальше →][8]

[1]: http://www.another-test-domain.com
[2]: http://www.vk-test-auth.com
[3]: http://www.another-test-domain.com
[4]: http://www.another-test-domain.com
[5]: http://www.vk-test-auth.com
[6]: http://www.another-test-domain.com
[7]: http://www.another-test-domain.com
[8]: http://habrahabr.ru/post/271031/#habracut

[>] LINQ конвертор между римскими и арабскими числами
habra.15
habrabot(difrex,1) — All
2015-11-17 16:30:09


Сложилось, что разбирал со студентами LINQ, а со школьниками преобразование между римской и арабской системой счисления. В итоге, мысли заплелись и получился интересный код конвертора, который жалко схоронить в локальных архивах. Пример сгодится в качестве упражнения для понимания LINQ. Итак, нам понадобится словарь, сопоставляющий элементы римских чисел с арабскими. [Подробности][1]

[1]: http://habrahabr.ru/post/271035/#habracut

[>] Алгоритмы и торговля на бирже: Скрытие крупных сделок и предсказание цены акций
habra.15
habrabot(difrex,1) — All
2015-11-17 17:30:06


[![][1]][2] Профессор математики Нью-Йоркского Университета и эксперт по финансовым рынкам Марко Авелланеда (Marco Avellaneda) составил [презентацию][3], в которой рассказал о том, как с помощью алгоритмов крупные инвесторы «скрывают» свои масштабные сделки, а другие трейдеры занимаются предсказанием изменений цен акций. В нашем сегодняшнем материале — основные моменты этой работы. [Читать дальше →][4]

[1]: https://habrastorage.org/files/c79/c44/35a/c79c4435a2474e5da70360e3c541ec82.jpg
[2]: http://habrahabr.ru/company/itinvest/blog/271059/
[3]: https://www.math.nyu.edu/faculty/avellane/QuantCongressUSA2011AlgoTradingLAST.pdf
[4]: http://habrahabr.ru/post/271059/#habracut

[>] [Перевод] Глубокое обучение: Немного теории
habra.15
habrabot(difrex,1) — All
2015-11-17 19:30:04


[][1] Этот пост основан на лекции «[Deep Learning: Theoretical Motivations][2]» («Глубокое обучение: теоретические обоснования») доктора [Йошуа Бенджио][3] (Dr. Yoshua Bengio), которую он читал в [летней школе][4] по глубокому обучению в Монреале (2015 год). Мы рекомендуем её прослушать – так вы лучше поймете нижеизложенный материал. [Читать дальше →][5]

[1]: http://habrahabr.ru/company/spbifmo/blog/271027/
[2]: http://videolectures.net/deeplearning2015_bengio_theoretical_motivations/
[3]: http://www.iro.umontreal.ca/%7Ebengioy/yoshua_en/index.html
[4]: https://sites.google.com/site/deeplearningsummerschool/
[5]: http://habrahabr.ru/post/271027/#habracut

[>] Перенос данных в Россию. Краткий FAQ по заблуждениям
habra.15
habrabot(difrex,1) — All
2015-11-17 20:00:06


Фраза «уж сколько раз твердили миру» наверно идеально подходит под описание ситуации с защитой персональных данных и их переноса в Россию. За прошедшее с начала обсуждений проблем в этой области время казалось бы обсуждено все. И тем более юристы должны уметь читать законы. Увы. Посещение очередной конференции развеяло для меня этот миф, в связи с чем я предлагаю в копилку Хабражителям ответы на типовые вопросы в области переноса данных. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/271023/#habracut

[>] HighLoad++ 2015 глазами иностранного докладчика
habra.15
habrabot(difrex,1) — All
2015-11-17 20:00:06


Всем привет! Когда-то давно, еще года 4 назад, сидя в Бишкеке, я смотрел видео с конференции и думал, какие же докладчики крутые спецы и даже не думал, что сам попаду на эту конференцию, как докладчик. В этой статье я расскажу вам о том. как я подавал заявку, как готовился и как проходила сама конференция. Заявку подавал я 19 января этого года, а 5го октября ее одобрили. Радости, конечно же было много и пришла пора готовиться к докладу. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/270883/#habracut

[>] Пол Грэм: «Месть ботанов». В чем отличие Lisp
habra.15
habrabot(difrex,1) — All
2015-11-17 20:00:06


[Продолжаем перевод][1] эссе и книги Пола Грэма «Хакеры и Художники». В конце статьи тех.директор компании [Edison][2] рассказывает, как они портировали Lisp на С#

> _«Мы гонялись за С++ программистами. Нам удалось перетащить их целую кучу на полпути к Lisp.» Гай Стил, соавтор Java спецификации._

![][3] Оригинал — [Revenge of the Nerds][4], Май 2002 и [What Made Lisp Different][5], декабрь 2001 _За перевод спасибо Щёкотовой Яне._ Начало: [Пол Грэм: «Месть ботанов», часть 1][6]

#### Часть вторая

**Чем отличается Lisp** Когда Lisp был впервые разработан, он воплощал в себе 9 новых принципов. Сегодня некоторые из них мы воспринимаем как само собой разумеещееся, другие можно увидеть только в более продвинутых языках, а два все еще остаются прерогативой Lisp. Эти 9 принципов перечислены ниже в порядке их применения в основном IT-течении. [Читать дальше →][7]

[1]: http://habrahabr.ru/company/tceh/blog/253311/
[2]: http://www.edsd.ru/
[3]: https://habrastorage.org/files/db0/66b/beb/db066bbeb91449dca99a71e97893f22c.jpg
[4]: http://www.paulgraham.com/icad.html
[5]: http://www.paulgraham.com/diff.html
[6]: http://habrahabr.ru/post/267865/
[7]: http://habrahabr.ru/post/268293/#habracut

[>] Тех деревня от нуля до единицы. Теперь и с отзывами о компаниях
habra.15
habrabot(difrex,1) — All
2015-11-17 20:30:03


Привет всем! Делимся новостями проекта, о котором писали год назад. Но сначала говорим спасибо каждому хабровчанину, поддержавшему [Тех деревню][1]! За отзывы, шеринг в соцсетях и письма об ошибках — мы это ценим. Спустя год мы обновили проект и добавили новые возможности. Немного про итоги. За год в Тех деревне появилось 500 новых отзывов о городах. Карта стала ярче в разы, и уже с первого взгляда видно где хорошо, а где — не очень. Приятно, что пишут из самых разных мест. У нас собраны отзывы со всех континентов, кроме Антарктиды (не будет считать это минусом — вы вряд ли захотите работать там, где даже летом -30). ![image][2] [Читать дальше →][3]

[1]: http://techvillage.ru/
[2]: https://habrastorage.org/files/101/ecc/17d/101ecc17d2e24ac79dedbbbdb17de2e3.png
[3]: http://habrahabr.ru/post/270965/#habracut

[>] [recovery mode] Защита персональных данных по N 242-ФЗ: как понять и что делать?
habra.15
habrabot(difrex,1) — All
2015-11-17 22:00:05


![][1] Тема информационной безопасности продолжает быть актуальной — недавно в Москве на конференции «Защита персональных данных» обсуждали ФЗ №242 или как его называют «Закон о локализации персональных данных россиян на территории РФ». Суть его такова: с сентября 2015 года организациям-операторам ПДн, необходимо вести сбор и систематизацию персональных данных (далее – ПДн) россиян на территории РФ. А львиная доля поставщиков различных услуг — иностранцы, или хранят свои серверы заграницей, и российские пользователи, приобретая услуги таких поставщиков, передают свои данные за рубеж, где происходит не только их хранение, но и систематизация. Возникает вопрос — как клиентам продолжить пользоваться услугами зарубежных поставщиков, не нарушив стандарты обработки ПДн по российскому законодательству. [Читать дальше →][2]

[1]: https://habrastorage.org/files/202/9bb/162/2029bb16265e45679315d61f93d9ae0c.jpg
[2]: http://habrahabr.ru/post/271061/#habracut

[>] Пишем простейший плагин для ReSharper
habra.15
habrabot(difrex,1) — All
2015-11-18 12:30:06


Цель: написать, протестировать и развернуть простейший плагин для R#, содержащий пользовательские Quick-Fix и Context Action. План статьи:

1. [Настройка среды разработки][1]
2. [Пример №1: простейшее расширение-заглушка][2]
3. [Установка плагина][3]
4. [Отладка, полезные советы][4]
5. [Пример №2: модификация кода с помощью R# API][5]
6. [Функциональное тестирование плагинов средствами R# API][6]

В ролях:

> Visual Studio 2015
>
>
>
> ReSharper Ultimate 10
>
>

Заинтересовавшихся приглашаю под кат. [Читать дальше →][7]

[1]: #P1
[2]: #P2
[3]: #P3
[4]: #P4
[5]: #P5
[6]: #P6
[7]: http://habrahabr.ru/post/270155/#habracut

[>] Двухфакторная аутентификация клиентов AnyConnect. Active Directory и Azure Multi-Factor Authentication Server
habra.15
habrabot(difrex,1) — All
2015-11-18 13:30:05


![][1] Уже практически ни у кого не вызывает вопросов то, зачем нужна двух факторная аутентификация, особенно при доступе к ресурсам удаленных пользователей. Априори пользователь относится достаточно безответственно к хранению паролей защищающих рабочую информацию, что и не удивительно, учитывая сколько личных паролей приходится помнить и приоритеты обычного человека в плане защиты личной или рабочей информации. Внедрение аутентификации удаленных пользователей по принципу «something I know+ something I have” позволяет сделать атаку, направленную на перехват или подбор паролей, бессмысленной и значительно снизить угрозы ИБ от получения злоумышленником пароля пользователя. Представляю Вам руководство по настройке Microsoft Azure Multi-Factor Authentication Server (MFAS) в качестве второго фактора аутентификации при подключение доменных пользователей к ресурсам компании посредством Cisco AnyConnect. [Читать дальше →][2]

[1]: https://habrastorage.org/files/764/6fb/c1a/7646fbc1a4eb4f7998d51bb121a315e3.jpg
[2]: http://habrahabr.ru/post/271113/#habracut

[>] Мастер-класс Дмитрия Склярова. DRM: вчера, сегодня и завтра
habra.15
habrabot(difrex,1) — All
2015-11-18 15:00:06


Сегодня мы продолжаем серию публикаций мастер-классов наших образовательных проектов и представляем вашему вниманию пост по мотивам выступлений Дмитрия Склярова, которые он провел в Техносфере и Технотреке. Тема выступления — Digital Rights Management. Видео выступления смотрите на [IT.MAIL.RU][1], а текст — далее. Идея этого выступления выросла из доклада, который я читал на конференции DEFCON в 2001 г., после чего у меня и у компании, в которой я работал (ElcomSoft), возникли некоторые юридические сложности. Через 1,5 года после данного выступления в США состоялся суд, в результате которого компанию признали невиновной по всем пяти пунктам обвинения, но история была достаточно громкой. Спустя годы я решил сделать новую версию того доклада, добавив информацию о новых тенденциях в сфере Digital Rights Management (DRM).

# DRM в сфере аудио и видео

Расскажу, как возникла идея DRM. Все началось с бытового видеомагнитофона системы Betamax, который компания Sony выпустила на рынок в 1975 г. Он стал первым устройством, позволяющим самостоятельно записывать телевизионный эфир для последующего просмотра. А в 1976 г. Sony получила судебный иск от Universal Studios и The Walt Disney Company, в котором говорилось, что использование технологий бытовой видеозаписи нарушает авторские права. То есть я могу записать фильм с телевизора, и после этого, например, продать его или дать посмотреть кому-нибудь, кто никакого отношения к телевидению не имеет, или что-то в этом роде. Значит, компания Sony заранее виновна в том, что создала такое устройство, и подобные устройства надо следует запретить. ![][2] [Читать дальше →][3]

[1]: https://it.mail.ru/video/190/
[2]: https://habrastorage.org/files/9bc/ee1/12e/9bcee112eb164210858670f1661ff983.jpg
[3]: http://habrahabr.ru/post/271071/#habracut

[>] [Из песочницы] GOTO or not GOTO вот в чём вопрос
habra.15
habrabot(difrex,1) — All
2015-11-18 15:30:04


__

> «Спор возможен там, где истина закрыта. В бесплодных спорах можно бесконечно обсуждать, что в комнате находится закрытой дверью. Но стоит дверь открыть, и ясно станет всем и спорить не о чем, коль каждый истину увидеть сможет»

Владимир Мегре ![][1] _Статья посвящается Зацепину П.М., выдающемуся инженеру Алтайского государственного университета, под чьим чутким руководством многие студенты, включая автора статьи, постигали магию инженерного творчества._

### Введение

Спор о возможности использования в программах оператора GOTO ведётся уже очень давно (официальным его началом признана статья Дейкстры «О вреде оператора GOTO», опубликованная в 1968 году [2]). Через три года мы будем праздновать 50-летний юбилей этого спора. Это хороший повод, чтобы наконец-то «расставить все точки над i» и прекратить спор. Цитата в эпиграфе выбрана неслучайно. Она в точности отражает текущую ситуацию в споре про GOTO. В нашем случае «комната за закрытой дверью» – это понятная всем постановка задачи. Пока, к сожалению, такой постановки задачи озвучено не было, поэтому споры и не угасают. Противоборствующие стороны спорят хоть и о схожих, но всё-таки о разных вещах, поэтому и не могут найти компромисса. Давайте займём в этом споре нейтральную сторону, и беспристрастно во всём разберёмся. Рассмотрим доводы «противников» и «защитников» оператора GOTO и решим, «кто из них прав, а кто виноват». [Читать дальше →][2]

[1]: https://habrastorage.org/files/42d/37e/f6e/42d37ef6e8ab41baac36caa3d5171ed3.jpg
[2]: http://habrahabr.ru/post/271131/#habracut

Pages: 1 ... 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 ... 37