RSS
Pages: 1 ... 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 ... 210
[>] Time Travel Debugging в новом WinDbg
habra.16
habrabot(difrex,1) — All
2017-10-23 14:00:06


Возможно, вы уже слышали о том, что Microsoft выпустила обновлённую версию своего известного отладчика WinDbg, который и раньше был хорош, но слишком уж отстал по интерфейсу от современных тенденций. Новая версия WinDbg, к счастью, не пошла настолько далеко, чтобы получить новомодный UWP-интерфейс, но вот классические риббон-бары в стиле Microsoft Office — ей очень идут. Приложение распространяется только через Microsoft Store и работают на Win10 как минимум с Anniversary Update. Microsoft говорит, что это сделано для удобства установки и обновления, но я как-то не помню, чтобы с классическим WinDbg были какие-то проблемы с установкой. Скорее это выглядит как ещё один способ приучения разработчиков и пользователей к привычке пользоваться только самой последней версией Windows. Ну ок, пусть так.

WinDbg выглядит симпатично

![image][1]

И вся его мощь в виде команд, отладки драйверов, удалённой отладки, скриптов и прочего — осталась при нём. Более того, 25 сентября было выпущено обновление, добавляющее в новый WinDbg важную фичу — отладку с возможностью двигаться по ходу работы программы в обратном направлении (Time Travel Debugging). Возможность интересная, поскольку попав в некоторое невалидное состояние программист часто задаётся вопросом «А как же так вышло?». Ранее получить на него ответ можно было либо проигрывая в уме команды в обратном порядке, либо перезапуская отладку снова и снова с добавлением логов и новых контрольных точек. Всё это занимало время. Давайте посмотрим, как это работает сейчас.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/d7d/ebf/54a/d7debf54a246a7bef488aa133437f15e.png
[2]: https://habrahabr.ru/post/340744/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Почему нужно перестать использовать Git rebase
habra.16
habrabot(difrex,1) — All
2017-10-23 16:30:06


![][1]



После нескольких лет работы с Git я обнаружил, что постепенно стал переходить на всё более сложные Git-команды в рабочем процессе. Вскоре после того как я открыл для себя Git rebase, я тоже быстро внедрил эту команду в повседневные задачи. Те, кто знаком с этой процедурой, знают, насколько это мощный инструмент и какой это соблазн — постоянно им пользоваться. Но вскоре оказалось, что rebase влечёт за собой ряд неочевидных на первый взгляд трудностей. Но прежде чем обсудить их, хочу быстро рассмотреть различия между merge и rebase.

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

[1]: https://habrastorage.org/webt/59/ed/da/59eddadd3bb85762934500.jpeg
[2]: https://habrahabr.ru/post/340558/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Покупка современного сервера Intel c NVMe P4800X
habra.16
habrabot(difrex,1) — All
2017-10-23 21:00:05


Сентября 17го года купил в личное пользование сервер стоимостью 7680$ у поставщика Тиском.
Поставил в Московский ЦОД tech.ru и приступил к эксплуатации.

Фото-отчёт в наличии. Статья состоит из 5 частей:

1. Зачем мне сервер.
2. Выбор конфигурации.
3. Выбор у кого покупать.
4. Выбор у кого размещать.
5. Проблемы с настройкой данного сервера.
[Читать дальше →][1]

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

[>] [Из песочницы] Введение в Beautiful Capi, инструмент создания С++ оберток для С++ библиотек
habra.16
habrabot(difrex,1) — All
2017-10-23 21:00:05


Beautiful Capi — это инструмент облегчающий создание динамических библиотек на языке С++ с внешним интерфейсом на языке Си. Данный инструмент генерирует также С++ обертки для этого Си интерфейса. Beautiful Capi написан на языке Python 3.



Основная головная боль разработчиков библиотек на С++ в отсутствии единого стандарта ABI. Различные компиляторы имеют разный ABI, соглашения о именовании, схемах перехвата исключений и т.д. Поэтому программистам на С++ приходится каждый раз брать исходники библиотеки и собирать ее при помощи нужного компилятора.



Это хорошо, если библиотека популярная, и для нее добрый дядя уже выложил бинарные файлы для большинства компиляторов С++. Опять таки, для большинства компиляторов. Компиляторов С++ достаточно много, и, если учитывать разные версии одного и того же компилятора, имеющими несовместимый ABI, то вероятность того, что уже собранная библиотека вам не подойдет — достаточно высока. Плюс, добавим к этому различные настройки компиляторов, влияющие на двоичную совместимость.

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

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

[>] [Из песочницы] Асинхронные режимы фреймворка gRPC и принципы их работы в С++
habra.16
habrabot(difrex,1) — All
2017-10-24 01:30:04


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

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

[>] Краткий курс машинного обучения или как создать нейронную сеть для решения скоринг задачи
habra.16
habrabot(difrex,1) — All
2017-10-24 09:00:04


![image][1]

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

Вопросы, которые разобраны в статье:

• Как собрать и подготовить данные для построения модели?
• Что такое нейронная сеть и как она устроена?
• Как написать свою нейронную сеть с нуля?
• Как правильно обучить нейронную сеть на имеющихся данных?
• Как интерпретировать модель и ее результаты?
• Как корректно оценить качество модели?
[Поехали!][2]

[1]: https://habrastorage.org/webt/59/ed/b2/59edb292efcac960883973.jpeg
[2]: https://habrahabr.ru/post/340792/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Почему LLVM может вызвать никогда не вызываемую функцию?
habra.16
habrabot(difrex,1) — All
2017-10-24 10:30:04


