RSS
Pages: 1 ... 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ... 210
[>] Как я выиграл Intel RealSense хакатон
habra.14
habrabot(difrex,1) — All
2015-02-02 11:30:03


Однажды я [писал][1] на Хабр про различные технологии получения 3D изображения с одной камеры. Заканчивал я ту статью словами: «Сам я, правда, до сих пор не сталкивался ни с одной из этих камер, что жалко и досадно». И вот, внезапно, не прошло и года, Intel [проводит][2] в Москве семинар и хакатон по новому поколению своих 3D камер (Intel RealSense). Любопытство взыграло: мы с коллегой записались на мероприятие. Как выяснилось, не зря. Хакатон мы выиграли и получили Developer-версию камеры, которую теперь мучаем. В статье рассказывается о двух вещах:

1. Про камеру, её плюсы и недостатки; что с помощью нее можно сделать, а для каких задач она не годится.
2. Про концепцию, которую мы предложили на хакатоне и за которую получили первое место.

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

[1]: http://geektimes.ru/post/224605/
[2]: http://habrahabr.ru/company/intel/blog/247839/
[3]: http://habrahabr.ru/post/249009/#habracut

[>] [Перевод] Система автоматической оценки возраста по изображениям лиц
habra.14
habrabot(difrex,1) — All
2015-02-02 12:00:02


**Аннотация** Люди — это самые важные объекты слежения в системах видеонаблюдения. Тем не менее, слежение за человеком само по себе не дает достаточной информации об его мотивах, намерениях, желаниях и т.п. В этой работе мы представляем новую и надежную систему для автоматической оценки возраста с помощью технологий компьютерного зрения. Она использует глобальные особенности лица, полученные на основе комбинирования [вейвлетов Габора][1] и сохранение ортогональности локальных проекций [Orthogonal Locality Preserving Projections][2], OLPP). Кроме того, система способна оценивать возраст по изображениям в реальном времени. Это означает, что предлагаемая система имеет больший потенциал по сравнению с другими полуавтоматическими системами. Результаты, полученные в процессе применения предлагаемого подхода, могут позволить получить более ясное понимание алгоритмов в области оценки возраста, необходимых для разработки приложений, актуальных для реального применения. _Ключевые слова: _вейвлеты Габора, изображение лица, оценка возраста, метод опорных векторов ([Support Vector Machine][3], SVM). [Читать дальше →][4]

[1]: https://ru.wikipedia.org/wiki/%D0%A4%D0%B8%D0%BB%D1%8C%D1%82%D1%80_%D0%93%D0%B0%D0%B1%D0%BE%D1%80%D0%B0
[2]: http://www.cad.zju.edu.cn/home/dengcai/Publication/Conference/f33-cai.pdf
[3]: http://en.wikipedia.org/wiki/Support_vector_machine
[4]: http://habrahabr.ru/post/248991/#habracut

[>] История о чертовых дублях
habra.15
habrabot(difrex,1) — All
2015-09-17 20:00:03


Данная статья подготовлена Дмитрием Овчаренко, архитектором Департамента прикладных финансовых систем компании «Инфосистемы Джет» Да будет унификация! Такое решение было принято при проектировании интеграционной архитектуры, связывающей CRM с другими внешними системами посредством шины на Oracle Service Bus. Помимо онлайн-интеграции на основе веб-сервисов, она принимает файлы, поступающие в систему, и вызывает веб-сервисы на стороне CRM, специально разработанные для каждого типа входящих данных. Файл содержит множество записей, и по каждой требуется выполнить отдельный вызов сервиса на стороне CRM. Обработка файла производится в цикле по записям. На каждый вызов сервиса уходит по 5 секунд – это довольно много, но для выполнения поставленных требований вполне хватало. Процесс обработки вызова веб-сервиса в CRM предварительно проверяет запись на дубль, затем выполняет требуемую бизнес-логику и создает запись в БД. Но «внезапности» могут возникнуть в непредвиденных моментах «шиномонтажа». На промышленных объемах данных в базе CRM стали появляться дубли. Мы выяснили, что источник может почему-то отправить большой файл повторно (сразу после того, как он будет подхвачен файловым proxy-сервисом и помещен в Stage-папку). Причем отставание между вызовами веб-сервисов, создающих дубли, настолько мало, что в момент второго вызова данные в первом еще не закоммичены, и проверка на стороне CRM не успевает срабатывать. [Читать дальше →][1]

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

[>] Как устроен наш код. Серверная архитектура одного проекта
habra.14
habrabot(difrex,1) — All
2015-02-02 12:30:02


Так сложилось, что к тридцати годам я менял работу лишь единожды и не имел возможности на собственном опыте изучить, как в различных компаниях устроены веб-проекты, расчитанные на высокую скорость отклика и большое количество пользователей._ <irony> Так что, дорогой хабраюзер, попавший в поле моего зрения в оффлайне, увидев меня, лучше беги, пока я не начал докучать тебе вопросами на тему обработки ошибок, логирования и процесса обновления на рабочих серверах</irony>_. Мне интересен не столько набор используемых технологий, сколько принципы, на которых построена кодовая база. Как код разбит на классы, как классы распределены по слоям, как бизнес-логика взаимодействует с инфраструктурой, каковы критерии по которым оценивается качество кода и как организован процесс разработки нового функционала. К сожалению, подобную информацию найти непросто, в лучшем случае всё ограничивается перечислением технологий и кратким описанием разработанных велосипедов, а хочется, конечно, более детализированной картинки. В этом топике я попытаюсь как можно более подробно описать, как устроен код в компании, где работаю я. [Читать дальше →][1]

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

[>] [Из песочницы] Разворачиваем Flask-приложение на Nginx, используя Gunicorn
habra.15
habrabot(difrex,1) — All
2015-09-17 20:00:03


Предположим, у вас есть Ubuntu, в котором нужно развернуть Nginx с Flask-приложением. Вам необходимо использовать WSGI сервер, например, Gunicorn. Gunicorn (Green Unicorn) — WSGI HTTP сервер на Python для UNIX систем. Представляю вольный перевод статьи Onur Güzel [«How to Run Flask Applications with Nginx Using Gunicorn»][1], где шаг за шагом показано процесс развертывания. [Читать дальше →][2]

[1]: http://www.onurguzel.com/how-to-run-flask-applications-with-nginx-using-gunicorn/
[2]: http://habrahabr.ru/post/267097/#habracut

[>] Анализ логов с помощью Hadoop/Python
habra.15
habrabot(difrex,1) — All
2015-09-17 20:30:03


Привет, Хабр! В этом посте я хотел бы рассказать вам о том, как мы, Лаборатория новых профессий, вместе с компанией Data-centric Alliance смогли сконструировать несколько лабораторных работ, посвящённых обработке и анализу веб-логов. Эти лабораторные работы являются ключевыми в рамках первого кейса нашей образовательной программы «[Специалист по большим данным][1]» и выполняются на основе аудиторных данных DMP Facetz.DCA. Меня зовут Артем Пичугин, и я являюсь её координатором. [![][2]][3]

