RSS
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ... 37
[>] AccelEpi, или Как EPAM помогла в тестировании лекарств против эпилепсии
habra.15
habrabot(difrex,1) — All
2015-08-03 16:00:05


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

[1]: https://habrastorage.org/files/3ce/6d6/2ae/3ce6d62aeeae4ad4a226feb128a41206.jpg
[2]: http://habrahabr.ru/post/264031/#habracut

[>] NGFW. Часть 3 – Демонстрация защиты от DDoS
habra.15
habrabot(difrex,1) — All
2015-08-03 16:30:03


Атаки типа распределённый отказ в обслуживании (DDoS) атак по-прежнему находятся в верхних строках анти-рейтинга. DDoS-атаки против коммерческих организаций доказали свою эффективность в срыве бизнеса и привлечения внимания компании. Например, за счет использования массивных бот-сетей, собранных из скомпрометированных компьютеров, хакеры запустили ряд получивших широкую огласку и весьма разрушительных DDoS-атак против американских банков. Ниже представлен пример защиты от атак типа [отказ в обслуживании с использованием заражённых вредоносным ПО компьютеров][1] при помощи [HP NGFW][2]. Для тестирования этой возможности межсетевого экрана был собран стенд, представленный на рисунке ниже. [![][3]][4] __ [Читать дальше →][5]

[1]: http://www.darkreading.com/attacks-and-breaches/us-bank-hack-attack-techniques-identified/d/d-id/1108089
[2]: http://habrahabr.ru/company/hp/blog/262123/
[3]: https://habrastorage.org/files/fbd/8d9/d14/fbd8d9d14729492fa0d0e4be7c211438.png
[4]: http://habrahabr.ru/company/hp/blog/264047/
[5]: http://habrahabr.ru/post/264047/#habracut

[>] Прошиваем роутер Upvel UR UR-313N4G на OpenWRT
habra.15
habrabot(difrex,1) — All
2015-08-03 16:30:03


![][1] Как-то раз, еще до скачков курса доллара, мне понадобился очень дешевый SOHO-роутер. Требования — 5 портов, NAT и Wi-Fi, не помешал бы и USB. Выбор пал на [Upvel UR-313N4G][2], который в те времена стоил в Citilink’е смешные 860 рублей. Роутер был куплен и выполнял свои обязанности вполне сносно, стабильно зависая раз в неделю. Кроме того, не работал проброс портов, ну и что, он не больно сильно был нужен. К тому же в Web-интерфейсе был доступ к командной строке, так что в критичных случаях можно было просто написать iptables -A PREROUTING -j DNAT и наслаждаться работающими портами до следующего зависания. Впрочем, большего я от коробочки за такую смешную цену я не ждал. Потом кое-что в моей жизни поменялось и роутер лег на дальнюю полку, а его заменил TP-Link TR-ML3420. Надо сказать, TR-ML3420 отлично работает под OpenWRT и никаких проблем с ним не возникает, а вот роутеры Upvel официально не поддерживаются OpenWRT чуть менее, чем полностью (из всего модельного ряда — только два роутера). Когда стало ясно, что Upvel UR-313N4G мне уже не жалко, я решил попробовать поставить на него OpenWRT. Основная задача — заставить работать 3G-модем Megafon M21-4, он же Huawei E3531. Надо сказать, что опыт прошивки роутеров на OpenWRT у меня был, как через Web-интерфейс, так и через UART, но он сводился к “выберите файл для прошивки и молитесь” или “наберите эти три команды в консоли и молитесь”. На этот раз мне хотелось разобраться, почему вводятся именно такие команды, ну и вообще получить общее представление об архитектуре MIPS, с которой я до этого не работал. Тут, конечно, нужно отметить, что читать этот материал _отцам_, разрабатывающим Gigabit Ethernet карты на FPGA и пишущим видеодрайверы для Mali-400, будет, наверное, смешно — они все это и так давно знают. [Читать дальше →][3]

[1]: https://habrastorage.org/files/a0b/6fc/ec4/a0b6fcec40e840e1a9d286230687af07.png
[2]: http://www.upvel.ru/items/ur-313n4g.html
[3]: http://habrahabr.ru/post/264025/#habracut

[>] [recovery mode] Стипендиальные правительственные программы по всему миру. Часть 1
habra.15
habrabot(difrex,1) — All
2015-08-03 16:30:03


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

[1]: https://habrastorage.org/files/e73/fbc/0bb/e73fbc0bb62b4706beb2d5ba0d1dfaed.jpg
[2]: http://habrahabr.ru/post/263961/#habracut

[>] [Из песочницы] Борьба с «плохими» URI, спамерами и php-шеллами — личный опыт
habra.15
habrabot(difrex,1) — All
2015-08-03 16:30:03


Полагаю, все веб-программисты проходят в той или иной степени одинаковый путь. Я основываюсь на своем личном опыте. Для меня в начале постижения этой науки создание сайта было на первом месте. Только по прошествии значительного времени я осознал, что сайты еще и вскрывают. Прочитав, как это делается, я удивился, на сколько просто по неопытности превратить свой сайт в «проходной двор» и стал уделять безопасности определенное внимание. По крайней мере я стал фильтровать входные параметры страниц. На втором этапе я с удивлением обнаружил, что существуют такие звери, как PHP-shell. В этом мне помог Касперский, когда заблокировал доступ к моему столь любимому сайту. Следующим откровением было то, что вскрыть могут не только вас, но и хостинг. При этом шеллы появляются на вашем сайте с удивительной регулярностью, неизвестно откуда и делают, естественно, что хотят. Например, редактируют файлы **.htaccess** и закрывают их редактирование для всех, в том числе и для владельца. Все эти откровения в свое время забрали огромное количество суббот и воскресений и потребовали перехода на рерайтинг урлов, создание развернутой системы анализа входных параметров на подозрительные слова и выражения (здесь я, кстати, потерпел некоторое фиаско), создание лога параметров, передающихся методом пост, системы оповещения о подозрительных событиях, происходящих на сайте, и, наконец, разрешения запуска только скриптов со специфическим префиксом в имени, чтобы никакой другой скрипт типа **template.php** или **wso2.php** не запускался. Что же нужно иметь ввиду и что можно сделать для создания относительно безопасного сайта? [Читать дальше →][1]

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

[>] Bitcoin на пределе? Почему криптовалюту ждут тяжелые времена
habra.15
habrabot(difrex,1) — All
2015-08-03 18:30:02


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

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

[>] Назад в будущее – Декапсуляция
habra.15
habrabot(difrex,1) — All
2015-08-03 20:00:05






При работе программных модулей, хранящих в оперативной памяти большое количество данных, способ их хранения оказывает сильное влияние на потребление памяти и быстродействие. Один из способов ускорения системы и экономии ресурсов может заключаться в использовании более примитивных структур данных – структур вместо классов и примитивных типов вместо структур. Конечно, такой подход ломает ООП и возвращает к использованию «старых» методов программирования. Однако, в некоторых случаях такая примитизация может решить множество проблем. Простой тест показал возможность сокращения потребляемой памяти более чем в три раза. Затрагиваемые вопросы:

* Влияние программной архитектуры на потребление памяти и производительность;
* Различия при работе в 32 и 64 битных режимах;
* Различия между указателями и индексами массива;
* Влияние выравнивания данных внутри классов/структур;
* Влияние кеша процессора на производительность;
* Оценка стоимости поддержки ООП в языках высокого уровня;
* Признание факта необходимости учитывать низкоуровневые особенности платформы даже при разработке на языках высокого уровня.

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

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