> _Что бы ни сказал тебе твой дракон, он солгал. Драконы лживы. Ты не знаешь, что ждет тебя на другой стороне._
> Майкл Суэнвик. «Дочь железного дракона»


Не так давно на хабре был опубликован пост под названием "[Как может вызваться никогда не вызываемая функция?][1]". Выводы из статьи простые: в случае undefined behaviour компилятор вправе предпринимать любые действия, даже если они будут совершенно неожиданными. Однако меня заинтересовал сам механизм этой оптимизации. Результатом своего небольшого исследования я хочу поделиться с уважаемым сообществом хабра.

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

[1]: https://habrahabr.ru/company/infopulse/blog/338812/
[2]: https://habrastorage.org/webt/59/db/92/59db927f86faa183685625.jpeg
[3]: https://habrahabr.ru/post/339700/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Видео-звонки в видеоконференцию Zoom с веб страниц
habra.16
habrabot(difrex,1) — All
2017-10-24 12:00:04


![][1]


В [предыдущей][2] хабрастатье я показал, что если сервис умеет интегрироваться по SIP и RTP, то с ним можно делать много интересных штук. Например, приглашать в видеоконференции Zoom участников с мобильных телефонов. Но наше облако Voximplant — это не только телеком и телефоны. Еще мы любим и умеем SDK, чтобы звонить и принимать звонки из неожиданных мест: с веб страниц, из приложений (звонки через интернет намного дешевле, чем через голосовой канал) и даже из [VR/AR][3] Unity решений. В этой статье я покажу, как с помощью нескольких строк фронтенд JavaScript создавать «звонящие» страницы, с помощью которых участники смогут делать видеозвонок в конференцию. И да, благодаря последнему обновлению от Apple звонить теперь можно и с веб страниц на iPhone!
[Читать дальше →][4]

[1]: https://habrastorage.org/webt/59/d1/eb/59d1ebf729f32526348620.jpeg
[2]: https://habrahabr.ru/company/Voximplant/blog/339650/
[3]: https://unity.voximplant.com/
[4]: https://habrahabr.ru/post/340746/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Тащим музыку из ВК без публичного music API
habra.16
habrabot(difrex,1) — All
2017-10-24 12:00:04


## Как все начиналось


Дело было вечером, делать было нечего… Точнее, я просто хотел загрузить аудиокнигу перед парами и тут меня ждал сюрприз. Кэш в кейт мобайле отключили. Как так? Что делать? Конечно же писать свое приложение с кэшем и аудиозаписями. Но для начала нужно понять, как вк превращает ссылки вида audio%user\_id%\_%track\_id% в прямые ссылки на mp3. Что из этого вышло приложения я не написал и как скачать определенный плейлист можно прочитать под катом.
[Читать дальше →][1]

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

[>] Курс молодого бойца PostgreSQL
habra.16
habrabot(difrex,1) — All
2017-10-24 13:30:06


[![][1]][2]

Хочу поделиться полезными приемами работы с PostgreSQL (другие СУБД имеют схожий функционал, но могут иметь иной синтаксис).

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

Данный материал будет полезен тем, кто полностью освоил базовые навыки SQL и желает учиться дальше. Советую выполнять и экспериментировать с примерами в **pgAdmin**'e, я сделал все SQL-запросы выполнимыми без разворачивания каких-либо дампов.

Поехали!
[Читать дальше →][3]

[1]: https://habrastorage.org/webt/59/ea/6d/59ea6defd5c6d032615478.png
[2]: https://habrahabr.ru/post/340460/
[3]: https://habrahabr.ru/post/340460/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Состоялся релиз OWASP Top 10 2017 RC 2
habra.16
habrabot(difrex,1) — All
2017-10-24 15:00:05


![image][1]

Обновился список Топ-10 уязвимостей от OWASP (Release Candidat 2)— наиболее критичных рисков безопасности веб-приложений.

На проект OWASP Топ-10 ссылается множество стандартов, инструментов и организаций, включая MITRE, PCI DSS, DISA, FTC, и множество других. OWASP Топ-10 является признанной методологией оценки уязвимостей веб-приложений во всем мире. Проект OWASP Топ-10 отражает наиболее значимые угрозы веб-приложению.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/1e5/b5d/dcf/1e5b5ddcf07a0e4edf14d2a95163aa20.png
[2]: https://habrahabr.ru/post/340800/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Создание платформера для виртуальной консоли TIC-80
habra.16
habrabot(difrex,1) — All
2017-10-24 15:00:05


![][1]


_8 Bit Panda, игра для вымышленной консоли TIC-80._

_Это пост о том, как я написал 8-bit panda, простой платформер в классическом стиле для вымышленной консоли _[_TIC-80_][2]_._

_Поиграть в готовую игру можно _[**_здесь_**][3]**_._**

Если вы любитель ретро-игр и вам нравится программирование, то есть вероятность, что вы уже знакомы с последним трендом: вымышленными консолями. Если же нет, то стоит посмотреть на их самых известных представителей: [PICO-8][4] и [TIC-80][5].

Я выбрал TIC-80, потому что она бесплатна и активно разрабатывается, имеет более широкое соотношение сторон экрана (240x136), чем PICO-8 и может выполнять экспорт на множество платформ, в том числе HTML, Android и двоичные файлы для PC.

В этой статье я расскажу, как я написал для TIC-80 простой платформер 8 Bit Panda.
[Читать дальше →][6]

[1]: https://habrastorage.org/getpro/habr/post_images/9d4/579/787/9d4579787e58b62d45606ac707104072.png
[2]: http://tic.computer
[3]: https://tic.computer/play?cart=188
[4]: https://www.lexaloffle.com/pico-8.php
[5]: http://tic.computer
[6]: https://habrahabr.ru/post/340502/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Kali Linux: модификация пакетов
habra.16
habrabot(difrex,1) — All
2017-10-24 16:30:04