## Задача

Представьте, что вы компания, продающая автомобили. Кому показать рекламу автомобиля? На каких сайтах? Так, чтобы недорого и эффективно? Казалось бы, ответ очевиден: пользователям, которые заходят на страницы покупки автомобилей на сайтах компаний, а также на досках объявлений типа Avito и т д. [Читать дальше →][4]

[1]: http://newprolab.com/bigdata/?utm_source=habrahabr.ru&utm_medium=social&utm_campaign=PostA.Petrova17.9.15
[2]: https://habrastorage.org/files/c9f/f4a/5b9/c9ff4a5b985144c3af9145c6faa6e4ff.png
[3]: http://habrahabr.ru/company/dca/blog/267107/
[4]: http://habrahabr.ru/post/267107/#habracut

[>] Жизнь без регулярных выражений и без logstash: публикация логов в Elasticsearch
habra.15
habrabot(difrex,1) — All
2015-09-17 21:00:03


![][1] При использовании подхода из данного решения парсинг файлов будет не нужен. При изменении формата логирования или появлении новых сообщений не нужно поддерживать большой набор регулярок. Будем перехватывать вызовы методов error, warn, info, debug, trace логера и отправлять данные сразу в elasticsearch. С этим нам поможет аспектно-ориентированное программирование! [Программа, конфигурация и скринкаст...][2]

[1]: https://habrastorage.org/files/97e/b05/08a/97eb0508a20b426794605137cc004d51.png
[2]: http://habrahabr.ru/post/267009/#habracut

[>] Публикация логов в Elasticsearch — жизнь без регулярных выражений и без logstash
habra.15
habrabot(difrex,1) — All
2015-09-18 01:00:03


![][1] При использовании подхода из данного решения парсинг файлов будет не нужен. При изменении формата логирования или появлении новых сообщений не нужно поддерживать большой набор регулярок. Будем перехватывать вызовы методов error, warn, info, debug, trace логера и отправлять данные сразу в elasticsearch. С этим нам поможет аспектно-ориентированное программирование! [Программа, конфигурация и скринкаст...][2]

[1]: https://habrastorage.org/files/97e/b05/08a/97eb0508a20b426794605137cc004d51.png
[2]: http://habrahabr.ru/post/267009/#habracut

[>] Игра знакомая с детства в реализации на JavaScript
habra.15
habrabot(difrex,1) — All
2015-09-18 09:00:02


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

[1]: https://habrastorage.org/files/cfd/b28/025/cfdb28025ccf4aaa8625646ce897d803.jpg
[2]: http://shtange.com/catch-the-egg/
[3]: http://habrahabr.ru/post/261669/#habracut

[>] Как мы выиграли Intel RealSense хакатон
habra.14
habrabot(difrex,1) — All
2015-02-02 12:30:02


Однажды я [писал][1] на Хабр про различные технологии получения 3D изображения с одной камеры. Заканчивал я ту статью словами: «Сам я, правда, до сих пор не сталкивался ни с одной из этих камер, что жалко и досадно». И вот, внезапно, не прошло и года, Intel [проводит][2] в Москве семинар и хакатон по новому поколению своих 3D камер (Intel RealSense). Любопытство взыграло: мы с коллегой записались на мероприятие. Как выяснилось, не зря. Хакатон мы выиграли и получили Developer-версию камеры, которую теперь мучаем. В статье рассказывается о двух вещах:

1. Про камеру, её плюсы и недостатки; что с помощью нее можно сделать, а для каких задач она не годится.
2. Про концепцию, которую мы предложили на хакатоне и за которую получили первое место.

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

[1]: http://geektimes.ru/post/224605/
[2]: http://habrahabr.ru/company/intel/blog/247839/
[3]: http://habrahabr.ru/post/249009/#habracut

[>] Секреты алгоритма ценообразования Airbnb
habra.15
habrabot(difrex,1) — All
2015-09-18 11:00:03


![][1] Какую бы вы назначили цену за проживание незнакомцев в вашем доме? Или сколько вы сами заплатили бы за то, чтобы пожить у кого–то? Вы заплатили бы больше или меньше, будь это спланированный отпуск или спонтанная поездка? Не так просто ответить на все эти вопросы. В своё время мы столкнулись с тем, что заставляя арендодателей и пользователей отвечать на них, мы тем самым уменьшали активную базу данных жилья. Собирая фокус–группы мы наблюдали за тем, как люди вносят своё жильё в список доступных для аренды мест на нашем портале. И большинство застревали, когда нужно было назначить стоимость. Многие начинали смотреть, какие цены установлены на жильё поблизости, открывая в браузере кучу вкладок и пытаясь сравнивать своё предложение с аналогичными. Кто–то уже приходил, имея определённую цель, может быть, чтобы немного заработать на оплату ипотеки или оплату отпуска. Такие люди устанавливали цену исходя из своих заранее обдуманных целей, без учёта реальной ситуации на рынке. А некоторые, к сожалению, просто сдавались и не указывали стоимость аренды их жилья. Мы пришли к выводу, что нужно предложить арендодателям удобный автоматизированный сервис, помогающий принять решение при назначении стоимости аренды. Разработка началась в 2012 году, и мы до сих пор его периодически дорабатываем. Этим летом мы внедрили динамическое ценообразование: ориентировочные цены пересчитываются ежедневно, исходя из текущей рыночной ситуации. Мы настроили алгоритм так, чтобы он учитывал наличие необычных, даже удивительных свойств выставляемого жилья. Также мы внедрили, уникальный, как мы считаем, механизм машинного обучения, позволяющий системе не только обучаться на своём опыте, но и, при необходимости, использовать небольшую толику «человеческой» интуиции. [Читать дальше →][2]

[1]: https://habrastorage.org/files/da6/2cd/aa0/da62cdaa0730448387e9103e698731aa.jpg
[2]: http://habrahabr.ru/post/267127/#habracut

[>] STM32 и FreeRTOS. 4. Шаг в сторону HAL
habra.14
habrabot(difrex,1) — All
2015-02-02 13:30:02




> HAL 9000: I'm completely operational, and all my circuits are functioning perfectly.

_ или это должно быть первой статьей, но я почему-то всегда пишу подобное ближе к концу_ Раньше было [про потоки][1], [про семафоры][2] и [очереди][3] ![][4] Одним из основных _препятствий_ для перехода на STM32 является обилие текстов, инструкций и мануалов, описывающих работу с контроллером. Виновником этого обилия стала сама STMicroelectronics, которая поначалу планомерно запутывала своих пользователей, а затем предлагала неверные варианты выхода. Проблема заключается в многообразии выпускаемых контроллеров, которые почему-то требовали разных процедур инициализации даже для одной и той же периферии. И код, работающий на одном контроллере, отказывался работать на другом. В результате по сети гуляют сборники шаманских рецептов, для понимания которых требуется куча времени и воскуривание даташитов. Но не так давно ST поняла, в какую яму она угодила и начала усиленно из нее выбираться, привлекая новые силы. И именно благодаря этому сейчас время старта сократилось до несуразно маленьких величин. Как это выглядит на практике? Добро пожаловать под кат [Читать дальше →][5]

