RSS
Pages: 1 ... 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 ... 133
[>] DevOps — новый уровень взаимодействия групп разработки и эксплуатации
habra.16
habrabot(difrex,1) — All
2016-05-27 19:00:03



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

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

[1]: https://habrastorage.org/files/453/d85/fd9/453d85fd9a164c88a278c56b64eb37d0.jpg
[2]: https://habrahabr.ru/company/hpe/blog/301976/
[3]: https://habrahabr.ru/post/301976/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Пора ли переходить на Swift?
habra.16
habrabot(difrex,1) — All
2016-05-27 19:00:03



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

![][1]
_**— Расскажите, пожалуйста, в двух словах о себе и своем опыте работы со Swift.**_

— На текущий момент я работаю в компании Avito разработчиком мобильных приложений для iOS. В мобильной разработке я около 5 лет, а до нее занимался различными направлениями, в частности, веб-сайтами, бэкэндом и desktop-приложениями.
Swift мы начали использовать в Avito больше полугода назад, когда вышла вторая версия языка, накопилась обратная связь от сообщества разработчиков. Ранее в работе мы использовали Objective-C, но теперь весь новый код пишем на Swift.

_**— Некоторые разработчики отзываются о Swift, как о весьма «сыром» языке, не подходящим пока для крупных проектов. Можете ли вы подтвердить или опровергнуть это мнение?**_

— У Swift, безусловно, есть недостатки, в частности, связанные со средой разработки. Xcode время от времени падает, отключается подсветка синтаксиса или компилятор отказывается компилировать код. Упомянутые недостатки нельзя назвать причиной отказа от разработки больших проектов на Swift. Сталкиваясь с проблемами — мы находили решение. И мы уже отправили в продакшн достаточно объемный проект, написанный на этом языке.
[Читать дальше →][2]

[1]: https://habrastorage.org/files/d98/63e/4be/d9863e4be35d4bf2970405757099c358.png
[2]: https://habrahabr.ru/post/301998/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Security Week 21: отказ от паролей, жизнь древних уязвимостей, вирус в сетевом оборудовании
habra.16
habrabot(difrex,1) — All
2016-05-27 19:00:03



![][1]Авторизацию по паролю планируют окончательно похоронить. Не в первый раз, впрочем. Полтора года назад похороны [начал][2] Twitter, предложив вход через одноразовые коды на мобильный. Примерно такой же метод закапывания паролей частично применил Telegram, но кажется ничего хорошего [из этого не вышло][3]. Теперь пароли хоронит Google, и делает это инновационно, с огоньком, идентифицируя пользователя по «скорости набора символов, сэмплу голоса, расположению, манере ходьбы, чертам лица».

Читал эту [новость][4] и не мог избавиться от дежа вю. Где-то это уже было… А!

**Tyrell**: Is this to be an empathy test? Capillary dilation of the so-called blush response? Fluctuation of the pupil. Involuntary dilation of the iris…
**Deckard**: We call it Voight-Kampff for short.

Аааа! В фильме и книге люди тестами выявляли роботов, а тут роботы будут отличать людей друг от друга. Но принцип тот же! Будущее наступило. Билли, где моя электрическая овца? Светлое будущее кажется окончательно лишит нас прямого контроля над собственными устройствами, как уже лишило контроля над данными. Эта и другие инсинуации под катом.
Все выпуски дайджеста – [тут][5].
[Читать дальше →][6]

[1]: https://habrastorage.org/files/172/64e/40e/17264e40e7bc48258d8b5d8e8219d527.jpg
[2]: http://www.theverge.com/2014/10/22/7034113/inside-twitters-ambitious-plan-to-kill-the-password-on-mobile-devices
[3]: http://www.bbc.com/russian/news/2016/04/160429_hackers_telegram_opposition
[4]: https://threatpost.com/google-aims-to-kill-passwords-with-project-abacus/118288/
[5]: http://habrahabr.ru/search/?target_type=posts&q=%5Bklsw%5D%20&order_by=date
[6]: https://habrahabr.ru/post/301932/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Предварительная программа PyCon Russia готова. Выступят докладчики из США, Англии, Франции, Чехии, Украины и России
habra.16
habrabot(difrex,1) — All
2016-05-27 19:00:03



Привет!

3-4 июля недалеко от Москвы пройдет четвертая конференция для python-разработчиков [PyCon Russia][1]. Почему мы переехали из Екатеринбурга, мы объясняем [здесь][2]. Прошлогодние доклады и фотографии можно посмотреть в [архиве][3].

Программа PyCon-2016 получается отличной — **Raymond Hettinger** (Python core developer с 2001 года, автор и мэйнтейнер многих частей языка, США), **Martin Görner** (Google, Франция), **Nathaniel Manista** (Google, США), **Armin Ronacher** (Flask framework, Австрия), **David MacIver** (Hypothesis, Великобритания), **Jackie Kazil **(Capital One, США), **Александр Кошкин** (Positive Technologies, США), **Александр Сибиряков** (Scrapinghub, Чехия), **Андрей Светлов** (DataRobot, Украина), докладчики из HeadHunter, Rambler&Co, Яндекса, Toptal — и это еще не все. Подробности программы — под катом.

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

[1]: http://pycon.ru/2016/program/speakers/?utm_source=news&utm_medium=post&utm_campaign=habr27
[2]: https://habrahabr.ru/company/it_people/blog/280692/#first_unread
[3]: http://pycon.ru/2016/archive/2015/
[4]: https://fotki.yandex.ru/next/users/it-people-ekb/album/502674/view/1185779?page=13
[5]: https://habrahabr.ru/post/301950/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Новый кандидат в релизы САПР Qucs-0.0.19S-RC6
habra.16
habrabot(difrex,1) — All
2016-05-28 01:30:02



![][1]

[Qucs][2] — это кроссплатформенный (Linux, Windows, MacOS-X) симулятор электронных схем с открытым кодом. О нём рассказывают мои предыдущие статьи на Хабре:

* Qucs — open-source САПР для моделирования электронных схем [habrahabr.ru/post/248005][3]
* Новости проекта Qucs: подготовка к релизу 0.0.19 [habrahabr.ru/post/259193][4]
* Новости проекта Qucs: доступен кандидат в релизы с поддержкой моделирования схем в SPICE [habrahabr.ru/post/263555][5]

