RSS
Pages: 1 ... 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 ... 210
[>] [Из песочницы] Наипростейший RESTful сервис на Kotlin и Spring boot
habra.16
habrabot(difrex,1) — All
2017-11-28 17:00:08


![][1]

Со времен релиза [Kotlin][2] прошло уже более года, да и [Spring boot][3] претерпел изменения. Наткнувшись на [статью][4] о том как написать простой RESTful сервис используя Kotlin и Spring boot, захотелось написать о том как же это можно сделать сегодня.



Эта небольшая статья ориентированна на тех кто никогда не писал код на Kotlin и не использовал Spring boot.

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

[1]: https://habrastorage.org/webt/pi/93/mx/pi93mxapomjg6suhlc6pbedv_bo.png
[2]: https://kotlinlang.org/
[3]: https://projects.spring.io/spring-boot/
[4]: https://habrahabr.ru/post/274997/
[5]: https://habrahabr.ru/post/343364/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Сравнение качества кода Firebird, MySQL и PostgreSQL
habra.16
habrabot(difrex,1) — All
2017-11-28 18:00:09


![][1]


Сегодняшняя статья несколько необычна. Как минимум по той причине, что вместо анализа одного проекта, будем искать ошибки сразу в трёх, а также посмотрим, где найдутся наиболее интересные баги. А самое интересное — мы выясним, кто молодец и пишет самый качественный код. Итак, на повестке дня — разбор ошибок в коде проектов Firebird, MySQL и PostgreSQL.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/d99/28e/f3d/d9928ef3d7038b3b6d126b6952ad4502.png
[2]: https://habrahabr.ru/post/343410/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Как Discord каждый день изменяет размер 150 млн картинок с помощью Go и C++
habra.16
habrabot(difrex,1) — All
2017-11-28 19:30:07


![][1]

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


# Встречайте Image Proxy


Для выполнения этой работы мы создали сервис Python и креативно назвали его _Image Proxy_. Он загружает картинки с удалённых URL, а затем выполняет ресурсоёмкую задачу по ресайзингу с помощью пакета [pillow-simd][2]. Этот пакет работает удивительно быстро, используя где только возможно для ускорения ресайзинга [инструкции x86 SSE][3]. Image Proxy будет получать HTTP-запрос, содержащий URL, чтобы загрузить, изменить размер и, наконец, выдать окончательное изображение.
[Читать дальше →][4]

[1]: https://habrastorage.org/getpro/habr/post_images/201/bce/32b/201bce32b07895b92f2cb2026ae6c708.png
[2]: https://github.com/uploadcare/pillow-simd
[3]: https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions
[4]: https://habrahabr.ru/post/343414/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Интерполяционный многочлен на произвольных функциях
habra.16
habrabot(difrex,1) — All
2017-11-28 19:30:07


### Введение


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

Дано ![$n$][1] пар точек на плоскости ![$(x_1;y_1),...,(x_n;y_n)$][2]. Все ![$x_i$][3] различны. Необходимо найти многочлен ![$M(x)$][4] такой, что ![$M(x_i)=y_i$][5], где ![$i\in\{1,...,n\}$][6]

Переводя на русский язык имеем: Иван загадал ![$n$][7] точек на плоскости, а Мария, имея эту информацию, должна придумать функцию, которая (по меньшей мере) будет проходить через все эти точки. В рамках текущей статьи наша задача сводится к помощи Марии окольными путями.

«Почему окольными путями?» — спросите вы. Ответ традиционный: это статья является продолжением серии статей дилетантского характера про математику, целью которых является популяризация математического мира.
[Читать дальше →][8]

[1]: https://habrastorage.org/getpro/habr/formulas/08d/9fa/efb/08d9faefbe272bdf8fbb80773542e343.svg
[2]: https://habrastorage.org/getpro/habr/formulas/270/45b/a88/27045ba88c675afdc08b43c348c31d17.svg
[3]: https://habrastorage.org/getpro/habr/formulas/42f/173/c29/42f173c2992cf2826d484e0dac62fb74.svg
[4]: https://habrastorage.org/getpro/habr/formulas/539/215/d4f/539215d4fdc0b3018fdc14c399f30506.svg
[5]: https://habrastorage.org/getpro/habr/formulas/200/27d/cbc/20027dcbc141c7ae721d2dd55b35bd26.svg
[6]: https://habrastorage.org/getpro/habr/formulas/0ed/989/20e/0ed98920ecd02199ebdb3b89d7eaef9b.svg
[7]: https://habrastorage.org/getpro/habr/formulas/08d/9fa/efb/08d9faefbe272bdf8fbb80773542e343.svg
[8]: https://habrahabr.ru/post/343356/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как «Дадата» ищет дубли в списках торговых точек
habra.16
habrabot(difrex,1) — All
2017-11-28 20:00:08


![][1]

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

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

1. Евразия.
2. «САКУРА» Японская кухня.
3. Доминант.
4. Магазин-бутик «Евразия».
5. Милениум, ООО, продуктовый магазин.
6. Киви/ООО/Челябинск.
7. Супермаркет эко-продуктов «Доминант».

Точки № 1 и № 4 — дубли, № 3 и № 7 — тоже, но поди разберись.

А разобраться надо: когда в списке из 1000 торговых точек 300 дублей, у производителя начинаются проблемы.
[Что за проблемы и как мы их решаем][2]

[1]: https://habrastorage.org/webt/qk/v_/bn/qkv_bngkc6ex8gld976rfg_aa0u.jpeg
[2]: https://habrahabr.ru/post/343150/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] У CDROM’а век не долог?
habra.16
habrabot(difrex,1) — All
2017-11-29 01:30:03


> _DVD [диск] начнет умирать уже лет через 5. […] Я опираюсь на информацию из сети про условия и максимальный срок жизни, вполне может быть и лажа. Но фильмы на DVD[,] купленные ~10 лет назад[,] сейчас не запускаются ни один из нескольких десятков.
> Из [обсуждения][1]_


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

[1]: https://habrahabr.ru/post/342896/#comment_10541394
[2]: https://habrastorage.org/webt/jn/sh/wc/jnshwc_ydoqn748hncxx3hcdpgs.jpeg
[3]: https://habrahabr.ru/post/343448/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как «Дадата» ищет дубли в списках торговых точек. Разбираем алгоритм
habra.16
habrabot(difrex,1) — All
2017-11-29 02:00:04


![][1]

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

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