[>] [Перевод] Краткая история эволюции proof-of-work в криптовалютах. Часть 2
habra.15
habrabot(difrex,1) — All
2015-08-03 20:30:03


_Предлагаю вашему вниманию перевод статьи «[The Proof-of-Work in Cryptocurrencies: Brief History. Part 2][1]» Рэя Паттерсона (Ray Patterson) с сайта [Bytecoin.org][2]. «Краткая история эволюции proof-of-work в криптовалютах. Часть 1» находится [тут][3]._ ![][4]

## Скрещивание

К середине лета 2013 года в строю уже находилось больше сотни альткоинов, причем почти половина появилась именно за последние пару месяцев. Стоит ли говорить, что почти все «новички» были форками Litecoin и использовали scrypt? Другим трендом сезона стал новомодный Proof-of-Stake от PPcoin, так что комбинацию scrypt+PoS можно было назвать «стандартным набором начинающего алькоинера». Такая (количественная) популярность scrypt и начало экспоненциального роста сложности Bitcoin привели к простой мысли: scrypt-ASIC’и появятся в ту же секунду, как только это станет выгодно. И хотя гигантский ноябрьский пузырь – когда Bitcoin дошел до $1200 – еще не начал даже надуваться, поиски новой PoW функции начались снова. Как можно разнообразить стандартную хэш-функцию? Например… [Читать дальше →][5]

[1]: https://bytecoin.org/blog/proof-of-work-part-2/
[2]: https://bytecoin.org
[3]: http://habrahabr.ru/post/263769/
[4]: https://habrastorage.org/files/25f/e08/411/25fe08411e37431d8067c846372960ba.jpg
[5]: http://habrahabr.ru/post/264067/#habracut

[>] [recovery mode] 5 нажатий на экран терминала — и открывается любая папка
habra.15
habrabot(difrex,1) — All
2015-08-04 00:00:06


Не так давно я попробовал воспользоваться платёжным терминалом одного украинского банка. Всего лишь 5 безобидных нажатий на сенсорный экран открыли мне доступ к Windows Explorer этого терминала. ![image][1] [Читать дальше →][2]

[1]: https://habrastorage.org/files/b73/f29/129/b73f29129940490588987c9604a0b528.jpg
[2]: http://habrahabr.ru/post/264089/#habracut

[>] Прошиваем роутер Upvel UR-313N4G на OpenWRT
habra.15
habrabot(difrex,1) — All
2015-08-04 10:00:02


![][1] Как-то раз, еще до скачков курса доллара, мне понадобился очень дешевый SOHO-роутер. Требования — 5 портов, NAT и Wi-Fi, не помешал бы и USB. Выбор пал на [Upvel UR-313N4G][2], который в те времена стоил в Citilink’е смешные 860 рублей. Роутер был куплен и выполнял свои обязанности вполне сносно, стабильно зависая раз в неделю. Кроме того, не работал проброс портов, ну и что, он не больно сильно был нужен. К тому же в Web-интерфейсе был доступ к командной строке, так что в критичных случаях можно было просто написать iptables -A PREROUTING -j DNAT и наслаждаться работающими портами до следующего зависания. Впрочем, большего я от коробочки за такую смешную цену я не ждал. Потом кое-что в моей жизни поменялось и роутер лег на дальнюю полку, а его заменил TP-Link TR-ML3420. Надо сказать, TR-ML3420 отлично работает под OpenWRT и никаких проблем с ним не возникает, а вот роутеры Upvel официально не поддерживаются OpenWRT чуть менее, чем полностью (из всего модельного ряда — только два роутера). Когда стало ясно, что Upvel UR-313N4G мне уже не жалко, я решил попробовать поставить на него OpenWRT. Основная задача — заставить работать 3G-модем Megafon M21-4, он же Huawei E3531. Надо сказать, что опыт прошивки роутеров на OpenWRT у меня был, как через Web-интерфейс, так и через UART, но он сводился к “выберите файл для прошивки и молитесь” или “наберите эти три команды в консоли и молитесь”. На этот раз мне хотелось разобраться, почему вводятся именно такие команды, ну и вообще получить общее представление об архитектуре MIPS, с которой я до этого не работал. Тут, конечно, нужно отметить, что читать этот материал _отцам_, разрабатывающим Gigabit Ethernet карты на FPGA и пишущим видеодрайверы для Mali-400, будет, наверное, смешно — они все это и так давно знают. [Читать дальше →][3]

[1]: https://habrastorage.org/files/a0b/6fc/ec4/a0b6fcec40e840e1a9d286230687af07.png
[2]: http://www.upvel.ru/items/ur-313n4g.html
[3]: http://habrahabr.ru/post/264025/#habracut

[>] Третий лишний: как мы реализовали сбор почты с использованием OAuth 2.0
habra.15
habrabot(difrex,1) — All
2015-08-04 13:00:05


![][1] _«Может тебе еще и ключ от квартиры, где деньги лежат?»_ — примерно так выглядит нормальная реакция человека, у которого посторонний сервис требует пароль от основной почты. Тем не менее, большинству из нас регулярно приходится сообщать пароль сторонним сервисам. Сегодня я хочу рассказать о том, как мы реализовали процедуру авторизации при сборе писем с наших ящиков через OAuth 2.0, тем самым избавив пользователей Mail.Ru от необходимости доверять «ключи» от своей почты третьей стороне. [Читать дальше →][2]

[1]: https://habrastorage.org/files/e2e/c7f/0fe/e2ec7f0fe147405286c37688a589536c.jpg
[2]: http://habrahabr.ru/post/264049/#habracut

[>] Создание игры на Blend4Web. Путь программиста
habra.15
habrabot(difrex,1) — All
2015-08-04 13:30:04


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

[1]: http://habrahabr.ru/post/263453/
[2]: http://habrahabr.ru/post/264115/#habracut

[>] [Перевод] Code contracts vs валидация входящих данных
habra.15
habrabot(difrex,1) — All
2015-08-04 14:30:02


Правила валидации входящих данных часто принимают за контракты в коде (как, собственно, и наоборот). Давайте разберемся в чем отличие между этими двумя понятиями и в каких случаях они применимы. [Читать дальше →][1]

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

[>] Исследователи создали червя, который может заражать прошивку Mac
habra.15
habrabot(difrex,1) — All
2015-08-04 14:30:02


[![][1]][2] Несколько месяцев назад исследователь Траммел Хадсон (Trammel Hudson) создал эксплойт под названием [Thunderstrike][3], который мог инфицировать компьютеры Mac через устройства, подключенные через разъем Thunderbolt. При подключении к зараженному компьютеру новых устройств червь записывался на них, таким образом под угрозой оказывались и другие машины. Apple исправила уязвимость в OS X версии 10.10.2, однако, как [сообщает][4] издание Wired, Хадсон и еще один ИБ-исследователь Ксено Кова (Xeno Kovah) разработали новую версию эксплойта и опубликовали буткит и червя, заражающего компьютеры Mac. [Читать дальше →][5]