В настоящее время готовятся к релизу параллельно две версии Qucs:
* Qucs — сборки с обычным набором функций. Используется только движок моделирования Qucsator
* QucsS — сборка с возможностью использования SPICE (поддерживаеются движки [Ngspice][6], [ XYCE][7], [SpiceOpus][8]) как движка моделирования по умолчанию. Данные сборки содержат букву «S» после номера версии. Для инженеров наибольший интерес представляет Ngspice

Пока очередной релиз Qucs вновь отложен на неопределённый срок, вышел кандидат в релизы Qucs-0.0.19S-RC6 с поддержкой SPICE. Этот релиз-кандидат значительно отличается от всех предыдущих. Скачать пакеты для двух платформ (Windows и Linux) можно здесь: [github.com/ra3xdh/qucs/releases/tag/0.0.19S-rc6][9]

Под катом будет рассказано о нововведения в данном релиз-кандидате.

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

[1]: https://habrastorage.org/getpro/habr/post_images/4db/83b/0ff/4db83b0ffb894726173680d6e3206469.png
[2]: http://qucs.github.io
[3]: http://habrahabr.ru/post/248005/
[4]: http://habrahabr.ru/post/259193/
[5]: http://habrahabr.ru/post/263555/
[6]: http://ngspice.org
[7]: https://xyce.sandia.gov
[8]: http://www.spiceopus.si
[9]: https://github.com/ra3xdh/qucs/releases/tag/0.0.19S-rc6
[10]: https://habrahabr.ru/post/302006/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Отпуск по-программистски, или как я не поучаствовал в конкурсе по программированию на JS. Часть первая
habra.16
habrabot(difrex,1) — All
2016-05-28 11:00:02




Создание и поддержка в одиночку сложного [продукта][1] с большим зоопарком технологий и без финансовых вливаний со стороны — дело хлопотное и утомительное. Поэтому, узнав про [конкурс][2] с интересной задачей, мы в [Мегаленте][3] я подумал о том, чтобы устроить себе "творческий отпуск" и отвлечься ненадолго от работы над новой версией.



![image][4]



Задача состояла в том, чтобы написать программу на JS, которая будет определять, есть слово с словаре английских слов или нет. Вроде бы просто, но есть пара ограничений, делающих задачу заведомо невыполнимой:
– Словом считается не просто любое правильное слово английского языка, а именно слово, которое есть в предоставленном словаре из 600K+ слов.
– Словаря в момент исполнения программы нет, скачать его нельзя, а размер программы, включая данные, не должен превышать 64К. Внешние библиотеки подключать также нельзя, но файл данных может быть заархивирован.
Благодаря этим условиям вместо однозначного ответа результатом может быть только определение наибольшей вероятности присутствия слова в словаре.



Сразу скажу, что решение я так и не отправил из-за неудовлетворённостью результатом (решение, которое давало хотя бы 80%, я смог поместить только в 120-130К, а без превышения размера в 64К выжал максимум 70%).
Тем не менее опыт считаю достаточно интересным и достойным статьи. Под катом много SQL,JS,Python, нейронные сети, а также печальная правда о производительности CPU на хостинге.

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

[1]: https://vc.ru/p/megalenta
[2]: https://habrahabr.ru/company/hola/blog/282624/
[3]: http://megalenta.ru
[4]: https://habrastorage.org/files/c4f/f96/10b/c4ff9610be6d4b0aa0d08f4939775b1a.jpg
[5]: https://habrahabr.ru/post/302020/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Так вы думаете, что знаете Const?
habra.16
habrabot(difrex,1) — All
2016-05-28 20:00:03



_От переводчика:
Предлагаю вам перевод поста из блога [Мэтта Стэнклиффа][1] (Matt Stancliff), автора нашумевшей на хабре статьи [Советы о том, как писать на С в 2016 году][2].
Здесь Мэтт делится знаниями о квалификаторе типа `const`. Несмотря на вызывающий заголовок, возможно, многое из того что здесь описывается будет вам известно, но, надеюсь, и что-нибудь новое тоже найдется.
Приятного чтения._

Думаете, что вы знаете все правила использования `const` для С? Подумайте еще раз.
[Читать дальше →][3]

[1]: https://twitter.com/mattsta
[2]: https://habrahabr.ru/company/inoventica/blog/275685/
[3]: https://habrahabr.ru/post/301332/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] ReactOS 0.4.2 будет превосходным
habra.16
habrabot(difrex,1) — All
2016-05-28 21:30:02



![][1] «It is certainly a killer feature, if you know what I mean.»
![][2] _Юзер реддита о ReiserFS в ReactOS._

Привет, Хаюраюзеры!
Представляем вашему вниманию внезапную подборку нововведений, ожидающих вас в ReactOS 0.4.2.

Чтение файлов с разделов ReiserFS:
> It seems ReiserFS support is coming too! [@reactos][3] [pic.twitter.com/7t32TzFWtR][4]
>
> — Pierre Schweitzer (@HeisSpiter) [26 мая 2016 г.][5][Читать дальше →][6]

[1]: https://habrastorage.org/files/838/0e1/d3f/8380e1d3fd2e4b1a9782d949938dd8a3.png
[2]: https://habrastorage.org/files/838/0e1/d3f/8380e1d3fd2e4b1a9782d949938dd8a3.png
[3]: https://twitter.com/reactos
[4]: https://t.co/7t32TzFWtR
[5]: https://twitter.com/HeisSpiter/status/735892174399766529
[6]: https://habrahabr.ru/post/302044/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Отпуск по-программистски, или как я не поучаствовал в конкурсе по программированию на JS. Часть вторая
habra.16
habrabot(difrex,1) — All
2016-05-30 12:30:02




В [первой части][1] этого описания попытки решения интересной конкурсной задачи я рассказал о подготовке данных для анализа и о нескольких экспериментах. Напомню, условие [задачи][2] заключалось в том, чтобы с наибольшей вероятностью определить наличие слова в словаре, не имея доступа к этому словарю в момент выполнения программы и с ограничением на объем программы (включая данные) в 64K.
![image][3]
Как и в прошлый раз, под катом много SQL, JS, а также нейронные сети и фильтр Блума.

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

[1]: https://habrahabr.ru/company/megalenta/blog/302020/
[2]: https://habrahabr.ru/company/hola/blog/282624/
[3]: https://habrastorage.org/files/c4f/f96/10b/c4ff9610be6d4b0aa0d08f4939775b1a.jpg
[4]: https://habrahabr.ru/post/302066/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Structure from motion
habra.16
habrabot(difrex,1) — All
2016-05-30 12:30:02



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

