RSS
Pages: 1 ... 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 ... 133
[>] Duplo Railroad Tycoon: Синтез железнодорожной сети с максимальным покрытием
habra.16
habrabot(difrex,1) — All
2017-01-17 13:00:08


![image][1]

Детям Дед Мороз принес железную дорогу Duplo. Сегменты рельс очень легко соединяются между собой, и можно построить какой-нибудь небольшой, скорее всего просто замкнутый путь, поставить станцию и смотреть, как паровозик бегает по кругу. Иногда он останавливается и детёнок должен паровоз «заправить» из колонки, после чего паровоз снова поедет.

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

[1]: https://habrastorage.org/files/821/583/b7e/821583b7e34d434a8fd7510c29f1adb6.png
[2]: https://habrahabr.ru/post/319702/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Автопоиск IP-адресов
habra.16
habrabot(difrex,1) — All
2017-01-17 13:30:03


![Preview][1]


## Зачем вообще искать IP?


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

* Данные терминалы будут общедоступными и работать в [режиме киоска][2]. Поэтому идея добавить на них какую-нибудь панель администрирования, сразу же отпадала, ибо случайный юзер сможет «наклацать» в настройках IP-адреса что ему заблагорассудится.
* Можно было бы зашить в терминалы IP-адрес сервера обновлений, но так как сервер, в моем случае, — это всего лишь десктопное приложение, которое пользователь может запускать на любом компьютере в подсети, то такое решение тоже не подошло.
* Взяв в учет предыдущие два пункта, можно было бы реализовать панель администрирования, со входом по паролю, но, все же, постоянно вбивать новый IP-адрес сервера обновлений — это лишняя головная боль обслуживающему персоналу.
Поэтому от идеи «забирать» я перешел к идее «отправлять» и начал мастерить реализацию автоматического поиска IP-адресов на Python 3. [Читать дальше →][3]

[1]: https://habrastorage.org/files/7fb/0ce/538/7fb0ce538a3947c897150d3fbe238c16.jpg
[2]: https://support.google.com/chrome/a/answer/6137028?hl..
[3]: https://habrahabr.ru/post/319706/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Обработка препроцессорных директив в Objective-C
habra.16
habrabot(difrex,1) — All
2017-01-17 13:30:03


Язык программирования с [препроцессорными директивами][1] сложен для обработки, поскольку в этом случае необходимо вычислять значения директив, вырезать ненужные фрагменты некомпилируемого кода, а затем производить парсинг очищенного кода. Обработка директив может осуществляться также во время парсинга обычного кода. Данная статья подробно описывает оба подхода применительно к языку Objective-C, а также раскрывает их достоинства и недостатки. Эти подходы существуют не только в теории, но уже реализованы и используются на практике в таких веб-сервисах, как Swiftify и Codebeat.



[![][2]][3]
**Swiftify** — веб-сервис для преобразования исходников на Objective-C в Swift. На данный момент сервис поддерживает обработку как одиночных файлов, так и целых проектов. Таким образом, он может сэкономить время разработчикам, желающим освоить новый язык от Apple.



[![][4]][5]
**Codebeat** — автоматизированная система для подсчета метрик кода и проведения анализа для различных языков программирования, в том числе и Objective-C.


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

[1]: https://ru.wikipedia.org/wiki/%D0%94%D0%B8%D1%80%D0%B5%D0%BA%D1%82%D0%B8%D0%B2%D0%B0_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)
[2]: https://habrastorage.org/files/d3c/d53/8db/d3cd538db7604fe3ad10f759a9042d76.jpg
[3]: https://habrahabr.ru/post/318954/
[4]: https://habrastorage.org/files/f81/032/e83/f81032e83f4d45cba5a529fad9df9834.png
[5]: https://habrahabr.ru/post/318954/
[6]: https://habrahabr.ru/post/318954/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Создание кастомных Go-профилей с помощью pprof. Запоминаем стеки
habra.16
habrabot(difrex,1) — All
2017-01-17 13:30:03


![][1]
_Кадр из сериала «Коломбо»_

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

[1]: https://habrastorage.org/files/a1f/fbd/e49/a1ffbde493724bcd9b86687b10ac4440.jpg
[2]: https://habrahabr.ru/post/318336/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Конкурс GraphHPC-2017 на самую быструю реализацию задачи Betweenness Centrality
habra.16
habrabot(difrex,1) — All
2017-01-17 14:00:04


![][1]

Лаборатория [DISLab][2] ([ОАО «НИЦЭВТ»][3]) совместно с [НИВЦ МГУ][4] проводят четвертую ежегодную научно-практическую конференцию по проблемам параллельной обработки больших графов с использованием суперкомпьютерных комплексов и кластерных систем.



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



**Совсем скоро,** в рамках данной научно-технической конференции [GraphHPC-2017][5], стартует **[конкурс][6]** GraphHPC, посвященный проблемам параллельной обработки больших графов с использованием суперкомпьютеров. В этот раз участникам предстоит получить самую быструю реализацию задачи **[Betweenness Centrality][7]** (Центральность по посредничеству) в неориентированном графе.

[Интересно - жми сюда!][8]

[1]: https://habrastorage.org/files/28c/ca7/2c3/28cca72c35cd43b88bffa2455175e6b0.gif
[2]: http://www.dislab.org/
[3]: http://www.nicevt.ru/
[4]: http://www.srcc.msu.su/
[5]: http://dislab.org/GraphHPC-2017/
[6]: http://contest.dislab.org/
[7]: http://contest.dislab.org/problem/BetweennessCentrality/
[8]: https://habrahabr.ru/post/319646/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Облачные вычисления второго поколения: Система CLAVIRE
habra.16
habrabot(difrex,1) — All
2017-01-17 14:00:04