1. Евразия.
2. «САКУРА» Японская кухня.
3. Доминант.
4. Магазин-бутик «Евразия».
5. Милениум, ООО, продуктовый магазин.
6. Киви/ООО/Челябинск.
7. Супермаркет эко-продуктов «Доминант».

Точки № 1 и № 4 — дубли, № 3 и № 7 — тоже, но поди разберись.

А разобраться надо: когда в списке из 1000 торговых точек 300 дублей, у производителя начинаются проблемы.
[Что за проблемы и как мы их решаем][2]

[1]: https://habrastorage.org/webt/qk/v_/bn/qkv_bngkc6ex8gld976rfg_aa0u.jpeg
[2]: https://habrahabr.ru/post/343150/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Найдена уязвимость в Mac OS High Sierra, позволяющая войти суперпользователем в незащищенный компьютер
habra.16
habrabot(difrex,1) — All
2017-11-29 04:00:05


Был опубликован [твит][1], согласно которому можно получить привелегии суперпользователя, если в окошке _System Preferences > Users & Groups_ открыть любого пользователя, щелкнуть на замке, после чего указать root в качестве пользователя и оставить пароль пустым. Несколько (sic!) кликов по _Unlock_ «убеждают» MacOS в необходимости предоставить права суперпользователя.

Уязвимость была экспериментально подтверждена множеством пользователей.

Что еще хуже, данный трюк работает на экране входа в систему.
[Читать дальше →][2]

[1]: https://twitter.com/lemiorhan/status/935578694541770752
[2]: https://habrahabr.ru/post/343452/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Ошибки операторов ПДн, связанные с кадровой работой
habra.16
habrabot(difrex,1) — All
2017-11-29 10:30:06


[![][1]][2]

Прошло более 10-ти лет с момента принятия Федерального закона от 27.07.2006 N 152-ФЗ «О персональных данных», однако надзорная деятельность Роскомнадзора показывает, что далеко не все еще освоились с практикой его применения. В частности, в статистике за 2016-й год явно просматривается одна из типичных ошибок операторов, в большинстве случаев, связанная с кадровой работой (видимо, как наиболее распространенная деятельность), а именно:
> «Несоответствие содержания письменного согласия субъекта персональных данных на обработку персональных данных требованиям законодательства Российской Федерации (ч. 4 ст. 9 Федерального закона от 27.07.2006 № 152-ФЗ «О персональных данных») – примерно 9% от общего количества выявленных в 2016 году нарушений.»
Давайте попробуем еще раз взглянуть на данную проблематику. Тем более, благодаря нововведениям в законодательстве, штрафы значительно выросли. [Читать дальше →][3]

[1]: https://habrastorage.org/webt/sj/fe/oi/sjfeoipw196fqnocyzxzbgd8m6m.jpeg
[2]: https://habrahabr.ru/company/cloud4y/blog/343378/
[3]: https://habrahabr.ru/post/343378/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Объяснение SNARKs. Гомоморфное скрытие и слепое вычисление полиномов (перевод)
habra.16
habrabot(difrex,1) — All
2017-11-29 11:00:04


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

Предыдущие мои переводы из этой области. Советую сначала ознакомиться с ними, чтобы лучше понимать, о чем пойдет речь:

* [Введение в zk-SNARKs с примерами (перевод)][1]
* [Квадратичные арифметические программы: из грязи в князи (перевод)][2]
В этой части мы рассмотрим гомоморфное скрытие и слепое вычисление полиномов. Поехали…
[Читать дальше →][3]

[1]: https://habrahabr.ru/post/342262/
[2]: https://habrahabr.ru/post/342750/
[3]: https://habrahabr.ru/post/343054/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Три мифа о безопасности мобильных платежей
habra.16
habrabot(difrex,1) — All
2017-11-29 13:30:08


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

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

[>] От Root CA до User Authorization в nginx+apache. Часть 1. Создаем Root&Intermediate Certificate Authority
habra.16
habrabot(difrex,1) — All
2017-11-29 13:30:08


Доброго времени, Хабраюзер!

Хочу поделиться с тобой идеей беспарольной авторизации. Недавно лазил по сайтам центров сертификаций и наткнулся на интересную вещь. ЦС использую авторизацию по сертификату вместо пароля. Я считаю это удобным, для компании, а не для обычных интернет сайтов, где шарятся простые пользователи, но вход в АД (админ-центр сайта), было бы неплохо.
[Читать дальше →][1]

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

[>] [Перевод] Как перетасовать песни?
habra.16
habrabot(difrex,1) — All
2017-11-29 15:30:08


Мы здесь в Spotify серьёзно относимся к фидбеку от пользователей. Какое-то время назад мы заметили, что пользователи жалуются на то, что при включенном режиме случайного перемешивания плейлиста порядок песен на самом деле не случаен — например, несколько песен одного и того же исполнителя могут быть воспроизведены одна за другой, при том, что в плейлисте множество песен разных исполнителей. Пользователи спрашивали неужели мы не способны сделать такую простую вещь, как случайный порядок воспроизведения треков? Мы отвечали «Он правда-правда случаен! Мы проверяли!»

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


## Наш точка зрения


Ещё в самом первом релизе нашего плеера в нём была функция случайного перемешивания плейлиста. Мы использовали для этого алгоритм [Фишера-Йетса][1] — и он давал идеально случайное перемешивание. Но что такое «идеально случайное»? Это значит, например, что мы можем получить один из двух нижеуказанных порядков песен с одинаковой вероятностью (разные цвета означают треки разных исполнителей):

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

[1]: https://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D1%81%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%A4%D0%B8%D1%88%D0%B5%D1%80%D0%B0_%E2%80%94_%D0%99%D0%B5%D1%82%D1%81%D0%B0
[2]: https://habrastorage.org/getpro/habr/post_images/c9f/833/54f/c9f83354f0d640128ec9b99f0bb1e601.png
[3]: https://habrahabr.ru/post/343482/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Классификация звуков с помощью TensorFlow
habra.16
habrabot(difrex,1) — All
2017-11-29 15:30:08


![][1]

_Игорь Пантелеев, Software Developer, DataArt_

Для распознавания человеческой речи придумано множество сервисов — достаточно вспомнить Pocketsphinx или Google Speech API. Они способны довольно качественно преобразовать в печатный текст фразы, записанные в виде звукового файла. Но ни одно из этих приложений не может сортировать разные звуки, захваченные микрофоном. Что именно было записано: человеческая речь, крики животных или музыка? Мы столкнулись с необходимостью ответить на этот вопрос. И решили создать пробные проекты для классификации звуков с помощью алгоритмов машинного обучения. В статье описано, какие инструменты мы выбрали, с какими проблемами столкнулись, как обучали модель для TensorFlow, и как запустить наше решение с открытым исходным кодом. Также мы можем загружать результаты распознавания на IoT-платформу [DeviceHive][2], чтобы использовать их в облачных сервисах для сторонних приложений.