Продолжаем переводить книгу «[Kali Linux Revealed][1]». Девятая глава посвящена расширенному использованию системы. В частности, изучив её, можно узнать о том, как создать из базового дистрибутива Kali именно то, что вам нужно. Сегодня мы публикуем перевод первого раздела этой главы. Речь пойдёт о модификации пакетов Kali.

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

[1]: https://kali.training/introduction/kali-linux-revealed-book/
[2]: https://habrastorage.org/getpro/habr/post_images/d6f/f3f/562/d6ff3f56201df7a112b39a40a218a3d7.jpg
[3]: https://habrahabr.ru/company/ruvds/blog/340824/
[4]: https://habrahabr.ru/post/340824/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Умные сети для рыбаков: как мы учили смартфоны распознавать рыбу
habra.16
habrabot(difrex,1) — All
2017-10-24 18:00:05


![][1]

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

[1]: https://habrastorage.org/webt/59/ef/01/59ef01ad09e66558267453.png
[2]: https://habrahabr.ru/post/340854/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Сказ о sysctl’ях (народная пингвинская история)
habra.16
habrabot(difrex,1) — All
2017-10-24 21:30:05


Очень часто администраторы выполняют настройку системы просто настройкой базовых вещей — ip,dns,hostname, поставить софт, а все остальное уже настройки приложений. В большинстве случаев так оно и есть, поскольку в linux’е очень разумные умолчания и, в большинстве случаев, этих умолчаний хватает и все живут счастливо. Среди совсем начинающих ходят легенды о неких sysctl’ях, а те, кто поопытнее видели и даже чего-то правили.

Но приходит момент, когда админ в своих походах по системе встречает этого зверя — sysctl. Вероятнее всего он встречает кого-то из семейства net.ipv4 или vm, даже вероятнее всего net.ipv4.ip\_forward, если поход за роутером или vm.swappinness, если он обеспокоен подросшим swap’ом своего пингвина. Первый зверь разрешает пингвину принимать пакеты одним крылом и отдавать другим (разрешает маршрутизацию), а второй помогает справиться с использованием swap’а в спокойной системе и регулировать его использование — в нагруженной.

![][1]

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

[1]: https://habrastorage.org/webt/59/ef/60/59ef60ae73130650626622.jpeg
[2]: https://habrahabr.ru/post/340870/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Bad Rabbit: новая волна атак с использованием вируса-шифровальщика
habra.16
habrabot(difrex,1) — All
2017-10-25 00:00:06


![image][1]
 
Несколько российских СМИ и украинских организаций подверглись атаке шифровальщика Bad Rabbit. В частности, хакеры атаковали три российских СМИ, среди которых «Интерфакс» и «Фонтанка».

24 октября началась новая масштабная кибератака с использованием вируса-шифровальщика Bad Rabbit. Зловред поразил компьютерные сети Киевского метрополитена, Министерства инфраструктуры, Международного аэропорта “Одесса”. Несколько жертв оказались и в России — в результате атаки пострадали редакции федеральных СМИ, таких как «Интерфакс» и «Фонтанка».
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/d8b/1fe/af2/d8b1feaf2c3667a1d2184aa190aa4f2d.jpg
[2]: https://habrahabr.ru/post/340880/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Где перспективно и адекватно использовать Python
habra.16
habrabot(difrex,1) — All
2017-10-25 04:30:04


В прошлой статье мы уже обсудили с вами причины, по которой Python нельзя назвать идеальным языком для новичков, хотя на том же Хабре бытует мнение, что Python – это выбор номер один и вообще топчик.

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

[1]: https://habrastorage.org/webt/59/ef/bd/59efbd7b491d6801940682.png
[2]: https://habrahabr.ru/post/340894/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Длинные уши асинхронности
habra.16
habrabot(difrex,1) — All
2017-10-25 07:30:03


![][1]



Разработчики React тяготеют к функциональному подходу, но с появлением MobX, появилась возможность работать с состоянием в более-менее привычном ООП-стиле. Mobx старается не навязывать какую либо архитектуру, позволяя работать с реактивным состоянием, как с обычными объектами. При этом он делает автоматическое связывание вычислений, когда достаточно написать `C = A + B`, чтобы при обновлении `A`, обновился и `C`.



В HelloWorld это выглядит просто, но если мы добавим fetch, отображение статусов загрузки и обработку ошибок, мы увидим, что получается много копипаста, а в код начинают просачиваться хелперы вроде when, fromPromise или lazyObservable. И уже не получается писать код так, как будто нет асинхронности. Я хочу разобрать некоторые подобные примеры в MobX и попытаться улучшить его базовую концепцию, развив идею псевдосинхронности.

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

[1]: https://habrastorage.org/webt/59/ed/b2/59edb24f426e0489107992.jpeg
[2]: https://habrahabr.ru/post/340840/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Модули вместо микросервисов
habra.16
habrabot(difrex,1) — All
2017-10-25 10:30:20


Термин "модуль" (module) взят из статьи [Modules vs. microservices][1]. Так же для описания чего-то среднего между микросервисами и монолитами иногда используют термины "микролит" (microlith) или "моносервис" (monoservice). Но, не смотря на то, что термин "модуль" и так уже нагружен общеизвестным смыслом, на мой взгляд он подходит лучше других вариантов.



Монолит и микросервисы это очень разные подходы, поэтому в любой попытке взять лучшее от обоих критически важен баланс — что взять, а что нет. Иначе получится монстр вроде [OSGi][2].