[1]: https://habrastorage.org/files/914/9f0/db1/9149f0db10e7461c997517daaf220ff5.jpg
[2]: http://habrahabr.ru/company/pt/blog/264123/
[3]: http://arstechnica.com/security/2015/01/worlds-first-known-bootkit-for-os-x-can-permanently-backdoor-macs/
[4]: http://www.wired.com/2015/08/researchers-create-first-firmware-worm-attacks-macs/?mbid=social_twitter
[5]: http://habrahabr.ru/post/264123/#habracut

[>] Уязвимости систем безопасности Министерства Обороны, ФСБ, ФСИН, АЭС, метрополитена и федеральных автодорог
habra.15
habrabot(difrex,1) — All
2015-08-04 15:00:07


![image][1] Все помнят историю, как [один видеоролик][2] послужил детонатором серии международных скандалов. Хакеры уже взломали [ракетную установку][3] (в учебных целях ), [систему ПВО][4] и [нефтяную компанию][5], а хакеры, порабощенные американскими спецслужбами, [отключили интернет в Сирии][6] и покопались в [Иранской атомной программе][7]. По данным исследования, даже системы на прочность (в учебных целях, естественно, и заблаговременно уведомив необходимых лиц). [Читать дальше →][10]

[1]: https://habrastorage.org/getpro/habr/post_images/905/b33/a57/905b33a57c2823c3f36d451b76c52fa6.jpg
[2]: http://www.youtube.com/watch?v=5rXPrfnU3G0
[3]: http://habrahabr.ru/company/pt/blog/260435/
[4]: http://habrahabr.ru/company/pt/blog/262459/
[5]: http://lukatsky.blogspot.ru/2015/07/blog-post_46.html
[6]: http://habrahabr.ru/post/233331/
[7]: http://habrahabr.ru/post/105964/
[8]: http://habrahabr.ru/company/pt/blog/233671/
[9]: http://habrahabr.ru/post/178501/
[10]: http://habrahabr.ru/post/262535/#habracut

[>] Проверьте Ваш сайт на попадание в Единый реестр запрещённых сайтов России
habra.15
habrabot(difrex,1) — All
2015-08-04 15:30:04


Сервис мониторинга работы сайтов [Host-tracker][1] обзавелся новой опцией – проверкой на попадание в Единый реестр запрещенных сайтов. ![][2] [Читать дальше →][3]

[1]: http://www.host-tracker.com
[2]: https://habrastorage.org/files/a73/b71/5ef/a73b715ef31c431a9523590552162858.jpg
[3]: http://habrahabr.ru/post/264071/#habracut

[>] Как повысить уверенность в том, что кнопка была нажата живым пользователем на сайте и избавиться от капчи?
habra.15
habrabot(difrex,1) — All
2015-08-04 15:30:04


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

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

[>] Защита от вирусов — что NIST указывает нам?
habra.15
habrabot(difrex,1) — All
2015-08-04 15:30:04


С тем, какие требования отечественные регуляторы предъявляют к системам защиты от вредоносных программ можно ознакомиться [тут][1]. Даже поверхностный анализ показывает, что система защиты, реализованная в соответствии с этим требованиями, и продуктами, имеющими функционал, требуемый регуляторами, будет защищать исключительно от замечаний в ходе проверок этих регуляторов. Я думаю, что такой результат предсказуем для всех, кто когда либо сталкивался с уровнем качества наших законов и приказов. А как обстоят дела с зарубежными стандартами? [Читать дальше →][2]

[1]: http://habrahabr.ru/post/262413
[2]: http://habrahabr.ru/post/264073/#habracut

[>] [Перевод] Событийно-ориентированный бэктестинг на Python шаг за шагом. Часть 2
habra.15
habrabot(difrex,1) — All
2015-08-04 15:30:04


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

[1]: https://habrastorage.org/files/de1/5c7/4b2/de15c74b2f05439faec7bb7e99ea43b5.png
[2]: http://habrahabr.ru/company/itinvest/blog/264141/
[3]: http://habrahabr.ru/company/itinvest/blog/263097/
[4]: http://habrahabr.ru/post/264141/#habracut

[>] Игнорируем лишние аргументы функции на C++
habra.15
habrabot(difrex,1) — All
2015-08-04 20:00:07


Привет, хабр. Как-то раз, одним прекрасным воскресным днём писал я код _одного своего проекта_. Код выглядел как-то так, если упрощать:

const bool exists = WithObject (objectId,
[] (const Media::IAudioSource*, const QModelIndex&) { return true; },
[] (const QModelIndex&) { return false; });


`WithObject` пытается найти некоторый объект по его ID и выполняет первый функтор, если он найден, иначе выполняет второй функтор, если объект не найден. При этом возвращается значение, которое вернул выполненный функтор (подразумевается, что возвращаемый тип второго функтора приводим к типу первого). Функторам при этом передаётся всякая разная полезная информация, полученная в ходе поиска (например, сам объект). Вышеприведённый код, соответственно, просто проверяет существование объекта, и аргументы, которые `WithObject` передаёт функторам, оказываются не нужны. Так вот, подумалось мне, неплохо было бы написать такую функцию `DropArgs()`, чтобы вот такой код

const bool exists = WithObject (objectId,
DropArgs ([] { return true; }),
DropArgs ([] { return false; }));


был корректным. Или, что то же самое, чтобы можно было писать `DropArgs ([] { return false; }) (0, 3.14, "foobar");`. А если нужны только первые N аргументов, остальные тоже можно было не указывать: `DropArgs ([] (int n) { return n; }) (0, 3.14, "foobar");`. [Читать дальше →][1]

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

[>] Пишем свой упрощенный OpenGL на Rust — часть 3 (растеризатор)
habra.15
habrabot(difrex,1) — All
2015-08-05 09:30:03


Продолжаю свой цикл статей про упрощенный аналог OpenGL на Rust, в котором уже вышло 2 статьи:

1. [Пишем свой упрощенный OpenGL на Rust — часть 1 (рисуем линию)][1]
2. [Пишем свой упрощенный OpenGL на Rust — часть 2 (проволочный рендер)][2]

Напоминаю, что основой моего цикла статей является [«Краткий курс компьютерной графики»][3] от [haqreu][4]. В предыдущих статьях я шел не очень быстро. Фактически на одну статью курса у меня получилось 2 статьи. Это связанно с тем, что в своих статьях я сосредоточиваюсь главным образом на нюансах работы с Rust, а когда только изучаешь новый язык, сталкиваешься с большим количеством новых для тебя нюансов, нежели чем когда программируешь на нем уже некоторое время. Думаю дальше Rust будет подбрасывать меньше граблей, и я выровняю соотношение своих статей к статьям оригинального курса. Пока же традиционно предостерегаю, что поскольку я не являюсь профессионалом ни в Rust ни в 3D-графике, а изучаю эти вещи прямо по ходу написания статьи, то в ней может быть немало глупостей. Если замечаете такое, пишите комментарий — я поправлю ошибку. Ну и конечно в статье будет немало личных впечатлений, с которыми вы можете оказаться несогласными. Конструктивная критика приветствуется. ![][5] _То, что мы получим по итогам данной статьи_ [Читать дальше →][6]

[1]: http://habrahabr.ru/post/261629/
[2]: http://habrahabr.ru/post/261739/
[3]: http://habrahabr.ru/post/248153/
[4]: http://habrahabr.ru/users/haqreu/
[5]: https://habrastorage.org/files/14c/67b/78d/14c67b78dc8f41eeb0d96ad27b7d065d.png
[6]: http://habrahabr.ru/post/262235/#habracut

