RSS
Pages: 1 ... 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 ... 210
[>] [Из песочницы] Иглобрюх и дары «Жизни»
habra.14
habrabot(difrex,1) — All
2015-03-23 22:30:03


![][1] Многие программисты, по крайней мере моего поколения, знают игру «Жизнь», правила которой были предложены британским математиком Джоном Конвеем (John Conway) в 1970 году. Но что знают немногие, так это то, что она до сих пор активно развивается и радует новыми открытиями. Историей одного из таких открытий я хочу поделиться в этой статье. [Читать дальше →][2]

[1]: //habrastorage.org/files/9b2/b47/346/9b2b4734696a457897aa4c97abf4ecf0.gif
[2]: http://habrahabr.ru/post/253809/#habracut

[>] Дайджест KolibriOS #10: коротко о накопившемся
habra.15
habrabot(difrex,1) — All
2015-11-12 10:30:06


![][1] Сейчас далеко не окончание осеннего периода, но тем не менее было решено выпустить десятый выпуск дайджеста об изменениях в КолибриОС. Причин тому две: это то что есть что рассказать, и вторая даже более важная, это то, что срок действия нашего корпоративного блога подходит к концу, и его дальнейшая судьба туманна. Ну, не будем о грустном. Тем более что многое сделанное за осень, как на уровне ядра и библиотек, так и в приложениях, не может не радовать. [Читать дальше →][2]

[1]: http://habrastorage.org/getpro/habr/post_images/332/ac0/97c/332ac097cb7bfba245943a942c69f564.png
[2]: http://habrahabr.ru/post/270601/#habracut

[>] Электронная подпись в доверенной среде на базe загрузочной Ubuntu 14.04 LTS и Рутокен ЭЦП Flash
habra.14
habrabot(difrex,1) — All
2015-03-24 00:30:03


Процедура наложения электронной подписи, призванная обеспечить подтверждение целостности подписанного документа и его авторства, сама по себе может быть небезопасной. Основные атаки на ЭП — это кража ключа и подмена подписываемой информации, а также несанкционированный доступ к средству ЭП (например, USB-токену) посредством кражи его PIN-кода. Реализуются данные атаки различными способами и на различных уровнях. На уровне ОС это внедрение вредоносного ПО (вирусы, программы-шпионы, руткиты и т.п.), которое способно похищать ключи, PIN-коды и делать подмену документов посредством чтения и/или подмены данных в памяти системного процесса, используя различные механизмы «хака», заложенные в ОС. Если мы говорим о подписи в браузере, то к данным атакам добавляется возможность проведения атаки man-in-the-middle, направленной на модификацию подписываемых данных на web-странице или на кражу PIN-кода или на перехват secure token для возможности злоумышленнику прикинуться абонентом системы. Кроме того, на сайтах возможна атака типа CSS, обусловленная безалаберностью разработчиков сайта. Очевидно, что максимально защитить клиента при проведении процедуры ЭП возможно лишь комплексом мер. К данным мерам можно отнести:

* применение для электронной подписи криптографических смарт-карт/USB-токенов с неизвлекаемыми ключами
* использование правильной реализации протокола TLS на сайте
* правильное конфигурирование этой правильной реализации протокола TLS
* использование специальных аппаратных средств для визуализации подписываемых данных перед наложением подписи (trustscreen)
* корректная реализация браузерных плагинов и расширений, которые обеспечивают ЭП в браузере
* регламентирование процедуры подписи для пользователя с учетом встроенных в браузер механизмов безопасности
* проверка сертификата TLS-сервера пользователем перед ЭП
* запуск браузерных плагинов и расширений только на доверенном сайте (сейчас правильно настроенные браузеры предупреждают пользователя о запуске)
* ввод PIN-кода токена по запросу только доверенного сайта
* защита ОС от вредоносного ПО (создание доверенной среды)

Некоторое время назад наша компания выпустила новый [Рутокен ЭЦП Flash][1]. Это устройство «два в одном» — криптографический токен и управляемая FLASH-память в едином корпусе. При этом контроллер позволяется настраивать FLASH-память таким образом, что атрибуты настройки нельзя изменить без знания PIN-кода к устройству. В данной статье мы сделаем кастомную Ubuntu 14.04 LTS, в которую «упакуем» смарткарточные драйвера и [Рутокен Плагин][2]. Эту ОС запишем на FLASH-память Рутокен ЭЦП Flash (USB-live) и специальными средствами сделаем ее read-only, так, что без знания PIN-кода злоумышленник не сможет снять этот атрибут. Таким образом, получим загрузочное устройство, при загрузке с которого пользователь сразу получит возможность подписи документов в браузере на неизвлекаемых ключах в доверенной среде, целостность которой гарантируется управляющим контроллером USB-токена. [Читать дальше →][3]