## Выбор инструментов и модели для классификации


Сначала нам нужно было выбрать ПО для работы с нейронными сетями. Первым решением, которое показалось нам подходящим, была библиотека [Python Audio Analysis][3].

Основная проблема машинного обучения — хороший набор данных. Для распознавания речи и классификации музыки таких наборов очень много. С классификацией случайных звуков дела обстоят не так хорошо, но мы, пусть и не сразу, нашли [набор данных с «городскими» звуками][4]. [Читать дальше →][5]

[1]: https://habrastorage.org/webt/nn/fm/ve/nnfmve5msvmeg233iornp5kgstw.jpeg
[2]: https://devicehive.com/
[3]: https://github.com/tyiannak/pyAudioAnalysis
[4]: https://serv.cusp.nyu.edu/projects/urbansounddataset/
[5]: https://habrahabr.ru/post/343464/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Хакерские байки c Quora
habra.16
habrabot(difrex,1) — All
2017-11-29 17:00:09


### История первая


Восемь лет назад в старшей школе я хакнул основной сервер моей школы и нанес реальный вред.

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

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

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

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

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

[>] Доступен PhpStorm 2017.3
habra.16
habrabot(difrex,1) — All
2017-11-29 18:00:09


[![PhpStorm 2017.3][1]][2]



Всем привет!



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



Для вступления, я думаю, достаточно. Стоит разве что добавить, что статья является вольным переводом страницы [“What’s new”][3]. Скачать новую версию можно по предыдущей ссылке или с помощью [Toolbox App][4]. Как всегда, доступна 30-дневная пробная версия. Полную же версию могут использовать обладатели [действующей подписки][5] на PhpStorm или All Products pack, а также [студенты][6] и [разработчики][7] проектов с открытым исходным кодом.



Погнали! (Осторожно, под катом 2873.15 Кбайт картинок.)

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

[1]: https://habrastorage.org/webt/mx/md/nw/mxmdnwgfu6hr9fkk5x17k2pksqq.jpeg
[2]: https://www.jetbrains.com/phpstorm/whatsnew/
[3]: https://www.jetbrains.com/phpstorm/whatsnew/
[4]: https://www.jetbrains.com/toolbox/app/
[5]: https://www.jetbrains.com/phpstorm/buy/
[6]: https://www.jetbrains.com/student/
[7]: https://www.jetbrains.com/buy/opensource/?product=phpstorm
[8]: https://habrahabr.ru/post/343474/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] В разрезе: новостной агрегатор на Android с бэкендом. Разработка под Android: выработка архитектуры
habra.16
habrabot(difrex,1) — All
2017-11-29 18:00:09


[Вводная часть (со ссылками на все статьи)][1]

В водной статье я уже писал о том, что планируемым клиентом для проекта должен стать клиент Android: доступный большой аудитории, лёгкий, функциональный, красивый, быстрый (не приложение, а мечта!). Если с основаниями выбора платформы всё понятно, то с тем как реализовывать на базе неё все перечисленные требования – ясно было далеко не всё.

Ранее разработкой под Android не занимался поэтому достаточно ценными источниками информации для меня являлись:

* [Книга «Android Programming: The Big Nerd Ranch Guide»][2] (ознакомление с [переводом от издательства «Питер»][3] подтвердило ранее имевшийся принцип: «можешь читать оригинал – читай оригинал»);
* [Сайт Google по разработке для Android;][4]
* [Книга «Efficient Android Threading» от издательства O’Reilly;][5]
* [Видео с проекта Яндекса «Мобилизация».][6]
После изучения указанных источников вопросов с архитектурой Android и взаимодействия их компонентов не осталось. Однако остался один наиважнейший вопрос: какова будет структура самого приложения? Пара примеров и прототипов показала, при росте функционала всё быстро начинало превращаться в «лапшу»:

* Логика работы с объектами Android (Activity, Preferences, TextView ….) перемешивалась с бизнес-логикой;
* Объекты хранения фигурировали в коде построения интерфейса;
* Модульное тестирование превращалось в ад из-за необходимости работы с родными объектами Android и их подмены экземплярами [Robolectric][7];
* Проверка асинхронного кода была возможна только на устройстве или эмуляторе (по принципу: «запустил-проверил-повторил»).[Читать дальше →][8]

[1]: https://habrahabr.ru/post/334510/
[2]: https://www.bignerdranch.com/books/android-programming/
[3]: https://habrahabr.ru/company/piter/blog/335146
[4]: https://developer.android.com/
[5]: http://shop.oreilly.com/product/0636920029397.do
[6]: https://www.youtube.com/watch?v=5EvxWifIgro&list=PLQC2_0cDcSKBNCR8UWeElzCUuFkXASduz
[7]: http://robolectric.org/
[8]: https://habrahabr.ru/post/343446/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Opensource нам строить и жить помогает: интервью разработчика Yii Framework Александра Макарова
habra.16
habrabot(difrex,1) — All
2017-11-29 19:00:08


![][1]

Недавно к команде Skyeng присоединился Александр Макаров, давний участник core team фреймворка Yii. Я не мог пропустить такой инфоповод и отправился в Воронеж, чтобы порасспросить Сашу про жизнь в мире open source, перспективы участия в разработке свободного ПО и совмещение такой разработки с полной ставкой.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/ia/x_/bx/iax_bxoemghg_lzulv494i8a11g.jpeg
[2]: https://habrahabr.ru/post/343490/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] 3 необычных кейса о сетевой подсистеме Linux
habra.16
habrabot(difrex,1) — All
2017-11-30 10:30:08


![][1]

В этой статье представлены три небольшие истории, которые произошли в нашей практике: в разное время и в разных проектах. Объединяет их то, что они связаны с сетевой подсистемой Linux (Reverse Path Filter, TIME\_WAIT, multicast) и иллюстрируют, как глубоко зачастую приходится анализировать инцидент, с которым сталкиваешься впервые, чтобы решить возникшую проблему… и, конечно, какую радость можно испытать в результате полученного решения. [Читать дальше →][2]