[>] RPC, Messaging, REST: Терминология
habra.15
habrabot(difrex,1) — All
2015-08-05 12:00:04




# RPC, Messaging, REST: Терминология

Цель данной статьи — обсудить терминологию. Статья — не о том, как и для чего, а только исключительно об использовании терминологии. Статья отражает мнение автора и не претендует на научность.

## **Вступление**

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

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

[>] Catberry.js: Прогрессивный рендеринг
habra.15
habrabot(difrex,1) — All
2015-08-05 12:00:04






В [предыдущей статье][1] я рассказывал про реализацию Flux и веб-компонентов во фреймворке [Catberry.js][2], и эта статья – обещанное продолжение про движок прогрессивного рендеринга.

# Что значит «прогрессивный»?

Наверное, вы сталкивались хотя бы раз в жизни с JPEG-картинкой, которая сперва загружается с сервера мутной, а по мере загрузки остального содержимого становится чётче. Такой формат картинки называется "[Progressive JPEG][3]", и его основная идея – показать как можно скорее пользователю хоть какое-то содержимое, пусть и не до конца готовое. Пользователь с первой секунды уже будет знать размер картинки и ее примерное содержимое, а в дальнейшем содержимое будет становится только отчётливее. Лично я не знаю откуда появилась идея назвать потоковый (stream-based) рендеринг HTML прогрессивным, но первое применение этого термина именно к рендерингу HTML я нашел в статье за декабрь 2009 года "[Progressive rendering via multiple flushes][4]". Однако и в более свежих статьях, например от [разработчиков Google][5], можно найти термин «Optimized (progressive) rendering». [Читать дальше →][6]

[1]: http://habrahabr.ru/post/262949/
[2]: http://catberry.org/
[3]: https://en.wikipedia.org/wiki/JPEG#JPEG_compression
[4]: http://www.phpied.com/progressive-rendering-via-multiple-flushes/
[5]: https://developers.google.com/web/fundamentals/performance/critical-rendering-path/index?hl=en
[6]: http://habrahabr.ru/post/263971/#habracut

[>] ipgeobase в Nginx
habra.15
habrabot(difrex,1) — All
2015-08-05 17:00:03


Когда возникает задача — по адресу посетителя получать его город и налоговый (автомобильный) код региона, кажется — да это же просто, в инете полно таких штук! А потом смотришь: одни платные, другие нельзя у себя развернуть, третьи можно, но это ресурсозатратно, четвертые о регионах РФ ничего не знают… И тут на помощь спешит больной мозг программиста с навязчивой идеей: **«Нет у других — сделай сам»** [Читать дальше →][1]

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

[>] Таргетированные атаки: Китай атаковал более 600 объектов в США за последние 5 лет
habra.15
habrabot(difrex,1) — All
2015-08-05 18:00:02


![][1] В распоряжении телекомпании NBC оказался один интересный слайд с брифинга NTOC (NSA Threat Operations Center, Центр Реагирования на Угрозы АНБ), в котором отмечены успешные проникновения со стороны китайских хакеров в правительтсвенные сети и организации в США. [Читать дальше →][2]

[1]: https://habrastorage.org/files/414/898/8ea/4148988eab6e4ba7a62a26120d8b6312.jpg
[2]: http://habrahabr.ru/post/264151/#habracut

[>] Подпольный рынок кардеров. Перевод книги «KingPIN». Глава 1. «Ключ»
habra.15
habrabot(difrex,1) — All
2015-08-05 20:30:03


[![image][1]][2]Кевин Поулсен, редактор журнала WIRED, а в детстве blackhat хакер Dark Dante, написал книгу про «[одного своего знакомого][3]». В книге показывается путь от подростка-гика (но при этом качка), до матерого киберпахана, а так же некоторые методы работы спецслужб по поимке хакеров и кардеров. Начало и план перевода тут: «[Шкворень: школьники переводят книгу про хакеров][4]». [Пролог][5] [Глава 1. «Ключ»][6] [Глава 3. «The Hungry Programmers»][7] [Глава 5. «Cyberwar!»][8] [Глава 34. DarkMarket][9] _(публикуем по мере готовности переводов)_ Логика выбора книги для работы со школьниками у меня следующая:

* книг про хакеров на русском языке мало (полторы)
* книг про кардинг на русском нет вообще (**UPD** нашлась [одна][10])
* Кевин Поулсен — редактор WIRED, не глупый товарищ, авторитетный
* приобщить молодежь к переводу и творчеству на Хабре и получить обратную связь от старших
* работать в спайке школьники-студенты-специалисты очень эффективно для обучения и показывает значимость работы
* текст не сильно хардкорный и доступен широкому кругу, но затрагивает вопросы информационной безопасности, уязвимости платежных систем, структуру кардингового подполья, базовые понятия инфраструктуры интернет
* книга иллюстрирует, что «кормиться» на подпольных форумах — плохо заканчивается

Кто хочет помочь с переводом других глав пишите в личку [magisterludi][11].

#### Глава 1. Ключ

_(текст переведен в рамках коллективного проекта школьников в лагере GoToCamp, спасибо Алене, Кате, Соне, Грише, Саше и хабраюзеру [ShiawasenaHoshi][12])_ [Читать дальше →][13]

[1]: https://habrastorage.org/getpro/habr/post_images/227/d44/9d2/227d449d248dd7c8ee244ce5cf29fdfe.jpg
[2]: http://habrahabr.ru/post/264227/
[3]: https://en.wikipedia.org/wiki/Max_Butler
[4]: http://habrahabr.ru/post/261491/
[5]: http://habrahabr.ru/post/261491/
[6]: http://habrahabr.ru/post/264227/
[7]: http://habrahabr.ru/post/263819/
[8]: http://habrahabr.ru/post/263813/
[9]: http://habrahabr.ru/post/263293/
[10]: http://habrahabr.ru/company/piter/blog/204042/
[11]: http://habrahabr.ru/users/magisterludi/
[12]: http://habrahabr.ru/users/shiawasenahoshi/
[13]: http://habrahabr.ru/post/264227/#habracut

[>] Сложности сборки Python3 + Qt5 приложений под Windows
habra.15
habrabot(difrex,1) — All
2015-08-05 22:00:05


Недавно потребовалось мне сделать небольшую прогу под Windows. Раньше мне не доводилось разрабатывать под нее. Сама программа несложная, написалась относительно быстро. Намного больше времени отъела сборка ее под винду. Понятно, что выбранные инструменты (Python3 + Qt5) не родные, а универстальные, но что потребуется столько времени затратить на сборку, я не предполагал. Соответственно, хочется поделиться практикой, может кому еще придется стучаться лбом в эту стену. Под катом выстраданная инструкция как легко собирать PyQt5 приложения в single-file.exe не требующий инсталлятора. [Читать дальше →][1]

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

[>] [Из песочницы] Введение в машинное обучение с помощью scikit-learn (перевод документации)
habra.15
habrabot(difrex,1) — All
2015-08-06 02:00:07


_Данная статья представляет собой перевод введения в машинное обучение, представленное на официальном сайте [scikit-learn][1]._ В этой части мы поговорим о терминах [машинного обучения][2], которые мы используем для работы с scikit-learn, и приведем простой пример обучения.

#### Машинное обучение: постановка вопроса