Я пишу микросервисы с 2009 года, но применять модули вместо микросервисов в реальных проектах пока не пробовал — всё описанное далее это моё предположение о том, каким должен быть вышеупомянутый баланс, и оно нуждается как в теоретической критике так и в проверке практикой.


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

[1]: https://www.oreilly.com/ideas/modules-vs-microservices
[2]: https://ru.wikipedia.org/wiki/OSGi
[3]: https://habrahabr.ru/post/340898/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Linux Piter #3: о чем на этот раз?
habra.16
habrabot(difrex,1) — All
2017-10-25 11:00:08


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

Это два полных дня, 3 и 4 ноября, пятница и суббота в Питере, заполненные не всякой шелухой, а полноценными докладами про сеть, системные ресурсы, контейнеры и внутренности ядра Linux. Сугубо техническая тематика интересна всем тем, кто каждый день использует open source продукты и топовые технологии вокруг Linux в своей работе и в своих проектах.

![][2]

Если кратко, то у нас 3 доклада про сетку, 5 про контейнеры, 4 про ядро, пара про производительность и еще много разного. Чтобы был понятен уровень выступлений: среди спикеров из Штатов, Германии, Швеции, Австрии и конечно же России к нам приедут **Lennart Poettering** (мантейнер systemd) и **Christoph Hellwig** (мантейнер XFS и NVM Express драйвера) – это реально круто. Будут доклады инженеров, работающих в Redhat, Intel, Microsoft (!), Ericsson, Docker и Canonical. Будут два параллельных потока с десяти утра до вечера: язык выступлений первого потока — английский (с синхронным переводом на русский для тех, кто не успевает), второго — русский (с синхронном на английский для наших иностранных гостей).
Ниже несколько анонсов выступлений в разных разделах конференции.

