RSS
Pages: 1 ... 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 ... 133
[>] [Перевод] Вредоносный код в npm-пакетах и борьба с ним
habra.16
habrabot(difrex,1) — All
2017-08-08 14:30:06


В начале августа в нескольких десятках npm-пакетов был обнаружен вредоносный код. Администрация npmjs.com оперативно на это отреагировала и тут же [подготовила отчёт][1] о предпринятых мерах. Позже Доминик Кундел из twilio.com поделился [советами][2] о том, как найти проекты, «заражённые» подобными пакетами. Представляем вашему вниманию рассказ об этих событиях.

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

[1]: http://blog.npmjs.org/post/163723642530/crossenv-malware-on-the-npm-registry
[2]: https://www.twilio.com/blog/2017/08/find-projects-infected-by-malicious-npm-packages.html
[3]: https://habrastorage.org/web/a28/69c/327/a2869c327ca44bd2b554c91f11f77630.jpg
[4]: https://habrahabr.ru/company/ruvds/blog/335144/
[5]: https://habrahabr.ru/post/335144/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Оптимизация и автоматизация тестирования веб-приложений
habra.16
habrabot(difrex,1) — All
2017-08-08 15:00:06


![image][1]



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

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

[1]: https://habrastorage.org/getpro/habr/post_images/ea0/1ae/59f/ea01ae59fa9cc81153dbf87ebc8697a4.jpg
[2]: https://habrahabr.ru/post/335140/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Начало работы с Wagtail CMS (Django) и GraphQL
habra.16
habrabot(difrex,1) — All
2017-08-08 17:30:03


Если у вас появилась потребность добавить React в Wagtail CMS, да еще и с использованием GraphQL, то это руководство должно помочь вам в этом.

![image][1]

Это перевод [статьи][2] из официального блога Wagtail, автор Brent Clark.
[Читать дальше →][3]

[1]: https://habrastorage.org/web/58f/821/68c/58f82168c31e40f68fe90461d5a3675a.png
[2]: https://wagtail.io/blog/getting-started-with-wagtail-and-graphql/
[3]: https://habrahabr.ru/post/335128/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Очень легкая система мониторинга с Телеграмом и Консулом
habra.16
habrabot(difrex,1) — All
2017-08-08 20:30:04


![][1]



Всем счастья и добра!



Эволюционно так получилось, что в моем личном владении оказался не маленький зоопарк различных серверов: от дешевого Supermicro до топового (на момент выпуска) HP Gen 8. Все конечно связано оптикой и прочими радостями жизни.



Но сказ не про то, как сеть класть, и даже не про то, как сервера настраивать, а про то, как правильно просто на всем этом деле docker-compose сервисы поднимать и радоваться.

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

[1]: https://habrastorage.org/web/4a4/4d6/0d3/4a44d60d3fd54b29aab30a62e93fbfa7.png
[2]: https://habrahabr.ru/post/335166/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Сайты интернет-магазинов и промышленных компаний наиболее уязвимы для хакерских атак
habra.16
habrabot(difrex,1) — All
2017-08-08 22:30:05


[![image][1]][2]

Более половины современных сайтов содержат критически опасные уязвимости, которые позволяют злоумышленникам проводить различные атаки, включая отказ в обслуживании и кражу персональных данных. Такие выводы содержатся в [исследовании компании Positive Technologies][3] на основе работ по анализу защищенности веб-приложений за 2016 год.

Как следует из отчета, практически все исследованные веб-приложения (94%) позволяют осуществлять атаки на пользователей, и неудивительно ― половина уязвимостей, вошедших в десятку самых распространенных, используются именно для таких атак. Доступ к персональным данным был получен в 20% приложений, обрабатывающих такие данные (включая сайты банков и государственных организаций). [Читать дальше →][4]

[1]: https://habrastorage.org/getpro/habr/post_images/f6a/e53/39a/f6ae5339a6f16ca6951ed47559d686ef.png
[2]: https://habrahabr.ru/company/pt/blog/335186/
[3]: http://blog.ptsecurity.ru/2017/08/web-attacks.html
[4]: https://habrahabr.ru/post/335186/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Проверка вашего сайта на целостность контента: видит ли клиент то, что должен?
habra.16
habrabot(difrex,1) — All
2017-08-09 00:30:05


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

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

[1]: http://www.host-tracker.com
[2]: https://habrastorage.org/web/a97/b66/a82/a97b66a82eed48e2a3adf32ea25b0bef.jpg
[3]: https://habrahabr.ru/post/334938/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Централизованное хранилище логов для Squid Proxy или как мы логи в базу заворачивали
habra.16
habrabot(difrex,1) — All
2017-08-09 09:30:08


![image][1]


Привет %username%,

Сегодня я хотел бы рассказать про достаточно тривиальную задачу сбора логов с децентрализованных Squid proxy серверов и подводные камни с которыми мы столкнулись.

Что имеем:

1. Squid-hq
2. Squid-br1
3. Squid-br2
4. Squid-br3
5. Squid-br4
6. Squid-db[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/f44/761/ce4/f44761ce4323873a566ccac5aff56c0f.gif
[2]: https://habrahabr.ru/post/335204/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Алгоритм для запоминания иностранных слов
habra.16
habrabot(difrex,1) — All
2017-08-09 10:00:04


На данный момент создано множество приложений для запоминания слов. Из тех что мне запомнились могу выделить такие Android приложения как **Lingualeo**, **Английские слова**, **СловоУч**.

Главным недостатком этих приложений для меня был платный аккаунт для добавления своей базы слов. Поэтому встал вопрос о написании своего приложения для запоминания слов. Главной идеей было подключения внешнего API словаря и переводчика для переводов слов на родной язык. В качестве такого API было выбрано Yandex API (**API Переводчика** и **API Словаря**).
[Читать дальше →][1]

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

[>] Уязвимость в Альфа-Банк Украина: получение ФИО клиента по номеру телефона
habra.16
habrabot(difrex,1) — All
2017-08-09 11:30:04


Альфа-Банк Украина входит в ТОП-5 по количеству активных карт среди всех украинских банков и имеет довольно неплохой интернет-банкинг My Alfa-Bank.

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

Длительное время функция p2p-перевода по номеру телефона действовала при соблюдении определенных условий: если у получателя подтверждён телефон и оформлена зарплатная (именно зарплатная) карта в Альфа-Банке Украина.

Не так давно, в конце марта этого года, банк [реализовал][1] p2p переводы по номеру телефона в интернет-банкинге My Alfa-Bank уже для всех клиентов банка, а не только для «зарплатников».

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

Ввожу сумму и номер телефона родственника, у которого открыт счёт в Альфа-Банке, нажимаю «Далее».
![][2]
[Читать дальше →][3]

[1]: https://alfabank.ua/ru/about/press/alfa-bank-ukrayina-realizuvav-r2r-perekazi-za-nomerom-telefo-1863
[2]: https://habrastorage.org/web/28c/819/b6a/28c819b6a3de493eaa6b830e1b0d0f54.png
[3]: https://habrahabr.ru/post/334700/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Продвинутые перечисления с Ruby
habra.16
habrabot(difrex,1) — All
2017-08-09 13:30:04


Перечисления (enumeration) по определению это — «действие упоминания некоторого количества чего-либо один за одним». В программировании, вместо упоминания, мы выбираем любое действие, которое хотим произвести, будь то простой вывод на монитор или выполнение некоторого рода выборки и/или преобразования над элементом.

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

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

[>] Как программно разметить спутниковую фотографию? Решение задачи Dstl Satellite Imagery Feature Detection
habra.16
habrabot(difrex,1) — All
2017-08-09 14:00:06


![][1]

Привет, Хабр! Меня зовут Евгений Некрасов, я программист-исследователь в Mail.Ru Group. Сегодня я расскажу о своем решении соревнования по анализу данных [Dstl Satellite Imagery Feature Detection][2], которое было посвящено сегментации спутниковых изображений. В этом соревновании я использовал относительно простой поход к моделированию и занял 7 место из 419 команд. Под катом — рассказ, как мне это удалось.
[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/e98/7cf/d32/e987cfd3224536c5fbab12a71504da78.jpg
[2]: https://www.kaggle.com/c/dstl-satellite-imagery-feature-detection
[3]: https://habrahabr.ru/post/335164/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Введение в октодеревья
habra.16
habrabot(difrex,1) — All
2017-08-09 14:30:04


![][1]

Что такое октодеревья? Если вам совершенно неизвестно это понятие, то рекомендую прочитать [статью в Википедии][2] (это займёт около пяти минут). Она даёт достаточное _представление_, но едва ли её будет достаточно, чтобы понять, для чего они используются и как их реализовать.

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

[1]: https://habrastorage.org/getpro/habr/post_images/743/8d4/db9/7438d4db9a93c3bf5caf8148b6562337.png
[2]: https://ru.wikipedia.org/wiki/%D0%9E%D0%BA%D1%82%D0%BE%D0%B4%D0%B5%D1%80%D0%B5%D0%B2%D0%BE
[3]: https://habrahabr.ru/post/334990/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Разбор доклада Артёма Гавриченкова о масштабировании TLS
habra.16
habrabot(difrex,1) — All
2017-08-09 17:00:04


Сегодняшняя статья посвящена докладу про безопасность. Это рассказ Артёма [ximaera][1] Гавриченкова «Масштабируя TLS», который был представлен на [Highload++][2] в ноябре 2016 года:


Слайды можно найти [тут][3].

**Disclaimer:** про сертификаты и TLS только разбираемое выступление, а не сама статья.


# Сюжет


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

[1]: https://habrahabr.ru/users/ximaera/
[2]: http://www.highload.ru/2016/
[3]: https://www.slideshare.net/profyclub_ru/tls-qrator-labs
[4]: https://habrahabr.ru/post/331186/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Разрушители легенд — Gentoo Linux
habra.16
habrabot(difrex,1) — All
2017-08-09 22:30:04


> _Дочка Убунту прибежала к Дебиану и, весело смеясь, поцеловала его в лоб: "С днём рождения, папа!". Затем она окинула радостным взглядом сидящих за столом гостей и спросила своим звонким голосом:_
> _ — Папа, а где Gentoo, разве он ещё не пришёл?_
> _ — Нет, он ещё только собирается._

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


![][1]


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

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

[1]: https://habrastorage.org/web/224/073/c52/224073c52ebf446c868fa7ce921fae03.png
[2]: https://habrahabr.ru/post/335022/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Linux Kernel Extension for Databases
habra.16
habrabot(difrex,1) — All
2017-08-09 22:30:04


![][1]


## Александр Крижановский ( [krizhanovsky][2] )


Сегодня буду рассказывать про внутренности базы данных, про внутренности ОС и о том, что происходит на стыке. Когда я говорю про базу данных, я имею в виду в основном ввод/вывод, управление памятью и обработку транзакций. Это совершенно не про SQL, не про индексы, не про блокировки и т.д. Только ввод/вывод, управление памятью и транзакции.

В тех местах, когда я буду упоминать про базы данных, я буду ссылаться на InnoDB, которая мне наиболее знакома.

![][3]

Если мы посмотрим на движок транзакционной базы, мы увидим примерно такую же картинку. У нас есть буфер pool, в нем живут странички индекса, странички данных. Все эти странички выводятся через транзакционный лог, когда они изменились, проходит это все через планировщик ввода/вывода и в ту, и в другую сторону. Планировщик ввода/вывода, когда он считывает что-то с диска, он делает read ahead. Все это проходит через файловую систему, но это дальше, на диске.
[Читать дальше →][4]

[1]: https://habrastorage.org/getpro/habr/post_images/d5d/cc2/f98/d5dcc2f98b2d349f3ba80cf9622bcb85.jpg
[2]: https://habrahabr.ru/users/krizhanovsky/
[3]: https://habrastorage.org/getpro/habr/post_images/457/bca/6c2/457bca6c2b8181cfe5b1203c0417b4d7.png
[4]: https://habrahabr.ru/post/335260/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Двухфакторная аутентификация в Check Point Security Gateway
habra.16
habrabot(difrex,1) — All
2017-08-10 08:30:04


В этом посте мы расскажем о том, как настроить двухфакторную аутентификацию в Check Point Security Gateway с использованием электронных ключей на примере JaCarta PKI российского разработчика решений по информационной безопасности.

О том, что удалённый доступ к ресурсам организации несёт пользу, но и создаёт ряд проблем для IT-департамента, говорится везде очень много. Мы также считаем это важной темой. Поэтому решили посвятить этому следующий пост.

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

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

[>] Чем плохи вложенные классы и как познавать rails magic
habra.16
habrabot(difrex,1) — All
2017-08-10 10:00:04


Недавно столкнулся с забавной проблемой во время написании API при помощи grape. Grape тут на самом деле не при чем, статья скорее про то, как работает ActiveSupport, создавая всю ту магию, благодаря которой нам не нужны в rails постоянные require, и как на этом можно подорваться. Кому интересно, прошу под кат.
[Читать дальше →][1]

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

[>] Microsoft Office Automation: Еще одна лазейка для макровируса
habra.16
habrabot(difrex,1) — All
2017-08-10 11:00:05


Пакет программ Microsoft Office — это не только фактический стандарт офисного ПО, но и весьма сложная и многофункциональная среда, позволяющая создавать решения, предназначенные прежде всего для применения возможностей Microsoft Office и автоматизации рутинных действий пользователя при работе с документами. Эта программная платформа, называемая Объектной Моделью Microsoft Office (Microsoft Office Object Model), или же Автоматизацией Microsoft Office (Microsoft Office Automation) основана на Объектной Модели COM и содержит обширный набор классов, предоставляющих доступ практически к любому элементу или действию, доступному пользователю при работе с Microsoft Office через графический интерфейс.

![image][1]
_Объектная модель Microsoft Word (частично)_
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/c0c/17d/e59/c0c17de596d0c9fe95f960bc38d541c8.gif
[2]: https://habrahabr.ru/post/335222/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] CNCF предложила бесплатное облако Open Source-проектам для DevOps/микросервисов
habra.16
habrabot(difrex,1) — All
2017-08-10 11:00:05


![][1]

Во вторник организация CNCF (Cloud Native Computing Foundation) [объявила][2] о публичной доступности своей «инфраструктурной лаборатории» — **CNCF Community Infrastructure Lab (CIL)**. Это означает, что Open Source-проекты, связанные с микросервисной архитектурой и «облачным» (cloud native) подходом, могут бесплатно получить в своё распоряжение инфраструктуру для тестирования функционирования и производительности своих наработок в облаке нужного масштаба. [Читать дальше →][3]

[1]: https://habrastorage.org/web/89b/3b3/1e4/89b3b31e4315426c8c43b401fca30a9d.png
[2]: https://www.cncf.io/announcement/2017/08/08/cloud-native-computing-foundation-expands-developer-access-demand-hardware-new-infrastructure-lab/
[3]: https://habrahabr.ru/post/335218/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Что происходит на стыке базы данных и операционной системы?
habra.16
habrabot(difrex,1) — All
2017-08-10 12:30:04


![][1]


## Александр Крижановский ( [krizhanovsky][2] )


По материалам доклада "[Linux Kernel Extension for Databases][3]" на HighLoad++ 2016.

Сегодня буду рассказывать про внутренности базы данных, про внутренности ОС и о том, что происходит на стыке. Когда я говорю про базу данных, я имею в виду в основном ввод/вывод, управление памятью и обработку транзакций. Это совершенно не про SQL, не про индексы, не про блокировки и т.д. Только ввод/вывод, управление памятью и транзакции.
[Читать дальше →][4]

[1]: https://habrastorage.org/getpro/habr/post_images/d5d/cc2/f98/d5dcc2f98b2d349f3ba80cf9622bcb85.jpg
[2]: https://habrahabr.ru/users/krizhanovsky/
[3]: http://www.highload.ru/2016/abstracts/2286.html
[4]: https://habrahabr.ru/post/335260/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод - recovery mode ] Где лучше всего жить и работать разработчику
habra.16
habrabot(difrex,1) — All
2017-08-10 12:30:04


_Алёна Лазарева, редактор-фрилансер, перевела для блога [Нетологии][1] статью Benjamin Martin о городах, в которых разработчиков ждут лучшие зарплаты. _

![][2]

Где лучше всего искать работу разработчику? В Нью-Йорке? Сан-Франциско?

Если судить по уровню заработной платы, Кремниевая долина явный победитель — среднегодовой доход для разработчика там составляет 110 554 $, согласно [данным][3] Glassdoor. Но стоимость аренды в области залива Сан-Франциско настолько высока, что не все разработчики могут позволить себе снимать там жильё.
[Читать дальше →][4]

[1]: http://netolo.gy/dK2
[2]: https://habrastorage.org/web/44a/124/752/44a124752401407f9d7eb16b7d07fc95.png
[3]: https://www.glassdoor.co.uk/Salaries/san-francisco-software-engineer-salary-SRCH_IL.0,13_IM759_KO14,31.htm?countryRedirect=true
[4]: https://habrahabr.ru/post/335284/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] По следам Petya: находим и эксплуатируем уязвимость в программном обеспечении
habra.16
habrabot(difrex,1) — All
2017-08-10 12:30:04


![image][1]

Нашумевшие события последних месяцев наглядно показывают, насколько актуальной является проблема критических уязвимостей в программном обеспечении. Массовые атаки на пользователей с помощью вирусов-шифровальщиков [WannaCry][2] и [Petya ][3]осуществлялись путем удалённой эксплуатации уязвимостей нулевого дня в сетевых сервисах Windows – SMBv1 и SMBv2. Нахождение и эксплуатация уязвимостей для удаленного выполнения кода – задачка явно не из легких. Однако лучшим из лучших специалистов по информационной безопасности всё по зубам!
В одном из заданий [очного тура NeoQuest-2017][4] необходимо было найти уязвимости в доступной по сети программе-интерпретаторе команд, и с помощью их эксплуатации выполнить код на удаленном сервере. Для доказательства взлома нужно было прочитать содержимое файлового каталога на сервере – там, по условию, размещался ключ задания. Участникам был доступен бинарный файл интерпретатора. Итак, лёд тронулся!
[Читать дальше →][5]

[1]: https://habrastorage.org/web/c81/fa1/43a/c81fa143ad644823bc46baad00fb208b.jpg
[2]: http://malware.wikia.com/wiki/WannaCry
[3]: https://www.avast.ru/c-petya
[4]: http://neoquest.ru/timeline.php?year=2017&part=2
[5]: https://habrahabr.ru/post/335046/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Load Average в Linux: разгадка тайны
habra.16
habrabot(difrex,1) — All
2017-08-10 14:30:04


![][1]



Средние значения нагрузки (Load averages) — это критически важная для индустрии метрика. Многие компании тратят миллионы долларов, автоматически масштабируя облачные инстансы на основании этой и ряда других метрик. Но на Linux она окутана некой тайной. Отслеживание средней нагрузки на Linux — это задача, работающая в непрерываемом состоянии сна (uninterruptible sleep state). Почему? Я никогда не встречал объяснений. В этой статье я хочу разгадать эту тайну, и создать референс по средним значениям нагрузки для всех, кто пытается их интерпретировать.

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

[1]: https://habrastorage.org/web/c56/554/a4d/c56554a4dbc34f98a4c6b2981c0c802c.jpg
[2]: https://habrahabr.ru/post/335326/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] WiFiBeat: Обнаруживаем подозрительный трафик в беспроводной сети
habra.16
habrabot(difrex,1) — All
2017-08-10 15:00:05


![][1]

В данной статье мы поговорим о WiFiBeat, агенте, который может отправлять 802.11 фреймы в Elasticsearch, где мы можем их анализировать, строить графики и обнаруживать атаки. Вся эта система строится полностью на бесплатном ПО.
[Читать дальше →][2]

[1]: https://habrastorage.org/web/db4/009/188/db4009188e75414f9eb89489236f0923.jpg
[2]: https://habrahabr.ru/post/335134/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Colibri-ui — наше решение по автоматизации тестирования мобильного приложения
habra.16
habrabot(difrex,1) — All
2017-08-10 15:30:04


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

То, как мы в Альфа-Лаборатории решали проблему поиска баланса между скоростью, бюджетом и качеством, мы и рассмотрим сегодня на примере Альфа-Мобайла. Забегая вперед, ВНИМАНИЕ, СПОЙЛЕР!!! наше решение доступно на github: библиотека [colibri-ui][1] и шаблон [colibri-ui-template][2] для быстрого старта.

_В написании статьи принимали активное участие Павел [pvivanov][3] и Лилия [Lidiyatullina][4]
_

[![][5]][6]


## Что случилось?


В далёком 2013 нас даже не посещали мысли об автоматизации тестирования, поскольку процесс регрессионного тестирования занимал один день одного тестировщика на обе ОС (iOS/Android).

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

[1]: https://github.com/alfa-laboratory/colibri-ui
[2]: https://github.com/alfa-laboratory/colibri-ui-template
[3]: https://habrahabr.ru/users/pvivanov/
[4]: https://habrahabr.ru/users/lidiyatullina/
[5]: https://habrastorage.org/web/a33/cef/b83/a33cefb837cd46c1a29d62c6d0257019.jpg
[6]: https://habrahabr.ru/company/alfa/blog/335278/
[7]: https://habrahabr.ru/post/335278/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Материализуем результаты поиска, или как мы освободили 25 процессорных ядер
habra.16
habrabot(difrex,1) — All
2017-08-10 17:30:05


![][1]



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

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

[1]: https://habrastorage.org/web/4ac/331/112/4ac331112a15462aaa04793d70016471.png
[2]: https://habrahabr.ru/post/335266/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Объединяем акторов и SEDA-подход: зачем и как?
habra.16
habrabot(difrex,1) — All
2017-08-11 07:00:03


[В одной из статей][1] про шишки, которые довелось набить за 15 лет использования акторов в C++, речь зашла о том, что большое количество акторов — это, зачастую, сама по себе проблема, а отнюдь не решение. И что использование идей из [SEDA-подхода][2] может существенно упростить жизнь при разработке приложений на базе модели акторов. Однако, как показали затем вопросы в комментариях к предыдущим статьям, совмещение SEDA-подхода и модели акторов отнюдь не очевидно, поэтому есть смысл копнуть данную тему чуть глубже.



# Модель акторов и ее достоинства



## Пара слов о модели акторов



В модели акторов прикладная работа выполняется посредством специальных вычислительных сущностей, называемых акторами, с использованием трех основных принципов:

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

[1]: https://habrahabr.ru/post/324978/
[2]: https://en.wikipedia.org/wiki/Staged_event-driven_architecture
[3]: https://habrahabr.ru/post/335304/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Почему я до сих пор использую Vim?
habra.16
habrabot(difrex,1) — All
2017-08-11 07:00:03


[Vim][1] — мой любимый редактор. Я начал его использовать много лет назад, когда перешел на [Linux][2]. Он пришелся мне по душе, так как я мог редактировать небольшие исходные файлы на своем четырехъядерном компьютере без необходимости долго ждать, пока он откроется.

Могу с уверенностью сказать, что Vim не плохой редактор и очень расширяемый, но это не повод говорить о том, что Vim подходит всем, так как это вопрос вкуса. При использовании Atom или Code у меня часто возникают зависания, бывает они длятся по нескольких минут.

**Как вы думаете, сколько памяти нужно редактору, чтобы открыть следующий [C][3] файл?**

#include
int main() {
printf("Hello, world!\n");
} [Читать дальше →][4]

[1]: https://www.liveedu.tv/guides/programming/vim/
[2]: https://www.liveedu.tv/guides/programming/linux/
[3]: https://www.liveedu.tv/guides/programming/c-cplusplus/
[4]: https://habrahabr.ru/post/335364/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Конкурс по программированию: JSDash (промежуточные результаты 3)
habra.16
habrabot(difrex,1) — All
2017-08-11 07:00:03


Спасибо всем, кто уже принял участие в нашем [конкурсе по программированию][1]! Мы получили 60 решений от 34 уникальных участников. До конца конкурса осталась одна неделя (до 17 августа 2017, 23:59:59 UTC), и мы публикуем последние предварительные результаты.
[Читать дальше →][2]

[1]: https://habrahabr.ru/company/hola/blog/332176/
[2]: https://habrahabr.ru/post/335376/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как угодить кинозрителю и не потерять деньги: составляем план закупок при помощи ML
habra.16
habrabot(difrex,1) — All
2017-08-11 11:00:09


![image][1]

Еще одна статья от лица участника школы о проекте, реализованном в рамках очередной выезда:

«Я – [Дмитрий Пасечнюк][2], и я хочу поделиться своим исследованием, сделанном на каникулах в рамках выездной весенней смены [Школы GoTo][3] под руководством Александра Петрова, [asash][4], технического директора компании E-Contenta.

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

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

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

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

Обо всем по порядку под катом.
[Читать дальше →][5]

[1]: https://habrastorage.org/getpro/habr/post_images/2dd/a5b/50c/2dda5b50c791f6dd5ed47771bd747188.jpg
[2]: https://vk.com/id220498233
[3]: http://goto.msk.ru
[4]: https://habrahabr.ru/users/asash/
[5]: https://habrahabr.ru/post/333746/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Распознать и обезвредить. Поиск неортодоксальных бэкдоров
habra.16
habrabot(difrex,1) — All
2017-08-11 12:00:04


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

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

[1]: https://habrastorage.org/web/be6/884/58e/be688458e4af4ea1a0aeec7ae0d687a3.png
[2]: https://habrahabr.ru/post/335392/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Новый чемпионат для backend-разработчиков: HighLoad Cup
habra.16
habrabot(difrex,1) — All
2017-08-11 13:30:05


![][1]



Проведение конкурсов для IT-специалистов сейчас в моде: Kaggle с его задачами по Data Science, сплоченная тусовка олимпиадного программирования, набирающие популярность площадки для конкурсов по искусственному интеллекту, всевозможные хакатоны для мобильных разработчиков, олимпиады для админов, capture the flag для безопасников. Казалось бы, специалисту любой сферы несложно найти себе подходящую движуху, поучаствовать, прокачаться и что-нибудь выиграть.



Обделенными в этом плане остались лишь web-разработчики. Мы в Mail.Ru Group решили исправить это досадное недоразумение и теперь с радостью представляем вам [HighLoadCup][2] — конкурсную площадку на стыке backed-разработки и администрирования web-сервисов.



Если считаете себя хорошим web-разработчиком, умеете в deploy и highload — добро пожаловать!

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

[1]: https://habrastorage.org/web/8a4/fa1/e0c/8a4fa1e0c4144628a1cb590b6ecf572a.jpg
[2]: https://highloadcup.ru/main/
[3]: https://habrahabr.ru/post/335384/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Протокол электронного голосования: мой вариант
habra.16
habrabot(difrex,1) — All
2017-08-11 14:30:04


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

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

[1]: https://habrahabr.ru/post/156825/
[2]: https://geektimes.ru/post/156153/
[3]: https://geektimes.ru/post/156121/
[4]: https://habrahabr.ru/post/335398/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Заблуждения Clean Architecture
habra.16
habrabot(difrex,1) — All
2017-08-11 14:30:04


![Превращаем круги в блоки][1]

­­



На первый взгляд, _Clean Architecture_ – довольно простой набор рекомендаций к построению приложений. Но и я, и многие мои коллеги, сильные разработчики, осознали эту архитектуру не сразу. А в последнее время в чатах и интернете я вижу всё больше ошибочных представлений, связанных с ней. **Этой статьёй я хочу помочь сообществу лучше понять Clean Architecture и избавиться от распространенных заблуждений**.

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

[1]: https://habrastorage.org/web/fe8/c82/a32/fe8c82a32b1548b1a297187e24ae755a.png
[2]: https://habrahabr.ru/post/335382/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] OpenDataScience и Mail.Ru Group проведут открытый курс по машинному обучению
habra.16
habrabot(difrex,1) — All
2017-08-11 15:30:04


6 сентября 2017 года стартует 2 запуск открытого курса OpenDataScience по анализу данных и машинному обучению. На этот раз будут проводиться и живые лекции, площадкой выступит московский офис Mail.Ru Group.



![][1]



Если коротко, то курс состоит из серии статей на Хабре ([вот][2] первая), воспроизводимых материалов (Jupyter notebooks, вот [github-репозиторий][3] курса), домашних заданий, соревнований Kaggle Inclass, тьюториалов и индивидуальных проектов по анализу данных. [Здесь][4] можно записаться на курс, а [тут][5] — вступить в сообщество OpenDataScience, где будет проходить все общение в течение курса (канал #mlcourse\_open в Slack ODS). А если поподробней, то это вам под кат.

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

[1]: https://habrastorage.org/web/687/dfe/6c0/687dfe6c0f7549abb0179c90b23c5884.jpg
[2]: https://habrahabr.ru/company/ods/blog/322626/
[3]: http://github.com/Yorko/mlcourse_open
[4]: https://docs.google.com/forms/d/e/1FAIpQLSdBk_BnCZbooF2qIUOPK0JbBibVgDWjOE4zQpC9oh_Jv8YcXw/viewform
[5]: http://ods.ai/
[6]: https://habrahabr.ru/post/334960/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Школа Данных: хорошее мы сделали еще лучше
habra.16
habrabot(difrex,1) — All
2017-08-11 16:30:05


![image][1]

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

* **Снизилась цена**
* **8 дополнительных практических семинаров**
* **Дополнительные занятия про бизнес**
* **Занятия по Deep Learning**
* **Доступно удаленное обучение**
* **Плюс 2 занятия в Вводном курсе**[Читать дальше →][2]

[1]: https://habrastorage.org/files/950/44e/4db/95044e4db2984660a962fa2b22d78c24.jpg
[2]: https://habrahabr.ru/post/335394/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Аутентификация в Node.js. Учебные руководства и возможные ошибки
habra.16
habrabot(difrex,1) — All
2017-08-11 17:00:04


Однажды я отправился на поиск учебных руководств по аутентификации в Node.js/Express.js, но, к сожалению, не смог найти ни одного, которое меня бы полностью устроило. Некоторые были неполными, некоторые содержали ошибки в сфере безопасности, вполне способные навредить неопытным разработчикам.

Сразу скажу, что я всё ещё нахожусь в поиске надёжного, всеобъемлющего решения для аутентификации в Node/Express, которое способно составить конкуренцию [Devise][1] для Rails. Однако, удручающая ситуация в сфере руководств подвигла меня на подготовку этого материала. Тут я разберу некоторые наиболее распространённые ошибки в области аутентификации и расскажу о том, как их избежать.

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

[1]: https://github.com/plataformatec/devise
[2]: https://habrastorage.org/getpro/habr/post_images/f6d/5a7/9fe/f6d5a79fe31d7aa7b7d7b97ca69fdd01.jpg
[3]: https://habrahabr.ru/post/335434/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Узники системы
habra.16
habrabot(difrex,1) — All
2017-08-11 17:00:04


Привет! Меня зовут Ваня. За последние 10 лет меня покидало по разным специализациям. Я занимался и фул стек веб-разработкой, и мобильными приложениями, а последние лет 5 — играми. Теперь вот в Microsoft занесло. Хочу поделиться историей о том как менялось мое отношение к разным особенностям профессии.



![][1]

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

[1]: https://habrastorage.org/getpro/habr/post_images/aec/b63/d14/aecb63d141c1b19c7dad5fb739424b63.png
[2]: https://habrahabr.ru/post/335426/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Хороший код — наша лучшая документация
habra.16
habrabot(difrex,1) — All
2017-08-11 18:00:04


Привет Хабр! Предлагаю вашему вниманию свободный перевод статьи «[Good code is its own best documentation][1]» от [Amit Shekhar][2].

![image][3]

Хороший код, как хорошая шутка — не требует объяснений.
[Читать дальше →][4]

[1]: https://blog.mindorks.com/good-code-vs-bad-code-263f71e867c1
[2]: https://blog.mindorks.com/@amitshekhar
[3]: https://habrastorage.org/getpro/habr/post_images/b90/981/8ae/b909818ae75ad40b3e5a2493960907ab.png
[4]: https://habrahabr.ru/post/335400/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Учим робота готовить пиццу. Часть 1: Получаем данные
habra.16
habrabot(difrex,1) — All
2017-08-11 19:00:05


![][1]
_Автор изображения: Chuchilko_



Не так давно, после завершения очередного конкурса на Kaggle — вдруг возникла идея попробовать сделать тестовое ML-приложение.
Например, такое: _"помоги роботу сделать пиццу"_.



Разумеется, основная цель этого ровно та же — изучение нового.



Захотелось разобраться, как работают генеративные нейронные сети (Generative Adversarial Networks — GAN).



Ключевой идеей было обучить GAN, который по выбранным ингредиентам сам собирает картинку пиццы.



Ну что ж, приступим.

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

[1]: https://habrastorage.org/web/bf8/697/a4c/bf8697a4c0e2493e9b6fc7009bb4b83d.png
[2]: https://habrahabr.ru/post/335444/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] RailsClub 2017: Интервью с Антоном Давыдовым. Важно не останавливаться и предлагать концептуально новые решения
habra.16
habrabot(difrex,1) — All
2017-08-11 22:00:05


Привет! Мы готовимся к [RailsClub 2017][1] и традиционно беседуем с нашими любимыми спикерами. Сегодняшний герой — человек, получивший [Ruby Hero Russia][2] в прошлом году — [Антон Давыдов][3]. Антон OpenSource-энтузиаст и один из кор-разработчиков Ruby-фреймворка [Hanami][4]. Мы расспросили его о работе и взглядах на Ruby-разработку.

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

[1]: http://railsclub.ru/
[2]: http://rubyheroes.ru/
[3]: http://github.com/davydovanton
[4]: http://hanamirb.org
[5]: https://habrastorage.org/getpro/habr/post_images/776/bf1/95e/776bf195ea474cb6a1d14b3ea46c481a.jpg
[6]: https://habrahabr.ru/post/335378/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Резервное копирование базы mysql и файлов на удаленный FTP — Python 3
habra.16
habrabot(difrex,1) — All
2017-08-12 00:30:05


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

На сервере стоит Mysql, Apache, nginx… во общем простой стандартный набор, там же хостятся с два десятка клиентских сайтов.

Каждый день делается резервная копия всех баз и файлов доменнов средствами приметного скрипта #!bin/bash

Я решил использовать Python 3… Вот непосредственно и сам код:
[Читать дальше →][1]

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

[>] [Перевод] Практический бизнес онтологии: рассказ c передовой
habra.16
habrabot(difrex,1) — All
2017-08-12 20:30:04


![][1]

Перевод поста Стивена Вольфрама (Stephen Wolfram) "[The Practical Business of Ontology: A Tale from the Front Lines][2]".


### Философия химических веществ


«Мы только должны решить: химикат — ближе к городу или к числу?» Я провел вчера свой день — как и большинство дней последних 30 лет — разрабатывая новые функции [языка Wolfram][3]. И вчера днем на одном из моих собраний была динамичная дискуссия о том, как расширить возможности языка в химии.

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

[1]: https://habrastorage.org/web/c29/cd3/a23/c29cd3a2377e4ffebf6c3168483ea9c3.png
[2]: http://blog.stephenwolfram.com/2017/07/the-practical-business-of-ontology-a-tale-from-the-front-lines/
[3]: https://www.wolfram.com/language/
[4]: https://habrahabr.ru/post/335476/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Переосмысление PID 1. Часть 2
habra.16
habrabot(difrex,1) — All
2017-08-13 03:30:05


В продолжение [первой][1] части…


### Распараллеливание служб сокетов


Этот вид синхронизации при загрузке приводит к опоследовательности (последовательный запуск служб) существенной части процесса загрузки. Не было бы круто если бы мы могли избавиться от цены синхронизации и опоследовательности? Что ж, мы можем на самом деле избавиться. Для этого, нам необходимо понять, что на самом деле службы (демоны) требуют друг от друга, и почему их запуск откладывается. Для традиционных демонов (служб) Unix, есть только один ответ на этот вопрос: они ждут до тех пор, пока демон предоставляющий свои службы не будет готов принимать соединения. Обычно это **AF\_UNIX** сокет в файловой системе, но это может таже быть **AF\_INET** сокет. Для примера: клиенты D-Bus ждут /var/run/dbus/system\_bus\_socket, чтобы сконнектиться к нему, клиенты syslog ждут _/dev/log_, клиенты _CUPS_ ждут _/var/run/cups/cups.sock_ и _NFS_ точки монтирования ждут _/var/run/rpcbind.sock_ и порт IP портмаппера и т.д. А теперь задумайтесь об этом, на самом деле есть только одна вещь чего ждут остальные.
[Читать дальше →][2]

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

[>] [Из песочницы] Блокировка операций как защита от вредоносных программ
habra.16
habrabot(difrex,1) — All
2017-08-13 09:30:05


![][1]



Не так давно в сети появился доклад инженера Google Даррена Билби «Защита Гибсона в эпоху Просвещения», посвящённый фейлу антивирусов и другим бесполезным методам информационной безопасности.

В двух словах, речь в нем идет о том, что взломанные почтовые ящики стали ключевой темой предвыборных президентских дебатов, что трояны-вымогатели шифруют файлы на корпоративных компьютерах, а «тостеры контролируют большие участки интернета» (возможно, под «тостерами» Даррен имел в виду видеокамеры наблюдения, которыми заддосили одного из крупнейших DNS-провайдеров).

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

Что, по сути, нам предлагает классический антивирус? В подавляющем большинстве сканер файлов для поиска вируса по сигнатуре и эвристический анализатор для файлов, против которых бессилен сканер (например, сжатых или зашифрованных). У каждого из этих методов свои достоинства и недостатки, но в общем Билби прав, на протяжении многих лет используется устаревшая технология, а с другой стороны и предложить что-то принципиально новое тоже достаточно сложно. Но можно. К примеру, за последнее десятилетие получили развитие «песочницы», но особого распространения по определенным причинам не снискали, возможно из-за сложностей в обслуживании, ведь массовое решение должно быть простым как сковородка и надежным как лом. Все гениальное просто, хоть и не все простое – гениально.
[Читать дальше →][2]

[1]: https://habrastorage.org/web/a68/e22/fd5/a68e22fd510949d2bf954e185dd7b362.jpg
[2]: https://habrahabr.ru/post/335448/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Метод оптимизации Trust-Region DOGLEG. Пример реализации на Python
habra.16
habrabot(difrex,1) — All
2017-08-13 09:30:05


![][1]

**Trust-region** метод (TRM) является одним из самых важных численных методов оптимизации в решении проблем нелинейного программирования (nonlinear programming problems). Метод базируется на определении региона вокруг лучшего решения, в котором квадратичная модель аппроксимирует целевую функцию.

Методы линейного поиска (line search) и методы trust-region генерируют шаги с помощью аппроксимации целевой функции квадратичной моделью, но использую они эту модель по-разному. Линейный поиск использует её для получения направления поиска и дальнейшего нахождения оптимального шага вдоль направления. Trust-region метод определяет область (регион) вокруг текущей итерации, в котором модель достаточно аппроксимирует целевую функцию. В целях повышения эффективности направление и длина шага выбираются одновременно.

Trust-region методы надежны и устойчивы, могут быть применены к плохо обусловленным задачам и имеют очень хорошие свойства сходимости. Хорошая сходимость обусловлена тем, что размер области TR (обычно определяется модулем радиус-вектора) на каждой итерации зависит от улучшений сделанных на предыдущих итерациях.
[Читать дальше →][2]

[1]: https://habrastorage.org/web/157/a54/60a/157a5460a78647f2b53c40de24871075.png
[2]: https://habrahabr.ru/post/335224/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Security Week 32: В репозиторий npm проник шпион, Disney запретят следить за детьми, Juniper запатчил годовалый баг
habra.16
habrabot(difrex,1) — All
2017-08-13 16:00:07


JS-разработчики порой творят друг с другом страшные вещи. Нет бы мирно кодить и радоваться каждому коммиту! Но в ряды травоядных мирных программистов затесался злодей, [подкинувший][1] в репозиторий npm пачку вредоносных пакетов. npm – стандартный менеджер пакетов в Node.js, и обладает облачным репозиторием, полным всяких полезнейших пакетов.

Негодяй, скрывающий свое бесчестное имя под ником HuskTask рассудил так, что людям свойственно ошибаться, и нет ничего естественнее, чем, например, пропустить дефис в cross-env. И залил в репозиторий свой пакет с именем crossenv. И еще несколько, именованных по тому же принципу. В результате какое-то количество пользователей загрузили в свои проекты пакеты от HuskTask, понятия не имея, что там за код внутри.

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

[1]: https://threatpost.com/attackers-use-typo-squatting-to-steal-npm-credentials/127235/
[2]: https://twitter.com/o_cee/status/892306836199800836
[3]: https://habrahabr.ru/post/335470/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Безопасный OpenVPN на VPS за несколько минут
habra.16
habrabot(difrex,1) — All
2017-08-13 17:30:05


### Введение


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

Скрипт позволяет одной командой создать работающий сервер и создать файлы конфигурации для клиентов в unified формате (то есть с сертификатами, включёнными в файл конфигурации). Кстати, эти файлы подходят для мобильных устройств.

Скрипт создавался для машин с CentOS 7.x или Ubuntu Server 17.x, использование на Ubuntu 16.x. возможно, но там OpenVPN 2.3.x в репозиториях. При необходимости можно добавить другие дистрибутивы, но обычно при покупке VPS можно выбрать систему и это не так важно.
[Читать дальше →][1]

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

[>] TSP problem. Mixed algorithm
habra.16
habrabot(difrex,1) — All
2017-08-13 23:00:05


Всем доброго времени суток. В прошлых статьях мы сравнивали два эвристических алгоритма оптимизации на симметричной задаче коммивояжера таких как: ACS (ant colony system — муравьиный алгоритм) и SA (simulating annealing — алгоритм имитации отжига). Как мы убедились у каждого свои плюсы и минусы. [Читать дальше →][1]

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

[>] [Перевод] Как на самом деле работает планировщик Kubernetes?
habra.16
habrabot(difrex,1) — All
2017-08-14 11:00:04


_**Прим. перев.**: Эта статья написана Julia Evans — инженером международной компании Stripe, специализирующейся на интернет-платежах. Разбираться во внутренностях работы планировщика Kubernetes её побудил периодически возникающий баг с «зависанием» пода, о котором около месяца назад также сообщили специалисты из Rancher Labs ([issue 49314][1]). Проблема была решена и позволила поделиться деталями о техническом устройстве одного из базовых механизмов Kubernetes, которые и представлены в этом статье с необходимыми выдержками из соответствующего кода проекта._

![][2]

На этой неделе мне стали известны подробности о том, как работает планировщик Kubernetes, и я хочу поделиться ими с теми, кто готов погрузиться в дебри организации того, как это в действительности работает. [Читать дальше →][3]

[1]: https://github.com/kubernetes/kubernetes/issues/49314
[2]: https://habrastorage.org/web/38e/151/72f/38e15172f88348718c88b4fcc87585b6.png
[3]: https://habrahabr.ru/post/335552/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

Pages: 1 ... 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 ... 133