В общем, задача машинного обучения сводится к получению набора [выборок данных][3] и, в последствии, к попыткам предсказать свойства неизвестных данных. Если каждый набор данных — это не одиночное число, а например, многомерная сущность (multi-dimensional entry или [multivariate][4] data), то он должен иметь несколько признаков или фич. Машинное обчение можно разделить на несколько больших категорий:

* [обучение с учителем][5] (или управляемое обучение). Здесь данные представлены вместе с дополнительными признаками, которые мы хотим предсказать. ([Нажмите сюда][6], чтобы перейти к странице Scikit-Learn обучение с учителем). Это может быть любая из следующих задач:



1. [классификация][7]: выборки данных принадлежат к двум или более классам и мы хотим научиться на уже размеченных данных предсказывать класс неразмеченной выборки. Примером задачи классификации может стать распознавание рукописных чисел, цель которого — присвоить каждому входному набору данных одну из конечного числа дискретных категорий. Другой способ понимания классификации — это понимание ее в качестве дискретной (как противоположность непрерывной) формы управляемого обучения, где у нас есть ограниченное количество категорий, предоставленных для N выборок; и мы пытаемся их пометить правильной категорией или классом.
2. [регрессионный анализ][8]: если желаемый выходной результат состоит из одного или более непрерывных переменных, тогда мы сталкиваемся с регрессионным анализом. Примером решения такой задачи может служить предсказание длинны лосося как результата функции от его возраста и веса.



* [обучение без учителя ][9](или самообучение). В данном случае обучающая выборка состоит из набора входных данных Х без каких-либо соответствующих им значений. Целью подобных задач может быть определение групп схожих элементов внутри данных. Это называется [кластеризацией][10] или кластерным анализом. Также задачей может быть установление распределения данных внутри пространства входов, называемое густотой ожидания ([density estimation][11]). Или это может быть выделение данных из высоко размерного пространства в двумерное или трехмерное с целью визуализации данных. ([Нажмите сюда][12], чтобы перейти к странице Scikit-Learn обучение без учителя).

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

[1]: http://scikit-learn.org/stable/tutorial/basic/tutorial.html
[2]: https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5
[3]: https://ru.wikipedia.org/wiki/Выборка
[4]: http://en.wikipedia.org/wiki/Multivariate_random_variable
[5]: https://ru.wikipedia.org/wiki/Обучение_с_учителем
[6]: http://scikit-learn.org/stable/supervised_learning.html#supervised-learning
[7]: https://ru.wikipedia.org/wiki/Задача_классификации
[8]: https://ru.wikipedia.org/wiki/Регрессионный_анализ
[9]: https://ru.wikipedia.org/wiki/Обучение_без_учителя
[10]: https://ru.wikipedia.org/wiki/Кластерный_анализ
[11]: http://en.wikipedia.org/wiki/Density_estimation
[12]: http://scikit-learn.org/stable/unsupervised_learning.html#unsupervised-learning
[13]: http://habrahabr.ru/post/264241/#habracut

[>] Google и Samsung обещают регулярно обновлять Android
habra.15
habrabot(difrex,1) — All
2015-08-06 09:00:04


Компания Google сегодня [объявила][1] о выпуске долгожданного для пользователей Android обновления, которое исправляет набор печально известных Remote Code Execution уязвимостей под общим названием [Stagefright][2] (_Google Stagefright Media Playback Engine Multiple Remote Code Execution Vulnerabilities_). Stagefright позволяла атакующим удаленно исполнять код на устройстве с максимальными правами в системе через отправку жертве специальным образом сформированного MMS-сообщения, причем пользователю даже не требовалось открывать его. ![][3] Google также указала, что Android будет обновляться ежемесячно и для него будут регулярно выходить обновления, закрывающие security-уязвимости (_Monthly Over-the-Air Android Security Updates_). Известно, что первыми такими обновления получают устройства самой Google, т. е. серии Nexus. Далее, на плечи производителей других устройств ложится ответственность за обновление выпущенных ими устройств. [Читать дальше →][4]

[1]: http://officialandroid.blogspot.ru/2015/08/an-update-to-nexus-devices.html
[2]: http://www.securityfocus.com/bid/76052
[3]: //habrastorage.org/files/f95/f81/3fa/f95f813fa42049e6a6c973b85ff5b000.png
[4]: http://habrahabr.ru/post/264247/#habracut

[>] [Перевод] Golang в AeroFS
habra.15
habrabot(difrex,1) — All
2015-08-06 10:00:03


_Перевод статьи инженера компании AeroFS о переводе их микросервис-архитектуры с Java на Go._ TLDR; Портировав некоторые наши микросервисы с Java на Go, мы уменьшили использование памяти **на несколько порядков**.

#### В начале была Java

![][1] Архитектура AeroFS Appliance состоит из многих микросервисов, и подавляющее большинство из них написаны на Java. Это никогда не создавало нам проблем, вся система обслуживает тысячи пользователей от разных клиентов без каких-либо проблем с производительностью. [Читать дальше →][2]

[1]: https://habrastorage.org/files/13a/a5a/a97/13aa5aa972854f8e8c080a9c14b349fa.png
[2]: http://habrahabr.ru/post/264251/#habracut

[>] [Из песочницы] Banana Pi: через U-Boot к Arch Linux
habra.15
habrabot(difrex,1) — All
2015-08-06 13:30:14


Уже четвёртый год подряд, с момента выпуска Raspberry Pi, на рынки всего мира поставляются различные микрокомпьютеры на отличных от x86 архитектурах, которые выполняют роль медиацентров, контроллеров умных домов, веб-серверов и чего только душа гика не пожелает! К 2014-2015 году не все были довольны вычислительными возможностями «малинки» и начался выпуск десятков его клонов с более мощным железом. У большинства из них есть недостатки: фиксированная устаревшая версия ядра и загрузчика, небольшой выбор дистрибутивов. Под катом расскажу о том, как сбросить оковы вендора на примере Banana Pi. [Познать путь к свежему софту][1]

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

[>] Применяем корреляцию в ритейле
habra.15
habrabot(difrex,1) — All
2015-08-06 17:00:04


На данный момент система высшего образования свела математику до одноразового применения — сломать мозг студентов младших курсов непрофильных специальностей и благополучно выветрится к следующей сессии. Некоторые, правда, потом еще помнят что такие науки как математика и статистика это реальная сила, но мало кто это понимает и тем более применяет в своей деятельности. В [Datawiz.io][1], собрав несколько мат-гиков, мы решили попытаться изменить сложившуюся ситуацию. Интересно же использовать свои знания на чем-то реальном, измеримом, и даже, возможно, приносящем пользу обществу. Остановились мы на ритейл индустрии. Ритейл предлагает множество данных для обработки, просто водопад цифр: продажи, чеки, ценообразование, покупатели, программы лояльности,… Есть с чем порезвится.



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

[1]: http://datawiz.io/ru/
[2]: http://habrahabr.ru/post/264217/#habracut

[>] Ускоряем запуск BeagleBone или runit не для чайников
habra.15
habrabot(difrex,1) — All
2015-08-06 17:00:04