Приятная особенность [**Linux Piter #3**][3] в том, что параллельно на этой же площадке будет проходить ещё одна наша техническая конференция — [**Piter Py #4**][4], и участники смогут свободно посещать доклады любой из этих двух конференций.
[Читать дальше →][5]

[1]: http://LinuxPiter.com
[2]: https://habrastorage.org/getpro/habr/post_images/e3a/184/aaa/e3a184aaaf8ae9cf9dc927f6fad19514.png
[3]: http://LinuxPiter.com
[4]: http://PiterPy.com
[5]: https://habrahabr.ru/post/340862/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Встреча в Питере 16 ноября: Delivery-инфраструктура для компаний и отдельных проектов
habra.16
habrabot(difrex,1) — All
2017-10-25 11:30:04


![][1]


Мы соберемся 16 ноября, чтобы поговорить о том, как построить DevOps инфраструктуру как для большой компании со сложным продуктом, частыми релизами, CI, так и отдельно взятого проекта, отдела в компании или даже небольшого стартапа, когда разворачивать большой стек инструментов долго и дорого. Посмотрим, по каким законам существует девопс-культура в больших enterprise-компаниях, и коснемся темы конкретных инструментов и решений. В частности, поговорим о лучших практиках работы с Ansible.
[Встреча][2] будет полезна как опытным, так и начинающим DevOps-инженерам.
[О программе и докладах][3]

[1]: https://habrastorage.org/webt/59/ed/da/59eddac27d62c283589087.jpeg
[2]: https://wriketeam.timepad.ru/event/588723/
[3]: https://habrahabr.ru/post/340760/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Время устранять ошибки в Open-Source проектах, конкурс
habra.16
habrabot(difrex,1) — All
2017-10-25 12:00:05


![Конкурс: PVS-Studio & Pinguem.ru][1]Сайт [Pinguem.ru][2] и команда PVS-Studio организуют конкурс, посвященный повышению качества открытого программного обеспечения. Для победы в конкурсе необходимо исправить как можно больше ошибок в одном или нескольких открытых проектах. Ошибки должны быть обнаружены с помощью статического анализатора кода PVS-Studio. Главный приз: консоль PlayStation 4 Pro.

[Правила конкурса][3] на сайте Pinguem.ru. [Участвовать в конкурсе][4].
[Читать дальше →][5]

[1]: https://habrastorage.org/getpro/habr/post_images/a06/d7a/d64/a06d7ad641345d962a889d4f82a08798.png
[2]: https://pinguem.ru/
[3]: https://pinguem.ru/competition/pvs/rules
[4]: https://pinguem.ru/competition/pvs/send
[5]: https://habrahabr.ru/post/340910/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Классы матриц и векторов в Delphi
habra.16
habrabot(difrex,1) — All
2017-10-25 14:00:06


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

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

[>] Blockchain глазами разработчика
habra.16
habrabot(difrex,1) — All
2017-10-25 14:00:06


![][1]



Зачем этот рассказ? Когда я изучал blockchain по открытым источникам, например по Википедии, информация казалась отрывочной и бессвязной. Прошло время, прежде чем она сложилась в целостную картину. Кажется, я знаю, в каком порядке и какими словами описать введение в blockchain, чтобы любой профессиональный разработчик смог понять общую картину за 1—1,5 часа. В тексте будут некоторые упрощения. Понятно, что в любой теме есть много деталей, куда можно при желании погрузиться.

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

[1]: https://habrastorage.org/webt/59/ee/64/59ee64cf25ac2728209409.jpeg
[2]: https://habrahabr.ru/post/340916/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] TrustZone: аппаратная реализация в ARMv7A
habra.16
habrabot(difrex,1) — All
2017-10-25 14:30:04


Сегодня начинаем исследовать внутреннее устройство TrustZone (это торговая марка компании ARM).

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

Поэтому я начну с того, что _TrustZone — это никакое не «место» в процессоре_. Ее нельзя найти на чипе, как кеш или АЛУ. И доверенные программы, на самом деле, не исполняются в какой-то физически выделенной зоне процессора.

Даже если мы посмотрели бы в исходные коды ядра ARM, то не смогли бы четко выделить TrustZone. Скорее, по аналогии с программами, TrustZone — это несколько модулей и _набор патчей_ для почти всех остальных частей процессора.

В этой статье мы рассмотрим, как TrustZone реализуется на аппаратном уровне процессоров ARM Cortex-A (ARMv7A). [Читать дальше →][1]

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

[>] [Перевод] Vim спустя 15 лет
habra.16
habrabot(difrex,1) — All
2017-10-25 17:00:04


![][1]



Мои предыдущие посты об использовании Vim ([1][2], [2][3]) читатели приняли хорошо, и пришло время обновления. В Vim 8 появилось много очень нужной функциональности, а новые сайты сообществ вроде [VimAwesome][4] облегчили поиск и выбор плагинов. В последнее время я много работаю с Vim и организовал рабочий процесс исходя из максимальной эффективности, вот снимок моей текущей работы.



Вкратце:


* FZF и FZF.vim — для поиска файлов.
* ack.vim и `ag` — для поиска файлов.
* Vim + tmux — ключ к победе.
* Благодаря асинхронности ALE — это новый Syntastic.
* …И многое другое. Об этом ниже. [Читать дальше →][5]

[1]: https://habrastorage.org/webt/59/f0/83/59f083e99d4b9512710863.jpeg
[2]: https://statico.github.io/vim.html
[3]: https://statico.github.io/vim2.html
[4]: https://vimawesome.com/
[5]: https://habrahabr.ru/post/340740/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Новый вирус Reaper заразил 2 миллиона IoT-устройств
habra.16
habrabot(difrex,1) — All
2017-10-25 18:00:05


Компания Check Point Research, занимающаяся предоставлением услуг киберразведки, обнаружила вирус Reaper, который атакует девайсы, подключенные к интернету вещей. Компания [сообщает][1], что вирус распространяется гораздо быстрее, чем Mirai, «нашумевший» в 2016 году. По некоторым оценкам, он уже заразил два миллиона IoT-устройств.

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

[1]: https://research.checkpoint.com/new-iot-botnet-storm-coming/
[2]: https://habrastorage.org/webt/59/f0/83/59f083c5ab8df681440627.jpeg
[3]: https://habrahabr.ru/company/it-grad/blog/340938/
[4]: https://habrahabr.ru/post/340938/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Разработка браузерной онлайн игры без фреймворков и движков
habra.16
habrabot(difrex,1) — All
2017-10-25 19:00:08


![][1]


Привет, Хабр!
В этом посте будет описан процесс разработки онлайн игры на чистом javascript и WebGL (без фреймворков и движков). Будут рассмотрены некоторые алгоритмы, техники рендеринга, искусственный интеллект ботов и сетевая игра. Проект является полностью опенсорсным, в конце поста будет ссылка на репозиторий.
[Много картинок и гифок][2]

[1]: https://habrastorage.org/webt/59/e1/e0/59e1e0700cdf7570192875.png
[2]: https://habrahabr.ru/post/339566/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Почему один процесс NGINX берёт на себя всю работу?
habra.16
habrabot(difrex,1) — All
2017-10-25 22:00:06


Метод масштабирования TCP-серверов, как правило, очевиден. Начни с одного процесса, когда будет нужно — просто добавь ещё. Так делают многие приложения, включая HTTP-серверы типа Apache, NGINX или Lighttpd.



![][1]



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

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

[1]: https://habrastorage.org/webt/59/f0/8f/59f08f64162b4335654058.jpeg
[2]: https://habrahabr.ru/post/340950/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Троянец-вымогатель Bad Rabbit: плохой, плохой кролик
habra.16
habrabot(difrex,1) — All
2017-10-26 08:30:04



24 октября на нас посыпались уведомления о массовых атаках с помощью троянца-вымогателя Bad Rabbit. Основная цель — российские организации и потребители, но есть сообщения и о пострадавших из Украины.

Вот как выглядит требование выкупа у незадачливых жертв:
[Читать дальше →][1]

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

[>] Windows Defender удаляет bootloader от DiskCryptor
habra.16
habrabot(difrex,1) — All
2017-10-26 09:00:04


Если ваш системный диск зашифрован с помощью [DiskCryptor][1] система может перестать загружаться после обновления баз Windows Defender до версии 118.1.0.0 от 24.10.2017.

Defender определяет загрузчик как [Win32/Tibbar.A][2] и перезаписывает MBR. Сам DiskCryptor определяется как Trojan:Win32/Rundas.B.
[Читать дальше →][3]

[1]: https://diskcryptor.net/wiki/Main_Page
[2]: https://www.microsoft.com/en-us/wdsi/threats/malware-encyclopedia-description?Name=Ransom:Win32/Tibbar.A
[3]: https://habrahabr.ru/post/340940/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Под капотом Ethereum Virtual Machine. Часть 1 — Solidity basics
habra.16
habrabot(difrex,1) — All
2017-10-26 09:30:05


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



Solidity — язык, созданный для разработки умных контрактов, существует относительно недавно — его разработка началась только в 2014 году и, как следствие, местами он ''сыроват''. В этой статье я начну с более общего описания работы EVM и некоторых отличительных особенностей solidity, которые нужны для понимая более низко-уровневой работы.



P.s Статья предпологает наличие некоторых базовых знаний о написании смарт-контрактов, а также о блокчейне Ethereum'a в целом, так что если вы слышите об этом в первый раз, то рекомендую сначала ознакомиться с основами, например, здесь:


* [Hello world на solidity и деплой контракта в сеть][1]
* [Подборка инструментов для разработки][2]
* [Описание работы Ethereum и его блокчейна][3][Читать дальше →][4]

[1]: https://habrahabr.ru/post/312008/
[2]: https://habrahabr.ru/post/327236/
[3]: https://geektimes.ru/post/294611/.com%5Biz-pesochnitsy%5D-kak-rabotaet-efirium-v
[4]: https://habrahabr.ru/post/340928/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Смарт-контракт Ethereum для расчета бонусов используя дробные степени
habra.16
habrabot(difrex,1) — All
2017-10-26 11:30:11


![image][1]


Начну с того, что всем известно. ICO повсюду, все предлагают разные проекты, все продают токены. И у всех есть какая-то модель продаж со скидками, бонусами, сроками и т.п.
Как ни странно хоть область и достаточно экспериментальная, модель бонусов достаточно примитивна. Просто есть разные объемы или временные интервалы и проценты в них. Да и зачем усложнять? А я все таки попробую. Эксперимента ради. Новое всегда привлекает.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/a21/6dc/ec2/a216dcec2b45ef3742c5d9731a1ad608.png
[2]: https://habrahabr.ru/post/340984/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] «В активном поиске»: как мы выбирали поисковый механизм для DLP-системы
habra.16
habrabot(difrex,1) — All
2017-10-26 11:30:11


В ходе работы DLP-система ежедневно перехватывает огромные массивы информации – это и письма сотрудников, и информация о действиях пользователей на рабочих станциях, и сведения о хранящихся в сети организации файловых ресурсах, и оповещения о несанкционированном выводе данных за пределы организации. Но полезной эта информация будет только в случае, если в DLP реализован качественный механизм поиска по всему массиву перехваченных коммуникаций. С тех пор, как в 2000 году увидела свет первая версия нашего DLP-решения, мы несколько раз меняли механизм поиска по архиву. Сегодня мы хотим рассказать о том, какие технологии мы использовали, какие видели в них преимущества и недостатки, и почему мы от них в итоге отказывались. Возможно, кому-то наш опыт окажется полезен.
![][1]
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/59/ef/5d/59ef5d020da94739058054.jpeg
[2]: https://habrahabr.ru/post/340874/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Качественное уменьшение изображений за константное время
habra.16
habrabot(difrex,1) — All
2017-10-26 14:30:05


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



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



![][1]
_Уменьшение изображения 4928×3280 до 256×170 ближайшим соседом._


> Рекомендую смотреть примеры из статьи в браузере в масштабе 100% и без ретины. То есть по максимуму исключить ресайз при просмотре.

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


![][2]
_Точки, которые попадут в конечное изображение размером 20×13._
[Читать дальше →][3]

[1]: https://habrastorage.org/webt/59/f0/bd/59f0bd6a1208a409488648.png
[2]: https://habrastorage.org/webt/59/f0/bd/59f0bd8900be5616103973.png
[3]: https://habrahabr.ru/post/340966/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Jaeger Opentracing и Microservices в реальном проекте на PHP и Golang
habra.16
habrabot(difrex,1) — All
2017-10-26 15:00:04


Всем привет, меня зовут Юрий Буйлов, я руковожу разработкой в CarPrice. Коротко расскажу как и почему мы пришли к микросервисам на PHP и Golang. Что используем, как инструментируем и мониторим наши приложения в production. Далее расскажу о распределенном трейсинге, который обеспечивает нам прозрачность работы сервисов.

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

[1]: https://habrastorage.org/webt/59/f0/ad/59f0ad60e86c3387399212.png
[2]: https://habrahabr.ru/post/340946/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Конкурс Topcoder «Konica-Minolta Pathological Image Segmentation Challenge». Заметки участника
habra.16
habrabot(difrex,1) — All
2017-10-26 16:30:16


Привет! Пока мы ждём субботу и Avito Data Science Meetup: Computer Vision, расскажу вам про моё участие в соревновании по машинному обучению [KONICA MINOLTA Pathological Image Segmentation Challenge][1]. Хотя я уделил этому всего несколько дней, мне повезло занять 2 место. Описание решения и детективная история под катом.



![][2]

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

[1]: https://community.topcoder.com/longcontest/?module=ViewProblemStatement&rd=16950&pm=14622
[2]: https://habrastorage.org/webt/ht/w2/am/htw2amglshnr96ovu9uieuuoiay.png
[3]: https://habrahabr.ru/post/340400/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Математическая модель вибрационного уровнемера с резонатором в виде консольной эллиптической трубки
habra.16
habrabot(difrex,1) — All
2017-10-26 17:00:09


![][1]

### Введение


В публикации [1] подробно рассмотрена реализация на Python метода измерения отношения частот с использованием фигур Лиссажу. В качестве примера были проанализированы формы колебаний консольной эллиптической трубки вибрационного уровнемера [2].

![][2]

Упруго закреплённая трубка эллиптического сечения с помощью систем возбуждения 5,6,7 совершает автоколебания в одной плоскости, а с помощью систем 8, 9, 10 в другой плоскости перпендикулярной первой. Трубка колеблется в двух взаимно перпендикулярных плоскостях с разными частотами близкими к собственным. Масса трубки зависит от уровня заполняющей её жидкости.

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

Остался не решённым вопрос определения зависимости частот колебаний трубки от уровня заполняющей жидкости что и является предметом данной публикации.


### Постановка задачи


Определить частоты изгибных колебаний трубки в двух взаимно перпендикулярных плоскостях методом Релея с использованием точного уравнения изгибной линии трубки из публикации [1].

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

Для реализации указанных задач средствами Python рассмотреть два метода решения символьный и символьно-численный. Сравнить указанные методы по производительности
[Читать дальше →][3]

[1]: https://habrastorage.org/webt/59/f1/22/59f122d77578f802344411.png
[2]: https://habrastorage.org/webt/59/f1/4f/59f14f57ae7b9916251302.png
[3]: https://habrahabr.ru/post/340982/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как мы обновили поисковые подсказки в Яндексе и нашли для них правильную метрику
habra.16
habrabot(difrex,1) — All
2017-10-26 17:30:06


Поисковым подсказкам в Яндексе уже почти 10 лет. На первый взгляд, они кажутся довольно простой фичей — многие до сих пор уверены, что саджест учитывает только то, как часто люди вводят те или иные запросы. Несколько лет назад мы [рассказывали на Хабре][1], сколько сложной математики стоит за тем, чтобы подобрать правильное следующее слово и помочь человек сформулировать свой вопрос. Тогда мы даже подсчитали, что поисковые подсказки экономят людям около 60 лет.



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



Темой поисковых подсказок в Яндексе я занялся в начале 2016 года. Цель, стоящая в то время перед командой саджеста, звучала очень амбициозно: «Сделать лучший саджест на мобильных», ни больше ни меньше!



[![image][2]][3]



Вспоминая о том, что было сделано с тех пор в области поисковых подсказок в Яндексе, трудно отделаться от двух ощущений. Первая: как же много всего мы сделали! Вторая: неужели всего этого не было раньше? Сделано действительно много, но эти вещи кажутся часто такими простыми и очевидными, что не верится, что их не было всегда.



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

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

[1]: https://habrahabr.ru/company/yandex/blog/160749/
[2]: https://habrastorage.org/webt/59/e3/72/59e372023720d898202272.png
[3]: https://habrahabr.ru/company/yandex/blog/340552/
[4]: https://habrahabr.ru/post/340552/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Синтаксический анализ в NLTK
habra.16
habrabot(difrex,1) — All
2017-10-26 21:30:05


Здравствуйте. Это статья об синтаксическом анализе предложений, их представлении. Для разбора предложений будет использоваться пакет NLTK и язык программирования Python (версии 2.7).


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


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

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

[>] [Из песочницы] Регистратор на Bash для камер с rtsp
habra.16
habrabot(difrex,1) — All
2017-10-27 06:00:04


Всем привет!

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

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


_Камера Xblitz iSee P2P IP WiFi_
[Читать дальше →][1]

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

[>] Изоморфное приложение React JS + Spring Boot
habra.16
habrabot(difrex,1) — All
2017-10-27 12:00:05


[![][1]][2]

Про ReactJs, Java, Spring, рендеринг, Virtual DOM, Redux и прочие подобные вещи уже существует очень много всевозможных статей и практических наработок, поэтому я не буду в них углубляться.

Я не замерял производительность этой конструкции. Те кому интересно, могут провести свои личные тесты и сравнить например с NodeJS.

Я не особо заморачивался на стиле и качестве кода, так что извиняйте, кому не придётся по душе =)