[1]: https://habrastorage.org/files/5c1/8ce/2c1/5c18ce2c110e45d69715197ac0ccce03.png
[2]: https://habrahabr.ru/post/301522/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Куда движется современная биометрия
habra.16
habrabot(difrex,1) — All
2016-05-30 12:30:02



Биометрия это такая тема, которая сопровождается мифами и легендами. Про 99% точность, надёжность, про прорывные технологии, про распознавание людей Вконтакте. Пару дней назад была [статья][1] про Сбербанк, например. Рассказывая про биометрию очень просто манипулировать информацией: мало кто из людей чувствует статистику.

Лет пять назад я уже писал на Хабре серию статей про биометрию и то как она устроена ([1][2], [2][3], [3][4]). Как ни странно, за эти годы достаточно мало что изменилось, хотя изменения и произошли. В этой статье я попробую как можно более популярно рассказать про сегодняшние технологии, про то какой прогресс идёт и почему к словам Грефа о том, что к словам «карта, основная задача которой состоит в идентификации, уходит в прошлое» стоит относится с скептицизмом.
[Читать дальше →][5]

[1]: https://geektimes.ru/post/276414/
[2]: https://habrahabr.ru/post/126144/
[3]: https://habrahabr.ru/post/126774/
[4]: https://habrahabr.ru/post/167849/
[5]: https://habrahabr.ru/post/302022/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Видео докладов с Весеннего Go митапа
habra.16
habrabot(difrex,1) — All
2016-05-30 13:00:02



14 мая мы провели [Весенний Go митап][1]. А сегодня публикуем долгожданные видео выступлений.


#### «Оптимизация программ на Go», Марко Кевац, Badoo



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

[1]: http://www.meetup.com/Golang-Moscow/events/230289501/
[2]: https://habrahabr.ru/post/302134/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Технологии фондового рынка: 10 заблуждений о нейронных сетях
habra.16
habrabot(difrex,1) — All
2016-05-30 13:00:02



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

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

Количественный аналитик хедж-фонда NMRQL Стюарт Рид в статье на сайте TuringFinance попытался объяснить, что это означает, и доказать, что все проблемы кроются в неадекватном понимании того, как такие системы работают. Мы представляем вашему вниманию адаптированный перевод его [статьи][3]. [Читать дальше →][4]

[1]: http://www.turingfinance.com/wp-content/uploads/2014/05/xBeijing-Birds-Nest-700x467.jpg.pagespeed.ic.B7V1l64rhA.webp
[2]: https://habrahabr.ru/company/itinvest/blog/302120/
[3]: http://www.turingfinance.com/misconceptions-about-neural-networks/
[4]: https://habrahabr.ru/post/302120/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Завершился IT & Security Forum 2016
habra.16
habrabot(difrex,1) — All
2016-05-30 13:30:03



![image][1]

27 мая 2016 года в городе Казань завершилась 10 юбилейная конференция “IT & Security Forum”.
Работа форума фактически началась 25 мая, когда приехавшие участники смогли организованно посетить новый город-саттелит Казани — Иннополис, который, как обещает руководство Татарстана уже в недалеком будущем будет главным местом расположения ИТ-индустрии нашей страны. Однако, пока город выглядит как большая стройка. Хотя то, что уже построено — прекрасно.
Очень неплохо выглядит и снаружи и внутри Университет Иннополис, собственно в котором и происходила основная часть экскурсии. Во вступительном докладе руководства университета была донесена идея организации работы этого университета по схеме, аналогичной работе университетов с мировыми именами: “Стэнфорд”, “Карнеги Меллон” и т.д. Звучали приглашения к сотрудничеству с университетом, призывы к открытию новых инновационных подразделений в этом городе. Особая экономическая зона, налоговые преференции, уникальная удобная инфраструктура города Иннополис — все это должно выглядеть привлекательным для инвесторов и поможет привлечь интеллектуалов всей страны.
Иннополис был торжественно открыт ровно один год назад, а к текущему моменту в нем уже зарегистрированы 27 компаний.
[Читать дальше →][2]

[1]: https://habrastorage.org/files/997/4b4/cb6/9974b4cb616045b180574f0a11c73c7c.png
[2]: https://habrahabr.ru/post/302060/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [PF] Печать PDF под .NET, векторный подход, практика
habra.16
habrabot(difrex,1) — All
2016-05-30 13:30:03



![][1]
Как и обещал, продолжаю тему([раз][2], [два][3]) управляемой печати PDF из под .NET в **векторном** формате. О теоретических аспектах работы с PCL я рассказал в [предыдущей статье][4], настало время разобрать программу для вывода на принтер PDF файла в векторе. Наше приложение будет полезно, например, когда нужно распечатать пачку многостраничных бланков или анкет на бумаге разных цветов и разной плотности. Если мы научимся **управлять лотками принтера**, избавим себя от ручного прокладывания страниц ;) В шаблоне будет указан номер лотка, из которого принтер заберет бумагу для текущей страницы. Причем шаблон будет применяться к документу циклически: если в документе 32 страницы, а в шаблоне 4, то шаблон повторится 8 раз для Simplex режима и 4 раза для Duplex. [Читать дальше →][5]

[1]: https://habrastorage.org/files/b93/19a/868/b9319a86896f45a6aa0c801cd613a029.jpg
[2]: https://habrahabr.ru/company/tcsbank/blog/279361/
[3]: https://habrahabr.ru/company/tcsbank/blog/283278/
[4]: https://habrahabr.ru/company/tcsbank/blog/283278/
[5]: https://habrahabr.ru/post/302062/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Нейронная сеть Хопфилда на пальцах
habra.16
habrabot(difrex,1) — All
2016-05-30 13:30:03




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


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

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

[>] [Перевод] Ненавижу, когда говорят «опен сорс»
habra.16
habrabot(difrex,1) — All
2016-05-30 13:30:03



Ненавижу, потому что «опен сорс» больше не отражает то, как люди создают софт. Термин «опен сорс» (программное обеспечение с открытым исходным кодом) стало настолько широким, что обессмыслилось. Кажется, что как минимум в половине всех моих разговоров возникает вопрос: «Подожди… а ЧТО ты имеешь в виду, говоря опен сорс?». Или вдруг оказывается, что мы уже десять минут говорим о совершенно разных вещах.

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

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

[>] Device Lab от Google: Chromecast 2.0 и Chromecast Audio
habra.16
habrabot(difrex,1) — All
2016-05-30 14:00:02