[1]: http://habrahabr.ru/post/249273/
[2]: http://habrahabr.ru/post/249283/
[3]: http://habrahabr.ru/post/249381/
[4]: //habrastorage.org/files/e26/91e/d71/e2691ed716404eada56c62880aff6a86.png
[5]: http://habrahabr.ru/post/249395/#habracut

[>] [Перевод] Отображение молекулярных орбиталей с помощью языка Wolfram Language (Mathematica)
habra.14
habrabot(difrex,1) — All
2015-02-02 14:30:03






_Перевод поста Jason B. "[Plotting electronic orbitals using Mathematica][1]". Выражаю благодарность за помощь в переводе участнику сообщества ВКонтакте Русскоязычной поддержки Wolfram Mathematica [Курбану Магомедову][2]. Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, а также дополнительные материалы, можно [здесь][3]._ Химикам часто бывает полезно изображение [молекулярных орбиталей][4] (МО). Они используются для описания [волновой функции][5] электронов в атомах или молекулах. Как правило, это результаты различных квантово-химических или квантово-физических расчетов, производимых в специализированном программном обеспечении для расчета МО, которые представлены в виде [cube-файла][6], разработанного [Gaussian][7]. Эти файлы содержат объемные данные для построения орбиталей на трехмерной сетке. Существует множество приложений для просмотра cube-файлов, такие как [VMD][8] или [GaussView][9], но я хотел бы воспользоваться возможностями _Mathematica_, которые она дает для совмещения и создания различных типов графических объектов, а также автоматизации всего процесса, что в итоге позволило эффективно создавать кадры для [видео][10], в котором можно наблюдать изменение МО.




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

[1]: http://mathematica.blogoverflow.com/2013/09/plotting-electronic-orbitals-using-mathematica/
[2]: http://vk.com/iamkurban
[3]: http://goo.gl/uJjfcu
[4]: https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D0%BC%D0%BE%D0%BB%D0%B5%D0%BA%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D1%8B%D1%85_%D0%BE%D1%80%D0%B1%D0%B8%D1%82%D0%B0%D0%BB%D0%B5%D0%B9
[5]: https://ru.wikipedia.org/wiki/%D0%92%D0%BE%D0%BB%D0%BD%D0%BE%D0%B2%D0%B0%D1%8F_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F
[6]: http://paulbourke.net/dataformats/cube/
[7]: http://www.gaussian.com
[8]: http://www.ks.uiuc.edu/Research/vmd/plugins/molfile/cubeplugin.html
[9]: http://www.gaussian.com/g_tech/gv5ref/results.htm
[10]: http://www.pnas.org/content/suppl/2013/09/05/1308604110.DCSupplemental/sm01.mp4
[11]: http://habrahabr.ru/post/249469/#habracut

[>] Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 4в из 6
habra.14
habrabot(difrex,1) — All
2015-02-02 16:30:03




# Содержание основного курса



* [Статья 1: алгоритм Брезенхэма][1]
* [Статья 2: растеризация треугольника + отсечение задних граней][2]
* [Статья 3: Удаление невидимых поверхностей: z-буфер][3]
* Статья 4: Необходимая геометрия: фестиваль матриц
* [4а: Построение перспективного искажения][4]
* [4б: двигаем камеру и что из этого следует][5]
* [**4в: новый растеризатор и коррекция перспективных искажений**][6]
* [Статья 5: Пишем шейдеры под нашу библиотеку][7]
* [Статья 6: Чуть больше, чем просто шейдер: просчёт теней][8]



### Улучшение кода

__

* [Статья 3.1: Настала пора рефакторинга][9]
* [Статья 3.14: Красивый класс матриц][10]



### Общение вне хабра

Если у вас есть вопросы, и вы не хотите задавать их в комментариях, или просто не имеете возможности писать в комментарии, присоединяйтесь к jabber-конференции xmpp: 3d@conference.sudouser.ru

# Новый растеризатор и коррекция перспективных искажений

Тема сегодняшего разговора — это коррекция искажений интерполяции, посмотрите на разницу текстурирования на полу: ![][11] Я специально убрал из рендера всё, что касается освещения, нормалей и прочего, оставил только текстуру. Спасибо [MrShoor][12], я был ленив и не делал этой коррекции, но в итоге заморочился, благодаря его пинку. Со старой версией растеризатора это было муторно, с новой это достаточно просто. Поэтому начнём с того, как работает новый растеризатор, а для этого нам нужно уметь работать с барицентрическими координатами. [Читать дальше →][13]

[1]: http://habrahabr.ru/post/248153/
[2]: http://habrahabr.ru/post/248159/
[3]: http://habrahabr.ru/post/248179/
[4]: http://habrahabr.ru/post/248611/
[5]: http://habrahabr.ru/post/248723/
[6]: http://habrahabr.ru/post/249467/
[7]: http://habrahabr.ru/post/248963/
[8]: http://habrahabr.ru/post/249139/
[9]: http://habrahabr.ru/post/248909/
[10]: http://habrahabr.ru/post/249101/
[11]: http://habrastorage.org/getpro/habr/post_images/4cb/4db/4fa/4cb4db4fab48cd386dd7c543ed7df10d.png
[12]: http://habrahabr.ru/users/mrshoor/
[13]: http://habrahabr.ru/post/249467/#habracut

[>] Проверяем MatrixSSL с помощью PVS-Studio и Сppcheck
habra.14
habrabot(difrex,1) — All
2015-02-02 17:30:03


![MatrixSSL and PVS-Studio][1] В статье я хочу рассказать о проверке проекта MatrixSSL статическими анализаторами C/C++ PVS-Studio и Cppcheck. О библиотеке узнал из [комментария][2] на сайте Хабрахабр. [Читать дальше →][3]

[1]: http://habrastorage.org/getpro/habr/post_images/4d5/4e1/49e/4d54e149ef7b7b7ea50f9015fdd35a3d.png
[2]: http://habrahabr.ru/company/dsec/blog/248287/
[3]: http://habrahabr.ru/post/249499/#habracut

[>] Перебор ссылок — получение данных о клиентах Portmone и Фидобанка
habra.15
habrabot(difrex,1) — All
2015-09-18 11:00:04


Идентичная проблема подбора ссылки, описанная тут "[Утечка пользовательских данных в QIWI][1]" в июле и тут "[Тинькофф банк скомпрометировал выписки по счетам клиентов?][2]" в августе, была найдена мной у украинских компаний Portmone.com и «Фидобанк» ещё раньше. Сразу скажу, что **эти проблемы уже закрыты. Однако есть другие**. Я напишу и о тех, и о других. ![image][3] ![image][4] [Читать дальше →][5]