[1]: https://habrastorage.org/webt/md/ub/ii/mdubiinphkepvj1tx7xuqx46rhg.jpeg
[2]: https://habrahabr.ru/post/343348/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] История стартапа ROI4CIO: Можно ли автоматизировать продажи ИТ решений в B2B сфере и не только?
habra.16
habrabot(difrex,1) — All
2017-11-30 11:00:06


Свой проект мы задумали потому, что видели насколько не эффективен процесс продаж больших и малых ИТ-технологий, программ и услуг. Продажи “крутых ИТ технологий” осуществляется “по старинке”, ручными расчетами спецификаций (смет). Идея нашего ресурса ROI4CIO – свести к минимуму лишние затраты участников ИТ на поиск друг друга и создание инструментов взаимодействия в цепочке продаж.

![][1]

Если говорить в общем: задача для ИТ-директора компании клиента — не прогадать с выбором ИТ-решения. Главная задача ИТ-поставщика — правильно осуществить квотирование, “предсказать”, что понадобится клиенту для решения его задач и заранее заказать поставку нужных элементов для ИТ решения клиента. ROI4CIO — задуман как помощник, который покажет ИТ-директорам пользу от ИТ-технологий еще ДО их покупки. Также сервис помогает автоматизировать цепочку продаж и для ИТ поставщиков и для клиентов.

Участники нашей команды имеют опыт в ИТ сфере от 5 до 25 лет, как в роли разработчиков ПО, так и в роли продавцов ИТ продуктов. Нас все время интересовал вопрос: «Какую пользу приносят ИТ технологии? Как увидеть пользу и выгоду ИТ-технологии еще до внедрения?». Существующие ROI калькуляторы ИТ продуктов казались нам сложными и неубедительными, и теоретические обоснования этих решений не имели никакого опытного подтверждения. Поэтому мы решили сделать свой сервис, который учел бы недостатки попыток автоматизации ИТ продаж.

Перед CIO стоит проблема выбора ИТ-продукта, который принесет прибыль или может сократить риск убытка. Процесс выбора обычно очень длительный, который включает в себя как поиск информации в разрозненных ресурсах, так и привлечение различных игроков ИТ рынка: реселлеров, интеграторов, дистрибьюторов, поставщиков. Как говорится, с миру по нитке. В лучшем случае обходятся объявлением тендеров и консультацией у коллег в местном CIO клубе, но в худшем — выбирают самый “популярный” ИТ-продукт. [Читать дальше →][2]

[1]: https://habrastorage.org/webt/ym/ql/ix/ymqlixw8eltjqqlnadt-gsc8zxg.png
[2]: https://habrahabr.ru/post/342860/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Путеводитель по исходникам LLVM
habra.16
habrabot(difrex,1) — All
2017-11-30 11:00:06


В моём углубленном курсе компиляторов прошлой осенью мы провели некоторое время, изучая дерево исходников LLVM. Миллион строк кода на C++ выглядят пугающе, но я нахожу это интересным упражнением, и, по крайней мере, некоторые студенты с этим согласны, и я подумал, что я попытаюсь написать что-то подобное. Мы будем использовать LLVM 3.9, но предыдущие (и, возможно, будущие) релизы не сильно отличаются.
![][1]
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/dj/7v/ht/dj7vhtqrcaggifm0-ppl40p-pf8.jpeg
[2]: https://habrahabr.ru/post/343344/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Заразить во благо: как мы исполняем паразитный код
habra.16
habrabot(difrex,1) — All
2017-11-30 14:00:08


В последнее время мы много говорим про CRIU – систему живой миграции контейнеров. Но сегодня речь пойдет о еще более любопытной разработке: живом патчинге приложений, а также о библиотеке Compel, которая позволяет вытворять все эти безобразия, придавая гиперконвергентным системам новый уровень гибкости.

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

[1]: https://habrastorage.org/getpro/habr/post_images/2f3/cbe/769/2f3cbe7694b6cc218852cf56812ad30d.jpg
[2]: https://habrahabr.ru/post/343548/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Вопрос: действительно ли программное обеспечение использует новые наборы инструкций?
habra.16
habrabot(difrex,1) — All
2017-11-30 14:00:08


Со временем вендоры [добавляли новые и новые инструкции][1] в процессоры, управляющие нашими ноутбуками, серверами, телефонами и многими другими устройствами. Добавление машинных инструкций, решающих конкретные вычислительные подзадачи, является хорошим способом улучшить производительность системы в целом, не усложняя конвейер и не пытаясь нарастить частоту до запредельных величин. Одна новая инструкция, выполняющая ту же операцию, что и несколько старых, позволяет неоднократно увеличить производительность решения заданной задачи.
Новые инструкций, такие как [Intel Software Guard Extensions (Intel SGX)][2] и [Intel Control-flow Enforcement Technology (Intel CET)][3], также способны предоставить абсолютно новую функциональность.

![][4]

Хороший вопрос заключается в том, как скоро новые инструкции, добавленные в архитектуру, достигают конечного пользователя. **Могут ли операционные системы и другие приложения воспользоваться новыми инструкциями**, принимая во внимание, что они, как правило, обеспечивают обратную совместимость и способность исполняться независимо от модели установленного процессора? Много лет назад использование новых инструкций достигалось с помощью пересборки программы под новую архитектуру и добавления проверок, предотвращающих запуск на старой аппаратуре и печатающих что-то вроде “sorry, this program is not supported on this hardware”.

Я воспользовался полноплатформенным симулятором [Wind River Simics][5], чтобы узнать, в какой степени современное программное обеспечение способно использовать новые инструкции, оставаясь при этом совместимым со старым оборудованием.
[Читать дальше →][6]

[1]: https://en.wikipedia.org/wiki/X86_instruction_listings
[2]: https://habrahabr.ru/company/intel/blog/312002/
[3]: https://habrahabr.ru/company/eset/blog/303086/
[4]: https://habrastorage.org/webt/pe/0g/bo/pe0gbovlwuiycx-kappcb5zafsg.jpeg
[5]: https://habrahabr.ru/company/intel/blog/280838/
[6]: https://habrahabr.ru/post/342282/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Стоимость операций в тактах ЦП
habra.16
habrabot(difrex,1) — All
2017-11-30 15:30:06


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

Инфографика:

![][2]

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

[1]: https://otus.pw/I9Sc/
[2]: https://habrastorage.org/webt/6k/gv/4b/6kgv4bwokemkgl39uevpixx3gzi.png
[3]: https://habrahabr.ru/post/343566/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Fall Creators Update: важное для программиста
habra.16
habrabot(difrex,1) — All
2017-11-30 16:00:08


