#  [Перевод] Изучаем Python: модуль argparse
habrabot1 (mira, 27) → All  –  11:00:03 2019-02-18


Если вы занимаетесь обработкой и анализом данных с использованием Python, то вам, рано или поздно, придётся выйти за пределы Jupyter Notebook, преобразовав свой код в скрипты, которые можно запускать средствами командной строки. Здесь вам и пригодится модуль argparse. Для новичков, привыкших к Jupyter Notebook, такой шаг означает необходимость покинуть зону комфорта и перейти в новую среду. Материал, перевод которого мы публикуем сегодня, написан для того, чтобы облегчить подобный переход.

[![][1]][2]
_Модуль argparse_
[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/17b/7ac/55a/17b7ac55a4b8da7b7fdd54d354da19d9.jpg
[2]: https://habr.com/ru/company/ruvds/blog/440654/
[3]: https://habr.com/ru/post/440654/?utm_source=habrahabr&utm_medium=rss&utm_campaign=440654#habracut
#  Установка diaspora*
habrabot1 (mira, 27) → All  –  09:30:17 2019-02-18


«В жизни важен первый шаг», — слова из песни. В установке diaspora\* — тоже. В diaspora\* wiki для подминов написано, что запуск собственного сервера diaspora\* требует технических умений и времени. А далее — инструкции по установке для некоторых популярных дистрибутивов Linux, а также для пары версий MacOS. Сейчас Windows не поддерживается.
[Читать дальше →][1]

[1]: https://habr.com/ru/post/440256/?utm_source=habrahabr&utm_medium=rss&utm_campaign=440256#habracut
#  OWASP Proactive Controls: cписок обязательных требований для разработчиков ПО
habrabot1 (mira, 27) → All  –  08:45:12 2019-02-18


![image][1]

Предлагаем вашему вниманию Top 10 Proactive Controls for Software developers – 10 аспектов безопасности, на которых должны сосредоточиться разработчики ПО. Данная статья содержит список техник по обеспечению безопасности, обязательных для реализации при разработке каждого нового проекта.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/1e2/949/a82/1e2949a8250abf06e4a1f04bcaf5bb5b.jpg
[2]: https://habr.com/ru/post/440202/?utm_source=habrahabr&utm_medium=rss&utm_campaign=440202#habracut
#  [Из песочницы] Использование точечных диаграмм для визуализации данных
habrabot1 (mira, 27) → All  –  08:45:12 2019-02-18


Привет, Хабр! Представляю вашему вниманию перевод статьи [«Everything you need to know about Scatter Plots for Data Visualisation»][1] автора George Seif.

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

В этой статье вы узнаете практически все, что вам необходимо знать о визуализации данных используя точечные диаграммы. Мы постараемся разобрать все необходимые параметры в их использовании в коде python. Также вы можете найти несколько практических уловок.
[Читать дальше →][2]

[1]: https://towardsdatascience.com/everything-you-need-to-know-about-scatter-plots-for-data-visualisation-924144c0bc5
[2]: https://habr.com/ru/post/440674/?utm_source=habrahabr&utm_medium=rss&utm_campaign=440674#habracut
#  JetBrains Night в Москве, 13 апреля
habrabot1 (mira, 27) → All  –  08:45:12 2019-02-18


Привет, Хабр!

Мы приглашаем всех на **[JetBrains Night][1]** — большую встречу с друзьями, которая пройдет 13 апреля в Москве. Приходите узнать, что интересного происходит в мире Java, Kotlin и веб-технологий. Разработчики JetBrains расскажут, чем мы занимаемся и что нового сделали за последнее время, а самое главное — как все это правильно использовать.

После технических докладов мы проведем открытую дискуссию со спикерами и другими сотрудниками компании — ответим на вопросы о наших продуктах и работе в JetBrains.

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

[1]: http://bit.ly/JBNihgtMoscow2019
[2]: https://habrastorage.org/webt/kb/ix/xs/kbixxsviwd1xgvdxinl0vcqzzu4.png
[3]: https://habr.com/ru/post/440642/?utm_source=habrahabr&utm_medium=rss&utm_campaign=440642#habracut
#  Julia и оптимизация
habrabot1 (mira, 27) → All  –  08:45:11 2019-02-18


![][1]



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

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

[1]: https://habrastorage.org/webt/bg/nb/ko/bgnbkow8qeaompds7rhjw90_8fw.png
[2]: https://habr.com/ru/post/440234/
[3]: https://habr.com/ru/post/440618/?utm_source=habrahabr&utm_medium=rss&utm_campaign=440618#habracut
#  [Перевод] AudioKit и синтезирование звука в iOS/OSX
habrabot1 (mira, 27) → All  –  08:15:16 2019-02-18


![][1]

AudioKit — это аудиофреймворк, разработанный аудиоинженерами, программистами и музыкантами специально для iOS и OSX. Он предоставляет инструменты для **обработки** и **синтезирования** звука. Под капотом — это смесь из Swift, Objective-C, C++ и С, и Audio Unit API от Apple. Потрясающие (и довольно сложные) технологии завёрнуты в очень дружелюбное Swift API, к которому можно обращаться прямо из Xcode Playgrounds!

В этом туториале мы отправимся в путешествие по AudioKit, а заодно и **истории** синтезирования звука. Вы узнаете об основах физики звука и том, как работали первые синтезаторы, такие как Hammond Organ. Также будут рассмотрены и современные техники, например, семплинг.

Приготовьте ваш любимый напиток, устраивайтесь поудобнее и вперёд!

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

[1]: https://habrastorage.org/webt/y1/mf/ce/y1mfceq59vbcmxgabehfybmd5rc.jpeg
[2]: https://habr.com/ru/post/440226/?utm_source=habrahabr&utm_medium=rss&utm_campaign=440226#habracut
#  [Перевод] Docker и Kubernetes в требовательных к безопасности окружениях
habrabot1 (mira, 27) → All  –  07:15:22 2019-02-18


_**Прим. перев.**: Оригинальная статья была написана инженером из Швеции — Christian Abdelmassih, — который увлекается архитектурой уровня enterprise, ИТ-безопасностью и облачными вычислениями. Недавно он получил степень магистра в области Computer Science и спешит поделиться своим трудом — магистерской диссертацией, а точнее — её частью, посвящённой проблемам изоляции контейнеризированного [и запущенного в Kubernetes] приложения. В качестве «клиента», для которого была подготовлена эта исследовательская работа, выступает ни много ни мало полиция его родины._

![][1]

Оркестровка контейнеров и облачные (cloud-native) вычисления стали очень популярными в последние годы. Их адаптация дошла до такого уровня, что интерес к ним проявляют даже финансовые предприятия, банки, госсектор. На фоне других компаний их выделяют обширные требования в области безопасности информации и ИТ. [Читать дальше →][2]

[1]: https://habrastorage.org/webt/_8/ys/gr/_8ysgrs-atvkocc6r8jpzyzzu1g.jpeg
[2]: https://habr.com/ru/post/440504/?utm_source=habrahabr&utm_medium=rss&utm_campaign=440504#habracut
#  Размыкаем замыкания и внедряем Dependency Injection в JavaScript
habrabot1 (mira, 27) → All  –  07:00:05 2019-02-18


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



В этой статье мы рассмотрим, как писать чистый, легко тестируемый код в функциональном стиле, используя паттерн программирования Dependency Injection. Бонусом идет 100% юнит-тест coverage.

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

[1]: https://habrastorage.org/webt/6k/ww/pf/6kwwpf7sh7uzpwbl2nszzmrzkfy.png
[2]: https://habr.com/ru/company/devexpress/blog/440552/
[3]: https://habr.com/ru/post/440552/?utm_source=habrahabr&utm_medium=rss&utm_campaign=440552#habracut
#  [Перевод] Приключения с ptrace(2)
habrabot1 (mira, 27) → All  –  02:30:12 2019-02-18


На Хабре уже [писали][1] про перехват системных вызовов с помощью `ptrace`; Алекса написал про это намного более развёрнутый пост, который я решил перевести.
----


### С чего начать


Общение между отлаживаемой программой и отладчиком происходит при помощи сигналов. Это существенно усложняет и без того непростые вещи; ради развлечения можете прочесть [раздел BUGS][2] в `man ptrace`.

Есть как минимум два разных способа начать отладку:

1. `ptrace(PTRACE_TRACEME, 0, NULL, NULL)` сделает родителя текущего процесса отладчиком для него. Никакого содействия от родителя при этом не требуется; `man` ненавязчиво советует: _«A process probably shouldn't make this request if its parent isn't expecting to trace it.»_ (Где-нибудь ещё в манах вы видели фразу _«probably shouldn't»_?) Если у текущего процесса уже был отладчик, то вызов не удастся.
2. `ptrace(PTRACE_ATTACH, pid, NULL, NULL)` сделает текущий процесс отладчиком для `pid`. Если у `pid` уже был отладчик, то вызов не удастся. Отлаживаемому процессу шлётся `SIGSTOP`, и он не продолжит работу, пока отладчик его не «разморозит».
Эти два метода полностью независимы; можно пользоваться либо одним, либо другим, но нет никакого смысла их сочетать. [Читать дальше →][3]

>> Читать далее
#  Важные изменения в работе CTE в PostgreSQL 12
habrabot1 (mira, 27) → All  –  20:30:19 2019-02-17


WITH w AS NOT MATERIALIZED (
SELECT *
FROM very_very_big_table
)
SELECT *
FROM w AS w1
JOIN w AS w2
ON w1.key = w2.ref
WHERE w2.key = 123;



Сегодня в репозиторий PostgreSQL упал [комит][1], позволяющий управлять поведением обработки подзапросов CTE, а именно: теперь можно явно указывать, будет ли подзапрос материализовываться отдельно или же выполняться как часть одного большого запроса.


>> Читать далее