Этой статьей мы начинаем цикл, в котором хотим рассказать о том, как использовать разные устройства экосистемы Android в своих приложениях: как транслировать видео на Chromecast, как создавать приложения для Android TV или как использовать мир "физического веба" в маячками Eddystone.

Самое главное - не забывайте про сам конкурс - [Device Lab от Google.][1] Вы сможете взять любые из этих устройств и начать разрабатывать свои приложения, тестируя функционал вживую.

Добро пожаловать в будущее Android.
[Читать дальше][2]

[1]: http://bit.ly/1TRK4sv
[2]: https://habrahabr.ru/post/301902/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Что делать если Instagram не дал доступ к API?
habra.16
habrabot(difrex,1) — All
2016-05-30 14:00:02



1 июня 2016 года Instagram [отключит][1] от своего API все приложения, которые не прошли модерацию. Что делать если вы в их числе?


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


Мы делаем сервис для постинга в Instagram по расписанию и используем API для получения информации об аккаунтах. Самим постингом занимаются телефоны в автоматическом режиме. Нам отказали в доступе к API после 1 июня (пробовали пройти модерацию два раза) поэтому было решено найти замену.

Сначала расскажу как мы использовали официальный API:
1. При добавлении аккаунта забираем из Instagram информацию об аккаунте: имя, фото профайла, количество постов, подписчиков, подписок.
2. Перед тем как опубликовать фото/видео мы запрашиваем количество постов, и тоже самое после публикации, если число постов увеличилось считаем публикацию успешной.
3. Если публикация прошла успешно забираем ссылку на последнее фото в профайле.
4. Если пользователь удаляет фото из нашего сервиса, то перед тем как выполнить задачу нужно проверить существует ли такой пост в Instagram (или его удалили).

### **Реализация**


У Instagram есть [веб-версия][2]. С помощью нее [в приватных][3] аккаунтах можно получить информацию о количестве постов, подписок и подписчиков, а [в публичных][4] еще и сами посты, комментарии и лайки. Поэтому, в силу простоты получения, я подумал, что уже написаны подобные библиотеки. Пошел гуглить и нашел только для [NodeJS][5]. И для [ PHP][6] нашелся какой-то код, но всем четырем пунктам не соответствовал. В итоге было решено писать свою библиотеку.
[Читать дальше →][7]

[1]: http://techcrunch.com/2015/11/17/just-instagram/
[2]: http://instagram.com
[3]: https://www.instagram.com/raiym/
[4]: https://www.instagram.com/kevin/
[5]: https://github.com/slang800/instagram-screen-scrape
[6]: https://gist.github.com/cosmocatalano/4544576
[7]: https://habrahabr.ru/post/302150/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Почему мы пишем и храним код в текстовых файлах?
habra.16
habrabot(difrex,1) — All
2016-05-30 16:30:03



![][1]

Простые текстовые форматы данных — прекрасная штука. Нет, без шуток. Возьмём, например, банальные txt-файлы. Ну красота же! В любом утюге есть текстовый редактор, можно открыть файл, почитать, записать. Любой уважающий себя язык программирования из коробки даст вам средства работы с текстовыми файлами. Или вот ранние сетевые протоколы — SMTP, POP3, HTTP 1.0. Это вообще такое блаженство, что слёзы на глаза наворачиваются. Можно взять telnet, приконнектиться к серверу, отдавать команды и читать ответы! Писать клиенты, серверы, снифферы, прокси — одно удовольствие.

Но время не стоит на месте и удобство работы программиста, к сожалению (или к счастью!), давно перестало быть главным критерием выбора технологий. В прекрасные текстовые файлы понадобилось вдруг добавлять графики, картинки и ссылки — и вот у нас есть форматы pdf и doc. С сетевыми протоколами вообще беда — людям зачем-то понадобились сжатие трафика, шифрование, мультиплексирование и другие страшные вещи. И вот уже у нас есть [HTTP/2][2], с которым телнетом не очень-то поработаешь. Даже всем красивый REST разные негодяи типа Google нет-нет, да и пытаются заменить на какой-нибудь [gRPC][3]. И это я ещё не начал рассуждать о том, что мало что нынче сохраняется текстовые файлы — все почему-то используют какие-то базы данных, совершенно нечитабельные при открытии их текстовым редактором, но какой-то магией позволяющие информацию структурировать, индексировать, эффективно искать и т.д.

И вот здесь мы подходим к теме того, что я хотел бы обсудить. Как видите, все форматы хранения данных, протоколы и прочие штуки прошли длинный путь в поисках своего оптимального вида. Однако мы, программисты, продолжаем писать код наших программ в текстовых файлах, как делали это наши дедушки лет 50 назад (или уже больше?). Какую бы ОС мы ни использовали, какой бы модный язык ни выбрали, как бы ни была крутой наша IDE — результатом написания кода будут буквы в текстовом файле. Что, согласитесь, в теории совершенно не обязательно, ибо наши буквы компьютеру нужны как зайцу стоп-сигнал. Ему нужны машинные команды для выполнения, это просто нам удобнее описывать их какими-то там буквами. А на самом деле ведь «цикл» или «функция» будут тем, чем они являются, как ты их не назови и где ты их не храни. «Роза пахнет розой, хоть розой назови её, хоть нет».

Да, мы привыкли писать код в текстовые файлы. Вы открываете файл — ну и вроде бы видите код своей программы. Какую-то его часть, вернее. Как-то видите. Понимаете. Ну или думаете, что понимаете. Но вот пост на Facebook вы тоже открываете, видите и понимаете — а ведь Facebook точно этот пост не в текстовом файле хранил.

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

[1]: https://habrastorage.org/files/2e2/97b/bd4/2e297bbd4d104713b2cbcacbdf33b027.jpg
[2]: https://habrahabr.ru/company/infopulse/blog/282517/
[3]: https://habrahabr.ru/post/265805/
[4]: https://habrahabr.ru/post/302146/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Как помочь силам добра бороться со спамом или DMARC на вашем сервере
habra.16
habrabot(difrex,1) — All
2016-05-30 17:00:03



В последние несколько лет в Интернет идёт активное внедрение технологии [DMARC][1] в качестве инструмента для эффективной борьбы со спамом.

