RSS
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ... 133
[>] [Перевод] Qt для мобильной кросс-платформенной разработки
habra.16
habrabot(difrex,1) — All
2016-03-24 22:30:04


Хотелось бы представить размышления Ekke Gentz по применению Qt 5.6 в кросс-платформенной мобильной разработке. Также можно будет посмотреть видео с выступлением Ekke на MobileTechCon (на английском). Ниже идёт перевод заметки. Возможно вы знаете, что моя основная деятельность это разработка бизнес приложений для BlackBerry 10. Но так как BlackBerry PRIV работает под управлением Android 5.1.1 (и ожидается 6.0), то пользователи просили меня выпустить кросс-платформенные приложения, работающие под BlackBerry 10, Android и iOS (а позже и Windows 10). Я не любитель веб- или гибридных приложений и предпочитаю разработку нативных программ. С другой стороны я не очень то хочу разрабатывать приложения для всех платформ нативным, но различным способом при помощи разных языков программирования, сред разработки и т.д. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/280107/#habracut

[>] [Из песочницы] Подпольный рынок кардеров. Перевод книги «KingPIN». Глава 32. «The Mall»
habra.16
habrabot(difrex,1) — All
2016-03-25 08:00:03


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

#### Глава 32. «The Mall»

_(за перевод спасибо [Shuflin][4] )_ Крис загнал Тахо в гараж торгового центра Fashion Island на пляже Ньюпорт, припарковался и вышел со своим новым партнером, двадцати трех летним Гаем Шитрид. Они отправились к Bloomingdale с поддельными кредитками American Express в бумажниках. Шитрид из Израиля — красавчик, играющий на гитаре, и любимчик всех девушек, которого Крис встретил, занимаясь кардингом. Он проводил махинации по скиммингу в Майами, набирая профессиональных стриптизерш, снабжая их невероятно крошечным устройством для копирования информации с магнитной карты клиентов. Когда менеджеры стриптиз клуба узнали об этом, ему пришлось в спешке покинуть город. Шитрид остановился в Калифорнии, где Крис и подобрал его, снабдив поддельными документами, арендованной машиной и жильем в Арчстоуне. После они отправились по магазинам. Теперь Крис был близок, так близок, чтобы соскочить. Его жена, Клара, привнесла на eBay $780,000 чуть более чем за три года: 2609 женских сумочек, айподов, часов от Michele и одежды от Juicy Couture. У нее был человек из прислуги, работающий двадцать часов в неделю, который занимался лишь тем, что доставлял ей вещи, купленные не за свои деньги. Крис подбрасывал к этому деньги с продаж пластика и новинок на кардерском рынке — область, не затронутая придирчивыми проверками Th3C0rrupted0ne. Он чувствовал, что Макс не придерживался того самого плана “Whiz List”: набрать круглую сумму и свалить. В конце концов, он понял, что тот и не собирался уходить. Ему нравилось заниматься хакерством, это все что он хотел делать. К черту его. У Криса был свой запасной план. Он вложил прибыль в предприятие для Клары, компания по производству стильной джинсовой одежды Trendsetter USA, на которую уже работало несколько штатных сотрудников в ярких приятных офисах Алисо Вьехо. В итоге, он был уверен, что это будет приносить прибыль и на сто процентов законно. До тех пор он будет занят. [Читать дальше →][5]

[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]: https://habrahabr.ru/users/shuflin/
[5]: https://habrahabr.ru/post/280097/#habracut

[>] Комплексная инфобезопасность: блиц-обзор линейки Fortinet
habra.16
habrabot(difrex,1) — All
2016-03-25 12:00:03


Привет! Ниже будет ликбез по одной конкретной линейке оборудования, позволяющий понять, что это, зачем нужно (и нужно ли) и какие задачи при этом решаются (общая защита ИКТ-инфраструктуры, реализация блокировок, соответствие ФЗ о ПД). Итак, на сегодняшний день компоненты защиты обычно выглядят как настоящий «зоопарк»: ![][1] Это потоковый антивирус, файрвол, антиспам и антидидос, а также системы обнаружения вторжений и т. п., стоящие на входе в ваш дата-центр. Фортинет (как и ряд других производителей) объединяет эти устройства в одну железку, плюс пересматривает концепцию защиты в принципе. Они уже 7 лет лидируют по Гартнеру в сегменте UTM (FW + IPS + VPN + Application Control + WebFiltering + Antispam + Antivirus и другие функции). **Их идея в том, что периметр находится не на границе с публичным Интернетом. **Если раньше защитное железо ставили на выходе, то эти парни считают, что надо ставить устройства ближе к локальной сети — работать с WLAN и в дата-центре прямо между машинами. Естественно, это требует совершенно других потоковых мощностей, но, с другой стороны, даёт и пару огромных плюсов. [Читать дальше →][2]

[1]: https://habrastorage.org/files/b4c/af5/f5b/b4caf5f5b02a4b25a592482a05b36579.png
[2]: https://habrahabr.ru/post/280135/#habracut

[>] Документы по защите персональных данных. Боремся с халявщиками
habra.16
habrabot(difrex,1) — All
2016-03-25 15:00:02