![][1] В устройствах, которые мы разрабатываем и производим, требуется быстрый запуск после холодного старта. Для приборов без полноценной операционной системы (в них мы используем NutOS, он же EtherNut) такой проблемы нет — они готовы к работе через пару секунд после включения. Зато в более сложных и продвинутых, с linux внутри, и особенно в портативных измерительных системах, вопрос ускорения алгоритмов инициализации более чем актуален. В пилотной версии своего коммутатора 10G ethernet мы использовали хорошо известную плату [Beaglebone][2] и процесс загрузки, если не считать qemu-эмулятор, с удовольствием отлаживали на ней. Кстати, эта пилотная версия 10-гигабитного свича с управляющей beaglebone-платой (на фотографии к статье) стоит у нас в серверной и пару лет успешно работает, Сразу скажу, что переход на [runit][3] дал ускорение запуска системы на 500MHz arm-процессоре **с полминуты до шести с копейками секунд**. _Disclaimer: эта заметка была написана для внутреннего wiki нашей компании, и, поскольку далеко не все разработчики ПО системные администраторы, я посчитал нужным объяснить некоторые моменты максимально простым и понятным языком._ [Читать дальше →][4]

[1]: https://habrastorage.org/files/266/746/a49/266746a4900c461ca3c34df4803f73b3.jpg
[2]: http://beagleboard.org/bone
[3]: http://smarden.org/runit
[4]: http://habrahabr.ru/post/264263/#habracut

[>] [Перевод] Ускоренный курс по нотациям в теории языков программирования
habra.15
habrabot(difrex,1) — All
2015-08-06 17:00:04


Программисты часто сталкиваются с проблемами чтения математических нотаций, когда пытаются разобраться с теоретическими основами какого-либо языка программирования. Также с ними толкнулся и я в своих теоретических изысканиях. К счастью, мне очень помогла замечательная статья Джереми Сиека (Jeremy Siek), чьим переводом я хочу с вами поделиться. Надеюсь она поможет многим программистам-«не математикам». [Читать дальше →][1]

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

[>] Обновление React компонентов с сохранением состояния в режиме реального времени для Browserify
habra.15
habrabot(difrex,1) — All
2015-08-06 17:30:02


![][1] Всем доброго времени суток! Давайте немного поговорим о DX (Developer Experience) или «Опыте разработки», а если конкретнее — об обновлении кода в режиме реального времени с сохранением состояния системы. Если тема для вас в новинку, то перед прочтением советую ознакомиться со следующими видео:
















## Введение: Как это работает?

Прежде всего стоит понимать, что реализация подобной функциональности подразумевает под собой решение ряда задач: — Отслеживание изменений файлов — Вычисление патча на основании изменений файлов — Транспортировка патча на клиент (в браузер, например) — Обработка и применение патча к существующему коду Но обо всём по порядку. [Читать дальше →][2]

[1]: https://habrastorage.org/files/c87/23f/844/c8723f8440c4442a8738891cde859f37.jpg
[2]: http://habrahabr.ru/post/264175/#habracut

[>] Новые возможности Hyper-V vNext
habra.15
habrabot(difrex,1) — All
2015-08-06 17:30:02


Приветствую, хабравчане! Не так давно вышла новая версия Windows Server Technical Preview 2, которая еще более чётко демострирует возможности будущего релиза новейшей серверной операционной системы. Для тех, кто непосредственно связан с эксплуатацией и развитием ИТ-инфраструктуры, я подготовил небольшую заметку о нововведениях, касающихся виртуализации. Обсудим следующие темы:

* Повышение безопасности виртуальной среды
* Конфигурация виртуальной машины
* Управление производительностью инфраструктуры
* Новые фунции отказоустойчивости
* Улучшения общих виртуальных дисков

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

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

[>] Создание Excel файла из селекта с параметрами при помощи чистого PL/SQL
habra.15
habrabot(difrex,1) — All
2015-08-06 17:30:02


Так получилось, что только после того, как я написал [первую часть][1] я понял, что создать Excel файл — не фокус, хотя чисто профессионально, это было достаточно трудно. Первая статья состояла из двух частей:

* Примерное описание языка предварительной обработки селекта
* Проблемы, которые были решены в процессе написания

Честно говоря, я думал, что вторая часть важнее, ради нее я и написал статью. Сейчас я думаю, что тема языка обработки селекта более важна. [Читать дальше →][2]

[1]: http://habrahabr.ru/company/oda/blog/263323/
[2]: http://habrahabr.ru/post/264171/#habracut

[>] [Перевод] Data Science: путь к профессионализму
habra.15
habrabot(difrex,1) — All
2015-08-06 17:30:03


Здравствуйте все! На волне непрекращающихся дискуссий о Hadoop и прочих больших данных мы не могли пройти мимо замечательной публикации Джерри Овертона, рассказывающей о профессиональном подходе к анализу больших данных в компаниях любого размера. Понятные картинки, предоставленные автором, а также краткий парад технологий, без которых современному Data scientist'у не обойтись. Поэтому пусть статья и начинается с (ошибочной!) посылки: «Не читайте книги по Data Science», она заслуживает публикации в блоге нашего издательства. Если среди уважаемых читателей найдутся те, кто захочет обсудить Hadoop и прочие технологии из его экосистемы, а также литературу по специфическим алгоритмам, затронутым автором — давайте побеседуем об этом в комментариях. [Читать дальше →][1]

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

[>] Сделаем код чище: рефакторинг драйвера PCI для контроллера NAND Denali
habra.15
habrabot(difrex,1) — All
2015-08-06 18:30:07


На примере драйвера PCI для контроллера NAND Denali я покажу как упрощается код при использовании макросов и функций-помощников, доступных в относительно свежих версиях ядра Linux. [Читать дальше →][1]

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

[>] Двухфакторная аутентификация. Новые вызовы
habra.15
habrabot(difrex,1) — All
2015-08-06 18:30:07


Вместо пролога: в данной статье речь пойдет о краже денег с аккаунтов пользователей платежных систем, различных клиент-банков и т.п.



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

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

[>] Хакерские проекты на Кикстартере
habra.15
habrabot(difrex,1) — All
2015-08-06 19:30:04


![][1] Я готовился к [курсу по выводу проекта на Кикстартер][2] и мне в качестве «домашки» надо было проанализировать успешные проекты. (Я немного охнул, когда узнал, что в мире [1250][3] активных краудфандинговых платформ.) Так как у меня хабр-дефект, я нашел все проекты из области информационной безопасности (а пару проектов подсказали ребята из хакерспейса). **10% — доля технологических стартапов** на Кикстартере (они в итоге собрали около 118 000 000 долларов). Да, краудфандинг отлично заточен на всякую бесполезную, но прикольную хрень. На Кикстартере собирают бабло на салат и на резинкометы (16-ти ствольный деревянный пулемет системы Гатлинга), а на других платформах реализуют «правило 34» для космоса и на радость старине Фрейду печатают органы. Но есть и околохакерские проекты, причем некоторые достаточно серьезные. Как для простых пользователей (флешечки с биометрией), так и для профессиональных пентестеров (анализатор атак по сторонним каналам для железа). Предлагаю самим оценить идеи проектов (глубину технических описаний) и чувство юмора разработчиков. [Читать дальше →][4]

[1]: https://habrastorage.org/files/55f/5e9/5ce/55f5e95ceacd4442999a807a19e4e58c.jpg
[2]: http://tceh.com/edu/crowdfunding/?utm_source=habr&utm_medium=post&utm_content=first&utm_campaign=frst
[3]: http://www.crowdsourcing.org/editorial/global-crowdfunding-market-to-reach-344b-in-2015-predicts-massolutions-2015cf-industry-report/45376
[4]: http://habrahabr.ru/post/263845/#habracut