Под катом в этом материале — рассказ о том, что такое AaaS, почему модель Application as a Service считается более перспективной, чем знакомые нам SaaS, PaaS и IaaS, и как разработчики и ученые Университета ИТМО реализуют такую модель в рамках проекта CLAVIRE.

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

[1]: https://habrastorage.org/files/0d1/f62/701/0d1f627014444029acc50b0f707eabd4.jpeg
[2]: https://habrahabr.ru/company/spbifmo/blog/319688/
[3]: https://habrahabr.ru/post/319688/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Интервью с Эдди Виллемсом (G Data Software AG): Смарт-безопасность и «Интернет неприятностей»
habra.16
habrabot(difrex,1) — All
2017-01-17 15:30:04


![][1]

В этот раз Технический директор антивирусной лаборатории PandaLabs Луис Корронс поговорил с Эдди Виллемсом, евангелистом по безопасности в компании G Data Software AG. Речь шла о безопасности в эпоху Интернета вещей. [Читать дальше →][2]

[1]: https://habrastorage.org/files/f08/723/f23/f08723f235094b419a9696bf4edeee06.jpg
[2]: https://habrahabr.ru/post/319734/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Трагикартинки Фэйсбука
habra.16
habrabot(difrex,1) — All
2017-01-17 15:30:04


Всем привет!
Да, это я 2 года 11 месяцев и 6 дней назад [обещал][1] рассказать про новые уязвимости. Но со временем стало понятно, что, либо они не интересные, либо рассказывать о них пришлось бы с помощью скриншотов больше похожих на рассекреченные документы спецслужб — пара бессмысленных слов и куча чёрных прямоугольников. Но — время пришло.

Я уверен, что все вы слышали про [ImageMagick][2] и его [«Трагедию»][3]. Эта уязвимость была найдена в конце апреля 2016 года и в следствии того, что многие плагины, обрабатывающие изображения, использовали библиотеку ImageMagick, данная проблема охватывала большое количество систем. Так как были свидетельства о том, что информация о данной уязвимости была доступна не только исследователям, которые её обнаружили, и разработчикам ImageMagick'а, но и третьим лицам, 3 мая 2016 года информация о уязвимости (без PoC) была раскрыта для всего мира. Многие исследователи воспользовались данной информацией и нашли уязвимости в приложениях, которые не были обновлены вовремя. К сожалению, я не был среди этих счастливчиков. Но это было в мае:)
[Читать дальше →][4]

[1]: https://habrahabr.ru/post/212317/
[2]: https://www.imagemagick.org/
[3]: https://imagetragick.com/
[4]: https://habrahabr.ru/post/319676/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Исследование методов сегментации изображений
habra.16
habrabot(difrex,1) — All
2017-01-17 19:30:04


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



Методы, которые будут рассмотрены в данной статье:


1. Метод выращивания регионов;
2. Метод водораздела;
3. Метод нормальных разрезов.

## Исследование методов сегментации на модельных изображениях {#issledovanie-metodov-segmentacii-na-modelnyh-izobrazheniyah}



Исследование методов сегментации первоначально проводилось моделях изображений. В качестве моделей использовались девять видов изображений.



![image][1]

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

[1]: https://habrastorage.org/files/c10/f20/179/c10f20179cdf48ceb1f95539894db3b1.PNG
[2]: https://habrahabr.ru/post/319782/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Система рекомендаций интернет магазина на основе методов машинного обучения в Compute Engine (Google Cloud Platform)
habra.16
habrabot(difrex,1) — All
2017-01-17 19:30:04


С помощью сервисов Google Cloud Platform можно создать эффективную масштабируемую систему рекомендаций для интернет-магазина.

На рынке интернет-торговли сложилась интересная ситуация. Хотя общий денежный поток вырос, увеличилось и количество продавцов. Это привело к тому, что доля каждого магазина уменьшилась, а конкуренция между становится все напряженнее. Один из способов увеличить средний размер покупки (а значит, и прибыль) – предлагать покупателям дополнительные товары, которые могут их заинтересовать.

Из этой статьи вы узнаете, как на базе Cloud Platform настроить среду для поддержки базовой системы рекомендаций, которую со временем можно будет доработать и расширить.

В ней описывается решение для сайта агентства по аренде недвижимости, позволяющее подбирать и предлагать рекомендации пользователям.

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

[1]: https://habrastorage.org/files/a09/66e/a3d/a0966ea3d1dc419aa6de610555f48306.png
[2]: https://habrahabr.ru/post/319704/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] IDEA пора закапывать?
habra.16
habrabot(difrex,1) — All
2017-01-17 20:00:03


В этой статье я хочу поднять тему старения компаний и извечный вопрос: что делать простым пользователям? На примере IDEA. С графиками деградации и загнивания.

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

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

[>] [Перевод] SQL инъекция в GitHub Enterprise
habra.16
habrabot(difrex,1) — All
2017-01-18 11:30:02


![][1]

Привет Хабр,