[1]: http://www.rutoken.ru/products/all/rutoken-ecp-flash/
[2]: http://www.rutoken.ru/products/all/rutoken-plugin/
[3]: http://habrahabr.ru/post/253619/#habracut

[>] Про Parboiled (Часть 3)
habra.15
habrabot(difrex,1) — All
2015-11-12 11:00:07


**Часть 3: Извлечение данных** В этой статье мы построим парсер для уже описанного нами ранее формата конфигурационных файлов. Также мы реализуем небольшой DSL для упрощенного доступа к элементам полученного дерева. Еще из этой статьи вы узнаете о типах правил, действиях парсера, а так же о «темной материи» Parboiled — стеке значений. **Структура цикла:**

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

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

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

[>] [Из песочницы] Стрелочные часы на CMake
habra.14
habrabot(difrex,1) — All
2015-03-24 02:30:03


![][1] Когда я устроился на новую работу, пришлось в ускоренном темпе осваивать новые для меня технологии, которые используются в данной компании. Одной из таких технологий стала система сборки [cmake][2], с которой мне раньше не приходилось сталкиваться. Эта система имеет свой встроенный язык для написания сборочных скриптов. Этот самый язык меня и заинтересовал. Вскоре я выяснил, что в нем есть возможность вычисления математических выражений, запись и чтение из файлов, запуск внешних процессов и другие интересные возможности, что навело меня на мысль воспользоваться этим языком в качестве основного ЯП и написать на нем что-нибудь осязаемое. Речь пойдет о том, как я писал стрелочные часы на языке cmake 2.8. [Читать дальше →][3]

[1]: //habrastorage.org/files/0f9/b59/429/0f9b59429cb041cca2fe1f101321981c.png
[2]: http://www.cmake.org/
[3]: http://habrahabr.ru/post/253813/#habracut

[>] Простой инлайн-визитор для boost::variant
habra.15
habrabot(difrex,1) — All
2015-11-12 12:30:04


Привет, Хабр. Одним прекрасным пятничным вечером я писал обработку ошибок в одном своем хобби-проекте… Так, это вступление для другой статьи. В общем, одним прекрасным пятничным вечером мне потребовалось пройтись по `boost::variant` и что-то сделать с лежащими там данными. Вполне себе стандартная задача для `boost::variant`, и каноничный (но очень многословный) способ её решения — описать наследующуюся от `boost::static_visitor` структуру с перегруженными `operator()` и передать её в `boost::apply_visitor`. И вот этим прекрасным вечером мне почему-то стало очень лень писать всю эту кучу кода, и захотелось заиметь какой-то более простой и краткий способ описания визиторов. Что из этого вышло, можно почитать под катом. [Читать дальше →][1]

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

[>] Хватит болтать, пора ломать
habra.15
habrabot(difrex,1) — All
2015-11-12 14:30:03








#### До старта конференции ZeroNights 2015 остается 2 недели

Друзья, вот мы и подошли к финишной прямой. До нашей с вами встречи осталось всего две недели! Программа конференции полностью сформирована, на нашем сайте размещено итоговое расписание двух дней, с ним вы можете ознакомиться здесь: [2015\.zeronights.ru/assets/files/ZNagenda2015.pdf][1]. Ну а мы кратко опишем те выступления, о которых еще не рассказывали вам прежде, чтобы вы знали, чего ждать от предстоящего события. Итак, по порядку. [Поехали!][2]

[1]: http://2015.zeronights.ru/assets/files/ZNagenda2015.pdf
[2]: http://habrahabr.ru/post/270729/#habracut

[>] Курс этичного хакинга для начинающих: «Zero Security: A»
habra.15
habrabot(difrex,1) — All
2015-11-12 15:00:03


![][1] Информационная безопасность — крайне динамичная область. Новые методы и инструменты тестирования на проникновение обновляются с такой периодичностью, что отследить их становится крайне сложно. Для специалистов, интересующихся вопросом практической ИБ и желающих в короткое время получить качественную подготовку с использованием самых современным методов и инструментов пентеста, мы разработали специальный курс начальной подготовки — [«Zero Security: A»][2], основновной упор в котором сделан именно на получение качественной практической базы. Курс включает теоретическую подготовку (онлайн-вебинары), и практическую — работа в специализированной пентест-лаборатории, содержащей наиболее распространенные уязвимости и ошибки конфигурации. Практическая подготовка составляет порядка 80% от общей программы. Одним из ключевых особенностей программы является оперативное обновление материала. С каждым новым набором происходит переработка программы с учетом появления новых векторов атак и инструментария. Так, к примеру, практически сразу после выхода популярного дистрибутива [Kali Linux 2.0][3] программа была переработана и уже содержала материал по данному дистрибутиву. [Читать дальше →][4]