[1]: http://habrahabr.ru/post/263109/
[2]: http://habrahabr.ru/post/265365/
[3]: https://habrastorage.org/files/af1/28f/fae/af128ffae9384d81aff5d775fcd159be.png
[4]: https://habrastorage.org/files/a62/359/435/a62359435eed4ef68a6a11217cbfe97c.jpg
[5]: http://habrahabr.ru/post/267121/#habracut

[>] [Из песочницы] Уязвимость на сайте Дом.ru, позволяющая получить личные данные клиентов
habra.14
habrabot(difrex,1) — All
2015-02-02 19:00:02


Должен признаться, сам был удивлен подобной ситуацией. Я вообще ни разу не сисадмин, не пишу код и даже работаю в сфере, очень далекой от IT. Короче, я менеджер. По продажам промышленного оборудования. Однако люблю поковыряться в Linux (не могу не признаться в любви к [calculate-linux][1]) и поиграть в Windows. [Читать дальше →][2]

[1]: http://www.calculate-linux.ru/
[2]: http://habrahabr.ru/post/249513/#habracut

[>] [Перевод] ES6 в деталях: прокси
habra.15
habrabot(difrex,1) — All
2015-09-18 16:30:04


Ряд публикаций Джейсона Орендорфа ES6 In Depth посвящен ES6, который добавили в язык программирования JavaScript в 6 итерации ECMAScript. Сегодня будем делать такие штуки:

var obj = new Proxy({}, {
get: function (target, key, receiver) {
console.log(`getting ${key}!`);
return Reflect.get(target, key, receiver);
},
set: function (target, key, value, receiver) {
console.log(`setting ${key}!`);
return Reflect.set(target, key, value, receiver);
}
});


Немного сложно для первого примера. Подробнее объясню позже, пока что посмотрим, что за объект мы создали. [Читать дальше →][1]

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

[>] Security Week 38: Атака на роутеры Cisco, баг в AirDrop, арест криптобарыг
habra.15
habrabot(difrex,1) — All
2015-09-18 16:30:04


![][1]«Жизнь трех миллиардов людей оборвалась 29 августа 1997 года. Выжившие в ядерном огне назвали этот день судным. Но им предстояло пережить новый кошмар: войну против машин» Не совсем. В 1997 году разработали самый первый стандарт для сетей WiFi (802.11b), Стив Джобс вернулся в Apple, придумали формат PNG, компьютер обыграл в шахматы человека. А вот судного дня не произошло, чего нет, того нет. Машины не настолько развились, чтобы его устроить. До настоящего искусственного интеллекта им далеко и сейчас, но это не значит, что за 18 лет ничего не изменилось. Очень даже. Если трактовать понятие «роботы» широко и за пределами голливудских рамок, то их сейчас вокруг нас — тьма, и локальные армагеддоны происходят каждый день, то здесь, то там. Благодаря тому, что роботы, созданные для того, чтобы людям было удобнее жить, все чаще выходят из-под контроля. Не сами, просто их кто-то когда-то не очень качественно создал, вот и все. В сегодняшнем дайджесте новостей — три темы о том, какие ошибки допускают люди при создании (программных) роботов, как другие люди эксплуатируют эти недостатки, и что за это людям бывает. Конец света не обещаю, но уровень опасности — коралловый, с оттенками тыквенного. Традиционные правила: каждую неделю редакция новостного сайта [Threatpost][2] выбирает три наиболее значимых новости, к которым я добавляю расширенный и беспощадный комментарий. Все эпизоды сериала можно найти [тут][3]. [Читать дальше →][4]

[1]: https://habrastorage.org/files/fbf/6b9/3c8/fbf6b93c8bd64682bc90d30abcb0175d.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/267117/#habracut

[>] Blowfish на страже ivi
habra.14
habrabot(difrex,1) — All
2015-02-02 19:30:02


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

[1]: //habrastorage.org/files/f78/97c/fa1/f7897cfa157045738a7f696818484eef.jpg
[2]: http://habrahabr.ru/post/249359/#habracut

[>] Бэкдор SYNful Knock для атаки на маршрутизаторы: в чем проблема и как защититься
habra.15
habrabot(difrex,1) — All
2015-09-18 16:30:04


[![][1] ][2] Представители компании Mandiant (принадлежит FireEye) на этой неделе [опубликовали][3] результаты исследования безопасности маршрутизаторов Cisco. Им удалось обнаружить бэкдор, с помощью которых злоумышленники могут осуществлять ранее неизвестные атаки и собирать большие объёмы конфиденциальных данных, не привлекая к себе внимания. [Читать дальше →][4]

[1]: https://habrastorage.org/files/6f2/5b4/a23/6f25b4a23bc146879468c9b9d9c0ce97.jpeg
[2]: http://habrahabr.ru/company/pt/blog/267141/
[3]: https://www.fireeye.com/blog/threat-research/2015/09/synful_knock_-_acis.html
[4]: http://habrahabr.ru/post/267141/#habracut

[>] [Из песочницы] Настройка SCST Target на CentOS 7 с использованием FC QLogic адаптера
habra.15
habrabot(difrex,1) — All
2015-09-18 16:30:04




#### Предыстория

В моей инфраструктуре в числе прочего работают три ESXi 5.5 сервера, подключенных к SAN HP MSA1000 (железяке уже в районе 10 лет) по оптике через свитч HP StorageWorks 2/8q, с использованием адаптеров QLogic QLA200. Разумеется, хранилище очень производительное, но также и очень скромное по объему. Так как виртуализация нынче — тренд, возникло непреодолимое желание получить реально большое хранилище, также подключенное по оптике с блочным доступом. Не буду обьяснять, почему именно блочным – холивары на эту тему начались еще на Ноевом Ковчеге, и это не относится к предмету данной статьи. Ну и как это всегда бывает, бюджет даже близко не позволяет прикупить некое брендовое решение, поэтому остается только становиться героем программы «Очумелые ручки». [Читать дальше →][1]

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

[>] Итоги C++ розыгрыша и демо рефакторингов в CLion
habra.14
habrabot(difrex,1) — All
2015-02-02 19:30:02


Привет Хабр, Некоторое время назад мы объявили [конкурс][1] — требовалось продолжить фразу: _Бьёрн Страуструп создал С++ 36 лет назад, и он до сих пор востребован и пользуется популярностью у разработчиков, потому что..._ Спасибо всем участникам за массу положительных эмоций и разнообразные предположения о том, что же сделало C++ таким популярным. Посовещавшись, мы выбрали топ-6 ответов:

1. [Logonoff][2]> Бьёрн Страуструп создал С++ 36 лет назад, и он до сих пор востребован и пользуется популярностью у разработчиков, потому что помимо языка Бьёрн изобрел также капсулу времени и ионный бластер, с помощью которых он уничтожает все альтернативные реальности в которых C++ непопулярен.
2. [poxu][3]> Бьёрн Страуструп создал С++ 36 лет назад, и он до сих пор востребован и пользуется популярностью у разработчиков, потому что он лучше любого другого языка позволяет разрабатывать программное обеспечение, предназначенное для работы на платформах с произвольными ограничениями, будь то частота процессора, объём оперативной памяти или размер батарейки. А ещё, в отличии от plain C, в нём есть деструкторы!
3. [bogolt][4]> мир захватывают самые практичные а не самые красивые.
4. За внимательность спасибо [fshp][5]> Бьёрн Страуструп создал С++ 36 лет назад, и он до сих пор востребован и пользуется популярностью у разработчиков, потому что «C++» у вас написан кириллицей, а он таких ошибок не прощает.
5. [HDDimon][6]> Бьёрн Страуструп создал С++ 36 лет назад, и он до сих пор востребован и пользуется популярностью у разработчиков, потому что позволяет придерживаться золотой середины между сложностью и производительностью.
6. [fogone][7]> потому что это единственный нативный язык под который можно найти разработчиков

[Узнать, кто же победил][8]

[1]: http://habrahabr.ru/company/JetBrains/blog/248475/
[2]: http://habrahabr.ru/users/logonoff/
[3]: http://habrahabr.ru/users/poxu/
[4]: http://habrahabr.ru/users/bogolt/
[5]: http://habrahabr.ru/users/fshp/
[6]: http://habrahabr.ru/users/hddimon/
[7]: http://habrahabr.ru/users/fogone/
[8]: http://habrahabr.ru/post/249479/#habracut

[>] Корпоративный VPN c ACCEL-PPP+IPsec и авторизацией в Freeradius через AD
habra.15
habrabot(difrex,1) — All
2015-09-18 16:30:04


![][1] В этой заметке я хочу показать пример быстрой реализации корпоративного VPN сервера с поддержкой PPTP, L2TP (как с IPsec так и без), IPSec vpn с единой базой, который сможет работать с пулами адресов, разными группами пользователей, авторизировать пользователей как из LDAP, так и из локальной базы, опциональная настройка шейпирования как для групп, так и для отдельных пользователей с поддержкой windows, linux, osx, ios, android клиентов и все это на открытых решениях. P.S. В данной заметке аспекты сетевой безопасности затронуты не будут, иначе она разрастется в огромный документ, с кучей нюансов в реализации, возможно о защите периметра и сетевой безопасности отдельно расскажу в следующий раз. Кому интересно, добро пожаловать под кат. [Читать дальше →][2]

[1]: https://habrastorage.org/files/e83/37e/d75/e8337ed75b7247bdae0d3f4f0b4b0497.jpg
[2]: http://habrahabr.ru/post/267103/#habracut

[>] Игра для РЖД: complete story
habra.15
habrabot(difrex,1) — All
2015-09-18 17:00:02


![image][1] Многие из нас играли в железную дорогу в детстве и мечтали о втором-третьем наборе рельс, чтобы построить свою ветку от балкона до прихожей. Нашей команде удалось поучаствовать в виртуальном строительстве огромного транссиба с развязками поражающими воображение. Кстати, на сайте Канобу еще неделю будет длиться конкурс с билетами на Игромир в качестве приза. [Ссылка на игру][2] [и на внеконкурсную версию][3] (без обертки Канобу) [Читать дальше →][4]

[1]: https://cdn.pbrd.co/images/Ji93J9V.png
[2]: http://kanobu.ru/special/rzd/
[3]: http://gameofbombs.com/demos/railroad/v3/
[4]: http://habrahabr.ru/post/267179/#habracut

[>] Python 3.5; async/await
habra.15
habrabot(difrex,1) — All
2015-09-18 18:00:03


Тихо и незаметно (с), [вышел Python версии 3.5][1]! И, безусловно, одно из самых интересных нововведений релиза является новый синтаксис определения сопрограмм с помощью ключевых слов **async/await**, далее в статье об этом. Поверхностный просмотр [«PEP 0492 — Coroutines with async and await syntax»][2] по началу оставил у меня вопрос «Зачем это надо». Сопрограммы удовлетворительно реализуются на расширенных генераторах и на первый взгляд может показаться, что все свелось к замене **yield from** на **await**, а декоратора, создающего сопрограмму на **async**. Сюда можно добавить и возникающее ощущение, что все это сделано исключительно для использования с модулем **asyncio**. **_Но это, конечно же, не так, тема глубже и интереснее._** [Читать дальше →][3]

[1]: https://docs.python.org/3.5/whatsnew/3.5.html
[2]: https://www.python.org/dev/peps/pep-0492/
[3]: http://habrahabr.ru/post/266743/#habracut

[>] [Перевод] Бесплатные SSL-сертификаты на 2 года с поддержкой до 100 доменов
habra.14
habrabot(difrex,1) — All
2015-02-02 21:00:02


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

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

[>] [Из песочницы] Настраиваем авторизацию в IIS по сертификатам используя OneToOne
habra.14
habrabot(difrex,1) — All
2015-02-02 21:30:03


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

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

[>] Курс «Основы эффективной работы с технологиями Wolfram». Занятие 2.2: Задание функций, работа со списками, шаблонными выражениями и ассоциациями
habra.15
habrabot(difrex,1) — All
2015-09-18 18:00:03








### Содержание

Списки ⋅⋅⋅ Список \{...\} и функция [List][1][...] ⋅⋅⋅ «Естественное» отображение списков ⋅⋅⋅ Способы генерирования списков ⋅⋅⋅ Индексация элементов и некоторые числовые характеристики списка. Функции [Length][2] и [Depth][3] ⋅⋅⋅ Вычленение элементов, занимающих определенные места в списке, с помощью функции [Part][4] (\[[...]]) ⋅⋅⋅ Переобозначение элементов списка ⋅⋅⋅ Генерирование списка с помощью функции [Table][5] ⋅⋅⋅ Генерирование списка чисел с помощью функции [Range][6] Ассоциации ⋅⋅⋅ Задание ассоциации и работа с ней ⋅⋅⋅ [Dataset][7] — формат баз данных в Wolfram Language Шаблонные выражения ⋅⋅⋅ Введение в шаблоны ⋅⋅⋅ Базовые шаблоны объектов: [Blank][8] (\_), [BlankSequence][9] (\_\_), [BlankNullSequence][10] (\_\_\_) ⋅⋅⋅ Что можно сделать с помощью шаблонов? Функция [Cases][11] ⋅⋅⋅ Определение типа выражения в шаблоне ⋅⋅⋅ Наложение ограничений на шаблоны с помощью функций [Condition][12] (/;), [PatternTest][13] (?), [Except][14], а также применение тестовых функций ⋅⋅⋅ Создание шаблонов, имеющих возможность альтернативного выбора с помощью функции [Alternatives][15] (|) Функции ⋅⋅⋅ Применение отсроченного присваивания [SetDelayed][16] (:=) ⋅⋅⋅ Применение абсолютного присваивания [Set][17] (=) ⋅⋅⋅ Задание функции, которая помнит значения, которые она уже находила и рекуррентной функции ⋅⋅⋅ Атрибуты функций и функции [Attributes][18], [SetAttributes][19], [ClearAttributes][20]​, [Protect][21]​, [Unprotect][22]​для работы с ними Чистые функции ⋅⋅⋅ Применение функции [Function][23] (&) ⋅⋅⋅ Где используются чистые функции? [Читать дальше →][24]