Эта статья посвящена различного рода сервисам автоматической генерации комплекта внутренних документов организации по защите персональных данных на основе некоторой вводимой пользователем информации. Скажу честно, изначально это был гневный пост. Раздражение вызвала полученная по личным каналам информация о том, что представители одного из таких сервисов заходят к главным врачам лечебных учреждений города, в котором я проживаю, и пугают прокуратурой и наказанием за нарушение закона «О персональных данных» в случае отказа от подписки на такой сервис. Но вмешался случай — в процессе написания статьи возникли неотложные дела. И вся готовая на тот момент писанина была отправлена в черновики на неделю. За это время пар немного выпустился и сейчас я постараюсь спокойно объяснить почему такие сервисы не обеспечат надлежащее качество внутренней документации по защите персональных данных, расскажу о других проблемах таких порталов и в конце дам ссылку на некоторую сборную солянку тех же самых документов. ![image][1] [Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/5b6/428/d84/5b6428d84ac30f395f2c56a36bee70dd.jpg
[2]: https://habrahabr.ru/post/280149/#habracut

[>] [Из песочницы] Аудит СКЗИ и криптоключей
habra.16
habrabot(difrex,1) — All
2016-03-25 18:00:03


![image][1] С точки зрения информационной безопасности криптографические ключи являются критически важными данными. Если раньше, чтобы обокрасть компанию, злоумышленникам приходилось проникать на ее территорию, вскрывать помещения и сейфы, то теперь достаточно похитить токен с криптографическим ключом и сделать перевод через систему Интернет Клиент-Банк. Фундаментом обеспечения безопасности с помощью систем криптографической защиты информации (СКЗИ) является поддержание конфиденциальности криптографических ключей. А как обеспечить конфиденциальность того, о существования чего вы не догадываетесь? Чтобы убрать токен с ключом в сейф, надо знать о существовании токена и сейфа. Как это не парадоксально звучит, очень мало компаний обладают представлением о точном количестве ключевых документов, которыми они пользуются. Это может происходить по целому ряду причин, например, недооценка угроз информационной безопасности, отсутствие налаженных бизнес-процессов, недостаточная квалификация персонала в вопросах безопасности и т.д. Вспоминают про данную задачу обычно уже после инцидентов, таких как например [этот][2]. В данной статье будет описан первый шаг на пути совершенствования защиты информации с помощью криптосредств, а если точнее, то рассмотрим один из подходов к проведению аудита СКЗИ и криптоключей. Повествование будет вестись от лица специалиста по информационной безопасности, при этом будем считать, что работы проводятся с нуля. [Читать дальше →][3]

[1]: https://habrastorage.org/files/852/ecc/9e5/852ecc9e5186400fabb8262106005602.png
[2]: http://www.kommersant.ru/doc/2932885
[3]: https://habrahabr.ru/post/280131/#habracut

[>] [Перевод] 11 неожиданных особенностей языков программирования
habra.16
habrabot(difrex,1) — All
2016-03-25 19:00:03


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

##

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

[1]: https://habrastorage.org/files/46d/665/791/46d665791b4a45edb3281d4ddec21f38.jpg
[2]: https://habrahabr.ru/post/280169/#habracut

[>] LenovoDev запускает Multi-Touch Multi-Hack — хакатон для разработчиков с призовым фондом в 25 000 долларов США
habra.16
habrabot(difrex,1) — All
2016-03-25 21:00:03


Есть множество способов взаимодействия с помощью пальцев одной руки. Дай пять. Держу кулачки. «Мирись-мирись» мизинчиками. Протянуть руку помощи. Здороваться с другом ударом кулачков. LenovoDev идёт дальше: мы предлагаем Windows-разработчикам задействовать все десять пальцев на обеих руках и выиграть! [][1]



Мы открываем Multi-Touch Multi-Hack, онлайн-марафон по разработке приложений с помощью нашего комплекта разработчика для многопользовательской мультисенсорной технологии (MUMT). Платформа YOGA Home MUMT, созданная Lenovo, позволяет использовать все десять пальцев при взаимодействии с экраном планшета или сенсорным экраном компьютера и даёт возможность нескольким пользователям работать с устройством одновременно. Денежный призовой фонд марафона составляет 25 000 долларов США, кроме этого множество компьютеров и планшетов Lenovo и различные предложения по продвижению ваших приложений через каналы развития бизнеса и маркетинга Lenovo.

Платформы, позволяющие нам работать с устройством наиболее физиологически естественным способом, определяют тенденции развития технологий взаимодействия человека и компьютера. YOGA Home SDK дает возможность людям работать с сенсорными экранами, используя естественные физические движения рук и пальцев. Таким образом, благодаря технологии MUMT уже привычный нам набор жестов — как правило, ограниченный только прикосновением, пролистыванием и перетаскиванием, — дополняется новыми, задействующими все пальцы одной или обеих рук. Поворот, масштабирование, вращение, волнообразные движения, пролистывание всей ладонью, «до-си-до» и даже «лунная походка» — все эти жесты можно применять в работе с устройствами Lenovo. Интерфейс моментально реагирует одновременно на все команды. А ещё экран работает в любой ориентации, поэтому устройством можно управлять под любым углом.
Для участия в Марафоне вам необходимо до 14 июня 2016 г. разработать приложение под ОС Windows, задействующее жесты 10 пальцев. Приложение должно быть создано в Lenovo YOGA Home. Оно может быть образовательным или развлекательным, и в нём должна быть создана среда для совместного доступа нескольких пользователей. Победитель получит 10 000 долларов США и сможет встретиться со специалистами по развитию бизнеса Lenovo и обсудить возможности продвижения.


Начните экспериментировать с MUMT прямо сейчас на [**multitouch.devpost.com**][2]. До победы — всего несколько жестов! [Читать дальше →][3]

[1]: http://multitouch.devpost.com/
[2]: http://multitouch.devpost.com
[3]: https://habrahabr.ru/post/280163/#habracut

[>] [Перевод] 3.2 Обработка событий
habra.16
habrabot(difrex,1) — All
2016-03-25 21:00:03


![][1] _От переводчика: данная статья является десятой в цикле переводов официального руководства по библиотеке SFML. Прошлую статью можно найти [тут.][2] Данный цикл статей ставит своей целью предоставить людям, не знающим язык оригинала, возможность ознакомится с этой библиотекой. SFML — это простая и кроссплатформенная мультимедиа библиотека. SFML обеспечивает простой интерфейс для разработки игр и прочих мультимедийных приложений. Оригинальную статью можно найти [тут][3]. Начнем._ [Читать дальше →][4]

[1]: https://habrastorage.org/files/bc7/94a/b37/bc794ab377be444f8090426e56ae38bd.png
[2]: https://habrahabr.ru/post/279957/ "Предыдущая статья: Открытие и управление окнами"
[3]: http://www.sfml-dev.org/tutorials/2.3/window-events.php "Оригинальная статья: Events explained"
[4]: https://habrahabr.ru/post/280153/#habracut

[>] Security Week 12: ФБР взломает айфон без помощи Apple, криптодыра в iMessage, шифровальщики в больнице
habra.16
habrabot(difrex,1) — All
2016-03-25 21:00:03


![][1]Прежде чем перейти к новостям, поговорим . Нельзя сказать, что все восприняли такое нововведение позитивно: дескать компании или эксперты, обнаружившие дыру, вместо сурового технического языка используют язык рекламы, и таким образом наживаются на беде. Не могу с этим согласиться. Хотя определенный момент рекламы тут есть (а где его нет?), попытки объяснить простыми словами (или даже образами) сложные технические вещи, о которых важно знать и неспециалистам, должны только приветствоваться. Данная тема получила свое развитие на этой неделе, когда появилась, нет, не информация об уязвимости, а _анонс уязвимости_. Специалисты компании SerNet, в команде которой есть разработчики протокола SMB (точнее свободной его реализации Samba), [объявили][3] о серьезной уязвимости в таковом. Затронута как Linux-реализация протокола, так и собственно Windows. Но детали раскрывать не стали: информация будет раскрыта только 12 апреля. Почему сделали именно так? Авторы исследования считают, что так у потенциальных жертв атаки будет возможность подготовиться. Довольно спорное утверждение: критики данной идеи [утверждают][4], что таким образом исследователи могли дать фору атакующим, если последние догадаются о характере уязвимости, хотя бы из названия минисайта (Badlock). Стоило ли так делать — узнаем через две недели, во всех файловых шарах интернета. А теперь к новостям. Предыдущие выпуски дайджеста [тут][5]. [Читать дальше →][6]

[1]: https://habrastorage.org/files/e7e/503/020/e7e503020c0d4bd492d4971adf43918d.jpg
[2]: https://business.kaspersky.ru/heartbleed-openssl-bug/1615/
[3]: http://badlock.org/
[4]: http://www.wired.com/2016/03/hype-around-mysterious-badlock-bug-raises-criticism/?mbid=social_twitter
[5]: http://habrahabr.ru/search/?target_type=posts&q=%5Bklsw%5D%20&order_by=date
[6]: https://habrahabr.ru/post/280173/#habracut

[>] [recovery mode] Сайт компании EC Council заражал посетителей вымогательским ПО TeslaCrypt
habra.16
habrabot(difrex,1) — All
2016-03-25 21:00:03


Сайт знаменитой компании по сертификации в области информационной безопасности [EC Council][1] начиная с понедельника 21го марта 2016 заражал посетителей вымогательским ПО **TeslaCrypt**. ![image][2] Как описывает [источник][3] в своем блоге (**Yonathan Klijnsma**), атаке были подвержены определенные пользователи с некоторых стран, а именно: [Читать дальше →][4]

[1]: https://www.eccouncil.org/
[2]: https://habrastorage.org/getpro/habr/post_images/35f/22a/d54/35f22ad54e0db6b127147684ffddc4f1.jpg
[3]: http://blog.fox-it.com/2016/03/24/website-of-security-certification-provider-spreading-ransomware/
[4]: https://habrahabr.ru/post/280139/#habracut

[>] [Перевод] Самое широкое простое число, записанное римскими цифрами
habra.16
habrabot(difrex,1) — All
2016-03-25 22:30:02


Один из моих любимых развлекательных твиттеров – это @wacnt. Там появляются вопросы, на которые не может ответить математический поисковик Wolfram|Alpha. На некоторые, кстати, мне сумел дать ответ виртуальный ассистент Facebook M. Вот штучка из недавних, которая заставила меня улыбнуться:

> простое число, не большее 4000, получающееся самым широким при записи римскими цифрами шрифтом Times New Roman



> widest prime less than 4000 when written as a Roman numeral in Times New Roman
>
> — Wolfram|Alpha Can't (@wacnt)
>
> [4 февраля 2016 г.][1]

Facebook M просто выдал самое большое из простых чисел, близких к 4000 – это 3989. Но это не обязательно так, ведь речь идёт о римской записи. В рамках ежедневной прокрастинации мне срочно нужно было узнать ответ именно на этот вопрос. Для начала я составил список простых чисел, меньших 4000. Из-за лени я просто нагуглил их и вставил в скрипт. [Читать дальше →][2]

[1]: https://twitter.com/wacnt/status/695034110037757952
[2]: https://habrahabr.ru/post/280179/#habracut

[>] Не пропусти js-ошибку
habra.16
habrabot(difrex,1) — All
2016-03-26 22:30:02


Разрабатывая и тестируя сайт, зачастую замечаешь не все js-ошибки. Это происходит по ряду причин:

* отсутствие консоли в некоторых мобильных и планшетных браузерах;
* открытая консоль мешает при тестировании, перекрывая видимую часть страницы;
* консоль открывают когда страница уже загрузилась и ошибки, возникающие при загрузке, теряются (Firebug в Firefox, Internet Explorer);
* при разработке часто отключают логирование ошибок в системах аналитики, чтобы не было лишнего «шума» при анализе ошибок;
* и прочее.

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

[1]: https://habrahabr.ru/post/280212/#habracut

[>] Минусы Битрикса, или Битрикс глазами программиста
habra.16
habrabot(difrex,1) — All
2016-03-26 23:30:02


В русскоязычном сегменте Интернета существует такой интересный феномен, как Битрикс. Для обывателя — это такая серьезная система, «продукт», на котором нужно разрабатывать серьезные проекты: корпоративные порталы, интернет магазины и даже CRM системы. Все очень серьезно, почти как опыты нацистов над инопланетянами (на канале Рен-тв сразу после рекламы). Для программиста, который прочитал хоть одну книгу про программирование, Битрикс — это так называемый «плохокод», просто-напросто огромное количество PHP файлов, написанных в разном стиле, которые подключаются «инклудом» и что-то там выводят. Эта статья для обывателя (потребителя). Как правило, такой обыватель, прежде чем сделать выбор CMS, читает статьи под названием «плюсы и минусы Битрикса», которые пишут люди, далекие от программирования. Данная статья написана программистом, потому плюсов тут быть не может. [Далее...][1]

[1]: https://habrahabr.ru/post/280226/#habracut

[>] Web Scrapping с помощью python
habra.16
habrabot(difrex,1) — All
2016-03-27 10:30:03




## Введение

Недавно заглянув на КиноПоиск, я обнаружила, что за долгие годы успела оставить более 1000 оценок и подумала, что было бы интересно поисследовать эти данные подробнее: менялись ли мои вкусы в кино с течением времени? есть ли годовая/недельная сезонность в активности? коррелируют ли мои оценки с рейтингом КиноПоиска, IMDb или кинокритиков? Но прежде чем анализировать и строить красивые графики, нужно получить данные. К сожалению, многие сервисы (и КиноПоиск не исключение) не имеют публичного API, так что, приходится засучить рукава и парсить html-страницы. Именно о том, как скачать и распарсить web-cайт, я и хочу рассказать в этой статье. В первую очередь статья предназначена для тех, кто всегда хотел разобраться с Web Scrapping, но не доходили руки или не знал с чего начать. **Off-topic**: к слову, [Новый Кинопоиск][1] под капотом использует запросы, которые возвращают данные об оценках в виде JSON, так что, задача могла быть решена и другим путем. [Читать дальше →][2]

[1]: http://plus.kinopoisk.ru
[2]: https://habrahabr.ru/post/280238/#habracut

[>] Правила работы с Tasks API. Часть 1
habra.16
habrabot(difrex,1) — All
2016-03-27 18:30:03


С момента появления тасков в .NET прошло почти 6 лет. Однако я до сих пор вижу некоторую путаницу при использовании Task._Run_() и Task.Factory._StartNew_() в коде проектов. Если это можно списать на их схожесть, то некоторые проблемы могут возникнуть из-за **dynamic** в C#. В этом посте я попытаюсь показать проблему, решение и истоки.

###

Пусть у нас есть код, который выглядит так:

static async Task<dynamic> Compute(Task<dynamic> inner)
{
return await Task.Factory.StartNew(async () => await inner);
}


Вопрос : есть ли в данном примере проблема? Если да, то какая? Код компилируется, возвращаемый тип **Task** на месте, модификатор **async** при использовании **await** — тоже. Думаете, речь идет о пропущенном ConfigureAwait? Хаха! [Если интересно, тогда прошу под кат][1]

[1]: https://habrahabr.ru/post/280234/#habracut

[>] Задачка про парные числа
habra.16
habrabot(difrex,1) — All
2016-03-28 06:30:03


А вот задачка на выходные! Она плохо подходит, чтобы спрашивать на собеседовании, потому что слишком уж на инсайт (пожалуйста, никогда не задавайте такие на собеседованиях), и слишком простая для соревнований. Как раз чтобы доставить тот самый satisfying click в мозгу, за который мы любим программирование. Итак: `Есть большой массив из N 32-битных чисел. Каждое число встречается два раза, а два числа -- по одному. Найти эти два числа за один проход по массиву с константными затратами памяти (то есть не зависящими от размера массива).` Не забывайте использовать тег <spoiler> для решений в комментариях! [Оставшиеся формальности][1]

[1]: https://habrahabr.ru/post/280192/#habracut

[>] Rust и Swift (вступление, первая и вторая части)
habra.16
habrabot(difrex,1) — All
2016-03-28 11:00:06


_От переводчика: решил взяться за перевод [цикла][1], в котором автор параллельно изучает Rust и Swift и сравнивает их между собой. Старался сохранить стиль и манеру письма оригинала, хотя местами и позволял себе сократить текст (надеюсь) без потери смысла. Автор вначале кажется слишком предвзятым в сторону Rust, но потом его суждения становятся более взвешенными. Правда, сам я со Swift очень поверхностно знаком, а в Rust, хотелось бы думать, кое-что понимаю, так что тоже не являюсь беспристрастным в этом вопросе. Сравнение становится более интересным, начиная с четвёртой части, но, как говорится, из песни слова не выкинешь._

##### Rust и Swift

###### Сравнивая два увлекательных, новых и, очевидно, (хотя и не всегда) похожих языка программирования.



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

Летом 2015 года я начал изучать [Rust][2]. Затем, в сентябре 2015, я взялся за [Swift][3]. На первый взгляд, сходство между двумя языками очевидно, и они достигли стабильной версии примерно в одно время: релиз Rust 1.0 состоялся в мае 2015, а релиз Swift 2.0 (который фактически похож на 1.0, поскольку 1.0 служил публичной бетой) — в июне 2015. Оба вдохновлялись такими языками, как Haskell, в то же время сохраняя С-подобный (на самом деле, конечно, ALGOL-подобный) синтаксис, более привычный многим разработчикам, на которых ориентированы эти языки. Так что, когда я начал [книгу про Swift][4], я не мог удержаться от сравнения. Хотя оба языка кажутся очень похожими, они также очень сильно отличаются в терминах языкового дизайна и философии — и эти отличия очень интересны! [Читать дальше →][5]

[1]: http://www.chriskrycho.com/rust-and-swift.html
[2]: https://www.rust-lang.org/
[3]: https://swift.org/
[4]: https://swift.org/documentation/#the-swift-programming-language
[5]: https://habrahabr.ru/post/280274/#habracut

[>] [Перевод] Библиотека Silicon — WebAPI на C++
habra.16
habrabot(difrex,1) — All
2016-03-28 11:30:03


**Прим. переводчика:** _в синтаксисе C++ несколько ограниченны средства построения предметно-ориентированных языков. В итоге их мало кто на С++ пытается использовать, а попытки всё-же это сделать вызывают интерес, тем более, когда в итоге получается нечто стройно выглядящее и практически полезное. Одним из таких открытий для меня стала библиотека Silicon, пытающаяся средствами современного С++ дать возможность быстро и гибко реализовать WebAPI в своём проекте. Давайте посмотрим, насколько просто это выглядит._ Hello World на Silicon — программа, которая на HTTP-запрос к

http://host/hello/world

ответит кодом 200 с текстом «hello world»:

auto my_api = http_api(GET / _hello / _world = [] () { return "hello world";});
mhd_json_serve(my_api, 80);


Неплохо, правда? my\_api здесь это описание нашего API, а mhd\_json\_serve — это бекэнд библиотеки Silicon, реализующий данный API с использованием встроенного вебсервера (на выбор [microhttpd][1] или [LWAN][2]). Давайте посмотрим, что ещё умеет Silicon. [Читать дальше →][3]

[1]: http://www.gnu.org/software/libmicrohttpd/
[2]: http://lwan.ws/
[3]: https://habrahabr.ru/post/280214/#habracut

[>] Кейс разработки на Golang: платформа Виртуальной АТС ITooLabs
habra.16
habrabot(difrex,1) — All
2016-03-28 12:30:02


Публикуем получасовое видео с докладом о языке разработки Golang для участников партнерской конференции Битрикс24. В докладе CEO [ITooLabs][1] Алексей Найденов расскажет про кейс разработки собственной телефонной платформы на Golang, и о том, почему мы отказались от других вендорских решений и стали сами вендором, и почему выбрали Golang. Доклад может быть интересен тем, кто последние пять лет скрывался от мира и поэтому не слышал про Golang, а также тем, кто про Golang слышал, но еще колеблется и хотел бы услышать про примеры успешных проектов. В докладе описаны кейсы разработки и эксплуатации [платформы виртуальной АТС для операторов связи][2] (свыше 20 000 аккаунтов) и голосовой почты для одного из крупнейших мобильных операторов юго-восточной Азии (70 миллионов пользователей). [Читать дальше →][3]

[1]: http://itoolabs.com/
[2]: http://itoolabs.com/
[3]: https://habrahabr.ru/post/280276/#habracut

[>] [Перевод] Фреймворк Silicon — WebAPI на C++
habra.16
habrabot(difrex,1) — All
2016-03-28 13:30:03


**Прим. переводчика:** _в синтаксисе C++ несколько ограниченны средства построения предметно-ориентированных языков. В итоге их мало кто на С++ пытается использовать, а попытки всё-же это сделать вызывают интерес, тем более, когда в итоге получается нечто стройно выглядящее и практически полезное. Одним из таких открытий для меня стал фреймворк [Silicon][1], пытающаяся средствами современного С++ дать возможность быстро и гибко реализовать WebAPI в своём проекте. Давайте посмотрим, насколько просто это выглядит._ Hello World на Silicon — программа, которая на HTTP-запрос к

http://host/hello/world

ответит кодом 200 с текстом «hello world»:

auto my_api = http_api(GET / _hello / _world = [] () { return "hello world";});
mhd_json_serve(my_api, 80);


Неплохо, правда? my\_api здесь это описание нашего API, а mhd\_json\_serve — это бекэнд фреймворка Silicon, реализующий данный API с использованием встроенного вебсервера (на выбор [microhttpd][2] или [LWAN][3]). Давайте посмотрим, что ещё умеет Silicon. [Читать дальше →][4]

[1]: http://siliconframework.org/
[2]: http://www.gnu.org/software/libmicrohttpd/
[3]: http://lwan.ws/
[4]: https://habrahabr.ru/post/280214/#habracut

[>] Хакатон Angelhack 2016: уже через неделю в первом из 4-х городов
habra.16
habrabot(difrex,1) — All
2016-03-28 14:00:02


![][1]У меня с Apps4All есть добрая традиция: раз в год ребята [привозят][2] в Россию самый большой в мире хакатон, а я его веду. Ну, что значит “веду” — помогаю по мере сил. Хакатон — это не детский утренник, его вести не надо. Надо собрать вместе разработчиков, обеспечить их интересными челленджами, пиццей, кофе, энергетическими напитками — и не мешать 24 часа. А на следующий день посадить в удобные кресла разнообразных участников жюри и устроить шоу с демонстрацией вживую того, что накодили. [Зачем приходить на хакатон?][3]

[1]: https://habrastorage.org/files/c28/415/69e/c2841569e0d3454cb9668078aa24b905.png
[2]: https://habrahabr.ru/company/ibm/blog/262867/
[3]: https://habrahabr.ru/post/280308/#habracut

[>] Утекай… или несерьёзный пост о серьёзных вещах
habra.16
habrabot(difrex,1) — All
2016-03-28 14:30:05


«Меня трудно найти, легко потерять и невозможно забыть», — шепнула мне информация с моего компьютера. «Ну, не так уж трудно найти в наш век свободного Интернета, забыть — это запросто. А вот, что легко потерять — тут она не врала», — подумал я в ответ. Складывается ощущение, что именно такие диалоги происходят в головах миллионов людей на планете: знаменитостей, миллиардеров и простых безалаберных пользователей. Кажется, что они сохраняются или у них в голове постоянно создаётся бэкап дампа собственной памяти, а гаджеты не ломаются и не теряются. Больше нам нечем объяснить тот факт, что общий ущерб от утечек данных в 2015 году составил более $27 млрд., а средний ущерб от одной утечки вырос с $25,29 млн. в 2014 году до $33,22 млн. в 2015 году, причём абсолютное лидерство по утечкам — 43% — у государственного сектора. День ото дня появляется всё больше историй о потерянных данных и утечках информации. Судите сами. [][1]



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

[1]: https://habrahabr.ru/company/acronis/blog/280316/
[2]: https://habrahabr.ru/post/280316/#habracut

[>] [Из песочницы] RSA шифрование через библиотеку OpenSSL в Delphi
habra.16
habrabot(difrex,1) — All
2016-03-28 14:30:05


![][1] По долгу службы в разработчиках повстречалась задача шифровать текстовые строки алгоритмом RSA, используя публичный и секретный ключи в PEM формате. При изучении данного вопроса выбор пал на использование библиотеки OpenSSL. Хочу поделиться примерами реализации функционала шифрования на Delphi. Действия выполнялись в ОС Windows, среда разработки Borland Delphi 7. [Читать дальше →][2]

[1]: https://habrastorage.org/files/63e/38c/dc5/63e38cdc545c4eb0995687d2c7c63a0a.PNG
[2]: https://habrahabr.ru/post/280302/#habracut

[>] Погоня с препятствиями
habra.16
habrabot(difrex,1) — All
2016-03-28 14:30:05


![][1]**_             Какая медлительная страна! — сказала Королева. — Ну, а здесь, знаешь ли, приходится бежать со всех ног, чтобы только остаться на том же месте! Если же хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее!                            Льюис Кэрролл "[Алиса в Зазеркалье][2]" _** Сегодня, я хочу рассказать об удивительной и недооценённой игре, с которой я познакомился чуть менее двух лет назад. В каком-то смысле, именно с этой игры, а также с [Ура][3], началось моё знакомство с [Дмитрием Скирюком][4]. В те дни я только начинал интересоваться настольными играми. Мои познания были скудны и, во многом, наивны. Такие игры как "[Чейз][5]", буквально открыли для меня новый необъятный мир. Даже сейчас, работа над этой игрой, в большой степени, напоминает детективную историю. В этом отношении, игра "" полностью оправдала как своё название так и сходство с псевдонимом известного [американского писателя][6]. [Читать дальше →][7]

[1]: https://habrastorage.org/files/112/91a/a5f/11291aa5f1654fd6bde4e3d72868bd5e.PNG
[2]: http://www.lib.ru/CARROLL/carrol1_2.txt
[3]: https://habrahabr.ru/post/224661/
[4]: https://ru.wikipedia.org/wiki/%D0%A1%D0%BA%D0%B8%D1%80%D1%8E%D0%BA,_%D0%94%D0%BC%D0%B8%D1%82%D1%80%D0%B8%D0%B9_%D0%98%D0%B3%D0%BE%D1%80%D0%B5%D0%B2%D0%B8%D1%87
[5]: http://skyruk.livejournal.com/334947.html
[6]: https://ru.wikipedia.org/wiki/%D0%94%D0%B6%D0%B5%D0%B9%D0%BC%D1%81_%D0%A5%D0%B5%D0%B4%D0%BB%D0%B8_%D0%A7%D0%B5%D0%B9%D0%B7
[7]: https://habrahabr.ru/post/278853/#habracut

[>] [Перевод] FAQ по лицензированию Drupal
habra.16
habrabot(difrex,1) — All
2016-03-28 14:30:05


_Готов перевод [справочного материала по лицензированию Drupal][1], в котором рассмотрены, в частности, вопросы использования кода Drupal и иного контента с сайта проекта Drupal.org, особенности лицензирования и использования связующих модулей, а также даны некоторые разъяснения условий лицензии GPL и пояснения про товарный знак Drupal._ Эти вопросы и ответы помогут прояснить юридические вопросы применительно к лицензированию проекта Drupal и лицензии GNU General Public License. Благодарим [Software Freedom Law Center][2] за их помощь в подготовке данной информации.
























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

[1]: https://www.drupal.org/about/licensing
[2]: http://www.softwarefreedom.org/
[3]: https://habrahabr.ru/post/280228/#habracut

[>] Школа Данных «Билайн»: весна, знания, новый курс
habra.16
habrabot(difrex,1) — All
2016-03-28 14:30:05


![][1] Привет, Хабр. Итак, третий курс [Школы Данных «Билайн»][2] подходит к завершению и мы набираем четвёртый. У нас 18 занятий, 36 часов, все основные темы машинного обучения и анализа данных, куча практики, куча домашек, два Kaggle соревнования, презентации и воркшопы от партнеров, возможность устройства в Билайн в команду BigData для лучших студентов, сокурсники из различных областей бизнеса, где применяется машинное обучение и много чего ещё. [Читать дальше →][3]

[1]: https://habrastorage.org/files/95d/e46/453/95de46453bac40e08b6c42b26baf590d.jpg
[2]: http://bigdata.beeline.digital
[3]: https://habrahabr.ru/post/280300/#habracut

[>] Трассировка ядра с ftrace
habra.16
habrabot(difrex,1) — All
2016-03-28 15:00:05


Проблемы трассировки и профилирования ядра мы уже затрагивали [в предыдущих публикациях][1]. Для анализа событий на уровне ядра существует много специализированных инструментов: [SystemTap][2], [Ktap][3], [Sysdig][4], [LTTNG][5] и другие. Об этих инструментах опубликовано много подробных статей и обучающих материалов. Гораздо меньше информации можно найти о «родных» механизмах Linux, с помощью которых можно отслеживать системные события, получать и анализировать отладочную информацию. Эту тему мы хотели бы рассмотреть в сегодняшней статье. Особое внимание мы уделим [ftrace][6] — первому и пока что единственному инструменту трассировки, добавленному в ядро. Начнём с определения основных понятий. [Читать дальше →][7]

[1]: https://blog.selectel.ru/sysdig-instrument-dlya-diagnostiki-linux-sistem/
[2]: https://sourceware.org/systemtap/
[3]: http://www.ktap.org/
[4]: http://www.sysdig.org/
[5]: http://lttng.org/
[6]: https://www.kernel.org/doc/Documentation/trace/ftrace.txt
[7]: https://habrahabr.ru/post/280322/#habracut

[>] Device Guard в Windows 10. Политика целостности кода
habra.16
habrabot(difrex,1) — All
2016-03-28 17:30:03




> _Автор статьи — Андрей Каптелин, участник ИТ-сообщества_

Device Guard – набор программно-аппаратных технологий защиты, доступный для устройств с Windows 10. Статья посвящена одной из компонент Device Guard – политике Code Integrity (CI). С деталями настройки и применения CI можно познакомиться [здесь][1].




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

[1]: https://channel9.msdn.com/Series/Windows-10-device-protection-with-Device-Guard/01
[2]: https://habrahabr.ru/post/280332/#habracut

[>] Отчёт с Moscow Python Meetup 18 марта
habra.16
habrabot(difrex,1) — All
2016-03-28 19:30:02


![][1] 18 марта в московском офисе Mail.Ru Group прошла очередная встреча «питонистов» — Moscow Python Meetup. В рамках традиционного однодневного формата было три выступления, с видеозаписями и презентациями которых вы теперь можете ознакомиться. [Читать дальше →][2]

[1]: https://habrastorage.org/files/b05/aab/456/b05aab4568f74ff8bfe2f93590ed376b.png
[2]: https://habrahabr.ru/post/280360/#habracut

[>] [Перевод] Эффективные структуры данных для PHP 7
habra.16
habrabot(difrex,1) — All
2016-03-28 19:30:02


PHP имеет всего одну структуру данных для управления всем. `array` — сложный, гибкий, гибридный, сочетает в себе поведение `list` и `linked map`. Но мы используем его для всего, потому что PHP придерживается **прагматичного подхода**: иметь предельно правильный, здравый и реалистичный способ решения проблемы, исходящий из практических, а не теоретических рассуждений. `array` позволяет делать работу, хотя о нем и так много рассказывают на лекциях по информатике. Но, к сожалению, с гибкостью приходит и сложность. Последний релиз PHP вызвал большое оживление в сообществе. Мы не могли дождаться того, чтобы начать использовать [новые возможности][1] и почувствовать вкус [~2х прироста производительности][2]. Одна из причин, почему это случилось — [структура `array` была переработана][3]. Но массивы все также придерживаются принципа «оптимизировано для всего; оптимизировано для ничего», еще не все идеально, есть возможности для совершенствования.

> А что насчет
>
> [структур данных SPL?][4]

К сожалению… они ужасны. Раньше, до PHP7, они предлагали \_некоторые\_ преимущества, но сейчас мы дошли до точки, когда использование SPL не имеет практического смысла.

> Почему мы не можем просто поправить и улучшить их?

Да, мы могли бы, но я считаю, что их дизайн и реализация настолько бедны, что лучше бы найти более современную замену.

> **_«SPL data structures are horribly designed.»_**
>
>
>
> —
>
> _Anthony Ferrara_
>
>



----

**Введение**: `php-ds` — расширение для PHP7, добавляющее структуры данных. Этот пост кратко охватывает поведение, производительность и преимущества каждой из них. Также в конце вы найдете список ответов на ожидаемые вопросы. **Github**: **Пространство имен:** `Ds\` **Интерфейсы:** `Collection`, `Sequence`, `Hashable` **Классы:** `Vector`, `Deque`, `Stack`, `Queue`, `PriorityQueue`, `Map`, `Set` [Читать дальше →][5]

[1]: http://php.net/manual/en/migration70.new-features.php
[2]: https://www.reddit.com/r/PHP/comments/3q2brz/how_is_php_7_twice_as_fast/
[3]: https://nikic.github.io/2014/12/22/PHPs-new-hashtable-implementation.html
[4]: http://php.net/manual/en/spl.datastructures.php
[5]: https://habrahabr.ru/post/280262/#habracut

[>] [Из песочницы] Сортировка очереди без использования дополнительных ресурсов
habra.16
habrabot(difrex,1) — All
2016-03-28 19:30:03


Недавно столкнулся с такой задачей: «Объединить две очереди таким образом, чтобы суммарная очередь была отсортирована». Причём требование для сортировки такое: не использовать никаких промежуточных объектов, кроме одной переменной, каким бы медленным алгоритм ни был. Первые попытки составить алгоритм сортировки очереди приводили к вопросу о том, как выйти из бесконечного цикла, но в конечном итоге я получил необходимый алгоритм, о котором и пойдёт речь. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/280328/#habracut

[>] Создание своего режима редактирования в Unreal Engine
habra.16
habrabot(difrex,1) — All
2016-03-29 08:00:04


![][1] Здравствуйте меня зовут Дмитрий. Я занимаюсь созданием компьютерных игр на Unreal Engine в качестве хобби. Моя игра имеет процедурно генерируемый мир, но для того чтобы создать более интересный уровень, я решил использовать заранее определенные участки уровня. Но возникает вопрос как задать участки где уровень будет генерироваться, а где нет. Для этого я создал собственный режим редактирования, под катом я опишу его создание, исходники в конце статьи. [Читать дальше →][2]

[1]: https://habrastorage.org/files/306/875/286/306875286f2e4ca499b98ef44b37c1f1.png
[2]: https://habrahabr.ru/post/280318/#habracut

[>] man!( Go => D ).concurrency
habra.16
habrabot(difrex,1) — All
2016-03-29 12:30:04


Многозадачность — это то, что реализовано в Go по настоящему хорошо, хоть и не идеально. Приятный синтаксис с терпким послевкусием, простые и мощные абстракции, подкупают своим изяществом по сравнению с остальными императивными языками. А попробовав лучшее, уже так не хочется скатываться к посредственности. Поэтому, если и переходить на другой язык, то он должен быть ещё более выразителен и с не менее толковой реализацией многозадачности. Если вы уже наигрались с Go, устали от копипасты, ручного жонглирования мьютексами и всерьёз подумываете о приобретении [протезов для рук][1], то позвольте предложить вашему вниманию перевод [Tour of the Go][2] с эквивалентным кодом на [D][3] и краткими пояснениями. [Часть первая. Основы.][4]

# Часть пятая. Сопрограммы.

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

[1]: https://blog.golang.org/generate
[2]: https://tour.golang.org/list
[3]: http://dlang.org/
[4]: https://habrahabr.ru/post/279657/
[5]: https://habrahabr.ru/post/280378/#habracut

[>] Правила работы с Tasks API. Часть 2
habra.16
habrabot(difrex,1) — All
2016-03-29 12:30:04


В этом посте я бы хотел поговорить о временами неправильном понимания концепции тасков. Также попытаюсь показать несколько неочевидностей при работе с **TaskCompletionSource** и просто выполненными (completed) тасками, их решение и истоки.

###



static Task<TResult> ComputeAsync<TResult>(Func<TResult> highCpuFunc)
{
var tcs = new TaskCompletionSource<TResult>();

try
{
TResult result = highCpuFunc();
tcs.SetResult(result);

// some evil code
}
catch (Exception exc)
{
tcs.SetException(exc);
}

return tcs.Task;
}






try
{
Task.WaitAll(ComputeAsync(() =>
{
// do work
}));
}
catch (AggregateException)
{

}
Console.WriteLine("Everything is gonna be ok");




Есть ли проблемы у кода выше вместе с примером? Если да, то какие? Вроде бы AggregateException ловим. _Everything is gonna be ok_? [Если возникли смутные сомнения, тогда прошу под кат][1]

[1]: https://habrahabr.ru/post/280344/#habracut

[>] [recovery mode] Делаем свой friGate с анонимностью и без рекламы
habra.16
habrabot(difrex,1) — All
2016-03-29 15:00:03


**Введение** Всем хороши плагины для обхода блокировок вроде популярного friGate, но есть у них один минус — любят встраивать свою [рекламу][1] и в перспективе следить за всем, что вы делаете в интернете. Вариант с VPN имеет свои недостатки: либо весь трафик будет ходить через удаленный сервер, либо придется заниматься относительно сложной настройкой роутинга. Туннелирование с использованием ssh, который предоставляет SOCKS-интерфейс при запуске с ключом -D — другой весьма популярный способ, однако на постоянно засыпающем и просыпающемся ноутбуке туннель приходится каждый раз перезапускать. Есть решения вроде autossh, но настоящего перфекциониста они не удовлетворят. Попробуем добиться удобства, аналогичного friGate с использованием сервисов, находящихся полностью под нашим контролем. Нам понадобятся: выделенный сервер с Linux/FreeBSD (я использовал Ubuntu), letsencrypt, squid и немного магии PAC-файлов. Squid поддерживает [шифрованое соединение с браузером][2] — именно то, что нужно для такого случая. Эта возможность почему-то практически неизвестна широкой публике, поэтому появился этот пост. ![image][3] [Читать дальше →][4]

[1]: https://net.dirty.ru/plagin-frigate-zagruzhaet-vam-reklamu-nezametno-dlia-vas-577981/
[2]: http://wiki.squid-cache.org/Features/HTTPS#Encrypted_browser-Squid_connection
[3]: https://habrastorage.org/getpro/habr/post_images/5d6/bd0/a35/5d6bd0a357eac4944756df66f91081c7.gif
[4]: https://habrahabr.ru/post/280236/#habracut

[>] Аудио конференции для бедных и для богатых
habra.16
habrabot(difrex,1) — All
2016-03-29 15:30:02


![image][1] Аудио конференции бывают разные, как и задачи, которые они решают: централизованные (на сервере), клиентские, распределенные. В нашем случае мы рассмотрим первые два варианта — централизованные на стороне облака VoxImplant и клиентские, сделанные прямо в браузере с использованием WebAudio и WebRTC (да-да, и такое уже стало возможно!). У обоих вариантов есть свои плюсы и минусы, которые мы рассмотрим подробнее под катом, а также расскажем о том как их использовать и о подводных камнях (куда же без них!). [Хочу в конференсинговую Вальхаллу!][2]

[1]: https://habrastorage.org/files/4d0/db4/4ba/4d0db44ba16d477cb52c342745b22fcc.jpg
[2]: https://habrahabr.ru/post/279313/#habracut

[>] О функциональности Go
habra.16
habrabot(difrex,1) — All
2016-03-29 16:30:02


Насколько объектно Go ориентирован многократно и эмоционально обсуждалось. Попробуем теперь оценить насколько он функционален. Заметим сразу, оптимизацию хвостовой рекурсии компилятор не делает. Почему бы? «Это не нужно в языке с циклами. Когда программист пишет рекурсивный код, он хочет представлять стек вызовов или он пишет цикл.» — замечает в переписке Russ Cox. В языке зато есть полноценные lambda, closure, рекурсивные типы и ряд особенностей. Попробуем их применить функциональным манером. Примеры покажутся синтетическими оттого, что во первых написаны немедленно исполняемыми в песочнице и написаны на процедурном все же языке во вторых. Предполагается знакомство как с Go так и с функциональным программированием, разъяснений мало но код комментирован. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/280210/#habracut

[>] Публичные собеседования на позицию веб-разработчика в прямом эфире
habra.16
habrabot(difrex,1) — All
2016-03-29 16:30:02


Привет, Хабр! Мы в [Хекслете][1] делаем не только практические курсы по программированию, но и готовим людей к карьере программиста. Например, недавно запустили полную программу обучения «[Профессия PHP-программист][2]», куда входят основы программирования, частично книга СИКП, веб, базы данных, деплой, управление конфигурацией и многое другое, что мы считаем важным для настоящего разработчика. По завершению учебной программы мы помогаем людям получить первый опыт и устроиться на работу. Важный аспект последнего шага это подготовка к собеседованиям. Мы знаем, что собеседования могут быть пугающими и сложными, поэтому решили предложить нашему активному сообществу (которое живет, в основном, в большом [слак-чате][3]) идею: публичные собеседования в прямом эфире! Сразу нашлось несколько кандидатов, и наш технический директор Кирилл [toxicmt][4] Мокевнин провел три собеседования в прямом эфире. Сегодня публикуем видеозаписи этих собеседований. Все кандидаты претендуют на позицию джуниор-программиста.

#### Собеседование 1: Денис Кривощеков

Занимается фрилансом, изучает Ruby on Rails.




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

[1]: https://ru.hexlet.io/?utm_source=habr&utm_medium=blog&utm_campaign=interviews
[2]: https://ru.hexlet.io/professions/php/?utm_source=habr&utm_medium=blog&utm_campaign=interviews
[3]: http://slack-ru.hexlet.io/
[4]: https://habrahabr.ru/users/toxicmt/
[5]: https://habrahabr.ru/post/280406/#habracut

[>] Решаем проблему перехвата и подмены DNS-запросов. DNSCrypt в Яндекс.Браузере
habra.16
habrabot(difrex,1) — All
2016-03-29 17:30:02


Когда речь заходит о защите веб-трафика от перехвата и подмены, то на ум в первую очередь приходят протокол HTTPS или даже собственный VPN-сервер. К сожалению, многие забывают еще об одной незащищенной стороне, а именно о DNS-запросах. Сегодня я еще раз привлеку внимание к этой проблеме и расскажу о том, как мы решаем ее в Яндекс.Браузере с помощью технологии DNSCrypt. ![][1] [Читать дальше →][2]

[1]: https://habrastorage.org/files/26a/bd5/023/26abd5023b6f47bdaa574b185c707aee.png
[2]: https://habrahabr.ru/post/280380/#habracut

[>] Программирование на Python — курс для желающих узнать о нём больше или изучить ещё один язык программирования
habra.16
habrabot(difrex,1) — All
2016-03-29 17:30:02




> "The joy of coding Python should be in seeing short, concise, readable classes that express a lot of action in a small amount of clear code — not in reams of trivial code that bores the reader to death."
>
>
>
> Guido van Rossum

![][1][Python][2] — язык программирования, на котором приятно писать и который приятно читать. Мы предлагаем тринадцать лекций [осеннего курса][3] CS центра, чтобы посмотреть вглубь языка и попробовать понять, как пользоваться всеми его возможностями. Лекции читает [Сергей Лебедев][4], разработчик в компании JetBrains и преподаватель в Computer Science Center. Мало освоить синтаксис, чтобы узнать язык программирования: нужно осознать идиомы языка и научиться их применять. В течение курса Сергей знакомит слушателей с идиомами и возможностями языка Python. [Открыть лекции курса][5]

[1]: https://habrastorage.org/files/8ff/395/eb2/8ff395eb233f451ea76527bfc1903ea2.png
[2]: http://python.org
[3]: https://compscicenter.ru/courses/python/2015-autumn/
[4]: https://github.com/superbobry
[5]: https://habrahabr.ru/post/280426/#habracut

[>] [Перевод] 10 онлайн-инструментов для проверки SSL, TLS и последних уязвимостей
habra.16
habrabot(difrex,1) — All
2016-03-29 18:00:03


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

[1]: https://habrastorage.org/getpro/habr/post_images/60e/c79/1b5/60ec791b59d976824cd028f08b05206c.jpg
[2]: https://habrahabr.ru/company/hosting-cafe/blog/280442/#habracut
[3]: https://habrahabr.ru/post/280442/#habracut

[>] Диалоги о Java Performance
habra.16
habrabot(difrex,1) — All
2016-03-29 19:00:03


Каждый год на [JPoint][1] эксперты выступают с хардкорными докладами о производительности Java. И ни разу не было скучно — вопрос сохраняет актуальность на протяжении многих лет. О том, откуда растут ноги у мифов, что делает JVM, как измерять производительность, при чём тут бизнес-требования заказчика и как обойти часть граблей мы поговорили с экспертами, для которых Java performance — не проблема, а работа. ![][2] [Читать дальше →][3]

[1]: http://javapoint.ru/
[2]: https://habrastorage.org/files/517/09c/744/51709c7445304c37baa6a111219343e9.png
[3]: https://habrahabr.ru/post/280420/#habracut

[>] Поймай меня если сможешь. Catchers Helpdesk плагин для WordPress
habra.16
habrabot(difrex,1) — All
2016-03-29 19:00:03


![image][1] В то время, как Европа борется с бесконечным наплывом мигрантов, не успевая обрабатывать обращения, мы приготовили для любителей WordPress новый плагин Catchers Helpdesk для организации службы поддержки пользователей. Нам пришлось постараться сделать так, чтобы плагин не выглядел чем-то инородным в инфраструктуре WordPress и при этом работал как автомат Калашникова. Об этом-то и пойдет речь далее. **Содержание:**

* Идея и принципы
* Алый океан WordPress
* PRO — виденье
* Рецепт Helpdesk

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

[1]: https://habrastorage.org/files/ee9/f7b/183/ee9f7b183ee4491b8d8df5d1eeca0e52.jpg
[2]: https://habrahabr.ru/post/280320/#habracut

[>] SaaS-решения для защиты любых устройств в любом месте: почему это проще и дешевле + пример внедрения
habra.16
habrabot(difrex,1) — All
2016-03-29 19:00:03


![][1] В наши дни предприятия любых размеров при ведении бизнес-деятельности все больше зависят от своих ИТ-систем и, как результат, они стали более чувствительны к уязвимостям и другим проблемам ИТ-безопасности. Добавьте к этому возросшую мобильность персонала и объективные трудности в управлении удаленными и мобильными устройствами. В итоге мы имеем сценарий, при котором управление операциями безопасности стали более комплексными, дорогостоящими и сложными. Фактически, многие сбои и простои ИТ-систем вызваны человеческими ошибками в силу ручного характера управления традиционными локальными ИТ-решениями. Для решения этих проблем появляются новые решения класса SaaS, которые способны заменить или расширить возможности традиционных локальных решений. В частности, SaaS-решения по безопасности конечных точек, такие как Panda Endpoint Protection, могут быть доступны в любое время с любого устройства через обычный веб-браузер, обеспечивая простое и понятное централизованное управление файерволом и защитой от вредоносных программ любых устройств вне зависимости от их местоположения (в локальной сети, в удаленных офисах или у мобильных сотрудников) без дополнительной инфраструктуры. Кроме того, зачастую внедрение и использование SaaS-решений не требует специальных технических навыков. Например, для внедрения централизованной защиты с Panda Endpoint Protection в компании из 15-20 компьютеров не потребуется даже системный администратор. [Читать дальше →][2]

[1]: https://habrastorage.org/files/760/d20/b6b/760d20b6b845447980debf441b79fd0f.jpg
[2]: https://habrahabr.ru/post/280390/#habracut

[>] Palantir и отмывание денег
habra.16
habrabot(difrex,1) — All
2016-03-29 19:00:03


Вместе с компанией [Edison][1] продолжаем расследование возможностей системы Palantir. ![][2] **Palantir** — _частная американская компания_, разработчик программного обеспечения анализа данных для организаций, основные заказчики — спецслужбы, инвестиционные банки, хедж-фонды. Основана в 2003 году группой инвесторов — выходцев из PayPal во главе с Питером Тилем. До 2008 года ЦРУ было единственным заказчиком компании, когда с его разрешения программное обеспечение Palantir начало внедряться правоохранителям и в другие американские спецслужбы. С 2010 года началась активная кампания по публичному продвижению продукции компании на широком рынке. В конце 2010 года представлены результаты шестнадцатимесячной разработки Palantir для тактико-аналитической поддержки военных операций в Афганистане, проводимых Армией США, в которой кроме серверных технологий и настольных клиентских программ применены также мобильные приложения для носимых устройств; вскоре в прессе появились сведения о том, что технологии Palantir предположительно были задействованы в спецоперации по уничтожению лидера «Аль-Каиды» Усамы бин Ладена весной 2011 года. По состоянию на начало 2016 года считается четвёртым по капитализации стартапом в мире (после Uber, Xiaomi и Airbnb) с оценкой стоимости бизнеса в $20 млрд. На официальном канале Palantir есть видео с демонстрацией работы аналитика, использующего систему Palantir в ходе расследования отмывания денег. По-моему, как-то так видели пользу информационных технологий «отцы-основатели» [Вэнивар Буш («As We May Think»)][3], [Дуглас Энгельбарт («The Mother of All Demos»)][4] и [Джозеф Ликлайдер («Интергалактическая компьютерная сеть» и «Симбиоз человека и компьютера»)][5], о которых я писал немного ранее. _(За помощь с переводом спасибо Ворсину Алексею)_ [Читать дальше →][6]

[1]: http://www.edsd.ru/ru/uslugi/localizacija
[2]: https://habrastorage.org/files/923/603/ec2/923603ec200c45b0a739e87905c60ba0.jpg
[3]: https://habrahabr.ru/company/edison/blog/279241/
[4]: https://habrahabr.ru/company/edison/blog/279809/
[5]: https://habrahabr.ru/company/edison/blog/277903/
[6]: https://habrahabr.ru/post/280434/#habracut

[>] Преимущества концепции облака OpenStack и его отличие от традиционной архитектуры
habra.16
habrabot(difrex,1) — All
2016-03-29 19:00:03


Сегодня затраты на ИТ являются существенной частью бюджетов, и, как следствие — компании любых размеров заинтересованы в их сокращении. Ожидается, что ИТ будут приносить больше пользы при меньших затратах. При этом по мере развития все современные компании сталкиваются с вопросом увеличения потребностей в ИТ-ресурсах. В такой ситуации следует обратить внимание на облачные технологии, которые дают возможность модернизации подходов к управлению ИТ-инфраструктурой за счет использования новейших технологий, высокого уровня стандартизации, гибкости внедряемых решений и простоты масштабирования. OpenStack же является одним из самых распространенных решений для организации облачных сред типа Infrastructure as a Service (IaaS). ![image][1] [Читать дальше →][2]

[1]: https://habrastorage.org/files/43e/be0/cde/43ebe0cdee544afaa1b8d75eaaf7369e.jpg
[2]: https://habrahabr.ru/post/280428/#habracut

[>] Эксплоит для уязвимости в Cisco UCS Manager: так ли страшен чёрт?
habra.16
habrabot(difrex,1) — All
2016-03-29 19:00:03


В сети [опубликован эксплоит][1] для [Cisco UCS Manager][2]. Указывается, что уязвимы версии 2.1(1b) и, возможно, другие. На сайте Cisco в разделе [GNU Bash Environment Variable Command Injection Vulnerability][3] указано, что доступны обновлённые версии продуктов, исправляющих уязвимость:

* 3\.0(1d) (Available)
* 2\.2(3b) (Available)
* 2\.2(2e) (Available)
* 2\.2(1f) (Available)
* 2\.1(3f) (Available)
* 2\.0(5g) (Available)

Собственное тестирование показало, что уязвимы версии:

* 2\.2(1d)
* 2\.2(1c)
* 2\.1(2a)

Не уязвимы:

* 2\.2(6c)
* 2\.2(3e)

Мы провели анализ работы эксплоита, а также количество уязвимых устройств. Используя поисковик Shodan и наш собственный поисковый аналог (да здравствует импортозамещение). И вот что получилось. [Читать дальше →][4]

[1]: https://www.exploit-db.com/exploits/39568/
[2]: https://habrahabr.ru/company/it-grad/blog/177283/
[3]: http://www.cisco.com/c/en/us/support/docs/csa/cisco-sa-20140926-bash.html
[4]: https://habrahabr.ru/post/280364/#habracut

[>] Полиция против мафии или занимательная статистика online-этапа NeoQUEST-2016
habra.16
habrabot(difrex,1) — All
2016-03-29 19:00:03


![][1]С 11 по 21 марта проходил online-этап соревнования по кибербезопасности NeoQUEST-2016! В этом году команда NeoQUEST добавила «изюминок» в квест! Те, кто не участвовал, но хотел бы узнать о том, как это было, а также те, кто принял участие, но хочет освежить воспоминания — добро пожаловать под кат! [Читать дальше →][2]

[1]: https://habrastorage.org/files/bc1/f7c/4ea/bc1f7c4ea8924d14bc4b84aad5095958.jpg
[2]: https://habrahabr.ru/post/280348/#habracut

[>] ИБ-стартап Palantir поможет инвестбанку Credit Suisse создать систему для выявления недобросовестных трейдеров
habra.16
habrabot(difrex,1) — All
2016-03-29 19:00:03


[![][1]][2] Руководитель инвестиционного банка Credit Suisse Тиджай Тиам в интервью Bloomberg TV [заявил][3] о том, что некоторые трейдеры компании совершали рискованные операции на финансовых рынках без согласования с руководством. Эти действия привели к серьезным убыткам. Для предотвращения подобных ситуаций в будущем швейцарский банк разработает новую стратегию управления и усилит контроль за трейдерами — для этого будут использоваться технологии стартапа Palantir, связанного с Агентством нацбезопасности США. [Читать дальше →][4]

[1]: https://habrastorage.org/files/5de/aa1/230/5deaa12306ad4e18ad11d64c1cab5571.png
[2]: https://habrahabr.ru/company/itinvest/blog/280436/
[3]: http://www.bloomberg.com/news/articles/2016-03-23/credit-suisse-ceo-blindsided-as-bank-added-to-risky-positions
[4]: https://habrahabr.ru/post/280436/#habracut

[>] Шаг за шагом: Трансляция данных на flightradar24
habra.16
habrabot(difrex,1) — All
2016-03-29 19:00:03


![][1]

#### 1\. Введение

Моя текущая деятельность никак не связана с авиацией, но так случилось, что я заболел ею. В какой точно момент это произошло – сложно сказать, наверное, первый полет здорово поспособствовал этому. Через некоторое время я начал смотреть фильмы на авиационную тематику, интересоваться строением и отличиями в самолетах и искать, как связать свою деятельность хоть немного с моим увлечением. Так я познакомился с технологией [ADS-B][2] и ее неожиданным применением среди энтузиастов – радарспоттингом. На просторах Хабра не часто появляются статьи по данной тематике ([раз][3], [два][4]). Поэтому здесь я хочу немного поговорить на тему радарспоттинга и подробно описать процесс создания самостоятельной трансляции данных на популярный ресурс [flightradar24][5]. И так, всем, кто интересуется (болен) темой авиации и наблюдения за самолетами, а также желает принять в этом свое непосредственное участие, добро пожаловать под кат. [Читать дальше →][6]

[1]: https://habrastorage.org/files/eaa/750/cea/eaa750cea1d649cb8c37f0c03b6c5833.png
[2]: https://ru.wikipedia.org/wiki/ADS-B
[3]: https://habrahabr.ru/post/156477/
[4]: https://habrahabr.ru/post/250813/
[5]: https://www.flightradar24.com/
[6]: https://habrahabr.ru/post/280454/#habracut

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ... 133