[1]: https://habrastorage.org/files/4d4/958/34f/4d495834f3f24d2c9c447b0b6bf2f405.png
[2]: https://www.pentestit.ru/study/zerosecurity-a
[3]: http://habrahabr.ru/company/defconru/blog/264541/
[4]: http://habrahabr.ru/post/270701/#habracut

[>] Python Meetup 27.02.15: Hy и Toga
habra.14
habrabot(difrex,1) — All
2015-03-24 02:30:03


27 февраля состоялся очередной Python Meetup. В этот раз мы обсуждали:

* **Hy** — диалект, который позволяет Lisp-разработчикам использовать библиотеки Python, а Python’истам найти решение для некоторых проблем языка, например, отсутствия скобочек.
* **Toga** — библиотека построения интерфейсов на Python, которая с первого взгляда выглядит как простой и универсальный инструмент, но на деле имеет ряд недоработок.

Во время **Lightning Talk** участники делились опытом экспорта .doc-файлов и идеями использования AST для трансляции Python в Ruby, JavaScript, C++ и др. ![][1] [Читать дальше →][2]

[1]: //habrastorage.org/files/8b1/7f8/459/8b17f8459e4c48b29df7a80f200834f4.jpg
[2]: http://habrahabr.ru/post/253801/#habracut

[>] Программирование умного индикатора LaMetric
habra.15
habrabot(difrex,1) — All
2015-11-12 15:00:03


Целый ряд Kickstarter-проектов, запущенных гражданами стран бывшего СССР, оказались успешными. В этой [статье][1] перечислена часть из них. Пожалуй, одним из самых успешных украинских проектов является [умный индикатор LaMetric][2]. Изюминкой данного индикатора является возможность написания дополнительных программ для него (на то он и «умный»). [Разработаем что-нибудь полезное][3]

[1]: http://habrahabr.ru/company/madrobots/blog/233379/
[2]: https://lametric.com
[3]: http://habrahabr.ru/post/270725/#habracut

[>] Не совсем известные решения по защите ИТ-инфраструктуры бизнеса
habra.14
habrabot(difrex,1) — All
2015-03-24 12:00:03


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

[1]: //habrastorage.org/files/84e/fcd/4c2/84efcd4c25754134ac0c72573a6b5f89.jpg
[2]: http://habrahabr.ru/company/croc/blog/236411/
[3]: http://habrahabr.ru/post/253835/#habracut

[>] Windows Store и будущее малвари
habra.15
habrabot(difrex,1) — All
2015-11-12 15:00:03


Осторожно, мнение [дилетанта][1]. [Читать дальше →][2]

[1]: https://ru.wiktionary.org/wiki/%D0%B4%D0%B8%D0%BB%D0%B5%D1%82%D0%B0%D0%BD%D1%82
[2]: http://habrahabr.ru/post/270623/#habracut

[>] Freeradius. Поддержка различных типов аутентификации пользователей одновременно
habra.15
habrabot(difrex,1) — All
2015-11-12 16:00:03


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

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

[>] Jiant. Модели для фронтенд приложения
habra.15
habrabot(difrex,1) — All
2015-11-12 16:00:03




#### Предисловие

Цель данного поста — популяризация веб-фреймворка Jiant и поиск людей, которые хотели бы принять участие в его раскрутке, создание сообщества для дальнейшего развития и распространения фреймворка. Jiant активно использует JQuery и естественно с ним взаимодействует, выполняя свою цель по организации и упрощению веб приложений любой сложности. Целевая аудитория — полагаю, будет полезно любому веб-разработчику, но особенно тем кто пришел с сервера — например, из джавы. [Читать дальше →][1]

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

[>] [Перевод] Сборка Krita под Linux для котанов
habra.14
habrabot(difrex,1) — All
2015-03-24 12:30:02


![][1] Наконец, перевод очередной статьи от Давида Ревуа — прекрасного художника, использующего свободное программное обеспечение, а также постоянного члена сообществ Krita Foundation и Blender Institute. Мастер делится с начинающими художниками инструкцией по сборке самой свежей версии графического редактора Krita из исходных кодов. Он считает, что этот процесс на самом деле не так сложен и заковырист, как кажется на первый взгляд. Все этапы прекрасно проиллюстрированы. Приобщайтесь! [Читать дальше →][2]

[1]: //habrastorage.org/files/c1b/e13/406/c1be13406c9a41789a0b134aacae3b05.jpg
[2]: http://habrahabr.ru/post/252289/#habracut