[1]: http://reference.wolfram.com/language/ref/List.html
[2]: http://reference.wolfram.com/language/ref/Length.html
[3]: http://reference.wolfram.com/language/ref/Depth.html
[4]: http://reference.wolfram.com/language/ref/Part.html
[5]: http://reference.wolfram.com/language/ref/Table.html
[6]: http://reference.wolfram.com/language/ref/Range.html
[7]: http://reference.wolfram.com/language/ref/Dataset.html
[8]: http://reference.wolfram.com/language/ref/Blank.html
[9]: http://reference.wolfram.com/language/ref/BlankSequence.html
[10]: http://reference.wolfram.com/language/ref/BlankNullSequence.html
[11]: http://reference.wolfram.com/language/ref/Cases.html
[12]: http://reference.wolfram.com/language/ref/Condition.html
[13]: http://reference.wolfram.com/language/ref/PatternTest.html
[14]: http://reference.wolfram.com/language/ref/Except.html
[15]: http://reference.wolfram.com/language/ref/Alternatives.html
[16]: http://reference.wolfram.com/language/ref/SetDelayed.html
[17]: http://reference.wolfram.com/language/ref/Set.html
[18]: http://reference.wolfram.com/language/ref/Attributes.html
[19]: http://reference.wolfram.com/language/ref/SetAttributes.html
[20]: http://reference.wolfram.com/language/ref/ClearAttributes.html
[21]: http://reference.wolfram.com/language/ref/Protect.html
[22]: http://reference.wolfram.com/language/ref/Unprotect.html
[23]: http://reference.wolfram.com/language/ref/Function.html
[24]: http://habrahabr.ru/post/267185/#habracut

[>] [Перевод] Heartbleed на Rust
habra.14
habrabot(difrex,1) — All
2015-02-02 22:00:03


В комментариях к одной из ссылок на Hacker News некто утверждал, что использование Rust предотвратило бы Heartlbeed, что код бы даже не скомпилировался. Это прозвучало как вызов! Тред начинается [вот здесь][1]. Я не собирался ни к кому придираться, но утверждение о предотвращении Heartbleed оказалось удачно сформулировано. В отличие от расплывчатых заявлений о безопасности работы с памятью в целом, конкретно данное утверждение можно протестировать. [Читать дальше →][2]

[1]: https://news.ycombinator.com/item?id=8954965
[2]: http://habrahabr.ru/post/249537/#habracut

[>] О безопасности UEFI. Часть вторая
habra.15
habrabot(difrex,1) — All
2015-09-18 20:00:03


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

[1]: https://habrastorage.org/files/8aa/ea6/135/8aaea61356364273b9779501dc8fb2ed.jpg
[2]: http://habrahabr.ru/post/266935/
[3]: http://habrahabr.ru/post/267197/#habracut

[>] О безопасности UEFI, часть вторая
habra.15
habrabot(difrex,1) — All
2015-09-18 22:30:02


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

[1]: https://habrastorage.org/files/8aa/ea6/135/8aaea61356364273b9779501dc8fb2ed.jpg
[2]: http://habrahabr.ru/post/266935/
[3]: http://habrahabr.ru/post/267197/#habracut

[>] [recovery mode] Microsoft выпустит свой собственный дистрибутив Linux
habra.15
habrabot(difrex,1) — All
2015-09-19 00:30:02