Если не вдаваться в технические детали, с которыми лучше ознакомиться на специализированных ресурсах, к примеру [dmarc.org][2] или из статей на **Habrahabr**, то суть DMARC состоит в возможности, во-первых, основываясь на результатах проверки [SPF][3] и [DKIM][4] сообщить серверу-получателю о действиях, которые следует предпринять в случае обнаружения проблем при их проверке, а, во-вторых, получить статистику и оперативные отчёт об источниках отправки сообщений для данного домена.

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

[1]: https://ru.wikipedia.org/wiki/DMARC
[2]: https://dmarc.org
[3]: https://ru.wikipedia.org/wiki/Sender_Policy_Framework
[4]: https://ru.wikipedia.org/wiki/DomainKeys_Identified_Mail
[5]: https://habrahabr.ru/post/302162/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Stack Trace в C++ или велосипедирование, уровень «Быдлокод»
habra.16
habrabot(difrex,1) — All
2016-05-30 17:00:03




#### DISCLAMER


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


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


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

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

[>] Рисуйте, рисуйте, рисуйте: скоро выйдет Inkscape 0.92
habra.16
habrabot(difrex,1) — All
2016-05-30 17:00:03



[Статья про предыдущую версию Inkscape][1] была очень тепло принята, что в связи с ближайшим выходом новой версии Inkscape 0.92 сподвигло меня описать ключевые особенности грядущего релиза. Сам релиз состоится в ближайшее время — во всяком случае [пререлиз под \*.nix уже тут][2].

Немного истории: пользователь ДевианАрт flutterguy317 форкнул Inkscape и пытался построить свой редактор Ponyscape с дружбой и магией до 4 февраля 2013 г., после чего проект был заморожен навсегда. И вот теперь, в версии Inkscape 0.92, появилась импортированная из Ponyscape иерархия документа. В связи с этим в иллюстрировании статьи будет немного арта из сообщества [Ponyscape Vectors][3] а так же много дружбы и магии.

![][4]
Иллюстрация основана на работах flutterguy317 “Ponyscape” и Ambassad0r “No Time To Explain”
[Читать дальше →][5]

[1]: http://habrahabr.ru/post/271559/
[2]: https://launchpad.net/inkscape/0.92.x
[3]: http://ponyscape-vectors.deviantart.com/
[4]: https://habrastorage.org/files/9c6/72a/691/9c672a69131442df9940d77b2b36cf12.png
[5]: https://habrahabr.ru/post/271727/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Система сбора измерений на примере метеостанции
habra.16
habrabot(difrex,1) — All
2016-05-30 17:00:03



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

[Смотреть дневник наблюдений][2]

[1]: https://habrastorage.org/files/66e/8f0/855/66e8f0855bf44374a6289dd19fe6c724.png
[2]: https://habrahabr.ru/post/302164/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Pivoting или проброс портов
habra.16
habrabot(difrex,1) — All
2016-05-30 17:00:03



Наткнулся на статью "[SSH-туннели — пробрасываем порт][1]" и захотелось ее дополнить.

Итак, какие еще способы тунеллирования есть:


### 1\. Динамический доступ через SSH


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

Тут может пригодиться динамический доступ через SSH. Для его конфигурации используется опция ssh -D.

ssh -D 127:0.0.1:2222 user@remotehost

После подключения вы получите динамический socks4 прокси-сервер, слушающий на своей машине на порту 2222 и предоставляющий доступ к удаленной сети.

Как воспользоваться этим доступом? Один из вариантов — использовать proxychains.

* Устанавливаем Proxychains:

apt-get proxychains

* Конфигурируем proxychains для использования порта 2222 (на нем слушает наш прокси). Для этого редактируем файл /etc/proxychains.conf и меняем текущую конфигурацию в разделе [ProxyList] с socks4 127.0.0.1 9050 на socks4 127.0.0.1 2222
* Теперь мы можем использовать proxychains с (почти) любой утилитой. Например, можно запустить сканирование всей удаленной сети при помощи nmap:

proxychains nmap -sT -sV -v -P0 адрес_подсети маска_подсети

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

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

[>] Почему мы рады тому, что не попали на themeforest
habra.16
habrabot(difrex,1) — All
2016-05-30 20:30:03




Наша команда начала работать над Admin Dashboard Template (мы называем её просто админка) для [themeforest][1] 9 месяцев назад. Забегая вперед, на этот маркетплейс мы так и не попали, но сильно не расстроились и сегодня рады поделиться с сообществом результатами нашей кропотливой работы и, надеемся, интересной и полезной историей.

Ссылки для нетерпеливых:

Демка:
Репозиторий:
angular 2 версия:

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

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

[1]: http://themeforest.net
[2]: https://habrahabr.ru/post/302156/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Введение в продолжения и макросы на Scheme
habra.16
habrabot(difrex,1) — All
2016-05-30 22:00:03



Если вы не слышали о call/cc, то вам определённо стоит познакомиться с этим мощным инструментом! Поговорим о продолжении **(call/cc)**, простой, но трудно понимаемой конструкции, обладающей огромной силой _в правильных руках_. Реализуем с их помощью механизм **yield/next/for… in**, аналогичный таковому в Python. Обернём внутренности с помощью **макроса** — ещё одного интересного механизма **Scheme**.

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


[call-with-current-continuation][1]

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

[>] Как и какой выбрать мобильный интернет? Декодируем GSM
habra.16
habrabot(difrex,1) — All
2016-05-30 23:30:02



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

[1]: https://habrastorage.org/files/590/c45/cb6/590c45cb6e6741bdbc2765a7b5e68419.png
[2]: https://habrahabr.ru/post/302212/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] О проблеме one-shot обучения для нейросетей
habra.16
habrabot(difrex,1) — All
2016-05-31 02:00:03



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

[1]: https://habrastorage.org/files/d4d/ac5/2eb/d4dac52eb0e04741bda26c0ae3fc29f5.png
[2]: https://habrahabr.ru/post/302214/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Конкурс по классификации слов от Hola или «где взять ещё один процент?»
habra.16
habrabot(difrex,1) — All
2016-05-31 13:30:02



Увидел [пост о конкурсе][1], когда прошло уже две недели после начала. Но задача показалась крайне увлекательной, и я не ошибся в этом, нырнув в решение с головой. Хочу поделиться решением на 80+% и своими впечатлениями в этом посте.

Всё моё участие прошло под вопросом «где взять ещё один процент?», но в ответ я чаще получал сотые доли процента или ничего. Итак, обо всём по порядку.
[Читать дальше →][2]

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

[>] Отражение динамики в модели СКУД
habra.16
habrabot(difrex,1) — All
2016-05-31 13:30:02