Ниже рассказ автора Orange Tsai о том, как он целенаправленно искал уязвимость в корпоративной версии GitHub и в итоге обнаружил возможность SQL инъекции. Тут, на хабре, ранее уже публиковался перевод другой его статьи "[Как я взломал Facebook и обнаружил чужой бэкдор][2]".
[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/305/b3d/022/305b3d0229e3ab7193765b327f114e88.png
[2]: https://habrahabr.ru/company/defconru/blog/282179/
[3]: https://habrahabr.ru/post/319786/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Пространственный индекс для PostgreSQL на основе Z-order (vs R-tree), продолжение
habra.16
habrabot(difrex,1) — All
2017-01-18 11:30:02


![][1]


В [прошлый раз][2] мы пришли к выводу, что для эффективной работы пространственного индекса на основе Z-order необходимо сделать 2 вещи:
* эффективный алгоритм получения подинтервалов
* низкоуровневую работу с B-деревомВот именно этим мы и займёмся под катом. [Читать дальше →][3]

[1]: https://habrastorage.org/files/13c/a11/68b/13ca1168b7124e42a2a309744fd977eb.png
[2]: https://habrahabr.ru/post/319096/
[3]: https://habrahabr.ru/post/319810/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Я работаю в ТехЦентре Дойче Банка
habra.16
habrabot(difrex,1) — All
2017-01-18 12:30:03


Всем привет! Я Александр Белотуркин, работаю Дев Менеджером в ТехЦентре Дойче Банка, куда пришел более 4-х лет назад. В первый день было непривычно. По сравнению с IT компаниями, где большинство приходит в джинсах и футболках, было очень необычно увидеть людей в строгих рубашках и говорящих по телефону на английском. Но со временем атмосфера стала привычной и дружной. Меня заинтересовала, с одной стороны, близость к конечному пользователю, умение и желание этого пользователя объяснять суть проблем, которые мы совместно решаем, а с другой стороны — коллеги, которые так трепетно относятся к качеству своей работы. И, забегая немного вперед, скажу: нет, мы не пишем бухгалтерию под win98, мы делаем самую эффективную в мире платформу для торговли валютными деривативами и еще много всего интересного.
[Читать дальше →][1]

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

[>] Старикам здесь вполне ещё место: забытые IT-технологии в строю
habra.16
habrabot(difrex,1) — All
2017-01-18 13:30:03


![][1]

В сентябре 2016 года прошла [удивительная новость][2]: в небольшой польской автомастерской обнаружился компьютер [Commodore 64][3], использующийся владельцем для балансировки карданных валов. Commodore 64, Карл! Причём компьютер выжил даже после того, как мастерскую однажды затопило паводком. Эта история натолкнула нас на мысль поискать другие примеры современного использования старых, забытых IT-технологий. [Читать дальше →][4]

[1]: https://habrastorage.org/files/3af/2a2/16c/3af2a216cf0e455fa3f3ead06a7187e5.png
[2]: https://www.facebook.com/CommodoreUSA/photos/a.224898297528365.64728.181491231869072/1279382015413316/?type=3&theater
[3]: https://ru.wikipedia.org/wiki/Commodore_64
[4]: https://habrahabr.ru/post/319824/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Z-order vs R-tree, продолжение
habra.16
habrabot(difrex,1) — All
2017-01-18 13:30:03


![][1]


В [прошлый раз][2] мы пришли к выводу, что для эффективной работы пространственного индекса на основе Z-order необходимо сделать 2 вещи:

* эффективный алгоритм получения подинтервалов
* низкоуровневую работу с B-деревом
Вот именно этим мы и займёмся под катом.
[Читать дальше →][3]

[1]: https://habrastorage.org/files/13c/a11/68b/13ca1168b7124e42a2a309744fd977eb.png
[2]: https://habrahabr.ru/post/319096/
[3]: https://habrahabr.ru/post/319810/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Рекурсия. Беглый взгляд
habra.16
habrabot(difrex,1) — All
2017-01-18 14:30:03


![image][1]



Ниже речь пойдёт о старушке рекурсии, которую неплохо бы представлять, понимать и применять.

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

[1]: http://s017.radikal.ru/i417/1412/3c/1f57d2a462f8.jpg
[2]: https://habrahabr.ru/post/319790/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Язык программирования Сtag. Вступление
habra.16
habrabot(difrex,1) — All
2017-01-18 15:30:03


Впервые я познакомился с программированием в 6 классе… Тогда это был старинный компилятор borland pascal, который мог запускаться только с помощью эмулирования MS-DOS. С тех пор прошло 6 лет… Маленький мальчик вырос и стал писать более читаемый код, а судьба привела его в один из лучших технических вузов страны. Но те 6 лет не прошли даром. В течение них накапливался огромный пласт противоречий, которые заставляли его искать все более и более совершенный язык… Так появился на свет Ctag — продукт переосмысления достижений человечества.
[Читать дальше →][1]

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

[>] Старикам здесь вполне ещё место: забытые ИT-технологии в строю
habra.16
habrabot(difrex,1) — All
2017-01-18 16:00:03


![][1]

В сентябре 2016 года прошла [удивительная новость][2]: в небольшой польской автомастерской обнаружился компьютер [Commodore 64][3], использующийся владельцем для балансировки карданных валов. Commodore 64, Карл! Причём компьютер выжил даже после того, как мастерскую однажды затопило паводком. Эта история натолкнула нас на мысль поискать другие примеры современного использования старых, забытых IT-технологий. [Читать дальше →][4]

[1]: https://habrastorage.org/files/3af/2a2/16c/3af2a216cf0e455fa3f3ead06a7187e5.png
[2]: https://www.facebook.com/CommodoreUSA/photos/a.224898297528365.64728.181491231869072/1279382015413316/?type=3&theater
[3]: https://ru.wikipedia.org/wiki/Commodore_64
[4]: https://habrahabr.ru/post/319824/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] jl-sql: работаем с JSON-логами в командной строке с помощью SQL
habra.16
habrabot(difrex,1) — All
2017-01-18 18:30:04


Вступление никому не интересно, поэтому начну сразу с примеров использования


![json-pipe-sql][1]
% cat log.json
{"type": "hit", "client": {"ip": "127.1.2.3"}}
{"type": "hit", "client": {"ip": "127.2.3.4"}}
{"type": "hit", "client": {"ip": "127.3.4.5"}}
{"type": "hit", "client": {"ip": "127.3.4.5"}}
{"type": "hit", "client": {"ip": "127.1.2.3"}}
{"type": "click", "client": {"ip": "127.1.2.3"}}
{"type": "click", "client": {"ip": "127.2.3.4"}}

Выполняем запрос:


% cat log.json | jl-sql 'SELECT client.ip, COUNT(*) AS count WHERE type = "hit" GROUP BY client.ip'
{"client":{"ip":"127.1.2.3"},"count":2}
{"client":{"ip":"127.2.3.4"},"count":1}
{"client":{"ip":"127.3.4.5"},"count":2} [Читать дальше →][2]

[1]: https://habrastorage.org/files/6fb/fc4/506/6fbfc450605a4350bfce24d2ddb54b42.png
[2]: https://habrahabr.ru/post/319722/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Bitcoin in a nutshell — Cryptography
habra.16
habrabot(difrex,1) — All
2017-01-18 20:00:04


Одна из причин, почему Bitcoin продолжает привлекать столько внимания — это его исключительная «математичность». Сатоши Накамото удалось создать систему, которая способна функционировать при полном отсутствии доверия между ее участниками. Все взаимодействия основаны на строгой математике, никакого человеческого фактора — вот в чем была революционность идеи, а не в одноранговой сети, как многие думают. Поэтому первую главу я решил посвятить именно математическим основам Bitcoin.

Ниже я постараюсь объяснить вам самые базовые вещи — эллиптические кривые, ECC, приватные / публичные ключи и так далее. По возможности я буду иллюстрировать свои слова примерами кода, преимущественно на Python 2.7, если что-то непонятно — спрашивайте в комментариях.

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

[1]: https://habrastorage.org/getpro/habr/post_images/26c/0e3/b87/26c0e3b873ba64ade7512aea9d9a7a6b.jpg
[2]: https://habrahabr.ru/post/319868/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Про хаскелль для самых маленьких на примере задачи с codefights
habra.16
habrabot(difrex,1) — All
2017-01-18 20:00:04


![КДПВ (в представлении художника)][1]
Если вы интересуетесь функциональным программированием или даже пытаетесь его потихоньку освоить то вам, наверняка, не раз приходилось слышать, что главным отличием от прививочного вам императивного подхода является тот факт, что программы строятся от общего к частностям, а не наоборот. Т.е. сначала вы определяетесь с тем, что вы хотите получить, а потом уже — как этого достичь. Такая простая, казалось бы, мысль обычно не дает мозгу покоя и вызывает множественные фрустрации в попытках написать что-нибудь полезное. Если эта история про вас, или вам просто интересно немного научится хаскеллю и ФП продолжайте чтение и я покажу вам как все просто. Статья в стиле «некогда объяснять, пиши».

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

[1]: https://habrastorage.org/files/9d8/578/fa6/9d8578fa628c4e61987dc263d014a146.png
[2]: https://habrahabr.ru/post/319440/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Bitcoin in a nutshell — Transaction
habra.16
habrabot(difrex,1) — All
2017-01-18 21:30:04


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



Когда мы имеем дело с финансовой системой на основе блокчейна, то процесс денежного перевода выглядит совершенно иначе. В Bitcoin не существует никакой общей таблицы вида <адрес, баланс>, ровно как и не существует регулятора, который бы эту таблицу редактировал. В этой статье я покажу, что из себя представляет транзакция в Bitcoin, как она строится, и объясню, зачем же внутри Bitcoin добавлен свой язык программирования, про который все слышали, но никто не видел.



![meme][1]

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

[1]: http://image.slidesharecdn.com/blockchainen-160202215848/95/the-bitcoin-blockchain-en-11-638.jpg?cb=1459267563
[2]: https://habrahabr.ru/post/319860/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Как различать британскую и американскую литературу с помощью машинного обучения
habra.16
habrabot(difrex,1) — All
2017-01-18 21:30:04


Однажды мне стало интересно, отличается ли британская и американская литература с точки зрения выбора слов, и если отличается, удастся ли мне обучить классификатор, который бы различал литературные тексты с точки зрения частоты использованных слов. Различать тексты, написанные на разных языках, довольно легко, мощность пересечения множества слов небольшая относительно множества слов в выборке. Классификация текста по категориям «наука», «христианство», «компьютерная графика», «атеизм», — всем известный [hello world][1] среди задач по работе с частотностью текста. Передо мной стояла более сложная задача, так как я сравнивала два диалекта одного языка, а тексты не имели общей смысловой направленности.



![image][2]

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

[1]: http://scikit-learn.org/stable/tutorial/text_analytics/working_with_text_data.html
[2]: https://habrastorage.org/files/ff8/ce9/fe7/ff8ce9fe774e44fcb971d7e101a48c9e.jpg
[3]: https://habrahabr.ru/post/319826/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Чистая архитектура в Python: пошаговая демонстрация. Часть 3
habra.16
habrabot(difrex,1) — All
2017-01-19 09:00:04


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

* [Часть 1][1]
* [Часть 2][2]
* _Часть 3_





### Сценарии (часть 2)



**Git tag:**[ Step06][3]



Теперь, когда мы реализовали объекты запроса и ответа, добавляем их. Помещаем в файл `tests/use_cases/test_storageroom_list_use_case.py` следующий код:

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

[1]: https://habrahabr.ru/post/319126/
[2]: https://habrahabr.ru/post/319202/
[3]: http://github.com/lgiordani/rentomatic/tree/step06
[4]: https://habrahabr.ru/post/319898/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] VulnHub: USV 2016. CTF в Румынии, какие они?
habra.16
habrabot(difrex,1) — All
2017-01-19 09:00:04


![][1]
Всем доброго времени суток, в этой статье рассмотрим решение Румынского [CTF-USV 2016][2], на тему: _«Игра престолов»_. Скачать образ виртуальной машины можно по [ссылке][3] с VulnHub.
Если вам интересно как проходят межвузовские _CTF_ в Румынии, прошу под кат [Читать дальше →][4]

[1]: https://habrastorage.org/files/ea0/37c/229/ea037c22954048b985244d3b9795de38.jpeg
[2]: http://ctf.usv.ro
[3]: https://www.vulnhub.com/entry/usv-2016,175/
[4]: https://habrahabr.ru/post/319586/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Python: коллекции, часть 3: конкатенация, добавление и удаление элементов
habra.16
habrabot(difrex,1) — All
2017-01-19 09:30:04


Продолжим изучать общие принципы работы со стандартными коллекциями (модуль collections в ней не рассматривается) Python. Будут рассматриваться способы конкатенации (объединения) коллекций с формированием новой или изменением исходной, а также способы добавлять и удалять элементы в изменяемые коллекции.

Данная статья является продолжением моей статьи "[Python: коллекции, часть 2: индексирование, срезы, сортировка][1]".

**Для кого**: для изучающих Python и уже имеющих начальное представление о коллекциях и работе с ними, желающих систематизировать и углубить свои знания, сложить их в целостную картину.
[Читать дальше →][2]

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

[>] [Перевод] Первый официальный релиз Webpack 2. Что нового по сравнению с Webpack 1?
habra.16
habrabot(difrex,1) — All
2017-01-19 11:00:03


[![Webpack 2 Release][1]][2]



**Предупреждение**: проверьте, как установлена версия Webpack в package.json. Возможно скоро ваш continuous integration сломается.



Наконец-то Webpack 2 преодолел рубеж beta и release candidate. Это значит, что всё работает стабильно, и можно без опаски использовать его в production.



Список изменений/улучшений:


* Нативная поддержка ES6-модулей;
* Разбиение кода на чанки — Code Splitting with ES6;
* Поддержка динамических выражений при загрузке модулей — Dynamic expressions;
* Изменения при работе с Babel;
* ES6-специфичные оптимизации;
* Breaking Changes;
* Новый сайт с документацией.

Подробности под катом.

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

[1]: https://habrastorage.org/files/674/0d6/613/6740d6613b0241a9a9c0404bd4670e4d.png
[2]: https://habrahabr.ru/company/devexpress/blog/319906/
[3]: https://habrahabr.ru/post/319906/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Python: коллекции, часть 3: объединение коллекций, добавление и удаление элементов
habra.16
habrabot(difrex,1) — All
2017-01-19 11:00:03


Продолжим изучать общие принципы работы со стандартными коллекциями (модуль collections в ней не рассматривается) Python. Будут рассматриваться способы объединения и обновления коллекций с формированием новой или изменением исходной, а также способы добавлять и удалять элементы в изменяемые коллекции.

Данная статья является продолжением моей статьи "[Python: коллекции, часть 2: индексирование, срезы, сортировка][1]".

**Для кого**: для изучающих Python и уже имеющих начальное представление о коллекциях и работе с ними, желающих систематизировать и углубить свои знания, сложить их в целостную картину.
[Читать дальше →][2]

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

[>] «DPI платит за себя»: Актуальные бизнес-кейсы
habra.16
habrabot(difrex,1) — All
2017-01-19 11:30:05


DPI-системы, которые [стали][1] результатом слияния нескольких [систем][2] фильтрации пакетов, значительно упростили процессы управления сетями и сайтами, а также повысили их защищенность от атак. Это позволило расширить сферу применимости технологий глубокого анализа трафика.

Аналитики считают, что к 2018 году рынок DPI [достигнет][3] планки в 3,81 млрд долларов. При этом стоит учитывать, что в 2013 году он оценивался всего в 742 млн долларов. Не в последнюю очередь такой рост обусловлен тем, что DPI-решения позволяют провайдерам получить определенную экономическую выгоду. О том, какие функции глубокого анализа трафика экономят средства, и пойдет речь в нашем сегодняшнем материале.

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

[1]: https://www.christopher-parsons.com/Main/wp-content/uploads/2013/02/DPI-and-Its-Predecessors-3.5.pdf?d527f6
[2]: http://www.infosectoday.com/Articles/Deep_Packet_Inspection_Technologies.htm
[3]: http://www.transparencymarketresearch.com/deep-packet-inspection-dpi-market.html
[4]: https://habrastorage.org/files/48e/954/71d/48e95471ddd64ab997ddea1aa901e713.jpg
[5]: https://habrahabr.ru/company/vasexperts/blog/319624/
[6]: https://habrahabr.ru/post/319624/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] 2D магия в деталях. Часть четвёртая. Вода
habra.16
habrabot(difrex,1) — All
2017-01-19 14:00:04



> — Я тут воду для проекта запилил.
> — О, круто! А почему она плоская? Даёшь волны!
> …
> — Слушай, ты тогда про волны говорил, помнишь? Зацени!
> — Да, хорошие волны, а преломление и каустику ещё не делал?
> …
> — Привет, я тут игрался с Unity всю ночь, смотри какие отражения и каустику закодил!
> — Дарова, и правда, хорошо! А когда у тебя вода кипит, отражения не глючат?
> …
> — Хай, реализовал наконец, кипение, вроде ничего?
> — О, прямо как нужно! Слушай, прикинь как круто, если кипящую волну заморозить?
> …
> — Лови картинку, лёд вроде ничего придумал?
> — Норм, слушай, а у тебя лёд замерзает, он в объёме увеличивается? И кстати, ты когда геймлей то делать начнёшь?
> _Вариации на тему лога с другом._

Да, вы уже поняли, наконец-то расскажу про реализацию воды в проекте. Приступим?

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

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

[>] Безопасность сайта по его заголовкам, или что делать, если хочется залезть во внутренности каждого сайта
habra.16
habrabot(difrex,1) — All
2017-01-19 16:00:04


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

![image][1]

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

[1]: https://habrastorage.org/getpro/habr/post_images/765/9f4/f1d/7659f4f1d751e408ecf286b43679adea.jpg
[2]: https://habrahabr.ru/post/319932/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] С лупой на слона
habra.16
habrabot(difrex,1) — All
2017-01-19 20:00:05


Я довольно давно участвую в разработке web-приложений. Это не высоконагруженные приложения (типа Facebook или Gmail) — там, разумеется, своя специфика. Мои приложения были небольшими (можно было уместить на одном физическом сервере), но функционально насыщенными — финансовые, e-commerce. Я не работал в больших командах, зато пощупал весь спектр технологий, начиная от сборки аппаратуры в стойке и заканчивая редактированием CSS.



В какой-то момент поймал себя на мысли, что моя деятельность в области разработки web-приложений чем-то начала напоминать мне охоту моих далеких предков на мамонта (если под мамонтом подразумевать задачу, которую нужно решить). Только предки полагались на свою физическую силу, а мы вместо этого используем силу своего интеллекта. Но и как и прежде большую добычу не завалить в одиночку — нужны совместные усилия всех охотников.



![image][1]



Под катом я попытался собрать своё видение относительно наиболее важных с моей точки зрения аспектах в разработке web-приложений.

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

[1]: https://habrastorage.org/files/653/501/bfd/653501bfd93940b0953592297db42d70.jpg
[2]: https://habrahabr.ru/post/319912/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Пользователи Windows получили возможность работать с openSUSE (и Arch Linux)
habra.16
habrabot(difrex,1) — All
2017-01-19 20:00:05




Веcной прошлого года появились слухи о том, что в новую операционную систему от Microsoft интегрировали Linux. В это поверило не так много пользователей, и зря — слухи оказались правдой. В конце марта 2016 года Microsoft [подтвердила][1] эту информацию. Тогда было объявлено, что пользователи Windows 10 смогут работать с командным интерпретатором Linux, то есть bash. Это означает, что в Windows есть встроенный загрузчик ELF-файлов, а также среда для исполнения таких файлов, плюс стандартные инструменты вроде ssh, grep, sed, и awk. Эталонной системой было решено выбрать Ubuntu Linux.

Речь тогда шла о полноценной подсистеме Linux, а не каких-то эмуляторах либо виртуальных машинах. Сначала новую возможность опробовали пользователи предварительных релизов Windows, а с выходом Anniversary update — все остальные. Сейчас, кроме Ubuntu Linux, в Windows появилась возможность работать и с OpenSUSE. Конечно, если вы не работаете с Windows, то и положительных эмоций особо не будет, но если работаете, плюс нужен еще и Linux, то эта новость может оказаться полезной.
[Читать дальше →][2]

[1]: https://habrahabr.ru/company/eset/blog/280584/
[2]: https://habrahabr.ru/post/319942/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Как я парсил всю базу данных игр Metacritic-а
habra.16
habrabot(difrex,1) — All
2017-01-19 20:30:06


_**Metacritic** — англоязычный сайт-агрегатор, собирающий отзывы о музыкальных альбомах, играх, фильмах, телевизионных шоу и DVD-дисках._ (с википедии).

Использованные библиотеки: **lxml**, **asyncio**, **aiohttp** (lxml — библиотека разбора HTML страниц с помощью Python, asyncio и aiohttp будем использовать для асинхронности и быстрого извлечения данных). Также будем активно использовать XPath. Кто не знает, что это такое, отличный [туториал][1].
[Читать дальше →][2]

[1]: http://www.w3schools.com/xml/xpath_intro.asp
[2]: https://habrahabr.ru/post/319966/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] А ваша служба является RESTful? Все что необходимо/обязательно знать про веб службы и REST
habra.16
habrabot(difrex,1) — All
2017-01-20 12:30:06


## Введение


Вот не люблю я изобретать велосипед и статью я бы эту не написал, но пришлось. Про REST сказано уже довольно много. Многие поставщики веб служб готовы клясться, что их службы являются RESTful. Во время собеседования вы точно услышите хотя бы несколько вопросов про REST, независимо от того это собеседования для бэкенд, мобайл или фронтенд разработчика. Я вот помню как-то во время одного собеседования меня задали такой вопрос: «Вот вы написали в своем резюме, что знайте REST․ Ответьте пожалуйста, какой HTTP код вы получите, если при запросе к RESTful сервису ресурс не найден?». Ответ 404 был принят единогласно. Если честно, я так и не понял, как этот вопрос помог понять знаю ли я REST или нет, но одно могу уверенно сказать: REST понимают далеко не все. Вот некоторые вопросы, которые мучали меня долгое время:

1. Зачем REST стал таким трендовым? Это архитектура была же предложена еще в 2000 году?
2. Что я получу если моя служба будет RESTful?
3. Как определить является ли служба RESTful или нет?
4. Как правильно должны создаваться URL REST служб?
5. Какие http методы и коды должны быть использованы в RESTful службе?
Если вы не можете дать исчерпывающего ответа хотя бы на один из этих вопросов, то продолжайте чтение. Если вы можете однозначно ответить на все эти вопросы, можете привести формат правильного URL, считайте, что GET, POST, PUT, DELETE обязательно должны соответствовать CRUD операциям с ресурсами, то вам обязательно надо продолжать чтение.
[Читать дальше →][1]

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

[>] [Перевод] Linux-2017: самые перспективные дистрибутивы
habra.16
habrabot(difrex,1) — All
2017-01-20 14:30:05


Настал новый год, а значит – пришло время посмотреть в будущее, найти самые лучшие, самые перспективные дистрибутивы Linux.

[![][1]][2]

Дистрибутивы Linux часто бывают ориентированы на конкретные задачи. Поэтому не получится просто составить список операционных систем и сказать: «они – самые лучшие». Здесь выделены несколько областей использования Linux и выбраны те дистрибутивы, у которых есть все шансы стать первыми в своей нише в 2017-м.
[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/275/765/4d9/2757654d93a6a8f401409cae864a5dfe.png
[2]: https://habrahabr.ru/company/ruvds/blog/320002/
[3]: https://habrahabr.ru/post/320002/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Интересное в Марте: DevOpsDays в Москве
habra.16
habrabot(difrex,1) — All
2017-01-20 14:30:05


Новогодние праздники закончились, на CES анонсировали все что можно и нельзя, Atlassian купила Trello, а все крупные производители смартфонов запатентовали раскладушку из WestWorld. И даже Шерлока слили, посмотрели и обсудили. Все проснулись, приступили к работе, а некоторые даже нашли в себе силы организовать весенние конференции. Под катом я хочу немного рассказать вам про [DevOpsDays][1]: конференцию, которая за шесть лет эволюционировала в крупную международную тусовку и 11 марта 2017 **впервые** соберет гостей в Москве.
[Читать дальше →][2]

[1]: https://www.devopsdays.org/events/2017-moscow/welcome/
[2]: https://habrahabr.ru/post/319866/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Мониторинг приложений с помощью Pinba
habra.16
habrabot(difrex,1) — All
2017-01-20 15:00:04


![Drawing][1] Привет, Хабр! Мы в Badoo стараемся активно участвовать в жизни IT-сообщества: используем многие open-source-технологии и инструменты, а также делимся своими разработками.



Один из таких инструментов – [Pinba][2] – сервис для получения realtime-статистики от работающих приложений без накладных расходов на её сбор. Узнать побольше вы можете [в этой статье][3].



Мы стараемся помочь всем, кто использует Pinba в своих проектах и всегда рады слышать success stories, связанные с Pinba. Этот перевод – одна из подобных историй от разработчиков Dailymotion.

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

[1]: https://habrastorage.org/files/7d8/9f2/f5c/7d89f2f5c7224c419cfed6b08aa53596.png
[2]: http://pinba.org/
[3]: https://habrahabr.ru/company/badoo/blog/149695/
[4]: https://habrahabr.ru/post/319934/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Flexbox или ничего, хардкор веб-программирования
habra.16
habrabot(difrex,1) — All
2017-01-20 17:30:05


Всем друзьям большой привет! Флексбокс шагает по планете — наступает эпоха комфортной веб-разработки. Сегодня я покажу как можно верстать таблицы и текст флексбоксами, и немного раскажу о моем фреймворке. Это действительно ненормальное программирование.


### 1\. Верстка таблиц флексбоксами


Флексбокс — это простой и удобный способ позиционирования элементов внутри блока. Таблицы тоже могут быть свёрстаны флексбоксами потому что их структура — элементы внутри блоков. Вёрстка традиционных html-таблиц значительно сложней чем верстка флексбоксов.

Для флексбокс-таблиц типа ОС, ООО, ООН, ОСО может быть достаточно всего пяти кнопок управления:

![image][1]

→ [Код редактора таблиц, 700 строк][2]
[Читать дальше →][3]

[1]: https://habrastorage.org/files/c8c/5d1/84b/c8c5d184be8b4121885085e70d49babb.jpg
[2]: http://codepen.io/max_minimus/pen/appQGm
[3]: https://habrahabr.ru/post/320022/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Один из простых способов улучшить свои навыки программирования — читать чужой код
habra.16
habrabot(difrex,1) — All
2017-01-20 18:00:05


**Примечание:** первоначально эта статья была написана для сайта Fuel Your Coding back в мае 2010 года. К сожалению, этот сайт сейчас не работает, поэтому я публикую статью здесь, чтобы сохранить её для потомков. Я собирался обновить её, учитывая последние веяния, но решил оставить так, как она была написана. Те части, что подустарели, могут показаться немного смешными, но да ладно. Получайте удовольствие…

Наиболее очевидным способом повысить качество своего программирования является писать больше программ. Каждый знает это. Однако другой способ, который, я уверен, улучшит ваше программирование, — совершенно противоположный. Изложу это так ясно, как смогу.

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

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

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

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

[>] «Flexbox first». Верстка таблиц и текста флексбоксами
habra.16
habrabot(difrex,1) — All
2017-01-20 23:30:05


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


### Три метода позиционирования:


![image][1]

1) Флексбокс по умолчанию. Вместо обычного классического потока можно использовать флексбокс-форматирование. Результат будет аналогичный, кроме возможности float-обтекания, без которого можно вполне обойтись.

2) Абсолютное или фиксированное расположение относительно родительского контейнера или окна. Для того чтобы в любом контейнере можно было так позиционировать элементы — для каждого элемента по умолчанию position:relative.