[>] [Из песочницы] Передача видеоданных на частотах до 100МГц в ПК
habra.15
habrabot(difrex,1) — All
2015-11-12 17:00:03




#### Передача видеоданных на частотах до 100МГц в ПК



##### Введение

Наш отдел занимается разработкой ПЗС матриц и линеек. Для каждого разработанного датчика необходимо создать фотоприемное устройство (ФПУ), которое позволит его тестировать, расчитывать параметры прибора — динамический диапазон, неравномерность выходного сигнала, уровень генерационно-рекомбинационного темнового тока и т.д. ФПУ является своего рода видеокамерой но не такой, которую просто можно взять в руку и пойти в парк что-нибудь снимать (белочку например). Фотоприемное устройство, обычно, состоит из нескольких плат. На одной плате располагаются стабилизаторы питания, фильтры, а на другой (или других) весь микросхемный фарш. В центре основной платы находится сам датчик, вокруг него — мощные быстрые ключи для подачи управляющих напряжений на электроды ПЗС. К выходу прибора подключен эмиттерный повторитель, потом идет видеопроцессор (умный АЦП для ПЗС) и завершает все ПЛИС. Она подает синхроимпульсы на ПЗС через ключи, тактирует видеопроцессор, забирает с него цифровой код и после необходимой обработки отправляет на выходной разъем. Помимо одного кода на выход идут синхроимпульсы — PCLK(синхронизация по пикселям), HSYNC(сигнал строчной синхронизации), VSYNC(кадровая синхронизация), которые необходимы для нормального получения информации на принимающей стороне. Конечно же, ФПУ должно вносить в аналоговый сигнал с ПЗС как можно меньше помех, чтобы получить хорошие расчетные параметры прибора. Но статья ни о ФПУ и ни о ПЗС, а о том с помощью чего и как можно передать цифровой код на высоких частотах в ПК. [Читать дальше →][1]

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

[>] Снифаем выходную ноду Tor’а и анализируем получившийся контент
habra.14
habrabot(difrex,1) — All
2015-03-24 13:30:02


![][1] Концепция «сеть поверх сети» появилась далеко не вчера. Еще в середине прошлого десятилетия «Хакер» писал о луковой и чесночной маршрутизации в лице Tor и I2P и даже публиковал обзоры соответствующего софта в рубрике «Шароwarez», но настоящий интерес к ним в обществе появился на волне известных инфоповодов и громких разоблачений последнего времени. Что же представляют собой даркнеты? Кто там живет? Чем они интересуются, чем дышат, что покупают и что продают? Попробуем разобраться с этим по-хакерски: с помощью снифера и прямого погружения. [Читать дальше →][2]

[1]: //habrastorage.org/files/13d/b31/0f5/13db310f5d1149c79a5df9da8750c2b6.jpg
[2]: http://habrahabr.ru/post/244485/#habracut

[>] [Перевод] Введение в Storage Performance Development Kit
habra.15
habrabot(difrex,1) — All
2015-11-12 20:00:03


![][1]Системы хранения данных на основе твердотельных накопителей получают все более широкое распространение в центрах обработки данных. Хранилища на базе флеш-памяти текущего поколения обладают значительными преимуществами с точки зрения производительности, потребления электроэнергии и плотности данных в стойках по сравнению с дисковыми накопителями. Эти преимущества станут еще более ощутимыми при появлении на рынке накопителей нового поколения. Клиентам, внедряющим твердотельные накопители текущего поколения, такие как Intel P3700 NVMe\*, приходится справляться со сложной проблемой: поскольку пропускная способность гораздо выше, чем у дисковых накопителей, а задержки гораздо ниже, большая часть общего времени транзакций теперь приходится на работу программного обеспечения хранилища. Для помощи ОЕМ-производителям и поставщикам программного обеспечения в интеграции такого оборудования корпорация Intel создала набор драйверов и разработала полную архитектуру хранилища. Эта инициатива получила название **Storage Performance Development Kit (SPDK)**. Цель SPDK — подчеркнуть высокую эффективность и производительность, достигаемую совокупностью технологий Intel в области сетей, вычислений и хранения данных. Intel бесплатно предоставляет полный исходный код эталонной архитектуры Linux (по лицензии Intel). Драйвер пользовательского режима NVMe предоставлен в виде открытого исходного кода сообществу на портале [01\.org][2], а код других элементов пакета будет представлен в течение 2016 года. [Читать дальше →][3]

[1]: https://habrastorage.org/files/6cc/142/980/6cc142980f174e508819ca8447462f4b.jpg
[2]: https://01.org/spdk
[3]: http://habrahabr.ru/post/270713/#habracut