Классические дотнетовские приложения хороши тем, что они практически не ограничены в правах и, например, могут работать в трее. Зато универсальные приложения (UWP) более безопасны, и их можно устанавливать и удалять бесчисленное количество раз, не забивая систему и реестр мусором. Платформа UWP постоянно развивается, и, пока пользователи обновляются до Fall Creators Update, который вышел в октябре этого года, мы, разработчики, можем посмотреть на его новые и интересные возможности.

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

[1]: https://habrastorage.org/webt/ae/vv/kz/aevvkzslti4dt0g0fgobzx5ryq4.jpeg
[2]: https://habrahabr.ru/post/343240/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] SOC for beginners. Глава 3. Использование внешних источников данных об угрозах для Security Operation Center
habra.16
habrabot(difrex,1) — All
2017-11-30 18:30:06


В предыдущих статьях «SOC for beginners» мы рассказали, как устроен и как организовать базовый [мониторинг инцидентов][1] и [контроль защищенности инфраструктуры][2]. Сегодня речь пойдет о Threat Intelligence — использовании внешних источников данных об угрозах.

При всей кажущейся простоте, запуск работы с Threat Intelligence — чуть ли не самый длительный и болезненный процесс. Исключение, наверное, составляют только те случаи, когда у вас на рабочих станциях эталонные образы ОС с включенным Application Control, пользователи — без прав администратора, а доступ в интернет — исключительно по белым спискам. К сожалению, мы за все время работы таких компаний пока не встречали. В связи с этим все интересующиеся темой Threat Intelligence – добро пожаловать под кат.

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

[1]: https://habrahabr.ru/company/solarsecurity/blog/340386/
[2]: https://habrahabr.ru/company/solarsecurity/blog/341530/
[3]: https://habrastorage.org/webt/59/e7/1d/59e71dfc73a51846323425.jpeg
[4]: https://habrahabr.ru/post/343574/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Олимпиада «Я — профессионал», трек «Информационная и кибербезопасность»
habra.16
habrabot(difrex,1) — All
2017-11-30 20:30:07


Мы продолжаем рассказывать о студенческой олимпиаде «[Я — профессионал][1]», которую организуют Российский союз промышленников и предпринимателей, общественная организация «Деловая Россия», «Яндекс», а также сильнейшие университеты страны, в том числе Университет ИТМО.

Еще одно направление (трек), которое на олимпиаде курирует Университет ИТМО — «Информационная и кибербезопасность». Победители олимпиады получат высший балл по профильному экзамену при поступлении в магистратуру/аспирантуру, денежный приз и предложение о работе в лучших ИТ-компаниях России.

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

Сегодня расскажем о том, как в Университете ИТМО развивается направление кибербезопасность, какие проекты в этой сфере поддерживает Университет и почему «Я — профессионал» — отличная возможность присоединиться к одной из наших кибер-разработок.

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

[1]: https://yandex.ru/profi/#about
[2]: https://habrastorage.org/webt/9u/7e/2x/9u7e2xrnwroflpkcaaocd0agvok.jpeg
[3]: https://habrahabr.ru/company/spbifmo/blog/343510/
[4]: https://habrahabr.ru/post/343510/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Биороботы нашего времени — избавляемся от рутины вместе с Telegram. Реальный кейс без фантазий
habra.16
habrabot(difrex,1) — All
2017-11-30 21:00:07


В интернетах не прекращается хайп вокруг чат-ботов — в частности Telegram — благодаря шуму в СМИ, неоспоримых достоинствах платформы, политике продвижения, средствам разработки и т.д.

Смотришь новости: ну **жизни нет без чат-ботов!**
Да если их не будет — поезда с рельс сойдут, упадут самолеты, погибнут люди от тоски, когда не смогут найти картинки с котиками.

Но давайте положим руку на сердце: когда последний раз вы что-то заказывали в интернет магазине **через чат-бот**?


#### Кто все эти люди, которые заказывают разработку ботов для своих магазинов?


Типичный чат-бот магазина Vasya Limited:
>> автоматизирует поток водопад заявок из **5 человек в день**.
>> сливает 4 из 5 заявок, кровью добытых через Яндекс-Директ
>> если повезет — человек найдет номер телефона и позвонит
>> но вероятней всего «Эээ — куда жать?»- закроет и уйдет гуглить дальше.

Чем занят владелец, когда продажи «автоматизированы»:
>> вносит заказы в excel таблицу
>> заполняет почтовые бланки на посылках
>> стоит в очереди на почте с кучей посылок (каждый день!)
>> вносит трек номера в excel таблицу, затем рассылает клиентам

**Может хватит на ровном месте встраивать «технологии» туда, где действительно нужен человек, в то время как люди загружены рутиной для роботов?**
[Читать дальше →][1]

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

[>] Можно ли запихнуть распознавание номеров в любой тамагочи?
habra.16
habrabot(difrex,1) — All
2017-12-01 11:30:08


Про распознавание номеров мы рассказываем на Хабре давным давно. Надеюсь даже интересно. Похоже настало время рассказать как это применяется, зачем это вообще нужно, куда это можно запихнуть. А самое главное — как это изменяется в последние годы с приходом новых алгоритмов машинного зрения.
![][1]
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/ug/rp/j2/ugrpj2xw3vp5knr0kdjhvvfpqc0.jpeg
[2]: https://habrahabr.ru/post/343512/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] DevDay про микросервисы. Запись лучших докладов
habra.16
habrabot(difrex,1) — All
2017-12-01 11:30:08


![][1]

В прошлую пятницу мы собрали 140 разработчиков, чтобы поговорить о микросервисах — деплое, координации, согласованности. Делимся с вами записью двух лучших, по мнению участников, выступлений.
[Смотрите, что получилось][2]

[1]: https://habrastorage.org/webt/oo/bj/62/oobj62kzfxmyu1zsti-zfpzgmle.png
[2]: https://habrahabr.ru/post/343628/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Hik or Hack? (НЕ)безопасность Интернета вещей на примере IP-камеры Hikvision
habra.16
habrabot(difrex,1) — All
2017-12-01 11:30:08


![][1] В современном мире нас окружают «умные» устройства, в том или ином виде представляющие собой маленький компьютер. С точки зрения интеграции с современным оборудованием, будь то бытовая электроника и умные дома, медицинское и банковское оборудование, развлекательные системы и промышленное оборудование — все это представляет собой встраиваемые системы ([embedded-устройства][2]).