3) Смещение относительно своего положения, и трансформации. Смещение через position:relative не анимируется, поэтому лучше использовать translate.

Графическая композиция — это комбинация этих трех методов + эффекты и прозрачность.

*
{
position:relative;
display:flex;
}

title,script,style
{
display:none; //Свойство display принимает только два значения — flex или ничего
}
Вот и всё! Это очень простой фреймворк, но он значительно упрощает верстку.
[Читать дальше →][2]

[1]: https://habrastorage.org/files/54d/24b/ae7/54d24bae7dcd4fb09ad00146e1f93648.jpg
[2]: https://habrahabr.ru/post/320050/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Авторизация в Laravel, через социальные сети (Ulogin). Просто, гибко и эффективно
habra.16
habrabot(difrex,1) — All
2017-01-20 23:30:05


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

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

[>] [Перевод] Angular 2: почему на TypeScript?
habra.16
habrabot(difrex,1) — All
2017-01-21 01:30:06


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

Давным-давно в нашей [публикации][1] от 13 ноября 2015 года вы убедили нас дождаться допиливания Angular 2 и издать о нем книгу. Мы всерьез собираемся взяться за такой проект в самое ближайшее время, а пока предлагаем почитать развернутый ответ на вопрос, вынесенный в заглавие этого поста.
[Читать дальше →][2]