Цель моей работы просто заставить работать воедино такие вещи как ReactJS + Redux + WebPack + Java/Spring.

Перед тем как писать свою статью, я воспользовался поиском и обнаружил существующий аналогичный [пример][3]. Но, почитав комментарии, я заметил, что некоторые желают увидеть подобный образец изоморфного приложения, но работающий со **Spring**.

С радостью исполняю желание читателей.
[Читать дальше →][4]

[1]: https://habrastorage.org/webt/59/f1/9a/59f19a199274c871310359.jpeg
[2]: https://habrahabr.ru/company/alfa/blog/340776/
[3]: https://habrahabr.ru/post/327480/
[4]: https://habrahabr.ru/post/340776/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] JAVA 9. Что нового?
habra.16
habrabot(difrex,1) — All
2017-10-27 13:30:04


Java — удивительно универсальный язык программирования. На сегодняшний день насчитывается около 6.5 млн разработчиков Java по всему миру. И все благодаря его утилитарности, простоте использования, безопасности и независимости платформы (он работает вне зависимости от того, какое оборудование или операционная система используются).

Java была разработана в 1995 году компанией Sun Microsystems и изначально создавалась для интерактивного телевидения и программирования бытовых электронных устройств. Тем не менее, публичный релиз Java 1.0 выявил смену фокуса на интернет-использование, превратив его в один из самых популярных языков программирования.