«Умные» гаджеты очень плотно влились в нашу жизнь, и их число из года в год растёт благодаря их низкой стоимости, удобству и простоте в использовании, в том числе через [Интернет][3]. Однако за рядом плюсов скрываются минусы, невидимые на первый взгляд рядовому пользователю.

В [одном из докладов][4] «Очной ставки» NeoQUEST-2017 рассматривался обширный класс embedded-устройств — IP-камеры, и обсуждались общие подходы к анализу встроенного программного обеспечения. В данной статье мы более подробно остановимся на исследовании камеры [Hikvision DS-2CD2432F-IW][5], ее прошивки и механизмов защиты от встраивания и модификации, используемых производителем.
[Читать дальше →][6]

[1]: https://habrastorage.org/webt/rx/al/ok/rxalokvt0-jvjyv2qcjdz1cilbi.png
[2]: https://ru.wikipedia.org/wiki/%D0%92%D1%81%D1%82%D1%80%D0%B0%D0%B8%D0%B2%D0%B0%D0%B5%D0%BC%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0
[3]: https://ru.wikipedia.org/wiki/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82_%D0%B2%D0%B5%D1%89%D0%B5%D0%B9
[4]: https://www.youtube.com/watch?v=9XS1Mxazomk
[5]: http://hikvision.ru/product/ds_2cd2432f_iw
[6]: https://habrahabr.ru/post/343144/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Кто в медицине ИСПДн в соответствие с законом приводил, тот в цирке не смеётся
habra.16
habrabot(difrex,1) — All
2017-12-01 12:00:09


[![][1]][2]

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

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

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

[1]: https://habrastorage.org/webt/7h/gt/_d/7hgt_d6q-zbc_qv9qx2j5x5-exq.jpeg
[2]: https://habrahabr.ru/company/cloud4y/blog/343588/
[3]: https://habrahabr.ru/post/343588/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] GoTo в ИТМО: Ботали неделю. Порвали 2 баяна
habra.16
habrabot(difrex,1) — All
2017-12-01 14:30:08


![][1]

Совсем недавно закончилась очередная [школа GoTo][2] в СПб. В отличие от прошлой осени, в этот раз Питер порадовал нас большим количеством солнечных и теплых ноябрьских дней, их было целых два. В один из этих дней боевые единицы из юных и не очень программистов отправились добывать код: поцеловать незнакомых петербуржских девушек, пройти кастинг в Мариинку на эскалаторе, накормить Олега Георгиевича кровью невинного программиста и запечатлить лик Наполеона между ног коня.
В остальные дни мы по старинке делали мы не менее увлекательные проекты по биоинформатике, машинному обучению, распределенным системам и гоняли чаи на кухне с разговорами о прекрасном. Отчет ИТМО можно прочесть [здесь][3].
Не возьмемся судить о том, что читателю интереснее, обо всем по порядку под катом.
[Читать дальше →][4]

[1]: https://habrastorage.org/webt/zb/y7/cf/zby7cfp5yakar7879rv_2wust4k.jpeg
[2]: https://goto.msk.ru/camp/
[3]: http://news.ifmo.ru/ru/education/trend/news/7100/
[4]: https://habrahabr.ru/post/342996/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Конструктор XML-строки из PHP-массива
habra.16
habrabot(difrex,1) — All
2017-12-01 14:30:08


Как часто приходится работать с XML PHP-разработчикам? Не так часто, на самом деле. Обычно потребность возникает при интеграции со сторонним сервисом, т.к. BetaPRO, OnTime или CDEK. И вот тут обычно возникает такая ситуация, когда ваш код становится похожим на


$date = '2016-09-25T12:45:10';
$account = 'f62dcb094cc91617def72d9c260b4483';
$secure = '81ad561784277fa864bf644d755fb164';
$count = 1;
$copy = 4;
$dispatchNumber = '1033229706';
$orderDate = '2016-09-25T12:45:10';

$request = <<<XML




XML;

и это еще не все! Нужно позаботится о том, чтобы значения атрибутов и содержимое заключенное в теги не содержало спецсимволов присущие XML. Если для конкретно этого запроса можно быть уверенным, что ничего из спецсимволов сюда не попадет, то контролировать каждый запрос вовсе бы не хотелось. Поэтому через "фильтр" пропускается все. Отсюда следует, что нужно еще "загнаться" с `htmlspecialchars` или с `CDATA`, или с `XMLWriter`, и знать, как это применить и не раз еще "свернуть себе кровь". Как вы видите, времени стоит "убить" достаточно, а результат-то хочется уже сейчас. Эх… А как хотелось бы, чтобы XML можно было бы создавать так же быстро, как JSON: отдал массив, а тебе XML-строку, и никаких заморочек. Опечалившись сложившейся ситуацией я в далеком 2015ом году я решил сделать такой конструктор.



Вашему вниманию представляю [xml-constructor][1] для PHP начиная с версии 5.4 и до 7.2 на момент публикации данной статьи.

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

[1]: https://github.com/bupy7/xml-constructor
[2]: https://habrahabr.ru/post/343636/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] О создании пэйлоадов для разных платформ с помощью msfvenom
habra.16
habrabot(difrex,1) — All
2017-12-01 14:30:08


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