[>] Краткий курс компьютерной графики, аддендум: GLSL
habra.14
habrabot(difrex,1) — All
2015-03-24 15:30:06




# Очередная вводная статья для начинающих программировать графику реального времени

У меня когда-то возникла задача (быстро) визуализировать молекулы. Например, молекула может быть представлена просто как набор сфер навроде вот этого: ![][1] Конкретно этот вирус состоит из примерно трёх миллионов атомов. Вы можете скачать его модель на замечательном сайте [rcsb.org][2]. Это отличный топик для обучения шейдерам! [Читать дальше →][3]

[1]: https://hsto.org/files/1ef/256/c5c/1ef256c5c4fb4ddfa5de938d3f555e14.png
[2]: http://www.rcsb.org/pdb/explore.do?structureId=2BTV
[3]: http://habrahabr.ru/post/253791/#habracut

[>] Репликация LDAP
habra.15
habrabot(difrex,1) — All
2015-11-12 20:00:03


Хотел бы написать небольшую заметку о том как настроить репликацию OpenLDAP между несколькими серверами. Итак… Дано: 1. Организация с филиалами. В главном офисе и в каждом филиале есть сервер LDAP который хранит у себя логины/пароли пользователей. Задача: Сделать так, что бы между главныи офисом и филиалами было «единое пространство имен», то есть что бы каждый LDAP сервер «знал» о логинах/паролях всех остальных филиалов и главного офиса. Решение: 1. Установку Linux, OpenLDAP, настройку OpenVPN (главный офис и филиалы связаны через OpenVPN) описывать не буду. Будем считать что у вас это уже установлено и настроено. 2. У нас есть три сервера. Главный 192.168.1.1, и два филиала 192.168.1.2 и 192.168.1.3 соответственно. Все они связаны друг с другом через OpenVPN. 2. Теперь настройка OpenLDAP. В главном офисе (192.168.1.1) в LDAP заносятся все логины/пароли который нужны. [Подробности][1]

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

[>] Deconvolutional Neural Network
habra.14
habrabot(difrex,1) — All
2015-03-24 17:30:03


Использование классических нейронных сетей для распознавания изображений затруднено, как правило, большой размерностью вектора входных значений нейронной сети, большим количеством нейронов в промежуточных слоях и, как следствие, большими затратами вычислительных ресурсов на обучение и вычисление сети. Сверточным нейронным сетям в меньшей степени присущи описанные выше недостатки. Свёрточная нейронная сеть (англ. [_convolutional neural network_][1], _CNN_) — специальная архитектура искусственных нейронных сетей, предложенная Яном Лекуном и нацеленная на эффективное распознавание изображений, входит в состав технологий глубокого обучения (англ. [_deep leaning_][2]). Эта технология построена по аналогии с принципами работы [зрительной коры][3] головного мозга, в которой были открыты так называемые простые клетки, реагирующие на прямые линии под разными углами, и сложные клетки, реакция которых связана с активацией определённого набора простых клеток. Таким образом, идея сверточных нейронных сетей заключается в чередовании сверточных слоев (англ. _convolution layers_) и субдискретизирующих слоев (англ. _subsampling layers_, слоёв подвыборки).[6] ![image][4] Рис 1. Архитектура сверточной нейронной сети Ключевым моментом в понимании сверточных нейронных сетей является понятие так называемых «разделяемых» весов, т.е. часть нейронов некоторого рассматриваемого слоя нейронной сети может использовать одни и те же весовые коэффициенты. Нейроны, использующие одни и те же веса, объединяются в карты признаков (_feature maps_), а каждый нейрон карты признаков связан с частью нейронов предыдущего слоя. При вычислении сети получается, что каждый нейрон выполняет свертку ([операцию конволюции][5]) некоторой области предыдущего слоя (определяемой множеством нейронов, связанных с данным нейроном). Слои нейронной сети, построенные описанным образом, называются сверточными слоями. Помимо, сверточных слоев в сверточной нейронной сети могут быть слои субдискретизации (выполняющие функции уменьшения размерности пространства карт признаков) и полносвязные слои (выходной слой, как правило, всегда полносвязный). Все три вида слоев могут чередоваться в произвольном порядке, что позволяет составлять карты признаков из карт признаков, а это на практике означает способность распознавания сложных иерархий признаков [3]. Что же именно влияет на качество распознавания образов при обучении сверточных нейронных сетей? Озадачившись данным вопросом, наткнулись на статью Мэттью Зайлера ([_Matthew Zeiler_][6]). [Читать дальше →][7]