Очевидно, со времен 1.0 многое изменилось и вот наконец после множества переносов 21 сентября 2017 года состоялся релиз Java 9.

Особенности предыдущей (8-й) версии благодаря своей универсальности предоставили разработчикам возможность создавать решения для самых разных секторов бизнеса, включая финтех, здравоохранение и другие индустрии. Среди ключевых нововведений Java 8 следует отметить лямбда-выражения, стримы и изменения в API.

В свою очередь Java 9 также изобилует разнообразием обновлений “под капотом” и в API. Кроме очевидного проекта Jigsaw, на который возложена обязанность по внедрению модулярности в основные компоненты Java, новая версия может похвастаться ещё тремя важными фичами:

1. Полная поддержка клиента HTTP 2.0: Вопрос в скорости, и HTTP 2.0 предоставляет более высокие результаты, колеблющиеся от 11.81% до 47.7% по сравнении с клиентом HTTP 1.1.
2. Jshell: Новый инструмент командной строки. Если разработчик хочет автономно запустить несколько строк Java, то это можно выполнить без необходимости заворачивать все в отдельный метод или проект.
3. Microbenchmark: Теперь производительность отдельных небольших частей кода можно измерить стандартизированным методом. Анализ JMH за наносекунды уникален для Java 9.
![][1]
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/yy/zt/kx/yyztkxbtalmb9rnosmuprf3u51u.jpeg
[2]: https://habrahabr.ru/post/341058/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Выбираем файловую систему независимую от ОС
habra.16
habrabot(difrex,1) — All
2017-10-27 13:30:04