[>] Разбор всех задач финального раунда Яндекс.Алгоритма 2015
habra.15
habrabot(difrex,1) — All
2015-08-06 20:30:04


Сегодня завершился финал Яндекс.Алгоритма — ежегодного чемпионата по спортивному программированию, который организует Яндекс. В 2015 году состязание проходило полностью в онлайне — на платформе [Яндекс.Контест][1]. Заявки на участие подали программисты из 73 стран. Больше всего участников — из России, Украины, Беларуси, Казахстана, Индии, США, Японии и Китая, но вообще география чемпионата крайне обширна — Бразилия, Индонезия, Перу, Доминиканская Республика, Мозамбик, Сенегал, Каймановы острова. 8,9% зарегистрировавшихся — девушки. Примерно половина всех участников — студенты. Всего мы получили заявки от 3722 человек, из которых до финала дошли 28. А победителем Яндекс.Алгоритма-2015 стал Геннадий Короткевич. Он показал лучший результат, решив в финальном раунде пять из шести задач и получив при этом 80 минут штрафного времени. Геннадий занимал первое место в чемпионате Яндекса и в 2013, и в 2014 годах. ![][2] Второе место занял Пётр Митричев, а третье — Евгений Капун. Они решили по четыре задачи, при этом Пётр набрал 31 штрафную минуту, а Евгений — 79 минут. Результаты всех финалистов можно посмотреть на сайте [Яндекс.Алгоритма][3]. Задачи для Яндекс.Алгоритма составляет международная команда, в которую входят как сотрудники Яндекса, так и приглашённые эксперты — в том числе победители и финалисты состязаний ACM ICPC и Topcoder Open. И мы по традиции подготовили для вас разборы всех заданий. Решить все из них никому не удалось. Больше всего участников справились с задачей B, а вот задания A и D решило всего по одному человеку. [Читать дальше →][4]

[1]: https://contest.yandex.ru
[2]: https://habrastorage.org/files/4dc/310/84a/4dc31084a45442fea01fe15fca409949.jpg
[3]: https://contest.yandex.ru/algorithm2015/contest/1242/standings/
[4]: http://habrahabr.ru/post/264253/#habracut

[>] Microsoft выпустила первое большое обновление для Windows 10
habra.15
habrabot(difrex,1) — All
2015-08-07 10:00:02


Компания Microsoft довольно тихо и без всякой шумихи выпустила первое большое по размеру обновление для Windows 10 ([KB3081424][1]). Обновление не относится к типу security, а специализируется на исправлении различных недоработок в ОС. Для 64-битной версии Windows 10 размер обновления составляет около 325MB. Примечателен тот факт, что MS переработала формат своих статей о выпускаемых обновлениях для Windows 10 и теперь там не публикуется, фактически, никакой информации о выпущенном исправлении. ![][2] Само обновление (_Cumulative Update for Windows 10: August 5, 2015_) направлено на исправление различных системных файлов, включая, драйверы. Полный список исправляемых файлов приведен в статье KB3081424, однако, о его назначении остается только гадать. [Читать дальше →][3]

[1]: https://support.microsoft.com/en-us/kb/3081424
[2]: https://habrastorage.org/files/aa0/fda/97b/aa0fda97bfad4128a62fdc83ffa70b33.png
[3]: http://habrahabr.ru/post/264319/#habracut

[>] Компиляция iOS приложений для Windows Store
habra.15
habrabot(difrex,1) — All
2015-08-07 10:30:02


![][1] В апреле этого года на конференции //Build был сделан очень интересный анонс, который показал возможность [компиляции и сборки ObjectiveC][2] кода для Windows Store. С радостью хочу сообщить что теперь эта технология и инструменты стали публичными, вы можете уже сейчас [загрузить][3] компоненты сборки ObjC/iOS приложений для Visual Studio 2015 и собрать приложение для Windows Store. [Читать дальше →][4]

[1]: https://habrastorage.org/getpro/habr/post_images/599/692/da4/599692da444fa0e8edf45ffe034fc543.png
[2]: https://channel9.msdn.com/Events/Build/2015/3-610
[3]: https://github.com/Microsoft/WinObjC
[4]: http://habrahabr.ru/post/264321/#habracut

[>] Vim по полной: Тестирование с помощью xUnit
habra.15
habrabot(difrex,1) — All
2015-08-07 11:00:02




# Оглавление



1. [Введение][1] (vim\_lib)
2. [Менеджер плагинов без фатальных недостатков][2] (vim\_lib, vim\_plugmanager)
3. [Уровень проекта и файловая система][3] (vim\_prj, nerdtree)
4. [Snippets и шаблоны файлов][4] (UltiSnips, vim\_template)
5. [Компиляция и выполнение чего угодно][5] (vim-quickrun)
6. [Работа с Git][6] (vim\_git)
7. [Деплой][7] (vim\_deploy)
8. **Тестирование с помощью xUnit** (vim\_unittest)
9. Библиотека, на которой все держится (vim\_lib)
10. Другие полезные плагины

Мне еще не приходилось работать в компаниях, которые тестируют свой код так, как это положено делать для последующего сопровождения и рефакторинга. В России даже крупные IT компании избегают процесс модульного тестирования, не говоря уже об общесистемном, что приводит к тоннам затхлого и окаменевшего кода. Да, я считаю, что тестируемый код, это качественный код, но почему же люди этого избегают? Как я понял, причины две:

* Незнание методологий и инструментов тестирования
* Сложность в запуске тест-случаев (test-case)

Первая проблема вне темы этой статьи, а вот вторую, особенно для пользователей редактора Vim, я постараюсь здесь решить. [Red line][8]

[1]: http://habrahabr.ru/post/259701/
[2]: http://habrahabr.ru/post/259725/
[3]: http://habrahabr.ru/post/259995/
[4]: http://habrahabr.ru/post/260591/
[5]: http://habrahabr.ru/post/261179/
[6]: http://habrahabr.ru/post/261783/
[7]: http://habrahabr.ru/post/263487/
[8]: http://habrahabr.ru/post/264297/#habracut

[>] Security Week 32: Android Stagefright, новые автодыры, Do Not Track 2.0
habra.15
habrabot(difrex,1) — All
2015-08-07 13:30:04


![][1]Каких-то 23 года назад Microsoft выпустила . Новости аккуратно подобраны редакцией новостного сайта [Threatpost][3]. [Читать дальше →][4]

[1]: https://habrastorage.org/files/3cd/624/5cd/3cd6245cd7344cebbb39835fabaddec4.png
[2]: https://habrastorage.org/files/864/0d7/03b/8640d703b29243ed92f2fb164c681bac.png
[3]: https://threatpost.ru/
[4]: http://habrahabr.ru/post/264329/#habracut

[>] [Перевод] Еженедельные новости Tor — 22 июля, 2015 г
habra.15
habrabot(difrex,1) — All
2015-08-07 15:00:03


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

[1]: http://habrastorage.org/files/d38/182/d48/d38182d4847f4cdd9de150e101ac7e59.png
[2]: http://habrahabr.ru/post/264327/#habracut