[1]: http://en.wikipedia.org/wiki/Convolutional_neural_network
[2]: http://en.wikipedia.org/wiki/Deep_learning
[3]: https://ru.wikipedia.org/wiki/%D0%97%D1%80%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D0%BA%D0%BE%D1%80%D0%B0
[4]: https://hsto.org/files/96d/f26/8f5/96df268f5ede4c9687e6d2999510af19.png
[5]: http://en.wikipedia.org/wiki/Convolution
[6]: http://www.matthewzeiler.com/
[7]: http://habrahabr.ru/post/253859/#habracut

[>] Теория звука. Что нужно знать о звуке, чтобы с ним работать. Опыт Яндекс.Музыки
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

[>] [Перевод] Wolfram Data Drop — новый сервис Wolfram Research
habra.14
habrabot(difrex,1) — All
2015-03-24 17:30:03


_Перевод поста Стивена Вольфрама (Stephen Wolfram) "[The Wolfram Data Drop Is Live!][1]". Выражаю огромную благодарность [Кириллу Гузенко][2] за помощь в переводе._ Куда должны идти данные из [интернета вещей][3]? У нас есть отличная технология в [Wolfram Language][4] для интерпретации, визуализации, анализа запросов и прочих интересных вещей. Но вопрос в том, как должны все эти данные из подключённых к сети устройств и всех остальных источников попасть туда, где с ними можно делать всё вышеперечисленное? Сегодня мы запускаем то, что, на мой взгляд, является отличным решением данной проблемы: [Wolfram Data Drop][5]. [][6] Когда я впервые начал размышлять о Data Drop, я рассматривал его в основном как удобное средство перемещения различных данных. Но теперь, когда Data Drop создан, я понимаю что это гораздо больше, чем просто сервис для перемещения данных. В действительности, это важный этап в нашем непрекращающимся пути по интеграции вычислений и реального мира. Так что же такое Wolfram Data Drop? На функциональном уровне это универсальный агрегатор данных, предназначенный для получения и организации данных, получаемых с различных сенсоров, устройств, программ, людей или чего бы ты ни было. При том данные хранятся в облаке таким образом, что могут быть использованы для вычисления и обработки так, как будто они хранятся на самом устройстве (бесшовная интеграция вычислений и данных). [Читать дальше →][7]

[1]: http://blog.wolfram.com/2015/03/04/the-wolfram-data-drop-is-live/
[2]: http://vk.com/ld742
[3]: http://www.wolfram.com/internet-of-things/
[4]: http://www.wolfram.com/language/
[5]: https://datadrop.wolframcloud.com/
[6]: https://datadrop.wolframcloud.com/
[7]: http://habrahabr.ru/post/253873/#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

[>] [Из песочницы] Прощальная записка языку программирования
habra.14
habrabot(difrex,1) — All
2015-03-24 19:30:05


_В данной статье я бы хотел поделиться с сообществом «Хабрахабр» переводом статьи от Matthias Nehlsen“[«A farewell note to a programming language»][1]. Автор рассказывает о своем опыте разработки на Scala в стиле «Я к вам пишу – чего же боле?»_ ![][2] [Читать дальше →][3]

[1]: http://matthiasnehlsen.com/blog/2014/12/04/Farewell-Scala/
[2]: //habrastorage.org/files/390/c94/66a/390c9466a0004bbca3a5ca9ba023c79b.jpg
[3]: http://habrahabr.ru/post/253855/#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

[>] «Идеальный» кластер. Часть 3.1 Внедрение MySQL Multi-Master кластера
habra.14
habrabot(difrex,1) — All
2015-03-24 20:00:03




#### В продолжение цикла статей об «Идеальном» кластере хочу поделиться моим опытом развертывания и настройки Multi-Master кластеров MySQL.

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

[1]: //habrastorage.org/files/37c/7a9/c5c/37c7a9c5c5ed45a089429edb7259bb0a.jpg
[2]: http://habrahabr.ru/post/253869/#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

[>] [Из песочницы] Критическая уязвимость в безопасности на fl.ru
habra.14
habrabot(difrex,1) — All
2015-03-25 14:00:03




#### **1\. Пролог**

В последнее время в СМИ всё чаще стали появляться пёстрые заголовки о различных разоблачениях: начиная от выложенных в открытый доступ фотографий знаменитостей, заканчивая вскрытыми личными почтовыми ящиками крупных деятелей. Чего уж там говорить про повседневные будни в какой-нибудь рядовой компании, когда сотрудник использует один и тот же пароль для доступа к абсолютно всем ресурсам. Но сегодня речь пойдёт о менее ярком событии для общественности, но при этом намного более резонансном для тех, кто волею судеб работал и работает на fl.ru. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/253943/#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

