<?xml version="1.0" encoding="UTF-8"?>
	<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:media="http://search.yahoo.com/mrss/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:georss="http://www.georss.org/georss">
	<channel>
	<title>fox :: echo/44d9PMKXeASLStAZgN7w</title>
	<link>https://idec.foxears.su/echo/44d9PMKXeASLStAZgN7w</link>
	<description>
	fox :: echo/44d9PMKXeASLStAZgN7w
	</description>
	<language>ru</language>
<item><title>CNTK — нейросетевой инструментарий от Microsoft Research</title><guid>8hC7ANKidvRvKHA07YMe</guid><pubDate>2016-01-27 03:00:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/8hC7ANKidvRvKHA07YMe#8hC7ANKidvRvKHA07YMe</link>
		<description>
		
 2015 год был очень богат на события, связанные с нейросетевыми технологиями и машинным обучением. Особенно заметный прогресс показали сверточные и рекуррентные сети, подходящие для решения задач в области компьютерного зрения и распознавания речи. Многие крупные компании опубли...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 2015 год был очень богат на события, связанные с нейросетевыми технологиями и машинным обучением. Особенно заметный прогресс показали сверточные и рекуррентные сети, подходящие для решения задач в области компьютерного зрения и распознавания речи. Многие крупные компании опубликовали на Github свои разработки, Google выпустил в свет [TensorFlow][1], Baidu — [warp-ctc][2]. Группа ученых из Microsoft Research тоже решила присоединиться к этой инициативе, выпустив [Computational Network Toolkit][3], набор инструментов для проектирования и тренировки сетей различного типа, которые можно использовать для распознавания образов, понимания речи, анализа текстов и многого другого. **И****нтригующим при этом является то, ****что эта сеть победила в конкурсе **[**ImageNet** **LSVR**** 2015**][4]** и является самой быстрой среди существующих конкурентов.**  ![][5] [Читать дальше →][6]<br>
<br>
  [1]: <a href="https://github.com/tensorflow/tensorflow" class="url">https://github.com/tensorflow/tensorflow</a><br>
  [2]: <a href="https://github.com/baidu-research/warp-ctc" class="url">https://github.com/baidu-research/warp-ctc</a><br>
  [3]: <a href="https://github.com/Microsoft/CNTK.git" class="url">https://github.com/Microsoft/CNTK.git</a><br>
  [4]: <a href="http://image-net.org/challenges/LSVRC/2015/results" class="url">http://image-net.org/challenges/LSVRC/2015/results</a><br>
  [5]: <a href="https://habrastorage.org/getpro/habr/post_images/4d8/169/f88/4d8169f88549625769aa6dc507ebd528.png" class="url">https://habrastorage.org/getpro/habr/post_images/4d8/169/f88/4d8169f88549625769aa6dc507ebd528.png</a><br>
  [6]: <a href="https://habrahabr.ru/post/275959/#habracut" class="url">https://habrahabr.ru/post/275959/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Python и красивые ножки — как бы я знакомил сына с математикой и программированием</title><guid>NRtjVKsCPP5HNBbtZXZ5</guid><pubDate>2016-01-27 02:30:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/NRtjVKsCPP5HNBbtZXZ5#NRtjVKsCPP5HNBbtZXZ5</link>
		<description>
		
 Раньше мы уже [искали][1] необычные модели Playboy с помощью библиотеки Python Scikit-learn. Теперь мы продемонстрируем некоторые возможности библиотек SymPy, SciPy, Matplotlib и Pandas на живом примере из разряда занимательных школьных задач по математике. Цель — облегчить пор...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Раньше мы уже [искали][1] необычные модели Playboy с помощью библиотеки Python Scikit-learn. Теперь мы продемонстрируем некоторые возможности библиотек SymPy, SciPy, Matplotlib и Pandas на живом примере из разряда занимательных школьных задач по математике. Цель — облегчить порог вхождения при изучении Python библиотек для анализа данных.   <br>