[>] Глючинг, атаки по сторонним каналам и хакерские проекты на Кикстартере (продолжение)
habra.15
habrabot(difrex,1) — All
2015-08-07 15:30:02


Продолжение списка хакерских проектов на Кикстартере, найденных мной во время выполнения «домашки» для [курса по выводу проекта на Кикстартер][1]. Начало [тут][2].

##### **ChipWhisperer-Lite: A New Era of Hardware Security Research**



> ChipWhisperer смеется над вашей реализации AES-256. Но смеется вместе с тобой, а не над тобой.

![][3]**ChipWhisperer** — первый Open Source набор инструментов ([GPL licenced][4]) для анализа безопасности оборудования, включая анализ атак по сторонним каналам и глитчинг ([glitching][5]). Ближайший коммерческий аналог такого оборудования стоит $30k — $400k, с закрытыми исходниками, что затрудняет исследования и разработки. Проект занял второе место на [Hackaday Prize 2014][6] Сборы — $88,535 ($50,000) Старт проекта — 27 февраля 2015 [Страница проекта][7] на Кикстартере ![image][8] [Читать дальше →][9]

[1]: http://tceh.com/edu/crowdfunding/?utm_source=habrahabr.ru&utm_medium=post&utm_term=hacker&utm_content=dn2&utm_campaign=crowdfunding
[2]: http://habrahabr.ru/company/tceh/blog/263845/
[3]: https://habrastorage.org/files/b03/809/02f/b0380902fced40aba96685a71caf35fd.jpg
[4]: https://ru.wikipedia.org/wiki/GNU_General_Public_License
[5]: https://en.wikipedia.org/wiki/Glitching
[6]: https://hackaday.io/project/956-chipwhisperer-security-research
[7]: https://www.kickstarter.com/projects/coflynn/chipwhisperer-lite-a-new-era-of-hardware-security/description
[8]: https://www.assembla.com//spaces/chipwhisperer/documents/awN0NMZXar44kEacwqjQYw/download/awN0NMZXar44kEacwqjQYw
[9]: http://habrahabr.ru/post/264337/#habracut

[>] Подпольный рынок кардеров. Перевод книги «Kingpin». Глава 6. «I miss crime»
habra.15
habrabot(difrex,1) — All
2015-08-07 15:30:02


![][1]Кевин Поулсен, редактор журнала WIRED, а в детстве blackhat хакер Dark Dante, написал книгу про «[одного своего знакомого][2]». В книге показывается путь от подростка-гика (но при этом качка), до матерого киберпахана, а так же некоторые методы работы спецслужб по поимке хакеров и кардеров. Начало и план перевода тут: «[Шкворень: школьники переводят книгу про хакеров][3]». [Пролог][4] [Глава 1. «The Key»][5] [Глава 3. «The Hungry Programmers»][6] [Глава 5. «Cyberwar!»][7] [Глава 6. «I miss crime»][8] [Глава 34. DarkMarket][9] _(публикуем по мере готовности переводов)_ Логика выбора книги для работы со школьниками у меня следующая:

* книг про хакеров на русском языке мало (полторы)
* книг про кардинг на русском нет вообще(**UPD** нашлась [одна][10])
* Кевин Поулсен — редактор WIRED, не глупый товарищ, авторитетный
* приобщить молодежь к переводу и творчеству на Хабре и получить обратную связь от старших
* работать в спайке школьники-студенты-специалисты очень эффективно для обучения и показывает значимость работы
* текст не сильно хардкорный и доступен широкому кругу, но затрагивает вопросы информационной безопасности, уязвимости платежных систем, структуру кардингового подполья, базовые понятия инфраструктуры интернет
* книга иллюстрирует, что «кормиться» на подпольных форумах — плохо заканчивается

Кто хочет помочь с переводом других глав пишите в личку [magisterludi][11].

#### Глава 6. «Я скучаю по преступлениям»

Второго июня, после полудня, Макс открыл дверь своего двухэтажного дома в Сан-Хосе. Он поприветствовал Криса Бисона и тут же понял, что влип: помимо агента ФБР на пороге стояли ещё трое в костюмах. В том числе угрюмый начальник Бисона – Пит Трэхон, глава отдела расследований компьютерных преступлений. В течение месяца после BIND-атаки у Макса было немало хлопот. Он запустил сайт whitehats.com, который тут же стал очень популярным в среде безопасников. Помимо сканера на сайте были размещены свежие оповещения CERT, ссылки на патчи для BIND и внушительный объём материала, написанный лично Максом по червю ADM, где тот был исследован до мельчайших деталей. Никто в сообществе и не подозревал, что Max Vision, стоящий за проектом whitehats.com, лично продемонстрировал всю серьёзность уязвимости в BIND. Макс всё так же продолжал подавать отчёты в ФБР. Получив последний отчёт, Бисон отправил электронное письмо, вероятно, чтобы обсудить свежие достижения Макса: «Что если мы встретимся у тебя? Я знаю адрес, он должен быть у меня где-то записан». [Читать дальше →][12]

[1]: https://habrastorage.org/files/353/64b/a0e/35364ba0e409475fbd05cd11e8132734.jpg
[2]: https://en.wikipedia.org/wiki/Max_Butler
[3]: http://habrahabr.ru/post/261491/
[4]: http://habrahabr.ru/post/261491/
[5]: http://habrahabr.ru/post/264227/
[6]: http://habrahabr.ru/post/263819/
[7]: http://habrahabr.ru/post/263813/
[8]: http://habrahabr.ru/post/264349/
[9]: http://habrahabr.ru/post/263293/
[10]: http://habrahabr.ru/company/piter/blog/204042/
[11]: http://habrahabr.ru/users/magisterludi/
[12]: http://habrahabr.ru/post/264349/#habracut

[>] Как Microsoft Project Oxford может сделать ваши приложения умнее
habra.15
habrabot(difrex,1) — All
2015-08-07 15:30:02




> _Выражаем большое спасибо за подготовку статьи Евгению Григоренко, Microsoft Student Partner, за помощь в написании данной статьи. Остальные наши статьи по теме Azure можно найти по тегу [azureweek][1]_

Дайте я угадаю, Вы, как и я, уже пару месяцев горите идеей гениального приложения. Помимо своей основной функциональности, в идеальном мире оно просто обязано обладать множеством дополнительных возможностей, например, идентифицировать пользователя (или [кота][2]) по его фотографии с фронтальной камеры или понимать команды на естественном языке. Или сделать второй [How-Old][3] (который был сделан как раз на Оксфорде). Но все мы знаем печальную истину. Многое возможно только с пользованием сложных алгоритмов машинного обучения, которых у нас совершенно нет времени изучать. И именно это останавливает от разработки, так как без таких инноваций мы совершенно затеряемся среди аналогов. Но решение этой проблемы есть, и имя ему Microsoft Project Oxford. Если вы хотите узнать, как Microsoft Project Oxford может упростить Вашу жизнь и сделать Ваши приложения по-настоящему интеллектуальными, то добро пожаловать под кат. ![][4] [Читать дальше →][5]

[1]: http://habrahabr.ru/search/?q=%5Bazureweek%5D&target_type=posts
[2]: http://habrahabr.ru/post/262911/
[3]: http://how-old.net/
[4]: http://litehtmlconv.azurewebsites.net/api/pics/y1zyxjlq1sa0zy-61pvsyzmo
[5]: http://habrahabr.ru/post/263635/#habracut

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ... 37