[1]: https://habrahabr.ru/company/piter/blog/270837/
[2]: https://habrahabr.ru/post/320064/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Верификация данных пользователей в онлайн приложениях
habra.16
habrabot(difrex,1) — All
2017-01-21 17:30:06


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

Хочу предупредить, что статья нацелена на новичков. Людей которые хотели бы написать свою первую многопользовательскую игру. Если вы хоть раз занимались сетевым взаимодействием в играх, ничего полезного здесь не найдёте.


#### Техническое отступление


И дабы не остаться теоретическим материалом была написана небольшая демка. Ее можно запустить, посмотреть какими данными обмениваются клиент и сервер. На чьём примере и будет рассмотрено клиент-серверное взаимодействие.

Приложение использует технологию canvas для графики и websockets для взаимодействия с сервером. Код не является предметом обсуждения, поэтому писался быстро (основная часть около 2-3 часов), без проектирования и рефакторинга. Я не рекомендую использовать его или его часть где бы то ни было.
[Читать дальше →][1]

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

[>] [Из песочницы] Windows Performance Station или как я учил комп работать эффективно
habra.16
habrabot(difrex,1) — All
2017-01-22 09:00:04


![image][1]

Здравствуйте, уважаемые читатели! Вот я и добрался до Хабра и хочу поведать здесь историю своего проекта. Многие аспекты собственного опыта и работы приходится описывать довольно общими терминами, чтобы не задеть коммерческую тайну тех организаций, о которых идёт речь.

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