[>] e-Ticket misunderstanding
habra.14
habrabot(difrex,1) — All
2015-03-25 15:00:03


Привет! Все больше пассажиров пользуется электронными билетами — это факт. И многие из них состоят в различных бонусных программах и пытаются накопить мили как на земле так и в воздухе. Это прикольно. Для увеличения количества этих миль даже выпускают специализированные банковские карты, расплачиваясь которыми вы приумножаете этот баланс. Интересная особенность обнаружилась на сайте одного перевозчика. Давайте взглянем! [Читать дальше →][1]

[1]: http://habrahabr.ru/post/252779/#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

[>] Сам себе Руссинович
habra.14
habrabot(difrex,1) — All
2015-03-25 15:00:03


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

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

[>] Как стать автоматизатором тестирования?
habra.14
habrabot(difrex,1) — All
2015-03-25 18:00:02


![][1] Добрый день! Вчера, отвечая, кажется, в шестой раз на этот вопрос, твёрдо решил, что пришло время для написания статьи. Сразу отмечу – это исключительно моё видение, с которым, уверен, добрая половина мира автоматизаторов не согласится, – мой рецепт несколько сложнее, чем «почитать про тулзу», «поставить тулзу», «использовать тулзу», «написать в резюме, что умеешь пользоваться тулзой». Эта статья полезна не только для мануальных тестировщиков, желающих автоматизировать свои рутинные проверки, но и для бизнеса и HR-ов, которые ввиду отсутствия каких-либо общепринятых критериев, как правило, понятия не имеют кто есть QA Automation Engineer и в большинстве случаев принимают решение на основании «хороший человек». Бывает ещё хуже – руководитель/PM/etc… приходят к своим мануальным тестировщикам и говорят: «слушай, а может мы автоматизируем наше тестирование – это сэкономит нам кучу времени и денег. Скажи, какие книги тебе нужны и какие курсы». **0\. Начнём с ошибок, которые не надо допускать:**

* Дайте мне книгу умную, которая всё за меня сделает
* Дайте мне курсы платные, которые всему меня научат
* Дайте мне форумы специализированные, которые ответят мне на все интересующие вопросы
* Дайте мне сертификацию полезную, с которой меня везде примут

Это всё хорошо, но лишь в дополнение к рецепту, который описан ниже. Ни в коем случае нельзя с этого начинать. [Читать дальше →][2]

[1]: //habrastorage.org/files/e38/141/bef/e38141befed44702bae02ca8ef61b3ac.jpg
[2]: http://habrahabr.ru/post/253867/#habracut

[>] Как сделать светобудильник на основе Arduino
habra.14
habrabot(difrex,1) — All
2015-03-25 18:30:02


Привет, Хабр! Работа и жизнь постоянно подбрасывают новые задачки, с каждым днём их количество умножается. Будет ли легче? Нет. Это – жизнь. Остается лишь придумывать подходящее решение или брать на вооружение имеющийся опыт. На Хабре не раз публиковались статьи и заметки об эффективной работе, управлении временем и прочих вещах. Некоторые советы я использую, некоторые – не получается. В принципе, более или менее четкий режим дня помогает быть эффективным и бодрым. Но не всегда получается начать день в запланированное время. Одна из причин – в темноте наш головной мозг выделяет гормон сна — мелатонин. Чтобы проснуться легко и быть бодрым нужен свет, который способствует уменьшению количества мелатонина в организме. И тогда просыпаешься бодрым и отдохнувшим. Но осенью и зимой светает поздно, а летом плотные шторы не впускают солнечные лучи в комнату. Да и раньше запланированного тоже вставать не хотелось бы, если говорить про лето. Так что берем тему под контроль и управляем рассветом в собственном доме самостоятельно, по индивидуальному графику, т.е. делаем светобудильник. И вот что получилось:




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

[1]: http://habrahabr.ru/post/253957/#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

[>] Google усилит безопасность веб-браузера Chrome для Windows
habra.14
habrabot(difrex,1) — All
2015-03-25 18:30:02


Разработчики веб-браузера Google Chrome обещают отказаться от услуг [печально известного][1] драйвера win32k.sys на современных версиях Windows 8+. Речь идет о т. н. sandboxed процессах, в контекстах которых исполняется и отображается код веб-страниц. Chrome использует специальную схему безопасности для своего браузера (sandbox), на основе запуска каждой создаваемой вкладки в контексте отдельного процесса, которому запрещено выполнять критические функции ОС за счет т. н. Deny SID в маркере доступа этих процессов, а также ограничений, которые налагаются специальным объектом задания. ![][2] Сам драйвер win32k.sys используется веб-браузером, как и любыми другими GUI-приложениями в Windows, для рисования окон и элементов GUI. Chrome рисует GUI своих веб-страниц из одного процесса, который называется брокером, но при этом прочие sandboxed-процессы не нуждаются в его услугах, однако, все равно вынуждены его использовать. [Читать дальше →][3]