В предыдущей [статье][1] рассматривалась структурная модель СКУД как совокупности ролей объектов и двойных связей между ними. Такая модель позволяет отразить результаты всех интересующих нас процессов, протекающих в системе. Процессы в системе выражаются через взаимодействия объектов, а результаты взаимодействий запоминаются в связях. Можно сказать, что связи — это память о взаимодействиях, но сами процессы взаимодействия в структурной модели никак не отражаются. Наблюдатель видит взаимодействия через изменения в поведении или изменения в состоянии объектов, которые мы будем называть устройствами. Например, при поднесении карты c RFID меткой к считывателю последний сообщает о считывании звуковым сигналом и миганием светодиода. Это может интерпретироваться как изменение состояния физического считывателя, при этом само взаимодействие между картой и считывателем, собственно чтение, не рассматривается. Предполагается, что считыватель проходит через ряд дискретных состояний. Такие дискретные состояния удобно моделировать при помощи машин состояний, но для этого нужно установить канал между физическим миром и виртуальным миром (компьютерной моделью). Такой канал, управляемый контроллером канала, передает физические сигналы от устройства, которые специальным модулем связи преобразуются в сигналы, управляющие машиной состояний устройства. Канал может быть двухсторонним:

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

[1]: https://habrahabr.ru/post/283586/
[2]: https://habrastorage.org/files/891/5ba/161/8915ba1612304d9b8cac8b63d0009870.jpg
[3]: https://habrahabr.ru/post/302226/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как перестать бояться и полюбить end-to-end шифрование
habra.16
habrabot(difrex,1) — All
2016-05-31 13:30:02



![][1]
Привет, Хабр!
В комментариях к нашему первому посту народ требовал хлеба и зрелищ кода и [«success story»][2]. И если с первым у нас все более-менее нормально, то со вторым чего-то, как-то не складывается пока. Мы, знаете ли, люди все молодые, успехи у нас достаточно скромные, в баскетбол вот неплохо играем. Одним словом, сегодня мы пока просто немного покодим и раскажем о реализации end-to-end шифрования с использованием наших сервисов. А «success story»? Какие наши годы, будут еще в нашем блоге эти самые success stories.
[Читать дальше →][3]

[1]: https://habrastorage.org/files/440/125/281/4401252811174d2aa4e63e28a9408feb.jpg
[2]: https://habrahabr.ru/company/virgilsecurity/blog/283458/#comment_8893256
[3]: https://habrahabr.ru/post/301772/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Умный транспорт: Новые вызовы информационной безопасности
habra.16
habrabot(difrex,1) — All
2016-05-31 13:30:02



[![][1]][2]

Темой 46-го всемирного экономического форума в Давосе стала «Четвертая индустриальная революция» — смена технологического уклада, способная кардинально изменить существующие экономические и социальные реалии. Интернет всего (как более широкое видение Интернета вещей, IoT), киберфизические системы, межмашинное взаимодействие (M2M), умные города — ключевые понятия и тренд будущей экосистемы цифровой экономики.

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

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

[1]: https://habrastorage.org/files/a6a/a8a/238/a6aa8a238c00499a8e48d914b34b50d5.jpg
[2]: https://habrahabr.ru/company/pt/blog/302194/
[3]: https://habrahabr.ru/post/302194/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Что такое «Dark web»?
habra.16
habrabot(difrex,1) — All
2016-05-31 15:00:02


«Dark web» является частью всемирной паутины, состоящей из оверлейной сети и даркнета, использует общедоступный Интернет и требуют определенного программного обеспечения, конфигураций или авторизации получить доступ. В посте более подробно описано, что же из себя представляет «Dark web».


#### Что такое «Dark web»


Dark web, который иногда называют «Darknet» (темный интернет) или «Deep Web» (глубокая паутина) является частью теневого онлайн-рынка. Dark web представляет из себя специализированную группу сайтов, где личность каждого пользователя скрыта от власти, трекеров и правоохранительных органов. Обычные поисковые системы и стандартные веб-браузеры не могут видеть страницы Dark web. По сути — это частное виртуальное пространство, где люди действуют анонимно для достижения своих целей.

![][1]

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

[1]: https://habrastorage.org/files/94f/56c/e21/94f56ce21e0b481f9e7ffa7a5b92c950.jpg
[2]: https://habrahabr.ru/post/236531/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] C++ без new и delete
habra.16
habrabot(difrex,1) — All
2016-05-31 15:00:02


Привет, хабравчане!

Меня зовут Михаил Матросов, я технический менеджер в компании Align Technology. Сегодня я поработаю капитаном и немного расскажу об основах современного С++.

Работая над большим проектом, мне часто приходится смотреть чужой код и порой я вижу странное. А именно, многие даже вполне матёрые программисты на С++ могут не знать некоторых фундаментальных для языка вещей. Ну, это даже не слишком удивительно — язык такой.

Мне бы хотелось поговорить об этих основах и начну я со своей любимой темы. Будем говорить об операторах `new` и `delete`. А точнее, об их отсутствии. Я расскажу, как писать надёжный и современный код на С++ без использования операторов `new` и `delete`.

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

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

_Изображение взято с сайта behappy.me_
[Читать дальше →][1]

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

[>] «Атака на топливный склад» или ломаем SCADA систему на PHDays VI
habra.16
habrabot(difrex,1) — All
2016-05-31 16:00:02


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

**Условия конкурса «Атака на топливный склад»
**Исходные данные: атака состоит из двух этапов.
1. Этап: Необходимо в «Цифровом баре» найти подсказку для начала первого этапа атаки. В результате 1 этапа атаки требуется овладеть неким «секретом» для перехода к этапу №2. Первый этап считается успешно пройденным в случае, если действия нарушителя не были замечены межсетевым экраном.
2. Этап: Получив «секрет», атакующий переходит ко второй стадии атаки. Задача – подача не авторизованной команды на розлив пунша.
Цель: Осуществить несанкционированный слив топлива объемом 50 или 100 литров.
Разрешается: Использование собственного ноутбука, с любым необходимым программным обеспечением.
Запрещается: Любое физическое воздействие на макет топливного склада. Нарушитель будет сразу отстраняется от участия в конкурсе.
[Читать дальше →][1]

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

[>] [Из песочницы] Запросы к Rest API из JavaScript компактно и красиво
habra.16
habrabot(difrex,1) — All
2016-05-31 16:30:02