![image][1] Да. Вы не ослышались: корпорация Microsoft действительно планирует выпустить собственный дистрибутив открытой операционной системы Linux. Именоваться он будет Azure Cloud Switch (ACS), и вкратце его можно описать, как кроссплатформенную модульную операционную систему для управления дата-центрами. [Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/8f3/052/6d1/8f30526d12460241c4f3160c4c69470c.png
[2]: http://habrahabr.ru/post/267209/#habracut

[>] DoS эксплойт Chrome и некоторых других браузеров
habra.15
habrabot(difrex,1) — All
2015-09-19 11:00:03


Помните [пост про эксплойт скайпа][1]? Сегодня [обнаружился][2] похожий эксплойт для браузера Chrome и некоторых браузеров на его движке, который приводит к падению браузеров целиком или только отдельной страницы. [Подробнее][3]

[1]: http://habrahabr.ru/post/259393/
[2]: http://andrisatteka.blogspot.ru/2015/09/a-simple-string-to-crash-google-chrome.html
[3]: http://habrahabr.ru/post/267229/#habracut

[>] О безопасности UEFI, часть третья
habra.15
habrabot(difrex,1) — All
2015-09-19 19:00:02


![][1]Продолжаем разговор о безопасности UEFI. На этот раз речь пойдет об опубликованной в конце 2014 года серьезной уязвимости в реализации ACPI S3 (Sleep Mode), ее эксплуатации и последствиях. Основная «фишка» этой уязвимости в том, что она вскрыла целый класс проблем безопасности UEFI, вообще не считавшихся до этого проблемами, и потому и заслуживает отдельной статьи. Тем, кто не читал предыдущие статьи цикла — [раз][2] и [два][3], предлагаю прочесть сначала их, остальных жду под катом. [Читать дальше →][4]

[1]: https://habrastorage.org/files/74f/d27/2f8/74fd272f8e3c4b4388bdf46813925981.jpg
[2]: http://habrahabr.ru/post/266935/
[3]: http://habrahabr.ru/post/267197/
[4]: http://habrahabr.ru/post/267237/#habracut

[>] Обновление русской документации по Firebird 2.5 и бета документации по Firebird 3.0
habra.15
habrabot(difrex,1) — All
2015-09-19 19:30:02


Многие из уважаемых читателей Хабра, интересующихся Firebird, знают, что в прошлом году вышла документация по языку Firebird SQL на русском языке версии 2.5. Создание документации спонсировала [Московская Биржа][1] (да-да, та самая, про курс рубля на которой мы слышим каждый день) — как платиновый спонсор и один из крупнейших пользователей Firebird в России, и компания [IBSurgeon][2]/[IBase][3], представляющая Firebird в России. Но на этом работа не закончилась: [Читать дальше →][4]

[1]: http://moex.com
[2]: http://ib-aid.com
[3]: http://ibase.ru
[4]: http://habrahabr.ru/post/267211/#habracut

[>] [Из песочницы] Максимально эффективная по скорости работы — серверная схема, для клиент-серверной 1С 8.х
habra.14
habrabot(difrex,1) — All
2015-02-03 00:00:02


**Предисловие** Постоянно сталкивался с высказываниями ИТ специалистов _«сеть нагружена на 20%… процессоры на 50%… очередей к дискам мало… Значит сеть и сервера справляются… смотрите код в 1С проблемы исключительно там»._ На самом деле происходило следующее ( сервер 1С и SQL разнесены на разные компьютеры): сеть практически использовалась по максимуму, почему описано ниже в статье. И соответственно из-за малой ширины канала обмена «полезными» данными — SQL сервер с «Сервером 1С» постоянно ожидали друг друга, что вело к малой утилизации ресурсов CPU и дисковой системы. [Читать дальше →][1]

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

[>] Functional C#: работа с ошибками
habra.15
habrabot(difrex,1) — All
2015-09-20 17:00:03


В этой части мы рассмотрим как иметь дело со сбоями и ошибками ввода в функциональном стиле.

* [Functional C#: Immutability][1]
* [Functional C#: Primitive obsession][2]
* [Functional C#: Non-nullable reference types][3]
* **Functional C#: работа с ошибками**

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

[1]: http://habrahabr.ru/post/266873/
[2]: http://habrahabr.ru/post/266937/
[3]: http://habrahabr.ru/post/267063/
[4]: http://habrahabr.ru/post/267231/#habracut

[>] [Перевод] Нетрадиционный обзор React
habra.14
habrabot(difrex,1) — All
2015-02-03 13:00:05


Привет, Хабр! Мы в [Хекслете][1] любим свой стек технологий :) Когда рассказываем другим — многие завидуют: Rails, Docker, AWS, React JS. Реакт мы используем в первую очередь для создания веб-среды для разработки [Hexlet-IDE][2], которая позволяет нашим пользователям выполнять упражнение по разработке приложений и взаимодействию с виртуальной машиной прямо в браузере. Сегодня мы публикуем перевод статьи «An Unconventional Review of React» Джеймса Шора, ведущего проекта Let’s Code: Test-Driven JavaScript. ![][3] Он мне понравился. Я не ожидал такого. Для специальных выпусков Let’s Code JavaScript в августе и сентябре я изучал [Реакт][4]. На случай если вам не знаком Реакт: это библиотека для фронт-энд веб-разработки. С помощью него создаются компоненты: короткие, не-совсем-ХТМЛ теги, которые можно комбинировать для создания интерфейса. Реакт знаменит своими нетрадиционными решениями: реализацией виртуального DOM’а, созданием элементов интерфейса в JavaScript вместо шаблонов, создание суперсета языка JavaScript — JSX, который позволяет вставлять не-совсем-ХТМЛ прямо в код JS. С этими решениями разработка уходит от схемы манипуляции DOM’ом — добавить этот элемент, скрыть эффектом другой элемент, обновить это текстовое поле. Вместо этого вы описываете как сейчас должен выглядеть DOM. Реакт берет на себя сложную работу по определению необходимых действий чтобы DOM на самом деле стал выглядеть так, как вы сказали. [Читать дальше →][5]

[1]: https://hexlet.io
[2]: https://github.com/Hexlet/hexlet-ide
[3]: //habrastorage.org/files/bd0/1e0/b77/bd01e0b770764018ab7b61023b2ef4ca.png
[4]: http://facebook.github.io/react/
[5]: http://habrahabr.ru/post/249579/#habracut

[>] DevExtreme: фильтруем данные на графике
habra.14
habrabot(difrex,1) — All
2015-02-03 13:00:05


![][1] Фильтрация данных по аргументу — одна из самых распространенных задач при работе с графиком. Именно поэтому так важно наличие простых и удобных способов фильтрации в каждой библиотеке, предназначенной для визуализации данных. [А как фильтруют в DevExtreme?][2]

[1]: //habrastorage.org/files/930/f74/44d/930f7444d8db4d4d84e654ebdd5bdb39.png
[2]: http://habrahabr.ru/post/249497/#habracut

[>] FP на Scala: Invariant Functor
habra.15
habrabot(difrex,1) — All
2015-09-21 12:00:03


В статье рассматривается

* Как такая абстракция теории категорий как **инвариантный функтор** (Invariant Functor), который иногда называют экпоненциальным функтором (Exponential Functor), выражается на Scala.
* Два правила (**Identity Law**, **Composition Law**), которым доложен следовать каждый инвариантный функтор.
* Приведен пример **инвариантного функтора с состоянием** (Value Holder)
* Приведен пример **инвариантного функтора-отношения** между элементами множества (полугруппа)

Публикация является продолжением [FP на Scala: Что такое функтор?][1] в которой были рассмотрены следующие вопросы

* Какая имеется связь между **теорией категорий**, **Haskell** и **Scala**.
* Что такое **ковариантный функтор**.
* Что такое **контравариантный функтор**.

Содержание

* [Введение][2]
* [Что такое Invariant Functor][3]
* [Invariant Functor — Identity Law][4]
* [Invariant Functor — Composition Law][5]
* [Пример #1: Value Holder][6]
* [Пример #2: Полугруппа][7]
* [Инвариантный функтор в библиотеках][8]

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

[1]: http://habrahabr.ru/company/golovachcourses/blog/266905/
[2]: http://habrahabr.ru/company/golovachcourses/blog/267087/#0
[3]: http://habrahabr.ru/company/golovachcourses/blog/267087/#10
[4]: http://habrahabr.ru/company/golovachcourses/blog/267087/#11
[5]: http://habrahabr.ru/company/golovachcourses/blog/267087/#12
[6]: http://habrahabr.ru/company/golovachcourses/blog/267087/#20
[7]: http://habrahabr.ru/company/golovachcourses/blog/267087/#21
[8]: http://habrahabr.ru/company/golovachcourses/blog/267087/#30
[9]: http://habrahabr.ru/post/267087/#habracut

[>] IBM Research объявила о запуске инновационной облачной технологии для защиты персональных данных
habra.14
habrabot(difrex,1) — All
2015-02-03 13:00:05


![][1] Исследователи IBM сегодня объявили о запуске новой облачной технологии, которая поможет потребителям усилить защиту их персональных данных в интернете. Технология под названием Identity Mixer использует криптографический алгоритм для шифрования таких подтвержденных идентификационных данных пользователя, как его возраст, гражданство, адрес и номер кредитной карты. Благодаря использованию данной технологии потребитель сможет передавать третьей стороне только необходимый объем личной информации. Identity Mixer может быть использован и в электронном кошельке, в котором есть данные учетной записи, подтвержденные доверенной третьей стороной, в частности информация из электронных удостоверений личности. Важно отметить, что сторона, выдавшая документ, не получает никакой информации о том, как и когда данные используются. [Читать дальше →][2]

[1]: //habrastorage.org/files/82b/aec/888/82baec88860c4efa98ecf2a161baa895.jpg
[2]: http://habrahabr.ru/post/249565/#habracut

[>] Яндекс сделал беспарольную двухфакторную аутентификацию
habra.14
habrabot(difrex,1) — All
2015-02-03 14:30:03


Редкий пост в блоге Яндекса, а особенно касающийся безопасности, обходился без [упоминания][1] [двухфакторной][2] аутентификации. Мы долго думали, как правильно усилить защиту пользовательских аккаунтов, да еще так, чтобы этим мог пользоваться не только хардкорный гик. По слухам, на некоторых других крупных сайтах доля пользователей, включивших дополнительные средства аутентификации, не превышает 0,1%. Кажется, это потому, что распространенная схема двухфакторной аутентификации слишком сложна для обычных людей. Мы постарались придумать иной способ и сегодня представляем его бета-версию. Надеемся, он получит более широкое распространение. Мы со своей стороны готовы работать над его улучшением и последующей стандартизацией. [![][3]][4] После [включения][5] двухфакторной аутентификации в Паспорте, вам надо будет установить приложение Яндекс.Ключ в [App Store][6] или [Google Play][7]. В форме авторизации на главной странице Яндекса, в Почте и Паспорте появились QR-коды. Для входа в учётную запись необходимо считать QR-код через приложение — и всё. Если считать QR-код не получается, например не работает камера смартфона или нет доступа к интернету, приложение создаст одноразовый пароль, который будет действовать всего 30 секунд. Расскажу о том, почему мы решили не использовать такие «стандартные» механизмы, как [RFC 6238][8] или [RFC 4226][9]. Как работают распространенные схемы двухфакторной аутентификации? [Читать дальше →][10]

[1]: http://habrahabr.ru/company/yandex/blog/218951/#comment_7487701
[2]: http://habrahabr.ru/company/yandex/blog/184788/#comment_6428478
[3]: //habrastorage.org/files/a50/143/b06/a50143b062d54ef1a863bb88e53c95cd.jpeg
[4]: http://habrahabr.ru/company/yandex/blog/249547/
[5]: https://oauth.yandex.ru/access
[6]: https://itunes.apple.com/ru/app/andeks.kluc-dla-zasity-akkaunta/id957324816?l=ru&ls=1&mt=8
[7]: https://play.google.com/store/apps/details?id=ru.yandex.key
[8]: http://tools.ietf.org/html/rfc6238
[9]: https://h.yandex-team.ru/?http%3A%2F%2Ftools.ietf.org%2Fhtml%2Frfc4226
[10]: http://habrahabr.ru/post/249547/#habracut

[>] [Из песочницы] Модификаторы private и private[this] в Scala
habra.15
habrabot(difrex,1) — All
2015-09-21 14:30:02


В Scala, помимо обычного модификатора доступа private существует также модификатор private[this]. Эти два модификатора довольно похожи друг на друга. К тому же в Java есть только простой private. Поэтому они легко могут вызвать путаницу или убежденность, что простой private — не такой уж и приватный, и везде надо использовать private[this] для пущей защищенности. Но давайте разберемся, как дела обстоят на самом деле. [Читать дальше →][1]

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

[>] [Из песочницы] Алгоритм шифрования RC5 и его реализация на python
habra.15
habrabot(difrex,1) — All
2015-09-21 14:30:03


[![][1]][2]

####

В своём посте, я хотел бы рассказать о симметричном алгоритме шифрования RC5 и моей версии его реализации на python. Данный алгоритм разработан известнейшим криптологом Рональдом Ривестом — одним из разработчиков системы RSA и основателей одноименной фирмы. По количеству пользователей RC5 стоит в одном ряду с такими известными алгоритмами как IDEA и Blowfish. Аббревиатура RC обозначает, по разным источникам, либо Rivest Cipher, либо Ron's Code, что в совокупности даёт нам «шифр Рона Ривеста». Заинтересовавшихся прошу под кат. [Не нажимать!][3]

[1]: https://habrastorage.org/files/6ba/a47/468/6baa474684cf46b9a5cdb8df9256d1ff.png
[2]: http://habrahabr.ru/post/267295/
[3]: http://habrahabr.ru/post/267295/#habracut

[>] Почта на Mail@Ru ведёт себя так удобно, что аж страшно
habra.15
habrabot(difrex,1) — All
2015-09-21 15:30:03


Сервис почты и команда юзабилистов Mail@RU создали сервис настолько удобный, что порой становится страшно. Для примера проведём эксперимент. [Читать дальше →][1]

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

[>] В Китайском AppStore были обнаружены 39 заражённых приложений из-за модифицированной версии Xcode
habra.15
habrabot(difrex,1) — All
2015-09-21 17:00:03


![image][1] Фирмой Palo Alto Networks был обнаружен malware в iOs. Он попал через модифицированную версию инструмент Xcode от Apple — XcodeGhost. [Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/35f/01e/4f7/35f01e4f7671225df34720383a70d3ae.jpg
[2]: http://habrahabr.ru/post/267253/#habracut

[>] Препарируем t-SNE
habra.15
habrabot(difrex,1) — All
2015-09-21 17:00:03


Работая над статьей [«Глубокое обучение на R...»][1], я несколько раз встречал упоминание t-SNE — загадочной техники нелинейного снижения размерности и визуализации многомерных переменных (например, [здесь][2]), был заинтригован и решил разобраться во всем в деталях. [t-SNE][3] это **t-distributed stochastic neighbor embedding**. Русский вариант с «внедрением соседей» в некоторой мере звучит нелепо, поэтому дальше буду использовать английский акроним. [Читать дальше →][4]

[1]: http://habrahabr.ru/post/258983/
[2]: http://habrahabr.ru/post/253227/
[3]: https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding
[4]: http://habrahabr.ru/post/267041/#habracut

[>] IBM Research планирует создать надежную методику раннего диагностирования слабоумия при помощи смартфонов
habra.15
habrabot(difrex,1) — All
2015-09-21 17:00:03


![][1] К сожалению, излечению такое заболевание, как слабоумие (деменция), не поддается. Тем не менее, ранняя диагностика и соответствующий уход позволяют значительно улучшить качество жизни как пациента, так и его близких. С 2012 года специалисты подразделения IBM Research занимаются разработкой методов определения вероятности получения такого заболевания определенным человеком, а также ранней диагностики деменции. В наши дни в качестве надежного инструмента для проведения исследований и диагностики можно использовать мобильное устройство — планшет или смартфон. И ученые из IBM сейчас работают именно с такими устройствами в рамках проекта DemCare. Главой проекта является Аарон Сатт. [Читать дальше →][2]

[1]: https://habrastorage.org/files/909/7b2/0ff/9097b20ff1c44a919df5839f48fe6682.jpg
[2]: http://habrahabr.ru/post/267327/#habracut

[>] [Из песочницы] XSS на сайтах, использующих Instagram API
habra.14
habrabot(difrex,1) — All
2015-02-03 15:00:03


Разрабатывая приложение, использующее Instagram API, я заметил, что мне приходят не преобразованные теги. Безусловно, такая проблема решается за пару строчек кода. Но я подумал, а что если не все разработчики преобразовывают теги в сущности перед выводом на страницу, полностью доверяя API. Кто будет ожидать, что в описании страницы Instagram будет JS скрипт вместо текста? Я нашел такие сайты. [Читать дальше →][1]

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

Pages: 1 ... 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ... 210