<br>
<br>
<br>
  [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/251225/" class="url">https://habrahabr.ru/post/251225/</a><br>
  [2]: <a href="https://habrahabr.ru/post/275963/#habracut" class="url">https://habrahabr.ru/post/275963/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>iOS App Reverse Engineering — (уже бесплатная) книга от китайских мастеров</title><guid>eWY6CgeOQhbKxv8EIrGh</guid><pubDate>2016-01-26 22:00:09</pubDate><author>habrabot</author><link>https://idec.foxears.su/eWY6CgeOQhbKxv8EIrGh#eWY6CgeOQhbKxv8EIrGh</link>
		<description>
		
 Для нетерпеливых — сразу [ссылка на PDF][1], (но можно и [купить][2], поддержав автора).  [Здесь — Table of contents][3]   Автор адресует издание следующим категориям читателей: 

* любопытствующие,
* ведущие разработчики с уже существующей хорошей командой, желающие лучше пони...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Для нетерпеливых — сразу [ссылка на PDF][1], (но можно и [купить][2], поддержав автора).  [Здесь — Table of contents][3]   Автор адресует издание следующим категориям читателей: <br>
<br>
* любопытствующие,<br>
* ведущие разработчики с уже существующей хорошей командой, желающие лучше понимать iOS,<br>
* архитекторы, которые хотят прокачать свой навык проектирования,<br>
* реверсеры из других областей, интересующиеся также и iOS.<br>
<br>
 <br>
<br>
<span class="quote">&gt; The book iOS App Reverse Engineering, as a gift to the whole jailbreak community, is now open-sourced on github </span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt; — iOSAppRE (@iOSAppRE)</span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt; [12 сентября 2015][4]</span><br>
<br>
[][5]<br>
<br>
  [1]: <a href="https://github.com/iosre/iOSAppReverseEngineering/blob/master/iOSAppReverseEngineering.pdf" class="url">https://github.com/iosre/iOSAppReverseEngineering/blob/master/iOSAppReverseEngineering.pdf</a><br>
  [2]: <a href="https://www.lulu.com/shop/zishe-sha/ios-app-reverse-engineering/ebook/product-22147315.html" class="url">https://www.lulu.com/shop/zishe-sha/ios-app-reverse-engineering/ebook/product-22147315.html</a><br>
  [3]: <a href="http://iosre.com/t/ios-app-reverse-engineering-table-of-contents/1078" class="url">http://iosre.com/t/ios-app-reverse-engineering-table-of-contents/1078</a><br>
  [4]: <a href="https://twitter.com/iOSAppRE/status/642643329331556352" class="url">https://twitter.com/iOSAppRE/status/642643329331556352</a><br>
  [5]: <a href="https://habrahabr.ru/post/275935/#habracut" class="url">https://habrahabr.ru/post/275935/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Рекурсия. Тренировочные задачи</title><guid>gw1qw8JHUw59sLpFG7n8</guid><pubDate>2016-01-26 19:30:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/gw1qw8JHUw59sLpFG7n8#gw1qw8JHUw59sLpFG7n8</link>
		<description>
		
 Здравствуй Хабрахабр!   В этой статье речь пойдет о задачах на рекурсию и о том как их решать. ![image][1]  

### **Кратко о рекурсии**

  Рекурсия достаточно распространённое явление, которое встречается не только в областях науки, но и в повседневной жизни. Например, эффект Д...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Здравствуй Хабрахабр!   В этой статье речь пойдет о задачах на рекурсию и о том как их решать. ![image][1]  <br>
<br>
<span class="header">### **Кратко о рекурсии**</span><br>
<br>
  Рекурсия достаточно распространённое явление, которое встречается не только в областях науки, но и в повседневной жизни. Например, эффект Дросте, треугольник Серпинского и т. д. Самый простой вариант увидеть рекурсию – это навести Web-камеру на экран монитора компьютера, естественно, предварительно её включив. Таким образом, камера будет записывать изображение экрана компьютера, и выводить его же на этот экран, получится что-то вроде замкнутого цикла. В итоге мы будем наблюдать нечто похожее на тоннель.   В программировании рекурсия тесно связана с функциями, точнее именно благодаря функциям в программировании существует такое понятие как рекурсия или рекурсивная функция. Простыми словами, рекурсия – определение части функции (метода) через саму себя, то есть это функция, которая вызывает саму себя, непосредственно (в своём теле) или косвенно (через другую функцию).   О рекурсии сказано много. Вот несколько хороших ресурсов: [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrastorage.org/getpro/habr/post_images/53e/cfb/6df/53ecfb6dfd029da416f36d03f2d01aec.jpg" class="url">https://habrastorage.org/getpro/habr/post_images/53e/cfb/6df/53ecfb6dfd029da416f36d03f2d01aec.jpg</a><br>
  [2]: <a href="https://habrahabr.ru/post/275813/#habracut" class="url">https://habrahabr.ru/post/275813/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Из песочницы] Нечеткий поиск в словаре с универсальным автоматом Левенштейна. Часть 1</title><guid>fe3JOyHAHqV2T38wANYk</guid><pubDate>2016-01-26 19:30:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/fe3JOyHAHqV2T38wANYk#fe3JOyHAHqV2T38wANYk</link>
		<description>
		
 ![][1]   Нечеткий поиск строк является весьма дорогостоящей в смысле вычислительных ресурсов задачей, особенно если вам необходима высокая точность получаемых результатов. В статье описан алгоритм нечеткого поиска в словаре, который обеспечивает высокую скорость поиска при сохр...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![][1]   Нечеткий поиск строк является весьма дорогостоящей в смысле вычислительных ресурсов задачей, особенно если вам необходима высокая точность получаемых результатов. В статье описан алгоритм нечеткого поиска в словаре, который обеспечивает высокую скорость поиска при сохранении 100% точности и сравнительно низком потреблении памяти. Именно автомат Левенштейна позволил разработчикам Lucene повысить скорость нечеткого поиска [на два порядка][2] [Читать дальше →][3]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/543/5b4/0f0/5435b40f0ed04ef2971984189149ce95.png" class="url">https://habrastorage.org/files/543/5b4/0f0/5435b40f0ed04ef2971984189149ce95.png</a><br>
  [2]: <a href="http://blog.mikemccandless.com/2011/03/lucenes-fuzzyquery-is-100-times-faster.html" class="url">http://blog.mikemccandless.com/2011/03/lucenes-fuzzyquery-is-100-times-faster.html</a><br>
  [3]: <a href="https://habrahabr.ru/post/275937/#habracut" class="url">https://habrahabr.ru/post/275937/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Амнезия FreeBSD</title><guid>ztD2U2IG4ttcPj8A1T4g</guid><pubDate>2016-01-26 19:30:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/ztD2U2IG4ttcPj8A1T4g#ztD2U2IG4ttcPj8A1T4g</link>
		<description>
		
 Я никогда не понимал как работает распределение памяти во FreeBSD. Из всего многообразия документации полезное помнилось, лишь  

&gt; An urban myth has circulated for years that Linux did a better job avoiding swapouts than FreeBSD, but this in fact is not true. What was actually...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Я никогда не понимал как работает распределение памяти во FreeBSD. Из всего многообразия документации полезное помнилось, лишь  <br>
<br>
<span class="quote">&gt; An urban myth has circulated for years that Linux did a better job avoiding swapouts than FreeBSD, but this in fact is not true. What was actually occurring was that FreeBSD was proactively paging out unused pages in order to make room for more disk cache while Linux was keeping unused pages in core and leaving less memory available for cache and process pages.</span><br>
<br>
   Ну лучше чем Linux, да и пусть. Я не против. Но хуже самого непонимая процесса выделения памяти меня убивала _Inactive_ память. Что это такое и можно ли «это» безболезненно использовать? Считать ли эту память доступной для использования приложением?   Под cut'ом больше вопросов чем ответов. [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275917/#habracut" class="url">https://habrahabr.ru/post/275917/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>iOS App Reverse Engineering — (уже) бесплатная книга от китайских мастеров</title><guid>3lVDfOgsBTQalhGxHGMN</guid><pubDate>2016-01-26 19:30:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/3lVDfOgsBTQalhGxHGMN#3lVDfOgsBTQalhGxHGMN</link>
		<description>
		
 Для нетерпеливых — сразу [ссылка на PDF][1],  (но можно и [купить][2], поддержав автора).  [Здесь — Table of contents][3]   Автор адресует издание следующим категориям читателей: 

* любопытствующие,
* ведущие разработчики с уже существующей хорошей командой, желающие лучше пон...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Для нетерпеливых — сразу [ссылка на PDF][1],  (но можно и [купить][2], поддержав автора).  [Здесь — Table of contents][3]   Автор адресует издание следующим категориям читателей: <br>
<br>
* любопытствующие,<br>
* ведущие разработчики с уже существующей хорошей командой, желающие лучше понимать iOS,<br>
* архитекторы, которые хотят прокачать свой навык проектирования,<br>
* реверсеры из других областей, интересующиеся также и iOS.<br>
<br>
 <br>
<br>
<span class="quote">&gt; The book iOS App Reverse Engineering, as a gift to the whole jailbreak community, is now open-sourced on github </span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt; — iOSAppRE (@iOSAppRE)</span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt; [12 сентября 2015][4]</span><br>
<br>
[][5]<br>
<br>
  [1]: <a href="https://github.com/iosre/iOSAppReverseEngineering/blob/master/iOSAppReverseEngineering.pdf" class="url">https://github.com/iosre/iOSAppReverseEngineering/blob/master/iOSAppReverseEngineering.pdf</a><br>
  [2]: <a href="https://www.lulu.com/shop/zishe-sha/ios-app-reverse-engineering/ebook/product-22147315.html" class="url">https://www.lulu.com/shop/zishe-sha/ios-app-reverse-engineering/ebook/product-22147315.html</a><br>
  [3]: <a href="http://iosre.com/t/ios-app-reverse-engineering-table-of-contents/1078" class="url">http://iosre.com/t/ios-app-reverse-engineering-table-of-contents/1078</a><br>
  [4]: <a href="https://twitter.com/iOSAppRE/status/642643329331556352" class="url">https://twitter.com/iOSAppRE/status/642643329331556352</a><br>
  [5]: <a href="https://habrahabr.ru/post/275935/#habracut" class="url">https://habrahabr.ru/post/275935/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Из песочницы] «Hello World!» на C массивом int main[]</title><guid>yRZJgqxdijMBsfXD0l0N</guid><pubDate>2016-01-26 18:30:22</pubDate><author>habrabot</author><link>https://idec.foxears.su/yRZJgqxdijMBsfXD0l0N#yRZJgqxdijMBsfXD0l0N</link>
		<description>
		
 Я хотел бы рассказать о том, как я писал реализацию «Hello, World!» на C. Для подогрева сразу покажу код. Кого интересует как до этого доходил я, добро пожаловать под кат.  

#include &amp;amp;lt;stdio.h&amp;amp;gt;
const void *ptrprintf = printf;
#pragma section(".exre", execute, read...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Я хотел бы рассказать о том, как я писал реализацию «Hello, World!» на C. Для подогрева сразу покажу код. Кого интересует как до этого доходил я, добро пожаловать под кат.  <br>
<br>
#include &amp;amp;lt;stdio.h&amp;amp;gt;<br>
const void *ptrprintf = printf;<br>
#pragma section(".exre", execute, read)<br>
__declspec(allocate(".exre")) int main[] =<br>
{<br>
    0x646C6890, 0x20680021, 0x68726F57,<br>
    0x2C6F6C6C, 0x48000068, 0x24448D65,<br>
    0x15FF5002, &amp;amp;amp;ptrprintf, 0xC314C483<br>
};<br>
<br>
 [Реализация][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275861/#habracut" class="url">https://habrahabr.ru/post/275861/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>А вы задумывались о безопасности… автомобиля?</title><guid>oxzVbcu2PRY9deupLHc6</guid><pubDate>2016-01-26 16:00:06</pubDate><author>habrabot</author><link>https://idec.foxears.su/oxzVbcu2PRY9deupLHc6#oxzVbcu2PRY9deupLHc6</link>
		<description>
		
 В последнее время автомобили все больше и больше походят на большие гаджеты на колесах, однако во времена, когда впервые создавалась бортовая сеть, никто не считал необходимым думать об информационной безопасности. Результаты этого налицо: многие видели ролик, в котором управле...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 В последнее время автомобили все больше и больше походят на большие гаджеты на колесах, однако во времена, когда впервые создавалась бортовая сеть, никто не считал необходимым думать об информационной безопасности. Результаты этого налицо: многие видели ролик, в котором управление джипом было захвачено дистанционно и водитель вместе со своим железным конем были направлены прямиком в кювет.   <br>
<br>
<br>
<br>
<br>
 [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275505/#habracut" class="url">https://habrahabr.ru/post/275505/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Книга «Создание микросервисов»</title><guid>CIw2Jigr5T8NCtrP7FB7</guid><pubDate>2016-01-26 16:00:06</pubDate><author>habrabot</author><link>https://idec.foxears.su/CIw2Jigr5T8NCtrP7FB7#CIw2Jigr5T8NCtrP7FB7</link>
		<description>
		
 Привет, Хаброжители! У нас вышла новая книга Сэма Ньюмена.  [![image][1]][2] Книга посвящена программированию микросервисов — небольших автономных компонентов, позволяющих добиться модульности и отказоустойчивости любой программы. Теория микро-сервисов тесно связана с философие...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Привет, Хаброжители! У нас вышла новая книга Сэма Ньюмена.  [![image][1]][2] Книга посвящена программированию микросервисов — небольших автономных компонентов, позволяющих добиться модульности и отказоустойчивости любой программы. Теория микро-сервисов тесно связана с философией Unix, способствует улучшению архитектуры любых приложений, дает возможность избегать громоздкого и запутанного кода. Эта книга поможет читателю заново взглянуть на многие, казалось бы, трудноразрешимые проблемы, масшта-бировать любые проекты, ювелирно разрабатывать даже самые сложные системы.   Эта книга полна конкретных примеров использования микросервисов, собранных по всему миру, включая их применение в таких организациях, как Netflix, Amazon, Gilt и REA group, пришедших к мысли, что возросшая автономность этой архитектуры дает их командам огромные преимущества.  [Читать дальше →][3]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/cf7/43f/9ad/cf743f9adaa14e22944b419156fb2423.jpg" class="url">https://habrastorage.org/files/cf7/43f/9ad/cf743f9adaa14e22944b419156fb2423.jpg</a><br>
  [2]: <a href="https://habrahabr.ru/company/piter/blog/275891/" class="url">https://habrahabr.ru/company/piter/blog/275891/</a><br>
  [3]: <a href="https://habrahabr.ru/post/275891/#habracut" class="url">https://habrahabr.ru/post/275891/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Какие страны и языки программирования чаще побеждают в игре для программистов CodeBattle?</title><guid>zCNSe1Hx0dUrLH6kI0DU</guid><pubDate>2016-01-26 15:30:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/zCNSe1Hx0dUrLH6kI0DU#zCNSe1Hx0dUrLH6kI0DU</link>
		<description>
		
 Привет, Хабр!   В прошлом году мы [запустили][1] игру для программистов [CodeBattle][2]. Напомню, идея игры очень простая: вам и сопернику дается задача, вы решаете её на выбранном вами языке. Вы видите код соперника в реальном времени, результаты запуска тестов и можете общать...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Привет, Хабр!   В прошлом году мы [запустили][1] игру для программистов [CodeBattle][2]. Напомню, идея игры очень простая: вам и сопернику дается задача, вы решаете её на выбранном вами языке. Вы видите код соперника в реальном времени, результаты запуска тестов и можете общаться с ним и зрителями в чате. Кто первый решит задачу (удовлетворит тестам) — тот победил.    С тех пор были сыграны тысячи игр, и мы собрали интересную статистику. По состоянию на 31 декабря 2015 года, какие страны и какие языки программирования чаще побеждали?    Иными словами, мы наконец можем ответить на вопрос «какой язык круче?» :) Шучу-шучу, давайте не холиварить. Вот статистика за три последних месяца прошлого года:  [![][3]][4] [Читать дальше →][5]<br>
<br>
  [1]: <a href="https://habrahabr.ru/company/hexlet/blog/269613/" class="url">https://habrahabr.ru/company/hexlet/blog/269613/</a><br>
  [2]: <a href="https://battle.hexlet.io/?utm_source=habr&utm_medium=blog&utm_campaign=battle_stats" class="url">https://battle.hexlet.io/?utm_source=habr&amp;utm_medium=blog&amp;utm_campaign=battle_stats</a><br>
  [3]: <a href="https://habrastorage.org/files/3d4/ccd/353/3d4ccd353e7c420ea588ad355d6948db.png" class="url">https://habrastorage.org/files/3d4/ccd/353/3d4ccd353e7c420ea588ad355d6948db.png</a><br>
  [4]: <a href="https://habrastorage.org/files/3d4/ccd/353/3d4ccd353e7c420ea588ad355d6948db.png" class="url">https://habrastorage.org/files/3d4/ccd/353/3d4ccd353e7c420ea588ad355d6948db.png</a><br>
  [5]: <a href="https://habrahabr.ru/post/275867/#habracut" class="url">https://habrahabr.ru/post/275867/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Из песочницы] Пирожки в дистрибутивной семантике</title><guid>8EfWm9Yw89m4n8loiVp1</guid><pubDate>2016-01-26 15:30:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/8EfWm9Yw89m4n8loiVp1#8EfWm9Yw89m4n8loiVp1</link>
		<description>
		
 Уже несколько месяцев с любопытством гляжу в сторону [дистрибутивной семантики][1] — познакомился с теорией, узнал про [word2vec][2], нашёл соответствующую библиотеку для Питона (gensim) и даже раздобыл [модель][3] лексических векторов, сформированную по национальному корпусу р...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Уже несколько месяцев с любопытством гляжу в сторону [дистрибутивной семантики][1] — познакомился с теорией, узнал про [word2vec][2], нашёл соответствующую библиотеку для Питона (gensim) и даже раздобыл [модель][3] лексических векторов, сформированную по национальному корпусу русского языка. Однако для творческого погружения в материал не хватало душезабирающих данных, которые было бы интересно через дистрибутивную семантику покрутить. Одновременно с этим увлечённо почитывал [стишки-пирожки][4] (эдакий синтез задиристых частушек и глубокомысленных хокку) — некоторые даже заучивал наизусть и по случаю угощал знакомых. И вот, наконец, увлечённость и любопытство нашли друг друга, породив воодушевляющую идею в ассоциативных глубинах сознания — отчего бы не совместить приятное с полезным и не собрать из подручных средств какой-нибудь «поэтичный» поисковик по базе пирожков. <br>
<br>
<span class="quote">&gt; из ложных умозаключений</span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt;  </span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt; мы можем истину сложить</span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt;  </span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt; примерно как перемножают</span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt;  </span><br>
<span class="quote">&gt;</span><br>
<span class="quote">&gt; два отрицательных числа</span><br>
<br>
[Читать дальше →][5]<br>
<br>
  [1]: <a href="https://ru.wikipedia.org/wiki/%D0%94%D0%B8%D1%81%D1%82%D1%80%D0%B8%D0%B1%D1%83%D1%82%D0%B8%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D0%B5%D0%BC%D0%B0%D0%BD%D1%82%D0%B8%D0%BA%D0%B0" class="url">https://ru.wikipedia.org/wiki/%D0%94%D0%B8%D1%81%D1%82%D1%80%D0%B8%D0%B1%D1%83%D1%82%D0%B8%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D0%B5%D0%BC%D0%B0%D0%BD%D1%82%D0%B8%D0%BA%D0%B0</a><br>
  [2]: <a href="https://code.google.com/archive/p/word2vec/" class="url">https://code.google.com/archive/p/word2vec/</a><br>
  [3]: <a href="http://ling.go.mail.ru/dsm/ru/about#models" class="url">http://ling.go.mail.ru/dsm/ru/about#models</a><br>
  [4]: <a href="http://poetory.ru/content/list?sort=likes&type=2" class="url">http://poetory.ru/content/list?sort=likes&amp;type=2</a><br>
  [5]: <a href="https://habrahabr.ru/post/275913/#habracut" class="url">https://habrahabr.ru/post/275913/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Перевод] Реализация Swift словаря</title><guid>Usejn16QWjusRgpTgETz</guid><pubDate>2016-01-26 15:00:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/Usejn16QWjusRgpTgETz#Usejn16QWjusRgpTgETz</link>
		<description>
		
 ![image][1]  _Swift словарь представляет собой контейнер, который хранит несколько значений одного и того же типа. Каждое значение связано с уникальным ключом, который выступает в качестве идентификатора этого значения внутри словаря. В отличие от элементов в массиве, элементы ...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![image][1]  _Swift словарь представляет собой контейнер, который хранит несколько значений одного и того же типа. Каждое значение связано с уникальным ключом, который выступает в качестве идентификатора этого значения внутри словаря. В отличие от элементов в массиве, элементы в словаре не имеют определенного порядка. Используйте словарь, когда вам нужно искать значения на основе их идентификатора, так же как в реальном мире словарь используется для поиска определения конкретного слова. (прим.)_  **Swift словарь:**  <br>
<br>
* Swift словарь состоит из двух общих типов: ключей (должны относиться к категории Hashable) и значений;<br>
* Можно создавать записи посредством введения ключа и его значения;<br>
* Значение может задаваться через ссылку на введенный ранее ключ;<br>
* Можно удалить запись, указав соответствующий ключ;<br>
* Каждый ключ связан с одним единственным значением.<br>
<br>
  Существует несколько способов хранения данных записей (ключей, значений), один из которых предполагает открытую адресацию посредством линейного пробирования, необходимого для запуска Swift-словаря.   Рассмотрим пример словаря, рассчитанного на 8 элементов: в нем предусмотрено максимум 7 записей (ключей, значений) и, как минимум, одно пустое место (так называемый пробел) в буфере словаря, благодаря которому происходит своеобразная блокировка поиска по выборкам/вставкам (retrivals/insertions). [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrastorage.org/getpro/habr/post_images/34b/d41/8fd/34bd418fda252189e7daabd1b5aa3113.png" class="url">https://habrastorage.org/getpro/habr/post_images/34b/d41/8fd/34bd418fda252189e7daabd1b5aa3113.png</a><br>
  [2]: <a href="https://habrahabr.ru/post/275911/#habracut" class="url">https://habrahabr.ru/post/275911/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Из песочницы] Первые шаги в Xenko</title><guid>3k1XZcZOCVPn2WN68cJa</guid><pubDate>2016-01-26 12:30:05</pubDate><author>habrabot</author><link>https://idec.foxears.su/3k1XZcZOCVPn2WN68cJa#3k1XZcZOCVPn2WN68cJa</link>
		<description>
		
 Тот, кто интересуется миром игровых движков, знает, что с первого декабря 2015 года бывший Paradox3D сменил название на Xenko, но так как на Хабре нет туториалов ни по первому, ни по второму — я решил сделать небольшую статью для тех, кто хочет попробовать что-то новое (или не ...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Тот, кто интересуется миром игровых движков, знает, что с первого декабря 2015 года бывший Paradox3D сменил название на Xenko, но так как на Хабре нет туториалов ни по первому, ни по второму — я решил сделать небольшую статью для тех, кто хочет попробовать что-то новое (или не очень) и рассказать об особенностях Xenko. Если вас это заинтересовало — добро пожаловать под кат!  ![][1] [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/a6f/6cb/1ee/a6f6cb1ee2cc4cdeb5c37b2c2e9f95bf.png" class="url">https://habrastorage.org/files/a6f/6cb/1ee/a6f6cb1ee2cc4cdeb5c37b2c2e9f95bf.png</a><br>
  [2]: <a href="https://habrahabr.ru/post/275859/#habracut" class="url">https://habrahabr.ru/post/275859/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Microsoft выложила на Github инструментарий CNTK для глубинного обучения</title><guid>Tq9r87E4FTM1uz1b3VvV</guid><pubDate>2016-01-26 12:30:05</pubDate><author>habrabot</author><link>https://idec.foxears.su/Tq9r87E4FTM1uz1b3VvV#Tq9r87E4FTM1uz1b3VvV</link>
		<description>
		
 ![][1]   Microsoft выложила в открытый доступ исходный код инструментов, которые используются в компании для ускорения разработок в области искусственного интеллекта: набор Computational Network Toolkit опубликован [на Github][2]. [Читать дальше →][3]

  [1]: https://habrastora...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![][1]   Microsoft выложила в открытый доступ исходный код инструментов, которые используются в компании для ускорения разработок в области искусственного интеллекта: набор Computational Network Toolkit опубликован [на Github][2]. [Читать дальше →][3]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/9eb/b5e/084/9ebb5e084b3f4a418ea6ae24efbc7b15.jpg" class="url">https://habrastorage.org/files/9eb/b5e/084/9ebb5e084b3f4a418ea6ae24efbc7b15.jpg</a><br>
  [2]: <a href="https://github.com/Microsoft/CNTK" class="url">https://github.com/Microsoft/CNTK</a><br>
  [3]: <a href="https://habrahabr.ru/post/275887/#habracut" class="url">https://habrahabr.ru/post/275887/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Наконец-то: https://habrahabr.ru</title><guid>vXFy76Oaa8juZ2TuyQzN</guid><pubDate>2016-01-26 12:00:05</pubDate><author>habrabot</author><link>https://idec.foxears.su/vXFy76Oaa8juZ2TuyQzN#vXFy76Oaa8juZ2TuyQzN</link>
		<description>
		
    UPD: Первая же ветка комментариев показала, что даже на Хабре пока не все серьезно относятся к вопросу; добавил в хаб ИБ — ещё одно напоминание не будет лишним. [][1]

  [1]: https://habrahabr.ru/post/275743/#habracut...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
    UPD: Первая же ветка комментариев показала, что даже на Хабре пока не все серьезно относятся к вопросу; добавил в хаб ИБ — ещё одно напоминание не будет лишним. [][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275743/#habracut" class="url">https://habrahabr.ru/post/275743/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Что не так с безопасностью в Интернете Вещей: Как Shodan стал «поисковиком спящих детей»</title><guid>bAaWzX4mgwmz7fEPaRmA</guid><pubDate>2016-01-25 19:00:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/bAaWzX4mgwmz7fEPaRmA#bAaWzX4mgwmz7fEPaRmA</link>
		<description>
		
 [![][1]][2]   Знаменитый поисковый сервис Shodan не так давно запустил раздел, позволяющий пользователям [просматривать][3] изображения с уязвимых подключенных к интернету веб-камер. За короткое время работы в кадр уже попали плантации конопли, задние дворы банков, детские спал...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 [![][1]][2]   Знаменитый поисковый сервис Shodan не так давно запустил раздел, позволяющий пользователям [просматривать][3] изображения с уязвимых подключенных к интернету веб-камер. За короткое время работы в кадр уже попали плантации конопли, задние дворы банков, детские спальни, кухни, гостиные, бассейны, школы и колледжи, лаборатории, магазины.    Shodan ищет подключенные к сети устройства с открытыми портами. Если подключиться к порту можно без пароля и он транслирует видео, то робот делает скриншот и двигается дальше. Помимо вопросов о правомерности подобных действий со стороны администрации Shodan, новый раздел проекта подчеркивает сегодняшний уровень безопасности Интернета Вещей. [Читать дальше →][4]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/8c9/9ce/e29/8c99cee2969f484a99e3124c04daac5c.jpg" class="url">https://habrastorage.org/files/8c9/9ce/e29/8c99cee2969f484a99e3124c04daac5c.jpg</a><br>
  [2]: <a href="https://habrahabr.ru/company/pt/blog/275853/" class="url">https://habrahabr.ru/company/pt/blog/275853/</a><br>
  [3]: <a href="http://images.shodan.io/" class="url">http://images.shodan.io/</a><br>
  [4]: <a href="https://habrahabr.ru/post/275853/#habracut" class="url">https://habrahabr.ru/post/275853/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Техники машинного обучения для прогнозирования цен акций: функции индикаторов и анализ новостей</title><guid>aweXmdiCmUCTU9GOaLOw</guid><pubDate>2016-01-25 18:00:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/aweXmdiCmUCTU9GOaLOw#aweXmdiCmUCTU9GOaLOw</link>
		<description>
		
 [![][1]][2]   В нашем блоге мы уже затрагивали тему предсказания цен акций с помощью [алгоритма адаптивной фильтрации][3]. Финансист из Нью-Йорка Ватсал Шах (Vatsal Shah) в своей [работе][4] рассмотрел возможность использования для этих целей алгоритмов машинного обучения. Мы п...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 [![][1]][2]   В нашем блоге мы уже затрагивали тему предсказания цен акций с помощью [алгоритма адаптивной фильтрации][3]. Финансист из Нью-Йорка Ватсал Шах (Vatsal Shah) в своей [работе][4] рассмотрел возможность использования для этих целей алгоритмов машинного обучения. Мы представляем вашему вниманию главные мысли этого документа. [Читать дальше →][5]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/d08/298/d8c/d08298d8c6ff4c6ab1ff4ae74ec06d7b.png" class="url">https://habrastorage.org/files/d08/298/d8c/d08298d8c6ff4c6ab1ff4ae74ec06d7b.png</a><br>
  [2]: <a href="https://habrahabr.ru/company/itinvest/blog/275825/" class="url">https://habrahabr.ru/company/itinvest/blog/275825/</a><br>
  [3]: <a href="https://habrahabr.ru/company/itinvest/blog/274821/" class="url">https://habrahabr.ru/company/itinvest/blog/274821/</a><br>
  [4]: <a href="http://www.vatsals.com/Essays/MachineLearningTechniquesforStockPrediction.pdf" class="url">http://www.vatsals.com/Essays/MachineLearningTechniquesforStockPrediction.pdf</a><br>
  [5]: <a href="https://habrahabr.ru/post/275825/#habracut" class="url">https://habrahabr.ru/post/275825/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Шифровальная машина NEMA</title><guid>RmcXFL87hNXZQPXUvuDp</guid><pubDate>2016-01-25 18:00:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/RmcXFL87hNXZQPXUvuDp#RmcXFL87hNXZQPXUvuDp</link>
		<description>
		
 Во время Второй мировой войны швейцарская армия использовала усовершенствованную версию коммерческой Enigma K, которую иногда называют Swiss К. Когда швейцарцы обнаружили, что их секретные сообщения расшифровываются как Союзниками так и немцами, они решили разработать собственн...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Во время Второй мировой войны швейцарская армия использовала усовершенствованную версию коммерческой Enigma K, которую иногда называют Swiss К. Когда швейцарцы обнаружили, что их секретные сообщения расшифровываются как Союзниками так и немцами, они решили разработать собственную шифровальную машину NEMA.    NEMA (сокращенно от «Neue Maschine») — электромеханическая шифровальная машина, разработанная компанией Zellweger AG (г. Устер, Швейцария) во время Второй мировой войны и пришедшая на смену знаменитой немецкой Энигме. Машина также известна под названием T-D и как NEMA Modell 45.    На первый взгляд у машины насчитывалось 10 роторов, но только 5 из них соединялись электрическим контуром. Также 4 из 5 были кодирующими роторами с 26 контактами с каждой стороны. А пятый диск — рефлекторный, который во время шифровки мог перемещаться (в отличие от Энигмы, где рефлектор был фиксирован).   NEMA состояла из клавиатуры на 26 букв (A-Z) для ввода открытых сообщений, а также из 26 лампочек, подсвечивающих нужные буквы шифрованного текста. Но по сравнению с Энигмой, у NEMA были дополнительные переключатели между буквами и числами. Они использовались для соединения с электронным печатающим устройством. В NEMA присутствовали конструктивные улучшения, такие как нерегулярные пошаговые вращения шифрующих роторов (за счет добавления дополнительных колес). Взломать шифр было особенно сложно.   ![][1]  [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/791/0e3/3f6/7910e33f64564bca93094ba7166c2478.jpg" class="url">https://habrastorage.org/files/791/0e3/3f6/7910e33f64564bca93094ba7166c2478.jpg</a><br>
  [2]: <a href="https://habrahabr.ru/post/275529/#habracut" class="url">https://habrahabr.ru/post/275529/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Из песочницы] Недокументированные возможности оптического терминала ZTE ZXHN F660 от МГТС</title><guid>7JwNum4FrhxUoQZ1AUHj</guid><pubDate>2016-01-25 18:00:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/7JwNum4FrhxUoQZ1AUHj#7JwNum4FrhxUoQZ1AUHj</link>
		<description>
		
 По результатам собственных изысканий родилась идея набросать небольшой Q&amp;amp;A по работе с некоторыми недокументированными функциями оптического терминала ZTE ZXHN F660, устанавливаемого сейчас в квартиры фирмой МГТС.  ![][1]   Статья расcчитана на начинающих, которые, тем не м...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 По результатам собственных изысканий родилась идея набросать небольшой Q&amp;amp;A по работе с некоторыми недокументированными функциями оптического терминала ZTE ZXHN F660, устанавливаемого сейчас в квартиры фирмой МГТС.  ![][1]   Статья расcчитана на начинающих, которые, тем не менее, уже ознакомились с Web-интерфейсом управления терминалом и знают, как делать в нем базовые вещи: смена пароля, активация SAMBA, проброс портов, настройка WLAN, настройка фильтрации, и т.д. В ней мы не будем рассматривать смену прошивки или «отвязку» от провайдера – все вещи, связанные с удаленным обновлением, настройкой VOIP, и т.д. трогать крайне не рекомендую. Оставьте провайдеру возможность выполнять свою работу и обслуживать свое устройство (оно его, а не ваше, если помните договор). [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/26d/420/226/26d4202266f54ef4bb1349d43a2a8bad.jpg" class="url">https://habrastorage.org/files/26d/420/226/26d4202266f54ef4bb1349d43a2a8bad.jpg</a><br>
  [2]: <a href="https://habrahabr.ru/post/275819/#habracut" class="url">https://habrahabr.ru/post/275819/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Что не так с безопасностью в интернете вещей: Как Shodan стал «поисковиком спящих детей»</title><guid>LVTZOqylyZa6Nd6vku8B</guid><pubDate>2016-01-25 18:00:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/LVTZOqylyZa6Nd6vku8B#LVTZOqylyZa6Nd6vku8B</link>
		<description>
		
 [![][1]][2]   Знаменитый поисковый сервис Shodan не так давно запустил раздел, позволяющий пользователям [просматривать][3] изображения с уязвимых подключенных к интернету веб-камер. За короткое время работы в кадр уже попали плантации конопли, задние дворы банков, детские спал...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 [![][1]][2]   Знаменитый поисковый сервис Shodan не так давно запустил раздел, позволяющий пользователям [просматривать][3] изображения с уязвимых подключенных к интернету веб-камер. За короткое время работы в кадр уже попали плантации конопли, задние дворы банков, детские спальни, кухни, гостиные, бассейны, школы и колледжи, лаборатории, магазины.    Shodan ищет подключенные к сети устройства с открытыми портами. Если подключиться к порту можно без пароля и он транслирует видео, то робот делает скриншот и двигается дальше. Помимо вопросов о правомерности подобных действий со стороны администрации Shodan, новый раздел проекта подчеркивает сегодняшний уровень безопасности интернета вещей. [Читать дальше →][4]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/8c9/9ce/e29/8c99cee2969f484a99e3124c04daac5c.jpg" class="url">https://habrastorage.org/files/8c9/9ce/e29/8c99cee2969f484a99e3124c04daac5c.jpg</a><br>
  [2]: <a href="https://habrahabr.ru/company/pt/blog/275853/" class="url">https://habrahabr.ru/company/pt/blog/275853/</a><br>
  [3]: <a href="http://images.shodan.io/" class="url">http://images.shodan.io/</a><br>
  [4]: <a href="https://habrahabr.ru/post/275853/#habracut" class="url">https://habrahabr.ru/post/275853/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Правительство Великобритании продвигает криптопротокол для VoIP с бэкдором</title><guid>bcLfwlGKguDjedUAzxvU</guid><pubDate>2016-01-25 18:00:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/bcLfwlGKguDjedUAzxvU#bcLfwlGKguDjedUAzxvU</link>
		<description>
		
 Британское правительство совместно с экспертами спецслужбы GCHQ предлагают принять новый стандарт для криптографически защищённых голосовых коммуникаций — протокол под названием MIKEY-SAKKE. Этот протокол якобы должен повысить безопасность VoIP и телефонной связи за счёт шифров...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Британское правительство совместно с экспертами спецслужбы GCHQ предлагают принять новый стандарт для криптографически защищённых голосовых коммуникаций — протокол под названием MIKEY-SAKKE. Этот протокол якобы должен повысить безопасность VoIP и телефонной связи за счёт шифрования трафика. Но эксперты [обращают внимание][1] на специфические особенности протокола, которые делают его уязвимым по своей архитектуре.  ![][2]   MIKEY-SAKKE — система шифрования на основе личных данных (ID-based system), которая обязательно требует наличия доверенного центра распространения ключей. Поэтому здесь по существу встроено депонирование ключей и отсутствует совершенная прямая секретность. «Единственным разумным объяснением для проектирования протокола с такими свойствами является прослушка третьей стороной», — [говорит][3] Брюс Шнайер. [Читать дальше →][4]<br>
<br>
  [1]: <a href="https://www.benthamsgaze.org/2016/01/19/insecure-by-design-protocols-for-encrypted-phone-calls/" class="url">https://www.benthamsgaze.org/2016/01/19/insecure-by-design-protocols-for-encrypted-phone-calls/</a><br>
  [2]: <a href="https://habrastorage.org/files/142/eec/227/142eec2270134d9cbaa00ca75244d9cd.png" class="url">https://habrastorage.org/files/142/eec/227/142eec2270134d9cbaa00ca75244d9cd.png</a><br>
  [3]: <a href="https://www.schneier.com/blog/archives/2016/01/uk_government_p.html" class="url">https://www.schneier.com/blog/archives/2016/01/uk_government_p.html</a><br>
  [4]: <a href="https://habrahabr.ru/post/275835/#habracut" class="url">https://habrahabr.ru/post/275835/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Из песочницы] Как я писал политику безопасности</title><guid>24JJP7QTMEimrx9oC5Ub</guid><pubDate>2016-01-25 18:00:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/24JJP7QTMEimrx9oC5Ub#24JJP7QTMEimrx9oC5Ub</link>
		<description>
		
 Так получилось, что за последние несколько лет мне довелось несколько раз написать «с нуля» и внедрить в разных компаниях политику информационной безопасности, а также понаблюдать, как это делают коллеги по цеху. В предлагаемой заметке делается попытка обобщить полученный опыт ...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Так получилось, что за последние несколько лет мне довелось несколько раз написать «с нуля» и внедрить в разных компаниях политику информационной безопасности, а также понаблюдать, как это делают коллеги по цеху. В предлагаемой заметке делается попытка обобщить полученный опыт и упомянуть про грабли, оставившие наиболее заметный след на лбу автора. Сразу оговоримся, что далее речь пойдет не о рекомендациях по защите от вирусов или выбору стойкого пароля, а в основном о логике, структуре и назначении подобных документов.  ![image][1] [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/ac5/d4c/720/ac5d4c7202974367b6b0f21d62a6742c.jpg" class="url">https://habrastorage.org/files/ac5/d4c/720/ac5d4c7202974367b6b0f21d62a6742c.jpg</a><br>
  [2]: <a href="https://habrahabr.ru/post/275811/#habracut" class="url">https://habrahabr.ru/post/275811/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Немного о static</title><guid>4cNQM8wAtXM2vbEqC7wC</guid><pubDate>2016-01-25 18:00:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/4cNQM8wAtXM2vbEqC7wC#4cNQM8wAtXM2vbEqC7wC</link>
		<description>
		
 

#### **Чуть-чуть о статье**

   Теперь попробуем создать что-то вроде «глобальной переменной» с помощью ключевого слова **static**.

&gt; _«Они похожи на постоянные, но статические значения не встраиваются в место их использования. Это значит, что каждое значение существует в ед...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 <br>
<br>
#### **Чуть-чуть о статье**<br>
<br>
   Теперь попробуем создать что-то вроде «глобальной переменной» с помощью ключевого слова **static**.<br>
<br>
<span class="quote">&gt; _«Они похожи на постоянные, но статические значения не встраиваются в место их использования. Это значит, что каждое значение существует в единственном экземпляре, и у него есть определённый адрес». _</span><br>
<br>
[Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275791/#habracut" class="url">https://habrahabr.ru/post/275791/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Перевод] Представляем бесплатную лабораторию программирования Wolfram Programming Lab для изучения языка Wolfram Language</title><guid>g0ERw0ytp5fTtMhxrYpv</guid><pubDate>2016-01-25 18:00:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/g0ERw0ytp5fTtMhxrYpv#g0ERw0ytp5fTtMhxrYpv</link>
		<description>
		
 [][1]



 _Перевод поста Stephen Wolfram "[Announcing Wolfram Programming Lab][2]".  Выражаю огромную благодарность Кириллу Гузенко [KirillGuzenko][3] за помощь в переводе и подготовке публикации_

----

Я рад объявить о запуске **[Лаборатории программирования Wolfram][4]** — с...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 [][1]<br>
<br>
<br>
<br>
 _Перевод поста Stephen Wolfram "[Announcing Wolfram Programming Lab][2]".  Выражаю огромную благодарность Кириллу Гузенко [KirillGuzenko][3] за помощь в переводе и подготовке публикации_<br>
<br>
----<br>
<br>
Я рад объявить о запуске **[Лаборатории программирования Wolfram][4]** — среды для всех, кто хочет обучиться программированию и вычислительному мышлению вместе с [Wolfram Language][5]. **Wolfram Programming Lab** можно запускать как в браузере, так и на настольных системах (Mac, Windows, Linux).   Я давно хотел найти способ, позволяющий кому бы то ни было, будь то детям или взрослым, познакомиться с Wolfram Language и всеми его возможностями, даже при полном отсутствии знаний и опыта в сфере программирования. Теперь он у нас есть!   Стартовый экран (_см. рис. в самом верху поста_) предоставляет возможность пойти по одному из четырех путей. Во-первых, есть небольшое видео. Далее следует раздел «Попробуйте сами», содержащий несколько весьма простых, но интересных вычислений.  [![][6]][7] [Читать дальше →][8]<br>
<br>
  [1]: <a href="http://www.wolfram.com/programming-lab/" class="url">http://www.wolfram.com/programming-lab/</a><br>
  [2]: <a href="http://blog.wolfram.com/2016/01/19/announcing-wolfram-programming-lab/" class="url">http://blog.wolfram.com/2016/01/19/announcing-wolfram-programming-lab/</a><br>
  [3]: <a href="https://habrahabr.ru/users/kirillguzenko/" class="url">https://habrahabr.ru/users/kirillguzenko/</a><br>
  [4]: <a href="http://www.wolfram.com/programming-lab/" class="url">http://www.wolfram.com/programming-lab/</a><br>
  [5]: <a href="http://www.wolfram.com/language/" class="url">http://www.wolfram.com/language/</a><br>
  [6]: <a href="http://blog.stephenwolfram.com/data/uploads/2016/01/wolfram-programming-lab-get-started-try-it-yourself.png" class="url">http://blog.stephenwolfram.com/data/uploads/2016/01/wolfram-programming-lab-get-started-try-it-yourself.png</a><br>
  [7]: <a href="https://lab.open.wolframcloud.com/app/objects/wpl/GetStarted.nb" class="url">https://lab.open.wolframcloud.com/app/objects/wpl/GetStarted.nb</a><br>
  [8]: <a href="https://habrahabr.ru/post/275855/#habracut" class="url">https://habrahabr.ru/post/275855/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Немного о константах</title><guid>RXHPH0NHEr6LAqr6x3Nb</guid><pubDate>2016-01-25 13:30:09</pubDate><author>habrabot</author><link>https://idec.foxears.su/RXHPH0NHEr6LAqr6x3Nb#RXHPH0NHEr6LAqr6x3Nb</link>
		<description>
		
 

#### **Ключевое слово const**

 

##### **О статье**

  Здесь будет рассмотрено использование ключевого слова **const.**   С помощью этого слова создаётся константа. [Читать дальше →][1]

  [1]: https://habrahabr.ru/post/275763/#habracut...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 <br>
<br>
#### **Ключевое слово const**<br>
<br>
 <br>
<br>
##### **О статье**<br>
<br>
  Здесь будет рассмотрено использование ключевого слова **const.**   С помощью этого слова создаётся константа. [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275763/#habracut" class="url">https://habrahabr.ru/post/275763/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Перевод] Примечания к статье «Как писать на С в 2016 году»</title><guid>pMIoMRFEmvOVXXblmxZL</guid><pubDate>2016-01-25 13:30:09</pubDate><author>habrabot</author><link>https://idec.foxears.su/pMIoMRFEmvOVXXblmxZL#pMIoMRFEmvOVXXblmxZL</link>
		<description>
		
 ![][1] _На самом деле так выглядел бы Ассемблер, если бы он был оружием, но с C тоже надо быть предельно аккуратным_  _От переводчика:  Данная публикация является переводом статьи-ответа на текст [«How to C in 2016»][2]. Перевод последнего [был опубликован мной][3] в пятницу и ...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![][1] _На самом деле так выглядел бы Ассемблер, если бы он был оружием, но с C тоже надо быть предельно аккуратным_  _От переводчика:  Данная публикация является переводом статьи-ответа на текст [«How to C in 2016»][2]. Перевод последнего [был опубликован мной][3] в пятницу и вызвал, местами, неоднозначную реакцию сообщества. Наводку на данный «ответ», для поддержания обсуждения вопроса уже в рамках Хабра, дал пользователь [CodeRush][4], за что ему отдельное спасибо._   Ранее в сети была опубликована статья [«Программирование на С в 2016 году»][5] с множеством полезных советов, среди которых, увы, были и не очень удачные идеи. Именно поэтому я решил прокомментировать соответствующие моменты. Пока я готовил новый материал, кто-то заметил, что за работу на C должны браться только ответственные программисты, в то время как безответственным хватит и других языков, в рамках которых имеется больше возможностей для совершенствования имеющихся навыков. Давайте разбираться в секретах специалистов своего дела. [Читать дальше →][6]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/dfb/b54/b1b/dfbb54b1b7c9423b8e3c418463c7e4a1.png" class="url">https://habrastorage.org/files/dfb/b54/b1b/dfbb54b1b7c9423b8e3c418463c7e4a1.png</a><br>
  [2]: <a href="https://matt.sh/howto-c" class="url">https://matt.sh/howto-c</a><br>
  [3]: <a href="https://habrahabr.ru/company/inoventica/blog/275685/" class="url">https://habrahabr.ru/company/inoventica/blog/275685/</a><br>
  [4]: <a href="https://habrahabr.ru/users/coderush/" class="url">https://habrahabr.ru/users/coderush/</a><br>
  [5]: <a href="https://habrahabr.ru/company/inoventica/blog/275685/" class="url">https://habrahabr.ru/company/inoventica/blog/275685/</a><br>
  [6]: <a href="https://habrahabr.ru/post/275823/#habracut" class="url">https://habrahabr.ru/post/275823/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Перевод] Домашние животные vs крупный рогатый скот</title><guid>JAzuzAg8eqRc2jcuvmDa</guid><pubDate>2016-01-25 12:00:05</pubDate><author>habrabot</author><link>https://idec.foxears.su/JAzuzAg8eqRc2jcuvmDa#JAzuzAg8eqRc2jcuvmDa</link>
		<description>
		
 ![][1]В ряде статей на Хабре [упоминалось][2] разделение серверов на «pets» и «cattle». Эта терминология пошла с одной небезинтересной статьи за авторством Noah Slater — open source активиста и соавтора CouchDB. Я не смог скрафтить хороший перевод английского «cattle», «животны...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![][1]В ряде статей на Хабре [упоминалось][2] разделение серверов на «pets» и «cattle». Эта терминология пошла с одной небезинтересной статьи за авторством Noah Slater — open source активиста и соавтора CouchDB. Я не смог скрафтить хороший перевод английского «cattle», «животные, выращиваемые в промышленном животноводстве», поэтому под катом вас ждет перевод с котом. Очень крупным.  [почитать про животноводство, деплой и облака][3]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/54b/cea/778/54bcea7786d141d08e5d64ffeadcc0a0.png" class="url">https://habrastorage.org/files/54b/cea/778/54bcea7786d141d08e5d64ffeadcc0a0.png</a><br>
  [2]: <a href="https://habrahabr.ru/company/mirantis_openstack/blog/223795/" class="url">https://habrahabr.ru/company/mirantis_openstack/blog/223795/</a><br>
  [3]: <a href="https://habrahabr.ru/post/275771/#habracut" class="url">https://habrahabr.ru/post/275771/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Перевод] Rust и парадокс Блаба</title><guid>BEPjCoXjqzh28dJmbnKc</guid><pubDate>2016-01-25 12:00:05</pubDate><author>habrabot</author><link>https://idec.foxears.su/BEPjCoXjqzh28dJmbnKc#BEPjCoXjqzh28dJmbnKc</link>
		<description>
		
 Несколько недель назад я наткнулся на [сравнительный анализ Rust, D и Go][1] от Андрея Александреску. Андрей, [уважаемый член сообщества C++][2] и главный разработчик [языка программирования D][3], нанес Rust сокрушительный удар под конец своего повествования, высказав нечто, ч...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Несколько недель назад я наткнулся на [сравнительный анализ Rust, D и Go][1] от Андрея Александреску. Андрей, [уважаемый член сообщества C++][2] и главный разработчик [языка программирования D][3], нанес Rust сокрушительный удар под конец своего повествования, высказав нечто, что выглядит довольно проницательным наблюдением:  _Чтение кода на Rust навевает шутки о том, как «друзья не позволяют друзьям пропускать день ног» и вызывает в голове комические образы мужчин с халкообразным торсом, балансирующим на тощих ногах. Rust ставит во главу угла безопасность и ювелирное обращение с памятью. В действительности, это довольно редко является настоящий проблемой, и такой подход превращает процесс мышления и написания кода в монотонный и скучный процесс._   После нескольких встреч с Андреем, увидев некоторые из его выступлений, я убедился, что он _любит подшучивать_. Тем не менее, давайте проглотим наживку. Эта шутка смешная только потому, что она выглядит смешной, или может быть потому, что в ней только доля шутки? [Читать дальше →][4]<br>
<br>
  [1]: <a href="https://www.quora.com/Which-language-has-the-brightest-future-in-replacement-of-C-between-D-Go-and-Rust-And-Why" class="url">https://www.quora.com/Which-language-has-the-brightest-future-in-replacement-of-C-between-D-Go-and-Rust-And-Why</a><br>
  [2]: <a href="http://www.amazon.com/Modern-Design-Generic-Programming-Patterns/dp/0201704315" class="url">http://www.amazon.com/Modern-Design-Generic-Programming-Patterns/dp/0201704315</a><br>
  [3]: <a href="http://dlang.org/" class="url">http://dlang.org/</a><br>
  [4]: <a href="https://habrahabr.ru/post/275801/#habracut" class="url">https://habrahabr.ru/post/275801/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Centos 7.x USB Install Media (Добавляем Centos в Multiboot)</title><guid>qJDSUAyFTAKbiG0lt3UE</guid><pubDate>2016-01-25 11:30:08</pubDate><author>habrabot</author><link>https://idec.foxears.su/qJDSUAyFTAKbiG0lt3UE#qJDSUAyFTAKbiG0lt3UE</link>
		<description>
		
 Как бывало здорово, берешь образ CentOS 6.x, выдергиваешь из него куски, и пихаешь все это на USB флешку, по соседству с другими системами.   Но, начиная с Centos 7, сделать это стало немного сложнее, и единственным официальным способом стала запись образа на прямую на носитель...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Как бывало здорово, берешь образ CentOS 6.x, выдергиваешь из него куски, и пихаешь все это на USB флешку, по соседству с другими системами.   Но, начиная с Centos 7, сделать это стало немного сложнее, и единственным официальным способом стала запись образа на прямую на носитель (с потерей всего что на нем уже есть).  Но, применив немножко смекалки, все решается, прошу под кат: [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275751/#habracut" class="url">https://habrahabr.ru/post/275751/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Использование SikuliX в фоновом режиме на Cloud9</title><guid>L2zkAmdZh8dJAQf9Arq9</guid><pubDate>2016-01-25 03:30:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/L2zkAmdZh8dJAQf9Arq9#L2zkAmdZh8dJAQf9Arq9</link>
		<description>
		
 SikuliX (старое название Sikuli) — это инструмент, который позволяет автоматизировать то, что вы видите на экране с помощью визуального распознавания (картинок). На хабре уже есть достаточно информации по [нему][1], но все примеры подразумевают использование реального экрана.  ...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 SikuliX (старое название Sikuli) — это инструмент, который позволяет автоматизировать то, что вы видите на экране с помощью визуального распознавания (картинок). На хабре уже есть достаточно информации по [нему][1], но все примеры подразумевают использование реального экрана.   Здесь же я опишу свой опыт использования SikuliX в фоновом режиме на облачной IDE [Cloud9][2]. В процессе работы с данным инструментом набил немного шишек, поэтому возможно, мой опыт будет кому-то полезен.   Вариантов использования SikuliX достаточно много, вот некоторые из действий, которые вы можете автоматизировать: <br>
<br>
* Работа с флеш сайтами (и любими другими)<br>
* Автоматизация браузерных игр (собирать урожай на ферме)<br>
* Работа с десктопными приложениями<br>
* Настройка компьютера<br>
* Разнообразные боты<br>
* Всякого рода рутинная работа с сайтами/документами<br>
<br>
[Читать дальше →][3]<br>
<br>
  [1]: <a href="http://habrahabr.ru/search/?q=Sikuli" class="url">http://habrahabr.ru/search/?q=Sikuli</a><br>
  [2]: <a href="https://c9.io" class="url">https://c9.io</a><br>
  [3]: <a href="https://habrahabr.ru/post/275717/#habracut" class="url">https://habrahabr.ru/post/275717/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Наконец-то https://habrahabr.ru</title><guid>d3tx8Xeup1tWIrzIlWKr</guid><pubDate>2016-01-23 18:00:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/d3tx8Xeup1tWIrzIlWKr#d3tx8Xeup1tWIrzIlWKr</link>
		<description>
		
 ![][1]   UPD:  первая же ветка комментариев показала, что даже на хабре пока не все серьезно относятся к вопросу;  добавил в хаб ИБ — ещё одно напоминание не будет лишним. [][2]

  [1]: https://habrastorage.org/files/6a5/316/49b/6a531649b5a74dc0817cce57a32adf5b.png
  [2]: https...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![][1]   UPD:  первая же ветка комментариев показала, что даже на хабре пока не все серьезно относятся к вопросу;  добавил в хаб ИБ — ещё одно напоминание не будет лишним. [][2]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/6a5/316/49b/6a531649b5a74dc0817cce57a32adf5b.png" class="url">https://habrastorage.org/files/6a5/316/49b/6a531649b5a74dc0817cce57a32adf5b.png</a><br>
  [2]: <a href="https://habrahabr.ru/post/275743/#habracut" class="url">https://habrahabr.ru/post/275743/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Кроссплатформенный Open Source Time Tracker</title><guid>hX7jrsk80qRzOk3znQfk</guid><pubDate>2016-01-23 16:30:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/hX7jrsk80qRzOk3znQfk#hX7jrsk80qRzOk3znQfk</link>
		<description>
		
 ![][1]  В этой статье я хочу рассказать о том, зачем мне понадобился тайм-трекер, как я его искал, почему не нашел и что из этого всего в итоге получилось. [Читать дальше →][2]

  [1]: https://habrastorage.org/files/95f/6e4/8eb/95f6e48ebf5e42419fc5bf78b0031572.png
  [2]: https:...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![][1]  В этой статье я хочу рассказать о том, зачем мне понадобился тайм-трекер, как я его искал, почему не нашел и что из этого всего в итоге получилось. [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/95f/6e4/8eb/95f6e48ebf5e42419fc5bf78b0031572.png" class="url">https://habrastorage.org/files/95f/6e4/8eb/95f6e48ebf5e42419fc5bf78b0031572.png</a><br>
  [2]: <a href="https://habrahabr.ru/post/275447/#habracut" class="url">https://habrahabr.ru/post/275447/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Метод Санделиуса для получения случайных перестановок</title><guid>5f3W3dfzvPQqvAiYn9Wu</guid><pubDate>2016-01-23 13:00:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/5f3W3dfzvPQqvAiYn9Wu#5f3W3dfzvPQqvAiYn9Wu</link>
		<description>
		
 Статьи о получении (псевдо)случайных чисел, о проверке качества полученных последовательностей неизменно вызывают интерес у населения Хабра.   Однако в приложениях наряду с последовательностями случайных и псевдослучайных чисел требуется получать [перестановки][1] чисел, имеющи...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Статьи о получении (псевдо)случайных чисел, о проверке качества полученных последовательностей неизменно вызывают интерес у населения Хабра.   Однако в приложениях наряду с последовательностями случайных и псевдослучайных чисел требуется получать [перестановки][1] чисел, имеющие [равномерное распределение][2]. Например, потребность в таких перестановках периодически появляется в криптографических приложениях.   Метод описанный ниже предложен Санделиусом (М. Sandelius) еще в 1962 г. в работе [1].  [Читать дальше →][3]<br>
<br>
  [1]: <a href="https://ru.wikipedia.org/wiki/%D0%9F%D0%B5%D1%80%D0%B5%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0" class="url">https://ru.wikipedia.org/wiki/%D0%9F%D0%B5%D1%80%D0%B5%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0</a><br>
  [2]: <a href="https://ru.wikipedia.org/wiki/%D0%94%D0%B8%D1%81%D0%BA%D1%80%D0%B5%D1%82%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D0%B2%D0%BD%D0%BE%D0%BC%D0%B5%D1%80%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5" class="url">https://ru.wikipedia.org/wiki/%D0%94%D0%B8%D1%81%D0%BA%D1%80%D0%B5%D1%82%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D0%B2%D0%BD%D0%BE%D0%BC%D0%B5%D1%80%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5</a><br>
  [3]: <a href="https://habrahabr.ru/post/275731/#habracut" class="url">https://habrahabr.ru/post/275731/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Проект Qt меняет лицензию и открывает код некоторых модулей</title><guid>qPA6Tgy22DNz9bjWUeIS</guid><pubDate>2016-01-23 03:30:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/qPA6Tgy22DNz9bjWUeIS#qPA6Tgy22DNz9bjWUeIS</link>
		<description>
		
 На прошлой неделе компания Qt Company (подразделение Digia) обновила текст соглашения с организацией KDE Free Qt Foundation и объявила о новой политике лицензирования Qt.   Организация KDE Free Qt Foundation была основана в 1998 г. с целью защиты Qt как свободного ПО. Между орг...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 На прошлой неделе компания Qt Company (подразделение Digia) обновила текст соглашения с организацией KDE Free Qt Foundation и объявила о новой политике лицензирования Qt.   Организация KDE Free Qt Foundation была основана в 1998 г. с целью защиты Qt как свободного ПО. Между организацией и компанией Trolltech был заключен договор, позволяющий в случае прекращения разработки свободной версии Qt, выпустить Qt под лицензией типа BSD (или любой другой свободной). Договор обновлялся, по мере того, как права на Qt переходили к Nokia, а затем к Digia.   Подробности новой лицензионной политики Qt под катом.  <br>
<br>
<br>
<br>
 [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275725/#habracut" class="url">https://habrahabr.ru/post/275725/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Проект Qt меняет лицензию, а также открывает код некоторых модулей</title><guid>xCjVApxwwNnApvBpRh64</guid><pubDate>2016-01-23 03:00:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/xCjVApxwwNnApvBpRh64#xCjVApxwwNnApvBpRh64</link>
		<description>
		
 На прошлой неделе компания Qt Company (подразделение Digia) обновила текст соглашения с организацией KDE Free Qt Foundation и объявила о новой политике лицензирования Qt.   Организация KDE Free Qt Foundation была основана в 1998 г. с целью защиты Qt как свободного ПО. Между орг...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 На прошлой неделе компания Qt Company (подразделение Digia) обновила текст соглашения с организацией KDE Free Qt Foundation и объявила о новой политике лицензирования Qt.   Организация KDE Free Qt Foundation была основана в 1998 г. с целью защиты Qt как свободного ПО. Между организацией и компанией Trolltech был заключен договор, позволяющий в случае прекращения разработки свободной версии Qt, выпустить Qt под лицензией типа BSD (или любой другой свободной). Договор обновлялся, по мере того, как права на Qt переходили к Nokia, а затем к Digia.   Подробности новой лицензионной политики Qt под катом.  <br>
<br>
<br>
<br>
 [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275725/#habracut" class="url">https://habrahabr.ru/post/275725/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Перевод] Процедурная генерация случайных игровых подземелий</title><guid>0NzgNKFxlGbmMPu5Vmml</guid><pubDate>2016-01-22 23:30:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/0NzgNKFxlGbmMPu5Vmml#0NzgNKFxlGbmMPu5Vmml</link>
		<description>
		
 ![image][1]   В посте подробно рассматривается техника генерации случайных подземелий. Основной алгоритм генерации, пример работы которого можно [посмотреть здесь][2], используется разработчиками игры [TinyKeep][3]. Оригинальный пост от разработчика [был размещён на reddit][4]....
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![image][1]   В посте подробно рассматривается техника генерации случайных подземелий. Основной алгоритм генерации, пример работы которого можно [посмотреть здесь][2], используется разработчиками игры [TinyKeep][3]. Оригинальный пост от разработчика [был размещён на reddit][4].   <br>
<br>
#### Оригинальное описание алгоритма<br>
<br>
  1. Сначала я задаю нужное количество комнат – к примеру, 150. Естественно, цифра произвольная, и чем она больше, тем сложнее будет подземелье.   2. Для каждой комнаты я создаю прямоугольник со случайными шириной и высотой, находящимися в пределах заданного радиуса. Радиус не имеет большого значения, хотя разумно предположить, что он должен быть пропорционален количеству комнат.   Вместо равномерно распределённых случайных чисел (какие выдаёт генератор Math.random в большинстве языков), я использую [нормальное распределение Парка-Миллера][5]. В результате вероятность появления маленьких комнат превышает вероятность появления больших. Зачем это надо, объясню позже.   Кроме того я проверяю, что соотношение длины и ширины комнаты не слишком велико. Нам не нужны как идеально квадратные комнаты, так и сильно вытянутые.   3. И вот у нас есть 150 случайных комнат, расположенных на небольшом пространстве. Большинство из них наезжают друг на друга. Теперь мы осуществляем их разделение по технологии separation steering, чтобы разделить прямоугольники так, чтоб они не пересекались. В результате они не пересекаются, но находятся достаточно близко друг от друга.   4. Заполняем промежутки клетками размером 1х1. В результате у нас получается квадратная решётка из комнат различного размера.   5. И тут начинается основное веселье. Определяем, какие из клеток решётки являются комнатами – это будут любые клетки с шириной и высотой, превышающими заданные. Из-за распределения Парка-Миллера мы получим сравнительно небольшое количество комнат, между которыми есть довольно много свободного пространства. Но оставшиеся клетки нам также пригодятся.   6. Следующий шаг – связывание комнат вместе. Для этого мы строим граф, содержащий центры всех комнат при помощи [триангуляции Делоне][6]. Теперь все комнаты связаны меж собой непересекающимися линиями.   7. Поскольку нам не нужно, чтобы все комнаты были связаны со всеми, мы строим [минимальное остовное дерево][7]. В результате получается граф, в котором гарантированно можно достичь любой комнаты.   8. Дерево получается аккуратным, но скучным – никаких вам замкнутых ходов. Поэтому мы случайным образом добавляем обратно примерно 15% ранее исключённых рёбер графа. В результате получится граф, где все комнаты гарантированно достижимы, с несколькими замкнутыми ходами.   9. Чтобы превратить его в коридоры, для каждого ребра строится серия прямых линий (в форме Г), идущих по рёбрам графа, соединяющим комнаты. Тут нам пригождаются те клетки, которые остались неиспользованными (те, что не превратились в комнаты). Все клетки, накладывающиеся на Г-образные линии, становятся коридорами. А из-за разнообразия размеров клеток стены коридоров будут неровными, что как раз хорошо для подземелья.   И вот [пример результата][8]!   Осторожно — под катом много  анимированных гифок! [Читать дальше →][9]<br>
<br>
  [1]: <a href="https://habrastorage.org/getpro/habr/post_images/5b0/d69/ca8/5b0d69ca8da486503d313162d6ad0147.png" class="url">https://habrastorage.org/getpro/habr/post_images/5b0/d69/ca8/5b0d69ca8da486503d313162d6ad0147.png</a><br>
  [2]: <a href="http://tinykeep.com/dungen/" class="url">http://tinykeep.com/dungen/</a><br>
  [3]: <a href="http://store.steampowered.com/app/278620/" class="url">http://store.steampowered.com/app/278620/</a><br>
  [4]: <a href="https://www.reddit.com/r/gamedev/comments/1dlwc4/procedural_dungeon_generation_algorithm_explained/" class="url">https://www.reddit.com/r/gamedev/comments/1dlwc4/procedural_dungeon_generation_algorithm_explained/</a><br>
  [5]: <a href="https://en.wikipedia.org/wiki/Normal_distribution" class="url">https://en.wikipedia.org/wiki/Normal_distribution</a><br>
  [6]: <a href="http://en.wikipedia.org/wiki/Delaunay_triangulation" class="url">http://en.wikipedia.org/wiki/Delaunay_triangulation</a><br>
  [7]: <a href="http://en.wikipedia.org/wiki/Minimum_spanning_tree" class="url">http://en.wikipedia.org/wiki/Minimum_spanning_tree</a><br>
  [8]: <a href="http://tinykeep.com/images/tinykeep/dungen_example.png" class="url">http://tinykeep.com/images/tinykeep/dungen_example.png</a><br>
  [9]: <a href="https://habrahabr.ru/post/275727/#habracut" class="url">https://habrahabr.ru/post/275727/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Новости про C++ продукты и JetBrains C++ Night в Санкт-Петербурге</title><guid>rtYlZ8RSmr658ILKDGGT</guid><pubDate>2016-01-22 21:30:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/rtYlZ8RSmr658ILKDGGT#rtYlZ8RSmr658ILKDGGT</link>
		<description>
		
 Привет, Хабр!   Праздники отгремели, зима в полном разгаре, кто-то уже выкинул новогоднюю елку, а кто-то ждет потепления. А мы упорно трудимся над новыми версиями наших C++ продуктов. Так, например, с декабря открыта программа раннего доступа (Early Access Program) CLion — наше...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Привет, Хабр!   Праздники отгремели, зима в полном разгаре, кто-то уже выкинул новогоднюю елку, а кто-то ждет потепления. А мы упорно трудимся над новыми версиями наших C++ продуктов. Так, например, с декабря открыта программа раннего доступа (Early Access Program) CLion — нашей кросс-платформенной IDE для C/C++.     Там очень много всего нового и интересного: [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275723/#habracut" class="url">https://habrahabr.ru/post/275723/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Обновлённое&amp;nbsp;приложение &amp;laquo;Мой&amp;nbsp;проездной&amp;raquo; в&amp;nbsp;помощь москвичам&amp;nbsp;</title><guid>AX2WK7AS73hf7RtgAVcb</guid><pubDate>2016-01-22 19:30:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/AX2WK7AS73hf7RtgAVcb#AX2WK7AS73hf7RtgAVcb</link>
		<description>
		
 Приложение является частью экосистемы Единой платежной платформы Банка Москвы. Благодаря этому пользователи, зарегистрированные на других сервисах платформы, могут зайти в приложение, используя логин и пароль уже существующей учетной записи – никаких дополнительных танцев с буб...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Приложение является частью экосистемы Единой платежной платформы Банка Москвы. Благодаря этому пользователи, зарегистрированные на других сервисах платформы, могут зайти в приложение, используя логин и пароль уже существующей учетной записи – никаких дополнительных танцев с бубном. [Подробнее][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/274259/#habracut" class="url">https://habrahabr.ru/post/274259/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Skype начал скрывать IP адреса по умолчанию</title><guid>2uuKizsIRSbpk3eEzLHv</guid><pubDate>2016-01-22 19:00:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/2uuKizsIRSbpk3eEzLHv#2uuKizsIRSbpk3eEzLHv</link>
		<description>
		
 ![image][1]   Корпорация Microsoft наконец решила проблему с IP адресами в своем мессенджере Skype. Еще четыре года назад было известно, что уязвимость в VoIP мессенджере позволяла злоумышленнику получать IP адреса пользователей в сервисе. Несмотря на то, что Microsoft относите...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![image][1]   Корпорация Microsoft наконец решила проблему с IP адресами в своем мессенджере Skype. Еще четыре года назад было известно, что уязвимость в VoIP мессенджере позволяла злоумышленнику получать IP адреса пользователей в сервисе. Несмотря на то, что Microsoft относительно недавно предоставила возможность пользователям скрывать свой IP, только сейчас эта опция [стала дефолтной][2].    Тяжелее всего приходилось геймерам и стримерам (и тем более геймерам-стримерам). Противники игрока всегда могли вычислить его IP, и осуществить DDoS атаку, выбрасывая геймера из системы. Изначально злоумышленнику нужен был Skype ID, после чего этот идентификатор при помощи сервиса резолвился в IP.  [Читать дальше →][3]<br>
<br>
  [1]: <a href="https://habrastorage.org/getpro/habr/post_images/1f0/949/850/1f0949850dacd17dd5b9b20d4960ff80.png" class="url">https://habrastorage.org/getpro/habr/post_images/1f0/949/850/1f0949850dacd17dd5b9b20d4960ff80.png</a><br>
  [2]: <a href="http://blogs.skype.com/2016/01/21/to-our-gamers-ip-will-now-be-hidden-by-default-in-latest-update/" class="url">http://blogs.skype.com/2016/01/21/to-our-gamers-ip-will-now-be-hidden-by-default-in-latest-update/</a><br>
  [3]: <a href="https://habrahabr.ru/post/275695/#habracut" class="url">https://habrahabr.ru/post/275695/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Из песочницы] Как правильно мониторить UPS ippon с NUT и Zabbix</title><guid>WcrzARRnym9RnARM9JAh</guid><pubDate>2016-01-22 19:00:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/WcrzARRnym9RnARM9JAh#WcrzARRnym9RnARM9JAh</link>
		<description>
		
 Длинный комментарий к [посту][1], в котором автор рассказал как мониторить ippon smart winner с помощью apcupsd. На мой взгляд это не правильное решение. В комментариях всплывал вопрос про NUT и я был удивлен, что никто не рассказал про работающее решение. Будем исправлять.  

...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 Длинный комментарий к [посту][1], в котором автор рассказал как мониторить ippon smart winner с помощью apcupsd. На мой взгляд это не правильное решение. В комментариях всплывал вопрос про NUT и я был удивлен, что никто не рассказал про работающее решение. Будем исправлять.  <br>
<br>
#### Часть первая: NUT<br>
<br>
  На самом деле NUT очень даже работает с представителями семейства smart winner от Ippon. И с InnovaRT тоже работает. [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275535" class="url">https://habrahabr.ru/post/275535</a><br>
  [2]: <a href="https://habrahabr.ru/post/275665/#habracut" class="url">https://habrahabr.ru/post/275665/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Из песочницы] OpenShift: немного внутренностей Gear'ов</title><guid>p3Gu25CvCWGwl9yDRR1T</guid><pubDate>2016-01-22 19:00:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/p3Gu25CvCWGwl9yDRR1T#p3Gu25CvCWGwl9yDRR1T</link>
		<description>
		
 

## Немного высокого

  Gear — «движок» Openshift, собственно среда исполнения вашего приложения. При бесплатной регистрации сразу дают три. Собственно говоря об устройстве можно ничего и не знать. Но это вредно.   1. Имеется определенная структура каталогов. Для вашего прилож...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 <br>
<br>
<span class="header">## Немного высокого</span><br>
<br>
  Gear — «движок» Openshift, собственно среда исполнения вашего приложения. При бесплатной регистрации сразу дают три. Собственно говоря об устройстве можно ничего и не знать. Но это вредно.   1. Имеется определенная структура каталогов. Для вашего приложения отведен ~/app-root.   типа ls  <br>
<br>
    build-dependencies -&gt; runtime/build-dependencies<br>
    data<br>
    dependencies -&gt; runtime/dependencies<br>
    logs<br>
    repo -&gt; runtime/repo<br>
    runtime<br>
<br>
  Собственно говоря интересны data и repo. Забавная деталь три каталога являются ссылками на подкаталоги runtime, а runtime/data — линком на data в текущем каталоге. runtime/.state содержит текущее состояние gear'a: started, idle, deploing.    2. Все адреса, пароли, каталоги и прочее содержаться в переменных окружения, с ними то и предстоит работа. Подробно переменные описаны [здесь][1].  <br>
<br>
<span class="header">## Теперь к земле поближе</span><br>
<br>
[Читать дальше →][2]<br>
<br>
  [1]: <a href="https://developers.openshift.com/en/managing-environment-variables.html" class="url">https://developers.openshift.com/en/managing-environment-variables.html</a><br>
  [2]: <a href="https://habrahabr.ru/post/275605/#habracut" class="url">https://habrahabr.ru/post/275605/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Security Week 03 или неделя патчей: Linux, OpenSSH, Cisco, Yahoo Mail, Apple</title><guid>sIfVlsA7pGuZpvrCFjiy</guid><pubDate>2016-01-22 19:00:02</pubDate><author>habrabot</author><link>https://idec.foxears.su/sIfVlsA7pGuZpvrCFjiy#sIfVlsA7pGuZpvrCFjiy</link>
		<description>
		
 ![][1]В информационной безопасности бывают такие периоды, когда никаких особых открытий не происходит. Вместо этого достаточно рутинная работа по закрытию (или незакрытию) ранее обнаруженных уязвимостей. На этой неделе как раз такой период: самые популярные новости практически ...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![][1]В информационной безопасности бывают такие периоды, когда никаких особых открытий не происходит. Вместо этого достаточно рутинная работа по закрытию (или незакрытию) ранее обнаруженных уязвимостей. На этой неделе как раз такой период: самые популярные новости практически полностью посвящены заплаткам. Что ж, тоже неплохо, тем более, что подход у разных компаний к патчам серьезно отличается, да и восприятие этой темы иногда бывает, ну, несколько странным.    Простой пример: в конце прошлого года в софте Apple (конкретно Mac OS X и iOS) [насчитали][2] рекордное количество уязвимостей. Ну то есть посмотрели в базу данных CVE, и обнаружили, что больше всего уязвимостей было обнаружено в Mac OS X, iOS и Adobe Flash. В некоторых СМИ даже назвали платформы Apple «самыми опасными», что, конечно, неправда. Ведь связь между «обнаружили уязвимость» и «пользователи в опасности» практически не прослеживается. Наоборот, в контексте базы CVE «обнаружили» как правило означает «закрыли». А это, в общем-то, хорошие новости.    Возможно тут дело в том, что многие ухватились за простой и понятный рейтинг дыр, с абсолютными цифрами, которые дают ложное чувство понимания ландшафта угроз. Хорошая попытка «упростить» тему, но нет, с безопасностью этот прием не проходит. Поэтому посмотрим на патчи этой недели внимательнее. Все выпуски дайджеста — [тут][3].  [Читать дальше →][4]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/21b/692/38f/21b69238ff8e46e4a7b042eae6ca382a.png" class="url">https://habrastorage.org/files/21b/692/38f/21b69238ff8e46e4a7b042eae6ca382a.png</a><br>
  [2]: <a href="http://venturebeat.com/2015/12/31/software-with-the-most-vulnerabilities-in-2015-mac-os-x-ios-and-flash/" class="url">http://venturebeat.com/2015/12/31/software-with-the-most-vulnerabilities-in-2015-mac-os-x-ios-and-flash/</a><br>
  [3]: <a href="http://habrahabr.ru/search/?target_type=posts&q=%5Bklsw%5D%20&order_by=date" class="url">http://habrahabr.ru/search/?target_type=posts&amp;q=%5Bklsw%5D%20&amp;order_by=date</a><br>
  [4]: <a href="https://habrahabr.ru/post/275693/#habracut" class="url">https://habrahabr.ru/post/275693/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Во FreeBSD обнаружены критически опасные уязвимости</title><guid>04sTSL2IRr08GsL2PyvK</guid><pubDate>2016-01-22 16:00:06</pubDate><author>habrabot</author><link>https://idec.foxears.su/04sTSL2IRr08GsL2PyvK#04sTSL2IRr08GsL2PyvK</link>
		<description>
		
 [![][1]][2]   Команда проекта FreeBSD сообщает, что в операционной системе обнаружен ряд критически опасных уязвимостей, позволяющих злоумышленникам проводить атаки, направленные на отказ в обслуживании, повышать привилегии и раскрывать важные данные. [Читать дальше →][3]

  [1...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 [![][1]][2]   Команда проекта FreeBSD сообщает, что в операционной системе обнаружен ряд критически опасных уязвимостей, позволяющих злоумышленникам проводить атаки, направленные на отказ в обслуживании, повышать привилегии и раскрывать важные данные. [Читать дальше →][3]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/050/05e/854/05005e854a9040d9b8d190a7f7b38ec5.png" class="url">https://habrastorage.org/files/050/05e/854/05005e854a9040d9b8d190a7f7b38ec5.png</a><br>
  [2]: <a href="https://habrahabr.ru/company/pt/blog/275637/" class="url">https://habrahabr.ru/company/pt/blog/275637/</a><br>
  [3]: <a href="https://habrahabr.ru/post/275637/#habracut" class="url">https://habrahabr.ru/post/275637/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>ChakraCore: проверка JavaScript-движка для Microsoft Edge</title><guid>zlObE46C1JWk7k2vxY69</guid><pubDate>2016-01-22 16:00:06</pubDate><author>habrabot</author><link>https://idec.foxears.su/zlObE46C1JWk7k2vxY69#zlObE46C1JWk7k2vxY69</link>
		<description>
		
 ![][1]В декабре 2015 года на конференции JSConf US разработчики объявили, что планируют открыть исходный код ключевых компонентов JavaScript-движка Chakra, работающего в Microsoft Edge. Недавно исходный код ChackraCore под MIT лицензией опубликовали в соответствующем репозитори...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![][1]В декабре 2015 года на конференции JSConf US разработчики объявили, что планируют открыть исходный код ключевых компонентов JavaScript-движка Chakra, работающего в Microsoft Edge. Недавно исходный код ChackraCore под MIT лицензией опубликовали в соответствующем репозитории на GitHub. В статье я расскажу, что удалось найти интересного в проекте с помощью статического анализатора PVS-Studio.  <br>
<br>
<span class="header">## Введение</span><br>
<br>
 [ChakraCore][2] это базовая составляющая Chakra, высокопроизводительный движок JavaScript, который запускает приложения Microsoft Edge и Windows, написанные на HTML/CSS/JS. ChakraCore поддерживает JIT-компиляцию на JavaScript для x86/x64/ARM, сборку мусора и широкий спектр самых последних возможностей JavaScript.  [PVS-Studio][3] — это статический анализатор для выявления ошибок в исходном коде программ, написанных на языках С, C++ и C#. Инструмент PVS-Studio предназначен для разработчиков современных приложений и интегрируется в среды Visual Studio 2010-2015. [Читать дальше →][4]<br>
<br>
  [1]: <a href="https://habrastorage.org/getpro/habr/post_images/4bf/919/24d/4bf91924dae0c9a42ba65ac3ffca2ca2.png" class="url">https://habrastorage.org/getpro/habr/post_images/4bf/919/24d/4bf91924dae0c9a42ba65ac3ffca2ca2.png</a><br>
  [2]: <a href="https://github.com/Microsoft/ChakraCore" class="url">https://github.com/Microsoft/ChakraCore</a><br>
  [3]: <a href="http://www.viva64.com/ru/pvs-studio/" class="url">http://www.viva64.com/ru/pvs-studio/</a><br>
  [4]: <a href="https://habrahabr.ru/post/275701/#habracut" class="url">https://habrahabr.ru/post/275701/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>[Перевод] Советы о том, как писать на С в 2016 году</title><guid>mNRoc05oQHgBhz8O6YSm</guid><pubDate>2016-01-22 15:00:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/mNRoc05oQHgBhz8O6YSm#mNRoc05oQHgBhz8O6YSm</link>
		<description>
		
 ![][1] _Если бы язык С был оружием_  _От автора: Наброски для этой статьи появились еще в начале 2015 года, правда, до публикации материалов дело так и не дошло. Наконец, решив, что в ящике моего письменного стола от вышеупомянутого «черновика» не будет никакой пользы, представ...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 ![][1] _Если бы язык С был оружием_  _От автора: Наброски для этой статьи появились еще в начале 2015 года, правда, до публикации материалов дело так и не дошло. Наконец, решив, что в ящике моего письменного стола от вышеупомянутого «черновика» не будет никакой пользы, представляю его вашему вниманию в исходном виде. Единственное, что изменилось в тексте – год, с 2015 на 2016.   И я всегда рад услышать комментарии по поводу необходимых исправлений, уточнений или даже ваши жалобы.    Итак, статья ..._   Первое правило программирования на С – не используйте его, если можно обойтись другими инструментами.   Когда найти альтернативный метод не удается, самое время вспомнить о современных заповедях программиста. [Читать дальше →][2]<br>
<br>
  [1]: <a href="https://habrastorage.org/files/da2/e08/e17/da2e08e172854d3ea0b0db284a03685a.png" class="url">https://habrastorage.org/files/da2/e08/e17/da2e08e172854d3ea0b0db284a03685a.png</a><br>
  [2]: <a href="https://habrahabr.ru/post/275685/#habracut" class="url">https://habrahabr.ru/post/275685/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Common Lisp SDL2 туториал: урок 1</title><guid>7AR2MXGQim53vAQz0k1a</guid><pubDate>2016-01-22 15:00:03</pubDate><author>habrabot</author><link>https://idec.foxears.su/7AR2MXGQim53vAQz0k1a#7AR2MXGQim53vAQz0k1a</link>
		<description>
		
 SDL2 — отличная библиотека, но туториалов по ней не очень много.  Common Lisp — отличный язык, но статей по нему катастрофически мало.  Думаю этого вполне достаточно, для того чтобы написать этот цикл статей.   Почему я выбрал общелисп? Что ж, на вкус и цвет как говорится.  Впр...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 SDL2 — отличная библиотека, но туториалов по ней не очень много.  Common Lisp — отличный язык, но статей по нему катастрофически мало.  Думаю этого вполне достаточно, для того чтобы написать этот цикл статей.   Почему я выбрал общелисп? Что ж, на вкус и цвет как говорится.  Впрочем, причины есть: <br>
<br>
<br>
<br>
<br>
 [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275651/#habracut" class="url">https://habrahabr.ru/post/275651/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Research Day</title><guid>y7AVYUFsnaPg5dF802yX</guid><pubDate>2016-01-22 14:00:09</pubDate><author>habrabot</author><link>https://idec.foxears.su/y7AVYUFsnaPg5dF802yX#y7AVYUFsnaPg5dF802yX</link>
		<description>
		
 **“Research day is coming”** — вот уже больше года все команды Plesk каждые две недели получают такое сообщение, напоминающее, что пора оторваться от своих текущих задач и заняться чем-то другим. «Свободный от работы день», так еще называют практику, принятую в Google, Apple, M...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 **“Research day is coming”** — вот уже больше года все команды Plesk каждые две недели получают такое сообщение, напоминающее, что пора оторваться от своих текущих задач и заняться чем-то другим. «Свободный от работы день», так еще называют практику, принятую в Google, Apple, Microsoft, Linkedin и много где еще. Насколько она эффективна? Мы в Plesk, например, провели более 70 исследований, требовавших в обычных условиях в 4 раза больше времени. Другой вопрос, что компании понимают над «свободой от работы».   В этой статье мы расскажем, что именно мы понимаем под практикой Research Day в нашей компании, как это работает, и что разработчики придумали, пока «отдыхали» от основных задач. [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275625/#habracut" class="url">https://habrahabr.ru/post/275625/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Systemd: пишем собственные .service и .target</title><guid>Xi7sbR4gpTdd2IpJeIhg</guid><pubDate>2016-01-22 12:00:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/Xi7sbR4gpTdd2IpJeIhg#Xi7sbR4gpTdd2IpJeIhg</link>
		<description>
		
 У меня появился Linux на домашнем компьютере, и я поспешил обжиться в новой ОС. Она была установлена с systemd init process. Это было мое первое знакомство с этим новым инструментом. Cвой ноутбук я использую для каждодневной жизни и для программирования. Мне хотелось включать р...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
 У меня появился Linux на домашнем компьютере, и я поспешил обжиться в новой ОС. Она была установлена с systemd init process. Это было мое первое знакомство с этим новым инструментом. Cвой ноутбук я использую для каждодневной жизни и для программирования. Мне хотелось включать рабочие программы (Apache2 и MySQL) только на время, пока я их использую, чтобы не тратить впустую ресурсы своего компьютера. Дополнительно, для тестирования я написал bash скрипт, который выгружает содержимое одной из MySQL БД c жесткого диска в ОЗУ (в tmpfs) – так тесты выполняются значительно быстрее. По идее, я мог бы начинать свой рабочий день вот так: <br>
<br>
systemctl start apache2.service<br>
systemctl start mysqld.service<br>
/root/scripts/mysqld-tmpfs start<br>
<br>
<br>
  И заканчивать его: <br>
<br>
systemctl stop apache2.service<br>
systemctl stop mysqld.service<br>
/root/scripts/mysqld-tmpfs stop<br>
<br>
<br>
  Но мне хотелось сделать вещи “как надо”. [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275645/#habracut" class="url">https://habrahabr.ru/post/275645/#habracut</a><br>

]]>
</content:encoded></item>
<item><title>Project Abacus от Google: биометрия вместо пароля</title><guid>yJT2UNXmNfeqYV3P9phQ</guid><pubDate>2016-01-22 12:00:04</pubDate><author>habrabot</author><link>https://idec.foxears.su/yJT2UNXmNfeqYV3P9phQ#yJT2UNXmNfeqYV3P9phQ</link>
		<description>
		
    Соответствие процесса аутентификации пользователей различных сервисов и устройств при помощи связки логин/пароль текущим потребностям и желаниям самих пользователей — большой вопрос. Обсуждений, посвященных поиску возможных альтернатив логину и пароля в Сети тоже очень много...
		</description>
		<content:encoded>
<![CDATA[
habrabot -> All<br><br>
    Соответствие процесса аутентификации пользователей различных сервисов и устройств при помощи связки логин/пароль текущим потребностям и желаниям самих пользователей — большой вопрос. Обсуждений, посвященных поиску возможных альтернатив логину и пароля в Сети тоже очень много, как среди обывателей, так и среди технических специалистов высокого класса.    Корпорация Google решила предложить собственный метод аутентификации, где не используется привычная форма с предложением ввести свои данные. Сейчас специалисты компании работают над проектом, получившим название Project Abacus. Работает над проектом команда Advanced Technology and Projects (ATAP). В рамках проекта разработчики пытаются найти надежный способ аутентификации пользователя при помощи биометрии. И здесь имеются в виду не отпечатки пальцев, проект более универсальный.  [Читать дальше →][1]<br>
<br>
  [1]: <a href="https://habrahabr.ru/post/275649/#habracut" class="url">https://habrahabr.ru/post/275649/#habracut</a><br>

]]>
</content:encoded></item>
</channel></rss>