[1]: http://habrahabr.ru/company/eset/blog/248977/
[2]: //habrastorage.org/files/949/765/921/94976592178c4ce280221dae37172754.png
[3]: http://habrahabr.ru/post/253991/#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

[>] [Перевод] Создаем собственную метеостанцию, интегрированную с Wolfram Cloud
habra.14
habrabot(difrex,1) — All
2015-03-25 18:30:02


Недавно [Стивен Вольфрам анонсировал сервис Wolfram Data Drop][1], который является отличным инструментом для загрузки любых типов данных с любого устройства. Я покажу как можно использовать Wolfram Data Drop с самодельной метеостанцией, для создания которой нам понадобятся лишь простое железо и несколько строчек кода. Эта метеостанция будет производить измерения температуры каждую секунду, и каждую минуту производить выгрузку среднего за эту минуту значения в Wolfram Data Drop. Таким образом, будет получаться 60 точек на графике температура– время каждый час, 1440 точек в сутки. Используя эти данные и [Wolfram Programming Cloud][2], можно изучать изменения температуры с течением времени. К примеру, можно выяснить, сколько раз за день температура достигала определённых минимальных и максимальных значений, когда температура изменялась наиболее быстро. С помощью этих данных можно даже составлять прогнозы. Быть может, у кого-то даже получится сделать более точные предсказания, чем у местной метеостанции! [Читать дальше →][3]

[1]: http://habrahabr.ru/company/wolfram/blog/253873/
[2]: http://www.wolfram.com/programming-cloud/
[3]: http://habrahabr.ru/post/253925/#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

[>] DlangUI — кросплатформенный GUI для D (Часть 1)
habra.14
habrabot(difrex,1) — All
2015-03-25 18:30:02


Мне нравится язык D. Давно слежу за его развитием. Для D есть несколько GUI библиотек и биндингов, но я решил изобрести свой велосипед. Хочу рассказать о своём проекте [DlangUI][1]. Надеюсь, что он кому-нибудь будет полезен. ![][2] На КДПВ скриншот DlangIDE — приложения, написанного на DlangUI.

## Особенности:

* Кроссплатформенность — поддерживаются Windows, Linux, Mac OSX; легкость портирования на другие платформы
* Написан на D — легкорасширяемый
* Использование Layouts для позиционирования элементов интерфейса
* Масштабирование шрифтов и иконок в приложении в зависимости от разрешения экрана
* Поддержка Unicode
* Интернационализация — поддержка перевода UI на несколько языков
* Аппаратное ускорение с помощью OpenGL (опционально)
* Возможность отрисовки виджетов поверх OpenGL сцены (например, для UI в игре)
* Небольшой размер исполняемого файла
* Внешний вид интерфейса настраивается с помощью тем (две стандартные темы — светлая и темная)
* Встраивание ресурсов в исполняемый файл
* Открытый исходный код, под лицензией Boost License 1.0

[Подробности][3]

[1]: https://github.com/buggins/dlangui
[2]: //habrastorage.org/files/54f/b63/b5a/54fb63b5a87749e18bfb6f0777fc2c08.png
[3]: http://habrahabr.ru/post/253923/#habracut

[>] [Перевод] Perl 6 и последовательности Маркова
habra.14
habrabot(difrex,1) — All
2015-03-26 00:30:03


Рассмотрим одну нечисловую последовательность, основанную на использовании [цепей Маркова ][1]в тексте. Следующий символ последовательности будет случайным образом определяться на основе двух предыдущих. Распределение следует шаблону, содержащемуся в исходном тексте.

use v6;
use List::Utils;

my $model-text = $*IN.slurp.lc;
$model-text .=subst(/<[_']>/, "", :global);
$model-text .=subst(/<-alpha>+/, " ", :global);

my %next-step;
for sliding-window($model-text.comb, 3) -> $a, $b, $c {
%next-step{$a ~ $b}{$c}++;
}

my $first = $model-text.substr(0, 1);
my $second = $model-text.substr(1, 1);
my @chain := $first, $second, -> $a, $b { %next-step{$a ~ $b}.roll.key } ... *;
say @chain.munch(80);


После инициализации в коде чётко видны три части. [Читать дальше →][2]

[1]: https://ru.wikipedia.org/wiki/Цепь_Маркова
[2]: http://habrahabr.ru/post/253917/#habracut

Pages: 1 ... 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 ... 210