Всем привет. Недавно я задался вопросом как организовать обмен файлами между операционными системами. Предположим, я хочу установить сразу три основные ос на своём ноутбуке: линукс, виндовз и хакинтош. Каждая ос предназначается для своих задач: Линукс — для работы и программирования, винда — для игр и хак — просто для разных экспериментов.

Поскольку я создаю обучающие видео ролики о линуксе, мне удобнее работать именно на нём. Но монтировать хочется попробовать в «финальном вырезе». Уж очень мне приглянулась идея магнитной ленты времени.

![][1]

Так вот, задача стоит такая: нужен раздел на системном накопителе, причём с такой файловой системой, которая поддерживается на чтение и запись всеми перечисленными операционками. На этом разделе будут храниться скачанные из интернета файлы и меж-операционные проекты.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/u6/ym/wt/u6ymwtdcl-ogdvbr3htnlbskds8.png
[2]: https://habrahabr.ru/post/341042/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Установка FlexLM на Ubuntu Server 16
habra.16
habrabot(difrex,1) — All
2017-10-27 14:30:04


![][1]

В данной инструкции будет подробно рассмотрена установка защиты FlexLM на Ubuntu Server 16.04. Возможна установка и на десктопную версию (лично проверена версия 17.10).
В качестве серверов будут выступать как специально разработанные под Linux (Autodesk), так и существующие только под Windows (Nanosoft/CSoft).
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/vt/w_/8b/vtw_8bu2ica7x0b_fphudt6mcsi.png
[2]: https://habrahabr.ru/post/341002/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Реализация HFT роботов на устройствах CEPappliance
habra.16
habrabot(difrex,1) — All
2017-10-27 15:30:05


Мы уже 2 года плотно общаемся с HFT трейдерами и разработчиками решений для HFT торговли. И испытываем некоторую неловкость от того, что никто в этой среде открыто не рассказывает о своих технологических успехах. Так как мы делаем устройства на основе FPGA [CEPappliance][1], применимые в том числе для HFT торговли, мы неустанно интересуемся кто и как использует FPGA в этой сфере. Складывается навязчивое впечатление, что FPGA в HFT торговле, как секс у подростков — все о них говорят, но мало кто ими занимается, да еще и успешно.
[Читать дальше →][2]

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

[>] Vibe.js — попытка сделать state management без боли
habra.16
habrabot(difrex,1) — All
2017-10-28 12:00:12


Всем йо, хабражители.



В общем, так вышло, что я пишу на JavaScript уже довольно долго, и одной из самых главных задач всегда была организация состояния приложения.
Что-то хочется кешировать, что-то обновлять, причем обновлять везде, а не только в локальном компоненте, не хочется перерисовывать весь компонент если поменялся весь Store (shout out to Vuex), а хочется подписываться на то, что используешь (shout out to MobX).

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

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

[>] Ищем имена с опечатками в PostgreSQL
habra.16
habrabot(difrex,1) — All
2017-10-28 20:30:05


Все началось с того, что мне нужно было разработать поиск пациентов для одной внутренней медицинской системы. Логика работы была в том, что если мы не нашли человека в системе, то его нужно создать (а дубли пациентов плодить нельзя). В связи с этим одной из подзадач стала реализация поиска людей с учетом опечаток в их именах. Ну а поскольку я люблю PostgreSQL (а когда в руках у тебя молоток, то все похоже на гвозди), не сложно угадать, на чем я решил реализовать поиск с опечатками…
[![][1]
][2] [Читать дальше →][3]

[1]: https://habrastorage.org/webt/sj/rm/sq/sjrmsqmnovu_xaq--unhed2a3qs.jpeg
[2]: https://habrahabr.ru/post/341142/
[3]: https://habrahabr.ru/post/341142/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Хронология уровня CO в атмосфере США (решение задачи Kaggle с помощью Python+Feature Engineering)
habra.16
habrabot(difrex,1) — All
2017-10-28 20:30:05


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

**Выборка данных**

Выборка данных содержит порядка 8,5 млн строк и 29 столбцов.Вот некоторые из параметров:

* Широта-latitude
* Долгота-longitude
* Способ взятия пробы-method\_name
* Дата и время взятия пробы-date\_local
![image][1]

**Задача**

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

[1]: https://habrastorage.org/webt/fh/5q/4b/fh5q4bzkezrxwg75ne0oyq47-ui.png
[2]: https://habrahabr.ru/post/341130/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Убираем радиальное искажение с фото и видео при помощи библиотеки openCV и языка python
habra.16
habrabot(difrex,1) — All
2017-10-29 02:00:05


В данной статье будет рассказываться о применении библиотеки машинного зрения (openCV) для удаления эффекта радиального искажения (дисторсии) с фото и видео. Данный эффект также известен как эффект рыбьего глаза (fisheye) или distortion. Решение написать данную статью было принято после нескольких дней поиска информации в интернете. Не смотря на то, что есть гайды на английском языке, они не объясняют как правильно установить openCV, чтобы все работало. В статье присутствует готовый код.



Сразу привожу фото итогового результата. Слева оригинальное фото, справа — обработанное:





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

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

Pages: 1 ... 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 ... 210