[1]: https://static.tildacdn.com/tild6136-3237-4531-b636-653236616561/black.png
[2]: https://habrahabr.ru/post/320110/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] "… и в каждой шутке есть доля шутки"
habra.16
habrabot(difrex,1) — All
2017-01-22 14:30:05


![image][1]

Не так давно я опубликовал [маленькую заметку][2] о небольшой программе, которую я разработал для приятеля. К моему удивлению, она получила неплохие отзывы и «пришлась ко двору» некоторым «хабровчанам».

Я подумал и решил поделиться ссылками на другие свои «крохотульки», маленькие разработки, опубликованные open source. Number #2 будет небольшая программа-шутка, превращающая картинку в формате jpeg в Excel spreadsheet ;)
[Читать дальше →][3]

[1]: https://habrastorage.org/files/51a/599/ea7/51a599ea744d4750ad7c69975e29ad67.png
[2]: https://habrahabr.ru/post/319326/
[3]: https://habrahabr.ru/post/320116/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Разработка SELinux-модуля для приложения
habra.16
habrabot(difrex,1) — All
2017-01-22 14:30:05


### Давным-давно, в далекой-далекой стране


… государственная служба NSA разработала систему безопасности для ядра и окружения Linux, и назвала ее SELinux. И с тех пор люди разделились на две категории: disabled/permissive и enforcing. Сегодня я покажу вам путь Силы и переведу на другую сторону всех желающих.