[![image][1]][2]
Поэтому сегодня мы решили поделиться с вами переводом материала, автор которого рассказывает о том, как создавать и применять пэйлоады, или полезные нагрузки, предназначенные для удалённого управления различными системами, в частности — Windows, Linux и Android, с использованием msfvenom — инструмента командной строки из пакета Metasploit. Сразу хочется отметить, что к тому, что вы узнаете ниже, стоит относиться с осторожностью, помня о том, что несанкционированное проникновение в чужие системы — это неэтично и незаконно.
[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/430/af0/0b0/430af00b0d9216e5d3dec89d93a2bbde.jpg
[2]: https://habrahabr.ru/company/ruvds/blog/343612/
[3]: https://habrahabr.ru/post/343612/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Лямбда-потрошитель
habra.16
habrabot(difrex,1) — All
2017-12-01 14:30:08


Хотя недавно [была выпущена Java 9][1] с новой модульной системой, многие еще продолжают пользоваться привычной восьмой версией, с лямбдами. В течение полугода я плотно работал с ней и всеми ее нововведениями. Если с новыми методами коллекций и Optional все понятно, то с лямбдами не все так очевидно. В частности, как они реализованы и как влияют на производительность. И главное — чем они отличаются от старых добрых анонимных классов.


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

[1]: https://docs.oracle.com/javase/9/whatsnew/
[2]: https://habrastorage.org/webt/zh/vg/_9/zhvg_9irphcayzbjxf50n9jb194.png
[3]: https://habrahabr.ru/post/343624/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] In-Memory Computing Summit 2017 San Francisco
habra.16
habrabot(difrex,1) — All
2017-12-01 14:30:08


Не так давно, в конце октября, в Кремниевой долине прошел очередной In-Memory Computing Summit, одним из организаторов и спонсоров которого стала компания GridGain.

Теперь можно получить бесплатный доступ к видеоматериалам и слайдам, которые поделены на два раздела: [основные тезисы][1] и [доклады][2].

![][3]

На саммите было более прочитано более 40 докладов по распределенным системам и вычислениям в памяти. Среди выступавших были сотрудники компаний GridGain, Percona, AMY Robotics, Hazelcast, VoltDB Inc., Dell и других.

Далее мы отдельно упомянем несколько избранных докладов. [Читать дальше →][4]

[1]: https://www.imcsummit.org/us/agenda/keynotes
[2]: https://www.imcsummit.org/us/agenda/slides-video-recordings
[3]: https://habrastorage.org/webt/kk/vv/ge/kkvvgeztezzqguq8myiki_v11dy.jpeg
[4]: https://habrahabr.ru/post/343556/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Структура и модель выполнения .NET Core приложений
habra.16
habrabot(difrex,1) — All
2017-12-02 02:00:04


В этой статье я рассмотрю компоненты платформы .NET Core 2.0, необходимые для загрузки и выполнения .NET Core-приложений, а также артефакты для двух возможных типов развертывания.

Текст объемный и рассчитан на:

* начинающих разработчиков, которые только знакомятся с платформой .NET Core;
* опытных разработчиков, выполняющих роль DevOps-инженеров в produсtion-окружении.
В статье не упоминается процесс создания приложений при помощи SDK (dotnet CLI), однако эта информация будет полезной для понимания, как работает SDK, а именно её основной компонент (ядро) — «драйвер» dotnet.dll, поскольку эта библиотека является управляемой сборкой и выполняется на .NET Core.

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

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

[>] Боремся со сверхинтеллектом Postgresql средствами Postgresql
habra.16
habrabot(difrex,1) — All
2017-12-02 14:30:07


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



![][1]



Образумливать взбунтовавшийся интеллект иногда очень сложно. Поделюсь недавней "находкой" в этой области.

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

[1]: https://habrastorage.org/webt/ga/ze/az/gazeazri-h3xbnqzojqmw8hou_m.jpeg
[2]: https://habrahabr.ru/post/343686/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Я создал приложение, которое делает изучение алгоритмов и структур данных гораздо интереснее
habra.16
habrabot(difrex,1) — All
2017-12-02 16:30:07


![image][1]

_Интерфейс CS-Playground-React_

[Я программист-самоучка][2]. Это значит, что я постоянно имею дело с [синдромом самозванца][3]. Для меня не редкость чувствовать, что я неполноценный, и я в невыгодном положении для понимания сложных концепций информатики.

Я никогда не разбирался в математике. И я всегда привязывал сильные математические навыки к своей естественной способности преуспеть в программировании. Я чувствую, что мне приходится больше работать, чем другим (у которых есть врожденные навыки к математике), чтобы изучать одни и те же понятия. С этой идеей, глубоко укоренившейся в моем мозгу, я был уверен, что никогда не смогу научиться чему-либо, например, обходить деревья двоичного поиска, и как мысленно анализировать рекурсивные кошмары, такие как сортировка слиянием.

Зайдите на [CS-Playground-React][4], простую браузерную JavaScript-песочницу для изучения и практикования алгоритмов и структур данных.

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

[1]: https://habrastorage.org/getpro/habr/post_images/78c/683/e8a/78c683e8a2fde498f46b2a6b6822159b.png
[2]: https://medium.freecodecamp.org/the-freecodecamp-alumni-network-a-homegrown-mentorship-network-for-fcc-alumni-529e4531c34f
[3]: https://medium.freecodecamp.org/i-built-an-app-that-makes-learning-algorithms-and-data-structures-way-more-fun-46fbb8afacaf
[4]: http://cs-playground-react.surge.sh/
[5]: https://github.com/no-stack-dub-sack/cs-playground-react/blob/master/RESOURCES.md
[6]: https://habrahabr.ru/post/343706/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Текстуры кода
habra.16
habrabot(difrex,1) — All
2017-12-02 19:00:08



Нет, это не опечатка. В этой заметке речь пойдет не о структурах, а именно о текстурах программного кода.
[Читать дальше →][1]

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

[>] [Из песочницы] DLP-система DeviceLock 8.2 — дырявый штакетник на страже вашей безопасности
habra.16
habrabot(difrex,1) — All
2017-12-02 20:30:07


В октябре 2017 года довелось побывать на рекламном семинаре DLP-системы DeviceLiock, где помимо основного функционала защиты от утечек типа закрытия USB-портов, контекстного анализа почты и буфера обмена рекламировалась защита от администратора. Модель простая и красивая — в маленькую фирму приходит установщик, ставит комплекс программ, паролит БИОС, создает администраторскую учетку DeviceLock, а местному админу оставляет только права на управление собственно Виндой и остальным софтом. Даже в случае умысла этот админ ничего украсть не сможет. Но это все теория…
[Читать дальше →][1]

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

[>] [Из песочницы] Учим компьютер писать как Толстой, том I
habra.16
habrabot(difrex,1) — All
2017-12-02 20:30:07


> — Eh bien, mon prince. Gênes et Lucques ne sont plus que des apanages, des поместья, de la famille Buonaparte. Non, je vous préviens que si vous ne me dites pas que nous avons la guerre, si vous vous permettez encore de pallier toutes les infamies, toutes les atrocités de cet Antichrist (ma parole, j'y crois) — je ne vous connais plus, vous n'êtes plus mon ami, vous n'êtes plus мой верный раб, comme vous dites 1. Ну, здравствуйте, здравствуйте. Je vois que je vous fais peur 2, садитесь и рассказывайте.



# ТОМ ПЕРВЫЙ {#tom-pervyy}



### ЧАСТЬ ПЕРВАЯ. Анна Каренина {#chast-pervaya-anna-karenina}



Недавно на хабре наткнулся на эту статью . И захотелось написать про word embeddings, python, gensim и word2vec. В этой части я постараюсь рассказать о обучении базовой модели w2v.



Итак, приступаем.


* Качаем anaconda. Устанавливаем.
* Еще нам пригодится C/C++ tools от visual studio.
* Теперь устанавливаем gensim. Именно для него нам и нужен c++.
* Устанавливаем nltk.
* При установке не забудьте качать библиотеки для Anaconda, а не для стандартного интерпретатора. Иначе все кончится крахом.
* Качаем [Анну Каренину][1] в TXT.
* Советую открыть файл и вырезать оттуда рекламу и заголовки. Потом сохранить в формате `utf-8`.
* Можно приступать к работе.
[Читать дальше →][2]

[1]: http://modernlib.ru/books/tolstoy_lev_nikolaevich/anna_karenina/
[2]: https://habrahabr.ru/post/343704/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Настройка звука в Ubuntu
habra.16
habrabot(difrex,1) — All
2017-12-02 22:30:07


У меня есть хобби — написание музыки. Поэтому после установки свежей версии [Ubuntu][1] на свой ноутбук мне понадобилось настроить звук чуть более тонко, чем обычным пользователям. К моему сожалению, сделать это у менять не вышло. Тем не менее, я хочу рассказать о шагах, которые немного приблизили меня к результату. Я надеюсь, что кому-то это сэкономит время. А может, с помощью читателей я смогу пройти дальше. Если вы пользуетесь Linux и можете произнести слова sidechain и компрессия в одном осмысленном предложении — Добро пожаловать!


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

[1]: https://www.ubuntu.com
[2]: https://habrastorage.org/webt/21/ur/yr/21uryruubr7s0ocwbc_nx8u7cw4.jpeg
[3]: https://habrahabr.ru/post/343718/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Автоматное проектирование. Практикум. Задача «Переправа»
habra.16
habrabot(difrex,1) — All
2017-12-03 14:30:07


Велосипед изобрести — не речку переплыть. Задача «Переправа» поднималась дважды за пару месяцев, но я хочу отметить [ вот это решение][1], поскольку именно оно иллюстрирует удачный предметный взгляд, и даёт модель удачного ОА, которую остаётся только логически развить, что в итоге даст более совершенное решение, чем при иных взглядах на проблему.
[Читать дальше →][2]

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

[>] Security Week 48: Root-доступ за усердие, майнер-консультант и пробный макрос-зловред
habra.16
habrabot(difrex,1) — All
2017-12-03 16:30:07


[Новость на русском][1], [подробнее на английском][2]

Если человек упорно жмет на ту же кнопку, несмотря на то, что ничего не происходит, то он либо идиот, либо тестировщик по призванию. На этой неделе, например, таким образом удалось обнаружить почти забавную уязвимость в новеньких MacOS HIgh Sierra 10.13.1 и 10.13.2 Beta: оказалось, что если при выборе пользователя в строке для логина напечатать root, а потом поместить курсор в поле для пароля, ничего туда не вводя, и несколько раз кликнуть «Снять защиту», система пустит вас внутрь с root-правами. Разумеется, на такую уязвимость Apple прореагировала мгновенно.
[Читать дальше →][3]

[1]: https://threatpost.ru/macos-high-sierra-bug-gives-root-acess/23472/
[2]: https://arstechnica.com/information-technology/2017/11/macos-bug-lets-you-log-in-as-admin-with-no-password-required/
[3]: https://habrahabr.ru/post/343740/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Почему умирают российские выставки по кибербезопасности
habra.16
habrabot(difrex,1) — All
2017-12-03 16:30:07


В 1851 году в Лондоне прошла первая Всемирная выставка, которую посетили более шести миллионов человек. В проработке проекта активно участвовал британское Королевское общество ремесленников, их задачей было создать инструмент поддержки торговли и предпринимательства. Результат оказался ошеломительным – выручка оказалось такой большой, что часть ее пошла на обустройство музейного город Альбертополь. Следующую Всемирную выставку всего через два года организовали в США, а в 2020 году очередное мероприятие в серии проведет Дубай. Причина, по которой глобальные и отраслевые мероприятия остаются популярными вот уже полторы сотни лет, очевидна: именно в формате выставок получается организовать интенсивный и эффективный обмен информацией между людьми.

Тем не менее, не все выставки по информационной безопасности одинаково полезны. В этом году я побывал на выставках RSA Asia Pacific &amp; Japan и Government Ware, что позволило не только окунуться в тренды кибербезопасности в прогрессивном регионе APAC, но и сравнить подходы к организации мероприятий за рубежом и у нас. Сегодня хотелось бы поделиться выводами и размышлениями о том, что мешает российским выставкам, посвященным информационной безопасности, расцвести пышным цветом (осторожно, под катом много картинок).

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

[1]: https://habrastorage.org/webt/b8/g4/jf/b8g4jfpb6rk_u_mhyivu9og9ve8.jpeg
[2]: https://habrahabr.ru/post/343654/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Интегрируем смартконтракт в веб-приложение на Nodejs
habra.16
habrabot(difrex,1) — All
2017-12-03 18:00:08


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



![UI приложения][1]

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

[1]: https://habrastorage.org/webt/xn/2v/az/xn2vazq1drpi5fh4peosbaqvwmc.png
[2]: https://habrahabr.ru/post/343744/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Системы ИИ научились создавать умные модели для ML: дайджест для начинающих
habra.16
habrabot(difrex,1) — All
2017-12-03 18:30:07


В ноябре участники исследовательского проекта Google Brain [опубликовали][1] результаты эксперимента AutoML. Им удалось создать систему, которая порождает новые ИИ-модели, используя [метод][2] обучения с подкреплением. Реализованный таким образом алгоритм уже [справляется][3] с задачей лучше решений, полностью написанных человеком.

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

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

[1]: https://research.googleblog.com/2017/11/automl-for-large-scale-image.html
[2]: https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81_%D0%BF%D0%BE%D0%B4%D0%BA%D1%80%D0%B5%D0%BF%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC
[3]: https://www.fastcodesign.com/90152427/googles-new-ai-designs-ai-better-than-humans
[4]: https://habrastorage.org/webt/sv/hh/50/svhh50nqfgk-pe8qo0j322ywm04.jpeg
[5]: https://habrahabr.ru/company/1cloud/blog/343762/
[6]: https://habrahabr.ru/post/343762/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Дыра у хостинг провайдера или как получить доступ к удаленному аккаунту
habra.16
habrabot(difrex,1) — All
2017-12-03 23:00:07


## Спасибо Elasticweb



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


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

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

![image][1]
[Читать полную версию][2]

[1]: https://pp.userapi.com/c841037/v841037387/408c0/9x-lwGKh414.jpg
[2]: https://habrahabr.ru/post/343774/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

Pages: 1 ... 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 ... 210