Делал я тут небольшой проект на чистом JS и в ходе оного потребовалось работать с Rest API. Ну не ручками ведь XMLHttpRequest дёргать, решил я, наверняка есть бесчисленное количество готовых решений для такой простой задачи?..



Как можно догадаться по КДПВ, я несколько ошибался; впрочем, обо всём по порядку. Но если вкратце — получился [вот такой симпатичный велосипедик][1], с которым запросы к Rest API получаются, как и обещано в заголовке, компактными и красивыми.



![image][2]

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

[1]: https://github.com/Amareis/another-rest-client
[2]: https://habrastorage.org/files/646/7c5/6df/6467c56dfdce4ae4a52bc918f7766407.jpg
[3]: https://habrahabr.ru/post/302288/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Вирус, живущий исключительно в ПЛК
habra.16
habrabot(difrex,1) — All
2016-05-31 16:30:02


_Наткнулся на интересную статью по поводу информационной безопасности в сфере промышленной автоматизации. Так как сабж не был найден в русскоязычном сегменте интернета, было принято решение о переводе статьи на великий и могучий русский язык. В целом, речь пойдет о весьма банальных вещах. Так как это мой первый перевод, порой может встретиться ностальгическое воспоминание о Promt'е. Замечания и исправления принимаются в ЛС или в комментарии.

Данная статья не носит характер «присвоения» авторства. Только перевод и немного собственных мыслей на сей счет.

Авторы: Ralf Spenneberg, Maik Brüggemann, Hendrik Schwartke
Источник: [OpenSource Security Ralf Spenneberg][1]_
[Читать дальше →][2]

[1]: https://os-s.net//publikationen.html
[2]: https://habrahabr.ru/post/302276/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Боремся с дистанционным контролем: как отключить Intel ME
habra.16
habrabot(difrex,1) — All
2016-05-31 17:30:03


[![][1]][2]

Технология Intel ME (или AMT, Active Management Technology) является одним из самых загадочных и мощных элементов современных x86-платформ. Инструмент изначально создавался в качестве решения для удаленного администрирования. Однако он обладает столь мощной функциональностью и настолько неподконтролен пользователям Intel-based устройств, что многие из них хотели бы отключить эту технологию, что сделать не так-то просто.

На прошедшем 17 и 18 мая в Москве форуме [Positive Hack Days VI][3] исследователи Positive Technologies Максим Горячий и Марк Ермолов представили несколько техник отключения Intel ME, сопроводив доклад видеодемонстрацией процесса. [Читать дальше →][4]

[1]: https://habrastorage.org/files/b2c/0bb/ca9/b2c0bbca92b64f8682adb71be121da7e.png
[2]: https://habrahabr.ru/company/pt/blog/302292/
[3]: http://www.phdays.ru/
[4]: https://habrahabr.ru/post/302292/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] DUMP-2016: видео всех докладов в одном посте. Бесплатно. Без СМС
habra.16
habrabot(difrex,1) — All
2016-05-31 20:00:02


8 апреля в Екатеринбурге прошла конференция [DUMP][1]. Под катом — видео 60-и докладов про frontend, serverside, devops, mobile, дизайн, управление разработкой и тестирование, плюс все презентации и фотографии с прошедшей конференции. А вот короткий отчетный ролик про DUMP-2016.


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

[1]: http://dump-conf.ru/?utm_source=news&utm_medium=post&utm_campaign=habr31.05
[2]: https://habrahabr.ru/post/302286/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как мы делали систему выделения информации из текста на естественном языке для банка АО «Банк ЦентрКредит» (Казахстан)
habra.16
habrabot(difrex,1) — All
2016-05-31 20:00:02


Некоторое время назад к нам обратился представитель банка АО «Банк ЦентрКредит» (Казахстан) с интересной задачей. Необходимо было интегрировать в конвейер обработки данных, представляющих из себя текст на естественном языке, дополнительный инструмент обработки. Всех деталей проекта мы раскрывать не можем, так как он находится в сфере безопасности банка и разрабатывается его службой безопасности. В освещении технологических аспектов задачи и способов их реализации заказчик не был против, что собственно мы и хотим сделать в рамках данной статьи.

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

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

[>] [Перевод] XSS уязвимость по-прежнему сохранятся для WordPress
habra.16
habrabot(difrex,1) — All
2016-05-31 23:30:03


В ходе регулярных проверок и исследований была обнаружена сохранность XSS уязвимости, которая затрагивает плагин WordPress Jetpack, установленный на более чем миллион WordPress сайтов. Уязвимость может быть легко использована с помощью wp-комментариев, и поэтому рекомендуется обновить свой плагин как можно быстрее, если Вы этого еще не сделали.

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

[1]: https://habrastorage.org/files/6e3/9cc/f42/6e39ccf42b04428fab9448e2a161c7de.jpg
[2]: https://habrahabr.ru/post/302328/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] XSS уязвимость по-прежнему сохраняется для WordPress
habra.16
habrabot(difrex,1) — All
2016-06-01 11:30:03


В ходе регулярных проверок и исследований была обнаружена сохранность XSS уязвимости, которая затрагивает плагин WordPress Jetpack, установленный на более чем миллион WordPress сайтов. Уязвимость может быть легко использована с помощью wp-комментариев, и поэтому рекомендуется обновить свой плагин как можно быстрее, если Вы этого еще не сделали.

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

[1]: https://habrastorage.org/files/6e3/9cc/f42/6e39ccf42b04428fab9448e2a161c7de.jpg
[2]: https://habrahabr.ru/post/302328/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Чистый код и искусство обработки исключений
habra.16
habrabot(difrex,1) — All
2016-06-01 13:30:03


![][1]

Исключения существуют столько же, сколько само программирование. В самом начале, когда программирование было исключительно аппаратным или с использованием низкоуровневых языков, исключения применялись для изменения потока программы и избегания аппаратных сбоев. Согласно [Википедии][2], исключения — это:

> …ошибки времени выполнения и другие возможные проблемы (исключения), которые могут возникнуть при выполнении программы…
Исключения требуют к себе особого отношения, а необработанное исключение может привести к непредсказуемому поведения программы. И последствия могут быть очень серьёзными. Например, в 1996 году необработанное исключение переполнения привело к [катастрофе при запуске ракеты Ariane 5][3]. А в [этой подборке][4] описан ряд других громких событий, связанных с необработанными или ошибочно обработанными исключениями.
[Читать дальше →][5]