### Предположения


В тексте будет содержаться много технической информации, поэтому автор предполагает, что читатель:

* Имеет какое-то приложение (демон), которое должно работать с SELinux
* Просмотрел разницу между [DAC][1], [MAC][2] и [RBAC][3]
* Знаком с администрированием Linux
* Что-то читал про SELinux и может расшифровать user\_u:user\_r:user\_home\_t:s0
* Имеет под рукой CentOS 7
* На котором установлены пакеты setools-console, policycoreutils-devel, selinux-policy-devel
* И включен SELinux в режиме permissive с политикой targeted или minimum
Это все про вас? Тогда поехали! [Читать дальше →][4]

[1]: https://en.wikipedia.org/wiki/Discretionary_access_control
[2]: https://en.wikipedia.org/wiki/Mandatory_access_control
[3]: https://en.wikipedia.org/wiki/Role-based_access_control
[4]: https://habrahabr.ru/post/320100/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Про ScalaCheck. Генераторы (Часть 2)
habra.16
habrabot(difrex,1) — All
2017-01-22 16:30:05


**Часть 2. Генераторы**



В [вводной][1] статье серии вы, надеюсь уже, успели познакомиться с генераторами. В этом туториале мы закрепим полученные знания, научимся писать собственные (в том числе рекурсивные) генераторы. Хотя он и посвящен генераторам, про свойства мы тоже не забудем. Более того, мы будем их активно использовать, демонстрируя всю мощь механизма генераторов. Рассмотрим механизм предусловий (preconditions). Возможно, более логичным было бы посвятить свойствам вторую статью серии и, возможно, это стало бы правильным решением. Однако, по моим личным наблюдениям, наибольшие трудности вызывают именно генераторы. Свойства мы рассмотрим в следующей статье.

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

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

[>] VulnHub: Погружаемся в хакинг в стиле сериала Mr. Robot
habra.16
habrabot(difrex,1) — All
2017-01-23 10:00:05


![][1]

Я думаю многие смотрели сериал Mr. Robot, с каждым сезоном, о нем узнаёт всё больше народу, вот и [VulnHub][2] не остался в стороне. И не так уж давно там появилась Boot2Root виртуальная машина [Mr-Robot: 1][3]. Её решение, мы сегодня и рассмотрим.

Реверса тут не будет, но будет несколько примеров демонстрирующих, то как из-за не верного назначения прав на критически важные файлы, ваша система может быть взломана. И так, начнём, нужно добыть 3 ключа. [Читать дальше →][4]

[1]: https://habrastorage.org/files/714/143/a97/714143a9780a4819abd7b7ecadb11fef.png
[2]: https://www.vulnhub.com
[3]: https://www.vulnhub.com/entry/mr-robot-1,151/
[4]: https://habrahabr.ru/post/320106/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

Pages: 1 ... 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 ... 133