RSS
Pages: 1 ... 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 ... 133
[>] OpenSSL, ssl_ciphers и nginx: прокачиваем на 100%
habra.16
habrabot(difrex,1) — All
2017-03-30 10:30:04


![][1]



Много где написано о том, как получить 100% и A+ по [тесту от Qualys][2]. При всём при том практически везде директивы `ssl_ciphers` и подобные даются как эдакие магические строки, которые нужно просто вставить, и надеяться, что автор не подводит вас под монастырь. Эта статья призвана исправить это недоразумение. По прочтению этой статьи директива `ssl_ciphers` потеряет для вас всякую магию, а _ECDHE_ и _AES_ будут как друзья да браться.


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

[1]: https://habrastorage.org/files/143/4ed/28c/1434ed28c9124f71b7f1153f1dc01d88.png
[2]: https://www.ssllabs.com/ssltest/index.html
[3]: https://habrahabr.ru/post/325230/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Мобильная платформа. Архитектура гибридных приложений на ReactNative
habra.16
habrabot(difrex,1) — All
2017-03-30 12:00:12


Наверное, вы уже не раз слышали о мобильной разработке на ReactNative в Единой Фронтальной Системе (ЕФС) Сбербанка. Мы уже [писали][1] для чего мы используем саму технологию ReactNative в своих разработках, а также [рассказывали][2] как не бояться это делать.

[![][3]
][4]
Сегодня мы взглянем с высоты птичьего полета на построение архитектуры мобильных приложений с использованием ReactNative, Objective-C, Typhoon, VIP, SOA, TypeScript, React и Redux.
[Читать дальше →][5]

[1]: https://habrahabr.ru/company/efs/blog/321828/
[2]: https://www.youtube.com/watch?v=yBfS64f1woU&t=215s
[3]: https://habrastorage.org/files/2b3/c01/f78/2b3c01f785ea435394ee7a99c45884cc.jpg
[4]: https://habrahabr.ru/company/efs/blog/325210/
[5]: https://habrahabr.ru/post/325210/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Анализ исходного кода Quake
habra.16
habrabot(difrex,1) — All
2017-03-30 14:00:04


![image][1]

Я с удовольствием погрузился в изучение [исходного кода Quake World][2] и изложил в статье всё, что я понял. Надеюсь, это поможет желающим разобраться. Эта статья разделена на четыре части:

* Архитектура
* Сеть
* Прогнозирование
* Визуализация[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/d32/0d6/ffa/d320d6ffa37f59fd21361a0ae1a0aaab.jpg
[2]: https://github.com/id-Software
[3]: https://habrahabr.ru/post/324804/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [recovery mode] Институт программной инженерии открыл доступ к стандарту оформления кода C++
habra.16
habrabot(difrex,1) — All
2017-03-30 14:00:04


Институт программной инженерии ([SEI][1]) — федеральный исследовательский центр США, занимающийся формализацией лучших практик разработки программного обеспечения — выпустил в 2016 году [стандарт][2] программирования на C++. В нем описаны правила оформления кода на языке C++, которые должны помочь разработчикам создавать безопасные, надежные и защищенные системы без уязвимостей.

Сам стандарт являлся дополнением к [стандарту][3] оформления кода C, выпущенным немного ранее. И на прошлой неделе Институт программной инженерии открыл бесплатный доступ к ценным экспертным знаниям по разработке защищенных систем на C и C++.

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

[1]: http://www.sei.cmu.edu/
[2]: http://www.cert.org/secure-coding/products-services/secure-coding-cpp-download-2016.cfm
[3]: http://www.cert.org/secure-coding/products-services/secure-coding-download.cfm
[4]: https://habrastorage.org/files/de6/5ce/c71/de65cec719c34f9197fceb3841bb44a1.jpg
[5]: https://habrahabr.ru/company/vasexperts/blog/325140/
[6]: https://habrahabr.ru/post/325140/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Asterisk. Интеграция с amoCRM, step-by-step guid
habra.16
habrabot(difrex,1) — All
2017-03-30 14:30:04


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

Здесь я представлю свой опыт подключения Asterisk к amoCRM в виде пошаговой инструкции, осветив все необходимые нюансы, начиная от получения ssl-сертификата, настройки web-сервера и заканчивая демонстрацией работы получившейся связки.

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

[1]: https://habrastorage.org/files/144/746/d7c/144746d7c370456dbfb47c50a2007b3a.png
[2]: https://habrahabr.ru/post/325104/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Прогнозы по развитию программ-вымогателей в 2017 году
habra.16
habrabot(difrex,1) — All
2017-03-30 14:30:04


Каждому из нас 2016 год запомнился по-своему. Физикам — обнаружением предсказанных Альбертом Эйнштейном гравитационных волн, политикам — конфликтами на Ближнем Востоке, музыкантам — Нобелевской премией Мира Бобу Дилану. Специалистам в области IT-безопасности 2016 запомнился невероятным всплеском активности программ-вымогателей, заставивших не только специалистов, но и простых обывателей выучить ответ на вопрос "[Что такое ransomware?][1]".

![][2]

Сейчас на дворе 2017 год, и нет сомнений, что «ransomware» aka «программы-вымогатели» станут еще опаснее и продолжат свое наступление на данные пользователей. В опасности окажутся все пользователи, и либо вы, либо ваши друзья уже завтра могут столкнуться с этой угрозой.

«Предупрежден, значит вооружен», — подумали мы, провели детальный разбор одной из последних программ-вымогателей, а также подготовили небольшой прогноз на предстоящий год.
[Читать дальше →][3]

[1]: http://www.acronis.com/en-us/blog/posts/what-ransomware
[2]: https://habrastorage.org/getpro/habr/post_images/bed/306/772/bed306772ed3e21ed432e220d1997e31.jpg
[3]: https://habrahabr.ru/post/323288/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Генерируем оглавление для текста
habra.16
habrabot(difrex,1) — All
2017-03-30 14:30:04


Доброго времени суток!

В данной публикации хочу рассказать и расскажу о том, как генерировать оглавление текста на PHP. Почему хаб «Laravel»? Данное решение вылилось в пакет, который можно просто подключить через composer.

![][1]

[Читаем, изучаем][2]

[1]: https://habrastorage.org/files/d68/f9d/670/d68f9d6708ed44c9a43e98f086572d39.png
[2]: https://habrahabr.ru/post/325224/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Эксплуатация уязвимостей eXternal Entity XML (XXE)
habra.16
habrabot(difrex,1) — All
2017-03-30 17:00:04


![][1]

В ходе работ по тестированию на проникновение мы можем столкнуться с уязвимостью, которая позволяет нам выполнять атаки XML eXternal Entity (XXE) Injection. XXE Инъекция — это тип атаки на приложение, которое анализирует ввод XML. Хотя это относительно эзотерическая уязвимость по сравнению с другими векторными атаками веб-приложений, например, Cross-Site Request Forgery (CSRF), мы максимально используем эту уязвимость, когда она появляется, поскольку она может привести к извлечению конфиденциальных данных и даже к удаленному исполнению кода (RCE). В статье мы рассмотрим настройку уязвимого PHP-сервера, эксплуатируя уязвимость вручную, а затем перейдем к удобному инструменту под названием XXEInjector, чтобы автоматизировать этот процесс.
[Читать дальше →][2]

[1]: https://habrastorage.org/files/357/1b2/4f3/3571b24f30dc493f843af3c03241c6eb.gif
[2]: https://habrahabr.ru/post/325270/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Технокубок: итоги финального раунда и разбор задач
habra.16
habrabot(difrex,1) — All
2017-03-30 17:30:03


![image][1]



Пятого марта прошел финальный раунд Технокубка — олимпиады по программированию для школьников. В этом году в ней приняли участие 3000 человек, 400 из которых прошли в финал. Предлагаем вам взглянуть итоги финала и разбор задач:



A. [Андрюша и носки][2]
B. [Место встречи изменить нельзя][3]
C. [Андрюша и разноцветные шарики][4]
D. [Иннокентий и футбольная лига][5]
E. [Подземная лаборатория][6]
F. [Аксель и Марстон в Битландии][7]
G. [Андрюша и живые барьеры][8]
H. [Автобусы и интранет][9]



Что такое Технокубок? Это олимпиада по программированию для учащихся 8-11 классов, организуемая Mail.Ru Group совместно с МГТУ им. Баумана и МФТИ. Она состоит из трех этапов: ознакомительного (онлайн), отборочного (онлайн) и заключительного (очно).

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

[1]: https://habrastorage.org/files/c3d/be2/408/c3dbe240843c48a08e9bf957720485d6.jpg
[2]: #a-andryusha-i-noski
[3]: #b-mesto-vstrechi-izmenit-nelzya
[4]: #c-andryusha-i-raznocvetnye-shariki
[5]: #d-innokentiy-i-futbolnaya-liga
[6]: #e-podzemnaya-laboratoriya
[7]: #f-aksel-i-marston-v-bitlandii
[8]: #g-andryusha-i-zhivye-barery
[9]: #h-avtobusy-i-intranet
[10]: https://habrahabr.ru/post/325052/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Рекомендательные системы в онлайн-образовании. Адаптивное обучение
habra.16
habrabot(difrex,1) — All
2017-03-30 19:00:04


Не прошло и полгода, как мы завершаем цикл статей об адаптивном обучении на Stepik! А, нет, прошло… Но я рада наконец представить вашему вниманию заключительную статью о том, зачем вообще нужно адаптивное обучение, как оно реализовано на Stepik и причём тут шахматы.


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

[1]: https://habrastorage.org/files/aa6/d71/10e/aa6d7110eb534bdcb8bec774ce6ea97b.png
[2]: https://habrahabr.ru/post/325206/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Приглашаем на Go meetup 14 апреля
habra.16
habrabot(difrex,1) — All
2017-03-30 19:30:03


![][1]

В пятницу 14 апреля мы приглашаем вас в наш московский офис на Go meetup. Мы послушаем доклады экспертов и пообщаемся на профессиональные темы. В программе встречи пять докладов.

![][2]**— Go Template Toolkit**
Сергей Свистунов, Lazada

В докладе речь пойдет о трансляторе шаблонов в Go-код (). Получаемый шаблонизатор работает в более чем 10 раз быстрее html/template из стандартной библиотеки. Будет сделан краткий обзор синтаксиса шаблонов, сходства и различия с Perl Template Toolkit. Также спикер расскажет, как Go YACC помог описать грамматику для построения AST, и как из AST получается Go-код. Продемонстрирует, как go tool pprof помог найти неочевидные места, требующие оптимизации.
[Читать дальше →][3]

[1]: https://habrastorage.org/files/f6e/257/f27/f6e257f276704bcca6d544dd9e5a304e.jpg
[2]: https://habrastorage.org/files/3da/9a6/599/3da9a6599e0f4543b51d2b65d8585868.png
[3]: https://habrahabr.ru/post/325042/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Вращение изображения на FPGA
habra.16
habrabot(difrex,1) — All
2017-03-30 20:00:05


![][1]

Пол года назад я наткнулся в сети [вот на это видео][2].

Первой мыслью было то, что это очень круто и у меня такое никогда не получится повторить. Шло время, читались статьи, изучались методы и я искал примеры реализации подобного, но к моему огорчению, в сети ничего конкретного не находилось. Наткнувшись однажды на вычисления тригонометрических функций с использованием алгоритмов CORDIC, я решил попробовать создать свою собственную вращалку изображения на ПЛИС.
[Читать дальше →][3]

[1]: https://habrastorage.org/files/db0/1e5/ea3/db01e5ea384b44e3a946d61a962487b0.png
[2]: https://www.youtube.com/watch?v=i7zvnbMZeUs
[3]: https://habrahabr.ru/post/325236/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Сертификаты от StartCom и WoSign окончательно превратились в тыкву
habra.16
habrabot(difrex,1) — All
2017-03-30 21:00:04


![Логотип WoSign][1]

Эти органзиации известны тем, что они до запуска Let's Encrypt бесплатно выпускали свои сертификаты. И все было прекрасно до недавней поры: 21 октября 2016 года. Все сертификаты, выпускаемые после этой даты были заведомо невалидны. Но выпущенные до этой даты работали нормально. Это коснулось всех сертификатов, даже платных (включая Extended Validation):

![Уведомление в личном кабинете][2]

Но и это длилось не долго. [Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/695/ded/eaa/695dedeaa74b25ce417b2c65a7ff60da.png
[2]: https://habrastorage.org/files/def/0ba/f95/def0baf9565f414c91bf3a13e0d84399
[3]: https://habrahabr.ru/post/325300/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Как мы портировали программно-аппаратное решение из SPARC Solaris в AMD64 Linux и виртуализировали все это
habra.16
habrabot(difrex,1) — All
2017-03-30 22:00:06


_Эта статья для тех, кто все еще сильно любит древние Unix, но уже понимает, что срочно нужно мигрировать на Linux..._

![image][1]

Началась эта история с того, что наш уважаемый заказчик решил уменьшить риски эксплуатации оборудования 10-ти летнего возраста, сэкономить на лицензиях и перейти с Unix на Linux, а заодно и виртуализировать это программно-аппаратное решение. Не то, чтобы заказчик не любил Solaris и Unix, просто сама возможность виртуализировать серверное приложение, жестко привязанное к специфической на сегодняшний день архитектуре SPARC и «седеющей» операционной системе Solaris, выглядела для заказчика очень привлекательной. Отдельным пунктом стоял вопрос замены специализированной карты с PCI интерфейсом на доступное «виртуализированное» решение. Мы решили взяться за такую интересную задачу.
[Читать дальше →][2]

[1]: https://habrastorage.org/files/2cf/a42/96e/2cfa4296e78f40199d12ac7b421799f9.png
[2]: https://habrahabr.ru/post/325304/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Подводные камни для самодельной распределенности «из коробки» в С++ном акторном фреймворке
habra.16
habrabot(difrex,1) — All
2017-03-30 22:00:06


[В комментариях][1] к последней статье про шишки, которые нам довелось набить за 15 лет использования акторов в C++, вновь всплыла тема отсутствия в [SObjectizer-5][2] распределенности «из коробки». Мы уже отвечали на эти вопросы множество раз, но очевидно, что этого недостаточно.



В SObjectizer-5 нет распределенности потому, что в SObjectizer-4 поддержка распределенности была, но по мере того, как расширялся спектр решаемых на SObjectizer задач и росли нагрузки на SObjectizer-приложения, нам пришлось выучить несколько уроков:


* под каждый тип задачи желательно иметь свой специализированный протокол. Потому что обмен большим количеством мелких сообщений, потеря части которых не страшна, сильно отличается от обмена большими бинарными файлами;
* реализация back-pressure для асинхронных агентов — это сама по себе непростая штука. А когда сюда еще и примешивается общение по сети, ситуация становится гораздо хуже;
* сегодня какие-то куски распределенного приложения обязательно будут написаны на других языках программирования, а не на C++. Поэтому требуется интероперабильность и наш собственный протокол, заточенный под C++ и SObjectizer, мешает разработке распределенных приложений.

Далее в статье попробуем раскрыть тему подробнее.

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

[1]: https://habrahabr.ru/post/324978/#comments
[2]: https://sourceforge.net/projects/sobjectizer/
[3]: https://habrahabr.ru/post/325248/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Asterisk. Интеграция с amoCRM, step-by-step guide
habra.16
habrabot(difrex,1) — All
2017-03-31 04:30:04


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

Здесь я представлю свой опыт подключения Asterisk к amoCRM в виде пошаговой инструкции, осветив все необходимые нюансы, начиная от получения ssl-сертификата, настройки web-сервера и заканчивая демонстрацией работы получившейся связки.

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

[1]: https://habrastorage.org/files/144/746/d7c/144746d7c370456dbfb47c50a2007b3a.png
[2]: https://habrahabr.ru/post/325104/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Обзор инструментов для вскрытия хэша: john и mdcrack
habra.16
habrabot(difrex,1) — All
2017-03-31 08:00:04


На данный момент хэш можно вскрыть пятью способами: грубый перебор (брутфорс), подбор по словарю, по словарю с правилами (гибридная атака), rainbow таблицы (радужные таблицы) и криптоатака. Сами хэши можно разделить на обычные хэши, и хэши с солью (salt, «затравка»). Эта статья посвящена программам **john** и **mdcrack**. Они реализуют все упомянутые способы взлома, кроме радужных таблиц и криптоатаки. Так же в статье не затрагивается вопрос многопоточности или возможности программ использовать все ресурсы многопроцессорной системы.
[Читать дальше →][1]

[1]: https://habrahabr.ru/post/325298/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Thunderbird и Kontact вместо MS Outlook
habra.16
habrabot(difrex,1) — All
2017-03-31 10:30:08


Когда вы работаете в крупной компании, где на рабочих станциях в основном стоит ОС Windows, а вы один из немногих пользователей Linux, то вы тратите определенную долю ваших усилий на преодоление сопротивления недружественной ИТ среды. С годами некоторые проблемы остаются в прошлом, но новые появляются. Так например почти исчезли как класс сайты заточенные только под IE. Все меньше страшных _.docx, _.xlsx файлов приходит по почте. Куда-то исчезли обязательные для всех чудо-юдо программы, которые написаны только для Windows. Теперь почти все можно открывать и редактировать из веб браузера. Изменилось многое, но не все.



_Угадай картинку и получи бейсболку в подарок приз знатока почты. В 2000-м это был почтовик года по версии PC Magazine, и я сам пользовался им пару лет. Только по-честному, без поиска картинок._


![][1]





Кстати о почте, что с ней? В тех организациях, где используется Exchange Server, постоянно приходят события на календарь и как-то неудобно оправдываться тем, что твой почтовик с не взаимодействует календарем, а Outlook-ом ты не пользуешься, так как его нет на Linux. Как правильно настроить почту, чтобы все работало на Exchange Server: почта, календарь, адресная книга, работа с папками? Статью об этом пишу я эту.

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

[1]: https://habrastorage.org/files/2a0/ee4/8f2/2a0ee48f2cc94c76b4e45313209c93bf.png
[2]: https://habrahabr.ru/post/324948/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Runtyper — инструмент для проверки типов при выполнении JavaScript кода
habra.16
habrabot(difrex,1) — All
2017-03-31 11:00:05


[Runtyper][1] — это плагин для [Babel][2], выполняющий проверку типов прямо во время выполнения JavaScript кода. Он обнаруживает некорректные операции, например строгое сравнение строки и числа, и бросает предупреждение в консоль. Это позволяет вам находить ошибки типизации на ранней стадии, при этом не требует дополнительных аннотаций кода.



![Runtyper warning example][3]

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

[1]: https://github.com/vitalets/babel-plugin-runtyper
[2]: https://babeljs.io
[3]: https://habrastorage.org/files/36c/71b/fc5/36c71bfc5eba487f9e84ea126404f5dc.png
[4]: https://habrahabr.ru/post/325072/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как установить SSL-сертификат и перейти на https: пошаговая инструкция
habra.16
habrabot(difrex,1) — All
2017-03-31 12:30:04


![][1]

После новости о том, что с 1.01.2017 сайты, на которых собираются данные кредитных карт или пароли, будут отмечаться в браузере Google Chrome как потенциально опасные для пользователей, мы начали переводить сайты клиентов на защищенный протокол.

Небольшой алгоритм того, как выбрать SSL-сертификат, установить его и провести переезд с наименьшими потерями времени. [Читать дальше →][2]

[1]: https://habrastorage.org/files/94f/b0b/476/94fb0b4760c645438c5dcf08b3f84c39.jpg
[2]: https://habrahabr.ru/post/325332/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Мифы о Spark, или Может ли пользоваться Spark обычный Java-разработчик
habra.16
habrabot(difrex,1) — All
2017-03-31 12:30:04


Продолжаем расшифровывать и местами облагораживать хардкорные доклады спикеров JPoint 2016. Сегодня доклад поменьше, всего час с копейками, соответственно, концентрация пользы и отжига на одну минуту зашкаливает.

Итак, Евгений [EvgenyBorisov][1] Борисов о Spark, мифах и немного о том, дествительно ли тексты Pink Floyd адекватнее, чем у Кэти Пэрри.
----



Это будет необычный доклад о Spark.
Обычно много рассказывают про Spark, какой он крутой, показывают код на Scala. Но у меня немного другая цель. Во-первых, я поговорю о том, что такое Spark и зачем он нужен. Но основная цель — показать, что вы, как Java-девелоперы, можете прекрасно им пользоваться. В этом докладе мы развеем несколько мифов о Spark.
[Читать дальше →][2]

[1]: https://habrahabr.ru/users/evgenyborisov/
[2]: https://habrahabr.ru/post/325070/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Самоидентификация программиста
habra.16
habrabot(difrex,1) — All
2017-03-31 15:30:05


**interface**
![][1]

**uses**
Ваши коды, выраженные в мириадах строк, зашиты в мультиварках, холодильниках, телевизорах и телефонах. Вы пытаетесь обучить машины думать и работать во благо людей, высвобождая тем самым человеку время для более глубокого познания себя. Ваши творения обыгрывают нас в шахматы, предсказывают погоду и подсказывают, как объехать пробку. И наконец, вы просто пишите здесь статьи, от одних названий которых я чувствую себя неандертальцем с палкой-копалкой в руке. Но задумывались ли вы о том моменте, когда к вам пришло осознание того, что вы программист? Или этот момент ещё не настал?
[Читать дальше →][2]

[1]: https://habrastorage.org/files/093/47f/c47/09347fc47da74a1c8d6358e9ac29ed49.PNG
[2]: https://habrahabr.ru/post/325350/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Релевантное соединение — атрибуты конкретные и универсальные
habra.16
habrabot(difrex,1) — All
2017-03-31 16:30:04


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


![][2]

Здесь же более подробно остановимся на самой операции выборки (не будет ни одной формулы!). В общем случае в данной операции могут участвовать (соединяться) не только вектор с таблицей, но и две таблицы. Операцию над таблицами, в которой используется проверка на принадлежность элемента множеству, назовем **релевантным соединением**. Далее рассмотрим, в чем его особенности.

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

[1]: https://habrahabr.ru/post/324710/
[2]: https://habrastorage.org/files/e42/9e6/ed0/e429e6ed093b413cb7a1da2e33f546df.png
[3]: https://habrahabr.ru/post/324996/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Почтовый сервер на Linux
habra.16
habrabot(difrex,1) — All
2017-03-31 17:30:04


Как наладить работу почтового сервера, умеющего принимать и отправлять электронную корреспонденцию, бороться со спамом, взаимодействовать с клиентами? На самом деле, всё довольно просто.

Сегодня поговорим о почтовых серверах на Linux. Мы расскажем о том, как настроить сервер, о широко распространённом в интернете протоколе SMTP, а также о других протоколах, таких, как POP и IMAP. В итоге вы окажетесь обладателем полноценной системы для работы с электронной почтой.

[![][1]][2]

Начнём с SMTP-сервера на Linux
[Читать дальше →][3]

[1]: https://habrastorage.org/files/366/27c/f49/36627cf49b1246b3a5c8ed6e09bd324e.jpg
[2]: https://habrahabr.ru/company/ruvds/blog/325356/
[3]: https://habrahabr.ru/post/325356/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Россиянин Максим Сенах признался в причастности к киберкампании Windigo
habra.16
habrabot(difrex,1) — All
2017-03-31 17:30:04


Три года назад ESET опубликовала [отчет][1] об операции Windigo – вредоносной кампании, результатом которой стала компрометация десятков тысяч Linux и UNIX серверов. На этой неделе один из подозреваемых в кибератаках, Максим Сенах из Великого Новгорода, в американском суде [признал свою вину][2] в нарушении закона о компьютерном мошенничестве и злоупотреблении (CFAA).

![image][3]

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

[1]: https://habrahabr.ru/company/eset/blog/216871/
[2]: https://www.justice.gov/opa/pr/russian-citizen-pleads-guilty-involvement-global-botnet-conspiracy
[3]: https://habrastorage.org/files/598/691/dec/598691dec1b6426ebd26a679a8f6e91a.png
[4]: https://habrahabr.ru/post/325338/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] На страже безопасности: IBM QRadar SIEM
habra.16
habrabot(difrex,1) — All
2017-03-31 17:30:04


Современные киберпреступники при атаках систем защиты компаний используют все более изощренные методы. Чтобы противодействовать им, департаменты информационной безопасности вынуждены анализировать и интерпретировать огромное количество событий в день. Компания IBM для защиты от угроз сетевой безопасности предлагает решение IBM QRadar Security Intelligence Platform, которое предоставляет единую архитектуру для интегрирования информации о безопасности и управления событиями (SIEM) и журналами, определения аномальных ситуаций, анализа инцидентов, реагирования на них, управления настройками и устранения уязвимостей.

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

[1]: https://habrastorage.org/files/f50/f82/96e/f50f8296e3694a5980ef146e9d2ca2a3.png
[2]: https://habrahabr.ru/post/325330/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Скачиваем историю переписки со всеми пользователями ВКонтакте с помощью Python
habra.16
habrabot(difrex,1) — All
2017-03-31 18:30:05


Для лингвистического исследования мне понадобился корпус прямой речи, порожденной одним человеком. Я решил, что для начала удобнее всего использовать собственную переписку в ВК. Это статья о том, как скачать все сообщения, которые Вы когда-либо отправляли своим друзьям, используя программу на Python и API ВКонтакте. Для работы с API будем использовать библиотеку [vk][1]. [Читать дальше →][2]

[1]: https://pypi.python.org/pypi/vk/1.5
[2]: https://habrahabr.ru/post/325368/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Релиз CLion 2017.1: C++14, C++17, код на дизассемблере в отладчике, Catch, MSVC и многое другое
habra.16
habrabot(difrex,1) — All
2017-03-31 21:30:04


Привет, Хабр! Спешим поделиться радостной новостью – мы выпустили первый в этом году релиз нашей кросс-платформенной IDE для C и C++, **CLion 2017.1**!



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

* Поддержка C++14 (всё кроме _constexpr_)
* Начальная поддержка C++17 (мы начали с самой востребованной возможности – _nested namespaces_)
* Возможность конвертировать тип переменной в _auto_
* Во время отладки программы, при отсутствии файлов с исходным кодом можно переходить на код на дизассемблере (disassembly view)
* Поддержка фреймворка для юнит-тестирования Catch
* Значительное ускорение отклика редактора при печати кода (Zero Latency Typing)
* И, наконец, экспериментальная поддержка компилятора Microsoft Visual C++!
И это еще не все! Читайте подробности ниже.

Кстати, попробовать все новые возможности можно на небольшом [демо-проекте][2], который мы специально подготовили для этих целей.
[Читать дальше →][3]

[1]: https://confluence.jetbrains.com/display/CLION/Roadmap+for+CLion+2017.1
[2]: https://github.com/anastasiak2512/CLion2017_1Demo
[3]: https://habrahabr.ru/post/325372/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Security Week 13: В ЦРУ нашлись фанаты Doctor Who, APT29 пускает бэкдор-трафик через Google, начинайте патчить SAP GUI
habra.16
habrabot(difrex,1) — All
2017-04-01 00:00:04


Главная [новость][1] недели: в ЦРУ работают настоящие олдскульные нерды, фанатеющие от «Доктора Кто». Ведь кто-то же додумался окрестить инструмент для заражения запароленных макбуков «звуковой отверткой» (Sonic Screwdriver). Спасибо дяде Ассанжу за эти бесценные сведения!

Так, давайте обо всем по порядку. Новая порция украденных из ЦРУ [документов][2] появилась на WikiLeaks. Свежий подгон назван пафосно Dark Matter, однако документы в нем уже не первой свежести, датированные 2008-2012 годам. Тем не менее, представление о методах и возможностях американской разведслужбы они дают.
[Читать дальше →][3]

[1]: https://threatpost.com/wikileaks-dump-shows-cia-interdiction-of-iphone-supply-chain/124540/
[2]: https://wikileaks.org/vault7/darkmatter/releases/
[3]: https://habrahabr.ru/post/325380/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Это не шутки — остались считанные сутки… до дедлайна на GSoC 2017
habra.16
habrabot(difrex,1) — All
2017-04-01 02:00:04


![][1]

**Внимание! Это вам не шутки, а реальная возможность заработать!**

Мы совсем забыли Вам напомнить или даже вообще рассказать, что в этом году случилось знаменательное событие. ReactOS впервые в истории получит слоты на Google Summer of Code второй год подряд. Ранее нам удавалось попасть в эту программу лишь раз в пять лет. Еще одно свидетельство значимости роли проекта в глазах индустрии!

Если вы хотите принять участие в GSoC и покодить этим летом за солидные премиальные и на общественное благо, то немедленно посетите данные странички на нашем сайте:
**[Основная информация о GSoC 2017][2]** | **[ Идеи для Google Summer of Code 2017 ][3]**

Если после просмотра данных материалов вы решитесь претендовать на участие в рамках наших слотов, то безотлагательно пишите в наш [IRC-чат][4] и высылайте свое резюме в текстовом виде в [нашу рассылку][5] [Читать дальше →][6]

[1]: https://habrastorage.org/files/0d8/41a/5b2/0d841a5b2fc14feaaa334f8b18b91758.png
[2]: https://www.reactos.org/wiki/Google_Summer_of_Code_2017
[3]: https://www.reactos.org/wiki/Google_Summer_of_Code_2017_Ideas
[4]: https://www.reactos.org/irc
[5]: https://www.reactos.org/archives/public/ros-dev/
[6]: https://habrahabr.ru/post/325390/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Фундаментальные законы информационной безопасности
habra.16
habrabot(difrex,1) — All
2017-04-01 04:00:05


Все мы знаем о фундаментальных законах физики, открытые Ньютоном и Галилеем. Наверное хотя бы немного со школьных парт слышали об [аксиоматике Евклида][1]. Кто решил хотя бы приблизиться к положению [homo universalis][2], (хотя в наш XXI век это весьма непросто) наверное что-то слышал о [законах Данилевского][3], [Тойнби][4] и/или [Сэмюэла Хантингтона][5]...



А что с Информационной Безопасностью? Есть ли у нас, ИБ-шников свои фундаментальные законы? Да — есть! И в этой статье о них пойдет речь.


[Дальше читать][6]

[1]: https://ru.wikipedia.org/wiki/Евклидова_геометрия
[2]: https://ru.wikipedia.org/wiki/Универсальный_человек
[3]: http://worlds-culture.ru/index.php?action=full&id=447
[4]: https://ru.wikipedia.org/wiki/Закон_вызова_и_ответа
[5]: https://ru.wikipedia.org/wiki/Столкновение_цивилизаций
[6]: https://habrahabr.ru/post/325382/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Несколько аргументов против Dependency Injection и Inversion of Control
habra.16
habrabot(difrex,1) — All
2017-04-01 14:30:04


Помнится, во времена .NET 1.1 и 2.0 можно было часто увидеть пророчества майкрософтовских евангелистов, мол, скоро любая домохозяйка сможет создавать сайты и писать программы. Большинство программистов посмеялось, но, как выяснилось, кто-то отнёсся к этому серьёзно. Во всяком случае, это объясняет, почему шаблоны проектирования IoC/DI получили второе дыхание в 2000-х, причём даже внутри самой MS (желаю Вам никогда в жизни не столкнуться с SCSF).
[![][1]][2]
С точки зрения теории разработки ПО лично мне гораздо чаще приходилось читать или слышать хвалебные статьи и отзывы об IoC/DI, но, как всегда, критика тоже есть. Можно ознакомиться, например, [здесь][3] (англ.), [здесь][4] (англ.), [тут][5] (хабр), [ещё][6] (англ.). В частности в вину ставится нарушение принципа инкапсуляции в ООП.
[Читать дальше →][7]

[1]: https://habrastorage.org/files/d77/fad/a98/d77fada98f344babaff9c89522607514.jpg
[2]: https://habrahabr.ru/post/325092/
[3]: https://www.tonymarston.net/php-mysql/dependency-injection-is-evil.html
[4]: http://www.natpryce.com/articles/000783.html
[5]: https://habrahabr.ru/post/166287/
[6]: https://www.quora.com/What-are-the-advantages-and-disadvantages-when-we-are-implementing-the-dependency-injection
[7]: https://habrahabr.ru/post/325092/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Процессоры Intel станут троичными
habra.16
habrabot(difrex,1) — All
2017-04-01 16:00:04


![][1]

В течение долгих десятилетий рост производительности процессоров, понукаемый законом Мура, достигался за счет улучшения технологического процесса. Однако конец этой гонки уже не за горами: мы вплотную подошли к пределу, диктуемому законами физики. Каким образом мы будем «взбадривать» процессоры дальше? Стратеги Intel два года назад пришли к заключению, что одним из решений данной проблемы может быть переход от двоичной к троичной системе счисления. Ряд шагов в этом направлении уже сделан, и теперь можно с определенностью заявить: уже следующее поколение процессоров Intel Core, а за ними и Intel Xeon, будет троичным.
[Читать дальше →][2]

[1]: https://habrastorage.org/files/85b/0bd/65a/85b0bd65a59a456ba9a38764cef2a520.jpg
[2]: https://habrahabr.ru/post/325366/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Делаем спеллчекер на фонетических алгоритмах своими руками
habra.16
habrabot(difrex,1) — All
2017-04-02 22:00:03


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

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

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

[1]: https://habrahabr.ru/post/325364/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как не наступать на грабли в Go
habra.16
habrabot(difrex,1) — All
2017-04-03 08:30:04


_Этот пост является версией моей же англоязычной статьи ["How to avoid gotchas in Go"][1], но слово gotcha не переводится на русский, поэтому я буду использовать это слово как без перевода, так и немного непрямой вариант — "наступать на грабли"._


> Gotcha — корректная конструкция системы, программы или языка программирования, которая работает, как описано, но, при этом, контринтуитивна и является причиной ошибок, поскольку её легко использовать неверно.

В языке Go есть несколько таких gotchas и есть немало хороших статей, которые их [подробно][2] [описывают][3] и [разъясняют][4]. Я считаю, что эти статьи очень важны, особенно для новичков в Go, поскольку регулярно вижу людей, попадающихся на те же грабли.



Но один вопрос меня мучал долгое время — почему я сам никогда не делал этих ошибок? Серьезно, самые популярные из них, вроде путаницы с nil-интерфейсом или непонятного результата при append()-е слайса — в моей практике никогда не были проблемой. Каким-то образом мне повезло обойти эти подводные камни с первых дней своей работы с Go. Что же мне помогло?



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

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

[1]: https://divan.github.io/posts/avoid_gotchas/
[2]: https://go-traps.appspot.com/
[3]: http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/index.html
[4]: https://medium.com/@Jarema./golang-slice-append-gotcha-e9020ff37374#.xvfl7r4ti
[5]: https://habrahabr.ru/post/325468/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Украшаем жизнь с помощью gdb PrettyPrinting API
habra.16
habrabot(difrex,1) — All
2017-04-03 11:00:04


Что gdb можно как-то улучшать на питоне, знает каждый, кто хоть раз заглядывал в документацию. А кто хоть раз просматривал ее по диагонали, знает про такую штуку, как «Pretty Printers» — которые вроде позволяют gdb красиво печатать разные сложные структуры. Я документацию по диагонали просматривал, хотя особо и не вникал. Но однажды, набирая в очередной раз что-то вроде (все примеры из исходников MariaDB, которые я дебажу по много раз каждый божий день, иногда исключая выходные):

(gdb) p/t table->read_set->bitmap[0] @ (table->read_set->n_bits+7)/8

Я подумал «а фигли?». И все заверте…
[Читать дальше →][1]

[1]: https://habrahabr.ru/post/325472/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Создаем бота для Skype. Шаг за шагом, через REST API и на Python
habra.16
habrabot(difrex,1) — All
2017-04-03 12:00:05


![][1]


_Когда ищешь long-polling в Skype API_

Год назад Microsoft [представила][2] платформу для создания ботов под Skype. Платформа предоставляет удобный формат сообщений, можно отправлять карточки с кнопками, как в телеграмме, одним словом, выглядит все очень круто.

Недавно мне потребовалось написать бота для Skype. И несмотря на то, что тема подымалась на хабре ( [например][3]), я столкнулся с некоторыми сложностями, мне очень не хватало step-by-step гайда по работе с REST API.

На самом деле, бот для скайпа пишется довольно быстро, если знать о подводных камнях и знать [где ][4]смотреть документацию. Основная идея, которую мне пришлось усвоить: Нет веб поллинга. Если Телеграмм на выбор предоставляет лонг-поллинг и вебхуки, то скайп обходится только вебхуками. Из этого вытекают следующие проблемы – общение с серверами скайпа происходят только по https, и только при наличии валидного сертификата. Придется находить доменное имя, хостинг, заморачиваться с сертификатом.
[Читать дальше →][5]

[1]: https://habrastorage.org/files/a2a/559/31a/a2a55931a62040b8854ad542048817c5.jpg
[2]: https://geektimes.ru/post/273618/
[3]: https://habrahabr.ru/post/281296/
[4]: https://docs.botframework.com/en-us/restapi/connector/
[5]: https://habrahabr.ru/post/325456/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Композиция или наследование: как выбрать?
habra.16
habrabot(difrex,1) — All
2017-04-03 12:00:05


## В начале... {#v-nachale}



… не было ни композиции, ни наследования, только код.



И был код неповоротливым, повторяющимся, нераздельным, несчастным, избыточным и измученным.



Основным инструментом для повторного использования кода была копипаста. Процедуры и функции были редкостью, подозрительными новомодными штучками. Вызов процедур был дорогим удовольствием. Части кода, отделенные от основной логики, вызывали недоумение!



Мрачные были времена.



Но вот лучик ООП воссиял над миром… Правда, несколько десятилетий[1][1] никто этого не замечал. Покуда не появился графический интерфейс[2][2], которому, как выяснилось, очень-очень не хватало ООП. Когда нажимаешь на кнопку в окне, что может быть проще, чем отправить кнопке (или ее представителю) сообщение "Нажатие"[3][3] и получить результат?



И вот тут ООП взлетел. Было написано множество[4][4] книг, расплодились бесчисленные[5][5] статьи. Так что сегодня-то каждый может в объектно-ориентированное программирование, так?


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

[1]: #1
[2]: #2
[3]: #3
[4]: #4
[5]: #5
[6]: https://habrahabr.ru/post/325478/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Обработка ошибок в C
habra.16
habrabot(difrex,1) — All
2017-04-03 14:30:04


![][1]


### Введение


Ошибки, увы, неизбежны, поэтому их обработка занимает очень важное место в программировании. И если алгоритмические ошибки можно выявить и исправить во время написания и тестирования программы, то ошибок времени выполнения избежать нельзя в принципе. Сегодня мы рассмотрим функции стандартной библиотеки ([C Standard Library][2]) и [POSIX][3], используемые в обработке ошибок.
[Читать дальше →][4]

[1]: https://habrastorage.org/files/9f0/658/511/9f0658511b7b48f7b67b68f6174c12f2.jpg
[2]: https://en.wikipedia.org/wiki/C_standard_library
[3]: https://en.wikipedia.org/wiki/POSIX
[4]: https://habrahabr.ru/post/324642/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Открытый курс машинного обучения. Тема 6. Построение и отбор признаков
habra.16
habrabot(difrex,1) — All
2017-04-03 15:30:04


Сообщество Open Data Science приветствует участников курса!



В рамках курса мы уже познакомились с несколькими ключевыми алгоритмами машинного обучения. Однако перед тем как переходить к более навороченным алгоритмам и подходам, хочется сделать шаг в сторону и поговорить о подготовке данных для обучения модели. Известный принцип garbage in – garbage out на 100% применим к любой задаче машинного обучения; любой опытный аналитик может вспомнить примеры из практики, когда простая модель, обученная на качественно подготовленных данных, показала себя лучше хитроумного ансамбля, построенного на недостаточно чистых данных.



![][1]


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

[1]: https://habrastorage.org/files/cd7/2d8/d16/cd72d8d16d8f409898546ba5d397240f.jpg
[2]: https://habrahabr.ru/post/325422/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как понять и подружиться с транзакциями и JPA
habra.16
habrabot(difrex,1) — All
2017-04-03 15:30:04


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

При разработке энтерпрайз приложений зачастую с базами данных взаимодействуют посредством ORM технологии, в мире джавы наиболее известна технология JPA (Java Persistence API) и её реализации — Hibernate и EclipseLink. JPA позволяет взаимодействовать с базой данных в терминах объектов предметной области, предоставляет кэш, репликацию кэша при наличии кластера в middle tier-е.

Как это обычно происходит:
[Читать дальше →][1]

[1]: https://habrahabr.ru/post/325470/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Bash-скрипты: начало
habra.16
habrabot(difrex,1) — All
2017-04-03 16:00:05


Сегодня поговорим о bash-скриптах. Это — [сценарии командной строки][1], написанные для оболочки bash. Существуют и другие оболочки, например — zsh, tcsh, ksh, но мы сосредоточимся на bash. Этот материал предназначен для всех желающих, единственное условие — умение работать в [командной строке][2] Linux.

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

[1]: https://ru.wikipedia.org/wiki/%D0%A1%D1%86%D0%B5%D0%BD%D0%B0%D1%80%D0%B8%D0%B9_%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D0%BD%D0%BE%D0%B9_%D1%81%D1%82%D1%80%D0%BE%D0%BA%D0%B8
[2]: https://likegeeks.com/main-linux-commands-easy-guide/
[3]: https://habrastorage.org/files/803/892/bfe/803892bfe548499aa763df324d40fd01.png
[4]: https://habrahabr.ru/company/ruvds/blog/325522/
[5]: https://habrahabr.ru/post/325522/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Спектральный анализ сигналов нелинейных звеньев АСУ на Python
habra.16
habrabot(difrex,1) — All
2017-04-03 16:00:05


### Цель работы


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

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

[1]: https://habrahabr.ru/post/325502/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Разработка WebRTC видеочата между iOS, Android и браузером
habra.16
habrabot(difrex,1) — All
2017-04-03 16:00:05


![][1]


В [предыдущей статье][2] мы описывали принципы разработки видеочата между браузером и Android — устройством. Теперь же попробуем усложнить задачу и заимплементить трехсторонний видеочат на следующих платформах: Google Chrome на десктопе, **Android приложение** на планшете, и **iOS приложение** для Apple iPhone.
[Читать дальше →][3]

[1]: https://habrastorage.org/files/57a/e36/91b/57ae3691b4204dbba9aa8810e014acbd.png
[2]: https://habrahabr.ru/company/flashphoner/blog/324914/
[3]: https://habrahabr.ru/post/325444/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Почему в стандартной библиотеке нет средств борьбы с висячими ссылками и как это исправить?
habra.16
habrabot(difrex,1) — All
2017-04-03 16:00:05


После появления в стандартной библиотеке С++ умных указателей, проблема управления временем жизни объекта была решена. Можно создавать объекты на стеке, тогда они автоматичести удалятся при выходе из области видимости, либо использовать unique\_ptr для создания объектов с экслюзивным владением или shared\_ptr для совместного владения. Но только для shared\_ptr в стандартной библиотеке существует невладеющий указатель weak\_ptr, который предотвращает использование невалидного указателя. Для остальных случаев используют «старые и опасные» raw pointers.

Как же предлагают решить эту проблему разработчики языка?
[Читать дальше →][1]

[1]: https://habrahabr.ru/post/325494/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] UFOCTF 2017: декомпилируем Python в задании King Arthur (PPC600)
habra.16
habrabot(difrex,1) — All
2017-04-03 22:00:05


![][1]
Приветствую тебя хабраюзер! Недавно, закончилась ежегодная олимпиада по информационной безопасности UFO CTF 2017. В этой статье будет райтап одного задания из раздела _PPC_, под названием _«King Arthur»_, за который можно было получить максимальное количество очков — 600.
[Читать дальше →][2]

[1]: https://habrastorage.org/files/9ea/6ce/d68/9ea6ced680854d2d9697763a380d8047.png
[2]: https://habrahabr.ru/post/325580/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Автоматизация печати в корпоративных системах или как подружить свой «велосипед» с принтером
habra.16
habrabot(difrex,1) — All
2017-04-04 10:30:04


Привет, хабражитель! Хочу поделиться с тобой наболевшим опытом, надеюсь, будет полезен. Сегодня расскажу о том, как разрабатывали систему печати документов в корпоративной системе.


### С чего все начиналось


А началось все с разработки ERP-платформы в одной торговой компании примерно 2 года назад. Был выбран Linux, стек С++/Qt, PostgreSql и фронт под web. На C++/Qt был реализован сервер приложений и там же, через прослойку JS интерпретатора писалась бизнес логика. Почему так — это отдельная история, здесь рассмотрим, как разрабатывалась система печати.
[Читать дальше →][1]

[1]: https://habrahabr.ru/post/325586/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Рекурсивный фильтр скользящего среднего
habra.16
habrabot(difrex,1) — All
2017-04-04 11:00:04


![][1]

Да, дорогой читатель, такое тоже бывает, и может быть вкусно и полезно!

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

[1]: https://habrastorage.org/files/ea8/b5c/ce6/ea8b5cce6f504a8499d477283b479432.jpg
[2]: https://habrahabr.ru/post/325590/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Настройка репликации во FreeIPA 4.4 с domain level 1
habra.16
habrabot(difrex,1) — All
2017-04-04 11:30:03


![image][1]

У нас в компании для организации и управления доступами для Linux-серверов
используется такой сервис как FreeIPA. FreeIPA — это вполне полноценная замена AD для Linux-систем от RHEL. В новой версии появились уровни доменов и был переработан процесс настройки репликации. Так как инструкций вменяемого вида в рунете найти не удалось, я решил написать собственную. [Читать дальше →][2]

[1]: https://habrastorage.org/files/f40/ab2/778/f40ab27786c743f48ba5985ea724d212.jpg
[2]: https://habrahabr.ru/post/325546/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Серьёзные ошибки в коде CryEngine V
habra.16
habrabot(difrex,1) — All
2017-04-04 11:30:03


![][1]


В мае 2016 года немецкая компания Crytek решила опубликовать на GitHub исходный код игрового движка CryEngine V. Проект находится в стадии активной разработки, что влечёт за собой появление множества ошибок в коде. Мы уже проверяли проект с помощью PVS-Studio для Windows, а теперь смогли проверить проект с помощью PVS-Studio для Linux. Материала снова набралось на большую статью с описанием только очень серьёзных ошибок.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/8c9/d12/e27/8c9d12e2765248d26fda2c655fca4acc.png
[2]: https://habrahabr.ru/post/325600/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

Pages: 1 ... 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 ... 133