[1]: https://habrastorage.org/files/93a/bfa/6ec/93abfa6ec2544018be237af3b15dad64.jpg
[2]: https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0_%D0%B8%D1%81%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B9
[3]: https://en.wikipedia.org/wiki/Cluster_%28spacecraft%29#Launch_failure
[4]: http://archive.wired.com/software/coolapps/news/2005/11/69355
[5]: https://habrahabr.ru/post/301740/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Шлюзы Intel для интернета вещей: отправка сообщений MQTT-брокеру с использованием Python
habra.16
habrabot(difrex,1) — All
2016-06-01 14:30:03


Сегодня настроим шлюз для интернета вещей на отправку сообщений MQTT-брокеру (серверу) с использованием Python-скрипта. Сообщения будет принимать компьютер, подписанный на соответствующую тему на брокере. После оформления подписки, сообщения, опубликованные с этой темой, будут поступать на компьютер. В процессе изучения этого материала вы выполните следующие шаги:
[![][1]][2]
* Установка на компьютер MQTT-клиента на Python.
* Настройка MQTT-брокера.
* Установка MQTT-клиента на шлюз, основанный на процессоре Intel Core, Atom или Quark.
* Создание и запуск скрипта, отправляющего MQTT-сообщения со шлюза брокеру, которые, в конечном счёте, поступят на компьютер.[Читать дальше →][3]

[1]: https://habrastorage.org/files/6f0/2e6/ae9/6f02e6ae993143edaab4ca297cf9200f.png
[2]: https://habrahabr.ru/company/intel/blog/302338/
[3]: https://habrahabr.ru/post/302338/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Angular Attack: мой опыт участия в хакатоне
habra.16
habrabot(difrex,1) — All
2016-06-01 16:00:03


![][1]
Angular 2 сегодня считают этаким «new kid on the block». Он многим интересен, без его упоминания не обходится практически ни одна крупная front-end конференция, и уже сейчас он готов бросить вызов React. Но до лучей абсолютной славы еще далеко — официального релиза еще не было, хотя в бою фреймворк может попробовать любой желающий. Мы в [Wrike][2], например, уже вовсю используем Angular 2 в продакшне.

Ребята из Google активно привлекают внимание к новому фрейворку и даже недавно провели 48-часовой онлайн хакатон [ANGULAR ATTACK][3], который собрал несколько сотен участников. По его результатам было опубликовано более 270 работ. В этой статье я хочу поделиться опытом своего участия в хакатоне, впечатлениями и наблюдениями, которые могут вам помочь в подобных состязаниях. Добро пожаловать под кат.

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

[1]: https://habrastorage.org/files/0da/20e/e0b/0da20ee0b6d04a7686599291ecdccf10.png
[2]: http://www.wrike.com/?utm_source=habrahabr&utm_medium=blogposts&utm_campaign=Chernykh
[3]: https://www.angularattack.com/
[4]: https://habrahabr.ru/post/302302/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] О нетрадиционном способе использования компьютерной мыши
habra.16
habrabot(difrex,1) — All
2016-06-01 16:30:03


![][1] 7 июля в Санкт-Петербурге пройдет «очная ставка» [NeoQUEST-2016][2]. Гостей ждут интересные доклады, конкурсы, общение с коллегами, а лучших участников online-этапа — восьмичасовое соревнование по кибербезопасности! В преддверии «очной ставки» продолжаем разбирать задания online-этапа, и на очереди — задание, посвященное не самому типичному способу использования компьютерной мышки.

Задумывались ли вы когда-нибудь о том, как работает оптическая мышка? Все просто: в нижней части расположена камера, быстро делающая снимки поверхности, по которой водят мышку. Сравнивая полученные изображения, контроллер мышки вычисляет смещение. Есть вопрос и поинтереснее: можно ли как-то достать изображение поверхности под мышкой? Спойлер: можно! Как это сделать, расскажем под катом!
[Читать дальше →][3]

[1]: https://habrastorage.org/files/7ca/1c2/6dc/7ca1c26dc3cf4279a9fc91136ce6a2b5.png
[2]: http://neoquest.ru/timeline.php?year=2016&part=1
[3]: https://habrahabr.ru/post/282782/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] SpamFireWall — запрет доступа к сайту для спам ботов
habra.16
habrabot(difrex,1) — All
2016-06-01 16:30:03


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

Сейчас мы расскажем о новой опции в антиспам-плагинах для [CleanTalk][1], которая позволяет эффективно отражать атаки спамботов на ваш сайт. Опция получила название SpamFireWall(SFW), она блокирует POST- и GET-запросы от наиболее активных спамботов и не дает им загружать сервер.
[Читать дальше →][2]

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

[>] [Из песочницы] Разработка класса для работы с цепями Маркова
habra.16
habrabot(difrex,1) — All
2016-06-01 19:30:03


Сегодня я хотел бы поведать вам о написании класса для упрощения работы с цепями Маркова.

Прошу под кат.
[Читать дальше →][1]

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

[>] [Перевод] PHP 7.1: Грядущие изменения
habra.16
habrabot(difrex,1) — All
2016-06-01 19:30:03


![][1]

Ниже приведены основные изменения, привнесенные `PHP 7.1`. Для получения полного списка утвержденных и обсуждаемых на текущий момент изменений проверьте [официальный PHP RFC][2].

* Перехват нескольких типов исключений за раз
* Поддержка `Curl HTTP/2 server push`
* Области видимости для констант классов
* Возвращаемый тип `void`
* Единое поведение строковых функций
* [Поддержка строковых параметров в функции `list()` и новый синтаксис c `[]`][3]
* Выброс предупреждения при невалидных строках в арифметике
* Объявление устаревшим `mcrypt()` и его последующее удаление

### Перехват нескольких типов исключений за раз


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

try {
// to do something
} catch (MyException $e) {
// Handle this exception
} catch (AnotherException $e) {
// Handle this in the same way as MyException
} catch (Exception $e) {
// Handle this in a different way
}

В PHP 7.1, оба исключения, обрабатываемые в примере одинаково, можно поймать одновременно:
[Читать дальше →][4]

[1]: https://habrastorage.org/files/2d5/29c/574/2d529c57455848178de431ef64740b8a.png
[2]: https://wiki.php.net/rfc
[3]: https://dotdev.co/php-unanimously-approves-short-list-syntax-for-array-destructuring-887208b661af#.rc4cyx1c1
[4]: https://habrahabr.ru/post/302390/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

Pages: 1 ... 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 ... 133