RSS
Pages: 1 ... 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 ... 133
[>] [Из песочницы] JetBrains MPS — IDE для разработки проблемно-ориентированных языков программирования
habra.16
habrabot(difrex,1) — All
2017-07-25 23:00:05


### Введение


MPS — это среда разработки языков программирования на платформе Intellij Idea. Она предоставляет возможность моделировать языки программирования, описывать структуры, сосредотачиваясь конкретно на дизайне и бизнес-логике, не отвлекаясь на парсеры, лексеры и различные сторонние фичи языка. Что нужно сразу обозначить: язык, который разрабатывается с помощью MPS, не компилируется в рабочую программу. Чаще всего он генерируется в модели других языков либо в текстовую форму.

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

Документация очень подробная, описывает все возможности, но если нет осознания «что я делаю и зачем мне это делать», то она вряд ли будет полезна. Также есть серия уроков от [JetBrains на YouTube][1], но опять же, я более-менее начал понимать, что происходит, только после двух просмотров всей серии и досканального изучения предлагаемых sample проектов.

Я планирую написать серию постов об этой замечательной среде, чтобы по окончанию прочтения у энтузиастов оставалось как можно меньше вопросов «как сделать эту штуку», и как можно больше понимания структуры, чтобы можно было эффективно пользоваться [документацией][2]. Познавать MPS мы будем во время создания языка для описания закономерностей погоды. Почему, собственно говоря, и нет?
[Читать дальше →][3]

[1]: https://www.youtube.com/watch?v=5dldSNaibrA&list=PLQ176FUIyIUY9rAcAH6MNOxJqGfau0Jb1
[2]: https://www.jetbrains.com/mps/documentation/
[3]: https://habrahabr.ru/post/334108/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Один квартал из жизни SOC. Три инцидента без купюр
habra.16
habrabot(difrex,1) — All
2017-07-25 23:30:03


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

[1]: https://habrastorage.org/web/29a/838/31a/29a83831aeba4748b5eb8fa993f9f6cd.jpg
[2]: https://habrahabr.ru/post/333816/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Простейший кейлоггер и безопасность в KeePass
habra.16
habrabot(difrex,1) — All
2017-07-26 04:30:04


![][1]

Для проверки безопасности вводимых паролей через KeePass я решил написать простейший кейлоггер с дополнительным захватом данных из буфера обмена. Весь код занял несколько строчек на FreePascal.

Пароли, без дополнительных мер защиты и правильной настройки KeePass, как оказалось, достаточно уязвимы.
[Читать дальше →][2]

[1]: https://habrastorage.org/web/50a/a9a/4aa/50aa9a4aa18347de8a73ea57dca66233.jpg
[2]: https://habrahabr.ru/post/334060/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Автоматизация IP-сети. Часть3 – Мониторинг TCP аномалий
habra.16
habrabot(difrex,1) — All
2017-07-26 11:00:05


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

[1]: https://habrastorage.org/web/ee5/03b/70c/ee503b70c56b4b24afbafd2928fcefa8.jpg
[2]: https://habrahabr.ru/post/332690/
[3]: https://www.wireshark.org
[4]: https://habrahabr.ru/post/333768/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Быстрое удаление пробелов из строк на процессорах ARM — альтернативный анализ
habra.16
habrabot(difrex,1) — All
2017-07-26 12:30:04


Оригинал статьи: [https://github.com/blu/ascii\_pruner][1]
Автор: Мартин Кръстев



Один мой друг обратил мое внимание на интересную статью на habrahabr.ru — [русский перевод статьи][2] Дэниела Лемира [Быстрое удаление пробелов из строк на процессорах ARM][3]. Эта статья заинтриговала меня по двум причинам: во-первых, кто-то на самом деле потратил время и усилия по поиску оптимального решения общей проблемы на не-x86 архитектуре (ура!), а во-вторых, результаты автор дал в конце статьи немного озадачили меня: порядка 6-ти кратное преимущество для Intel? Автор сделал однозначный вывод, что ARM-у ну очень далеко по соотношению «эффективность на такт» до «большого железа» от Интела в этой простой задаче.



Вызов принят!

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

[1]: https://github.com/blu/ascii_pruner
[2]: https://habrahabr.ru/post/332710/
[3]: http://lemire.me/blog/2017/07/03/pruning-spaces-from-strings-quickly-on-arm-processors/
[4]: https://habrahabr.ru/post/334142/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Простой трекер семейного бюджета с помощью AWS SES, Lambda и DynamoDB (и Route53)
habra.16
habrabot(difrex,1) — All
2017-07-26 12:30:04


# Как контролировать семейный бюджет? {#kak-kontrolirovat-semeynyy-byudzhet}



![image][1]



У меня всегда были сложности точно следовать бюджету, особенно сейчас, когда все покупки проходят по кредитной карте. Причина проста — перед глазами нет пачки денег, которая постепенно сокращается, и в какой-то момент ты понимаешь, что тратить больше нечего. Если большая часть покупок оплачивается кредитной картой, то единственный способ узнать, сколько cредств осталось или сколько потрачено, это зайти в Интернет-банк или мобильный банк, или же использовать финансовые агрегаторы, например Mint, в которые тоже надо заходить и проверять баланс. Это возможно, но на это требуется дисциплина, а когда с той же карточки платишь не только ты, то установить её сложно.



Я подумал, что меня устроит вариант, если каждый день мне будет приходить уведомление о том, сколько денег у меня ещё осталось в этом месяце. То есть я бы устанавливал бюджет на месяц, и что-то бы считало мои траты и каждый день посылало отчёт о состоянии бюджета.

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

[1]: https://habrastorage.org/web/bf2/aae/864/bf2aae864802463c950195fb97214785.jpg
[2]: https://habrahabr.ru/post/334146/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Tizen: подводим итоги
habra.16
habrabot(difrex,1) — All
2017-07-26 14:30:04


![PVS-Studio, Tizen, Итоги][1]Наша команда написала три заметки, связанные с анализом кода операционной системы Tizen. Операционная система содержит много кода и поэтому является благодатной почвой для написания различных статей. Думаю, что к Tizen мы ещё вернёмся в будущем, но сейчас нас ждут другие интересные проекты. Поэтому я подведу некоторые итоги проделанной работы и отвечу на ряд вопросов, возникших после опубликованных ранее статей.


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

[1]: https://habrastorage.org/getpro/habr/post_images/97d/563/7dc/97d5637dcd372d4f24a6801776cb3aca.png
[2]: https://habrahabr.ru/post/334172/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Dotty –  будущее языка Scala
habra.16
habrabot(difrex,1) — All
2017-07-26 15:00:04


В конце мая я оказался среди слушателей конференции Scala Days в Копенгагене. Одним из ключевых спикеров был создатель языка Scala Мартин Одерский. Он рассказал о развитии языка и, в частности, о разработке компилятора, названного Dotty. Планируется, что на основе Dotty будет разработан новый компилятор для версии 3.0.

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

[![][1]][2]
_Мартин Одерский. План развития Scala на ближайшие несколько лет_

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

[1]: https://habrastorage.org/web/ade/537/cb1/ade537cb168a4e3f92959d8479417caa.jpg
[2]: https://habrahabr.ru/company/lanit/blog/334018/
[3]: https://habrahabr.ru/post/334018/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Dotty – будущее языка Scala
habra.16
habrabot(difrex,1) — All
2017-07-26 16:00:05


В конце мая я оказался среди слушателей конференции Scala Days в Копенгагене. Одним из ключевых спикеров был создатель языка Scala Мартин Одерский. Он рассказал о развитии языка и, в частности, о разработке компилятора, названного Dotty. Планируется, что на основе Dotty будет разработан новый компилятор для версии 3.0.

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

[![][1]][2]
_Мартин Одерский. План развития Scala на ближайшие несколько лет_

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

[1]: https://habrastorage.org/web/ade/537/cb1/ade537cb168a4e3f92959d8479417caa.jpg
[2]: https://habrahabr.ru/company/lanit/blog/334018/
[3]: https://habrahabr.ru/post/334018/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Приглашаем на Tarantool Meetup 10 августа
habra.16
habrabot(difrex,1) — All
2017-07-26 17:30:04


![][1]

Всем привет! 10 августа 2017 мы приглашаем архитекторов и разработчиков в московский офис Mail.Ru Group, где состоится Tarantool Meetup, посвященный архитектуре и реализации корпоративных микросервисов с использованием Tarantool. Мы поделимся с вами своими подходами к проектированию решений и покажем на примере двух простых сервисов как можно за два часа решить две типовые задачи. И традиционно будет много интересных технических дискуссий на самые разные темы! А если вы возьмете с собой ноутбук с установленным Docker, то сможете сами пощупать все своими руками. Программу читайте под катом.
[Читать дальше →][2]

[1]: https://habrastorage.org/web/1f9/b13/dbd/1f9b13dbd45f4fa2ac48c0d94405d39d.jpg
[2]: https://habrahabr.ru/post/334150/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

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


**Объявление:** срок приёма решений продлевается до 17 августа.

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

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

[>] Случайный лес vs нейросети: кто лучше справится с задачей распознавания пола из аудио (ч.1)
habra.16
habrabot(difrex,1) — All
2017-07-26 19:00:04


Исторически сложилось так, что наибольшего успеха глубокое обучение достигло в задачах image processing – распознавания, сегментации и обработки изображений. Однако не сверточными сетями едиными, как говорится, живет наука о данных.

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

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

[1]: https://habrastorage.org/web/b40/ee7/898/b40ee789846a4756b3ff6a761d32db95.png
[2]: https://habrahabr.ru/company/neurodatalab/blog/334136/
[3]: https://habrahabr.ru/post/334136/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Selenium: для любителей яблок
habra.16
habrabot(difrex,1) — All
2017-07-26 23:00:05


Привет! Это моя новая статья, посвященная Selenium. Ранее я уже подробно рассказал об организации масштабируемого кластера Selenium ([часть I][1], [часть II][2]). Затем мы рассмотрели вопрос использования Selenium в качестве инструмента отладки автотестов ([раз][3], [два][4]), Наконец, нам удалось создать порядок из хаоса на Windows ([ссылка][5]). Сегодня мы будем иметь дело с яблоками, точнее с одним большим Яблоком (т.е. с Apple).


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

[1]: https://hackernoon.com/selenium-testing-a-new-hope-7fa87a501ee9
[2]: https://hackernoon.com/selenium-testing-a-new-hope-a00649cdb100
[3]: https://habrahabr.ru/post/327184/
[4]: https://habrahabr.ru/post/333568/
[5]: https://habrahabr.ru/post/329256/
[6]: https://habrastorage.org/web/b4b/4f1/717/b4b4f17174b84b4fbaf4d7e2b3fbed5d.jpg
[7]: https://habrahabr.ru/post/334048/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Есть ли альтернатива MS Windows, IE и CSP при доступе в личные кабинеты порталов Госзакупок, ФНС России и Госуслуг
habra.16
habrabot(difrex,1) — All
2017-07-26 23:00:05


![image][1]

И сразу дадим ответ – да, можно и нужно, только не отказаться, а дать гражданам и организациям возможность использовать и другие операционные системы, браузеры и средства криптографической защиты информации (СКЗИ). Ответим на вопрос и как – соблюдать стандарты и технологии. Почему бы для доступа в личные кабинеты не использовать авторизованный доступ по протоколу https? И тогда нет необходимости в использования только CSP а ля Микрософт с поддержкой российской криптографии. Тогда автоматом станут востребованы и токены PKCS#11 и как международный стандарт, так и стандарт, поддерживаемый [ТК-26][2], стандарты PKCS#12 (тем же ТК-26), может что-то другое, но стандартное. В этом случае речь уже будет идти не об MS Windows, Interner Explorer и CSP, а о браузерах или других программ с поддержкой https с российскими шифрсьютами. Это может быть и Internet Explorer, и модификации того же Mozilla Firefox, наконец [Google Chrome][3] или прокси типа stunnel.
[Читать дальше →][4]

[1]: https://habrastorage.org/web/041/650/c9f/041650c9f89340519b10ef115de0fd45.png
[2]: https://www.tc26.ru/
[3]: http://www.pvsm.ru/google/186496
[4]: https://habrahabr.ru/post/334162/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Случайный лес vs нейросети: кто лучше справится с задачей распознавания пола в речи (ч.1)
habra.16
habrabot(difrex,1) — All
2017-07-27 13:30:05


Исторически сложилось так, что наибольшего успеха глубокое обучение достигло в задачах image processing – распознавания, сегментации и обработки изображений. Однако не сверточными сетями едиными, как говорится, живет наука о данных.

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

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

[1]: https://habrastorage.org/web/b40/ee7/898/b40ee789846a4756b3ff6a761d32db95.png
[2]: https://habrahabr.ru/company/neurodatalab/blog/334136/
[3]: https://habrahabr.ru/post/334136/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Добавляем GPRS в домашнюю GSM сеть
habra.16
habrabot(difrex,1) — All
2017-07-27 15:00:04


Третья статья из цикла покажет как исследовать работу пакетных данных в сетях GSM при помощи Osmocom. Другими словами мы будем раздавать интернет с ноутбука абонентам нашей домашней сети на основе двух osmocombb-совместимых телефонов и анализировать TCP/IP трафик.

![][1]

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

[1]: https://habrastorage.org/web/d52/6ce/22e/d526ce22e5c2435bbfd0ae5ba1f91c9f.jpg
[2]: https://habrahabr.ru/post/334100/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Как ускорить сайт или факторы, влияющие на загрузку сайта
habra.16
habrabot(difrex,1) — All
2017-07-27 15:30:04


**Цель**: Дать базовые понятия о факторах, влияющих на скорость загрузки сайта. Разобрать каждый этап загрузки. Дать понятие о способах ускорения за счёт оптимизации каждого фактора загрузки, на который можно повлиять.

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

**Целевая аудитория**: владельцы сайтов, web-студии, специалисты и любители. Постараюсь написать статью таким образом, чтобы она была доступна в понимании всем.

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

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

[>] Разбор задач финала Яндекс.Алгоритма 2017
habra.16
habrabot(difrex,1) — All
2017-07-27 16:00:04


На днях завершился [Яндекс.Алгоритм 2017][1] — наш чемпионат по спортивному программированию. В финальном раунде 25 финалистам нужно было за два с половиной часа решить шесть задач. Первое место вновь завоевал Геннадий Короткевич из питерского ИТМО — это уже четвёртая его победа после состязаний 2013, 2014 и 2015 года. Никола Йокич из Швейцарской высшей технической школы Цюриха и выпускник Университета Токио Макото Соэдзима стали вторым и третьим, повторив свои [прошлогодние][2] результаты. Вот как распределились денежные призы: победа — 300 тысяч рублей, второе место — 150 тысяч, третье — 90 тысяч.



![][3]



Заявки на участие в Алгоритме 2017 подали 4840 человек. Более 60% из них — россияне. На втором месте по количеству заявок — Беларусь, далее следуют Украина, Индия и Китай. В общей сложности на чемпионат зарегистрировались жители нескольких десятков стран, включая Сингапур, Камерун, Венесуэлу и Перу.



Мы по традиции публикуем формулировки и разобранные решения задач финала.

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

[1]: https://contest.yandex.ru/algorithm2017/
[2]: https://habrahabr.ru/company/yandex/blog/306872/
[3]: https://habrastorage.org/getpro/habr/post_images/975/4e1/13d/9754e113d888ccd7967b82cccd0663d1.jpg
[4]: https://habrahabr.ru/post/334250/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Релиз Linux-дистрибутива openSUSE 42.3
habra.16
habrabot(difrex,1) — All
2017-07-27 17:00:04


Друзья, коллеги, единомышленники!

После приблизительно 9 месяцев от даты выхода предыдущей версии, состоялся выпуск третьей редакции выпуска популярного Linux-дистрибутива [openSUSE][1] Leap 42-й серии. Итак, встречаем — **openSUSE Leap 42.3**.

![][2]

Дистрибутив openSUSE **Leap**, в отличии от openSUSE **Tumbleweed** (rolling-release, постоянно обновляемый дистрибутив в стиле Arch Linux), периодически выпускается и является регулярным, рекомендуется для начинающих и опытных пользователей Linux, разработчиков, администраторов и поставщиков программного обеспечения, так как в итоге получается удобный и пригодный к использованию дистрибутив и стабильная операционная система.
[Читать дальше →][3]

[1]: https://www.opensuse.org/
[2]: https://habrastorage.org/web/b0d/a59/cbb/b0da59cbbcee438cb7a09e69aa9892a8.png
[3]: https://habrahabr.ru/post/334258/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Метаклассы в C++
habra.16
habrabot(difrex,1) — All
2017-07-27 20:30:04


В этой статье мы поговорим о новом предложенном расширении языка С++ — метаклассах. Герб Саттер с коллегами работал над этим предложением около 2 лет и, наконец, этим летом [представил][1] его общественности.

Итак, что же такое «метакласс» с точки зрения Герба Саттера? Давайте вспомним наш С++ — самый прекрасный в мире язык программирования, в котором, однако, веками десятилетиями существуют примерно одни и те же сущности: переменные, функции, классы. Добавление чего-то фундаментально нового (вроде enum classes) занимает очень много времени и рассчитывать дождаться включения чего-то нужного вам здесь и сейчас в стандарт — не приходится. А ведь кое-чего и правда не хватает. Например, у нас всё ещё нет (да, наверное, и не будет) интерфейсов как таковых (приходится эмулировать их абстрактными классами с чисто виртуальными методами). Нет properties в полном их понимании, нет даже value-типов (чего-то такого, что можно было бы определить как набор переменных простых типов и сразу использовать во всяких там контейнерах/сортировках/словарях без определения для них разных там операций сравнения, копирования и хеширования). Да и вообще постоянно чего-то кому-то не хватает. Разработчикам Qt вот не хватает метаданных и кодогенерации, что заставляет их использовать moc. Разработчикам C++/CLI и C++/CX не хватило способов взаимодействия со сборщиком мусора и своими системами типов. Ну и т.д.

А давайте на секунду представим, что мы сами можем вводить в язык новые сущности. Ну или пусть не прямо «сущности», а правила проверки и модификации классов.
[Читать дальше →][2]

[1]: https://herbsutter.files.wordpress.com/2017/07/p0707r1.pdf
[2]: https://habrahabr.ru/post/334284/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] SOAP и REST сервисы с помощью Python-библиотеки Spyne
habra.16
habrabot(difrex,1) — All
2017-07-27 23:30:04


## Знакомство с библиотекой Spyne


В данной статье я хочу рассказать о замечательной Python-библиотеке Spyne.
Мое знакомство с Spyne началось в тот момент, когда передо мной поставили задачу написать Веб-сервис, который будет принимать и отдавать запросы через SOAP-протокол. Немного погуглив я наткнулся на [Spyne][1], которая является форком библиотеки [soaplib][2]. А еще я был удивлен, насколько мало русскоязычной информации встречается о данной библиотеке.

С помощью Spyne можно писать веб-сервисы, которые умеют работать с SOAP, JSON, YAML, а написанный скрипт можно запустить через mod\_wsgi Apache. Итак, давайте рассмотрим несколько примеров, напишем работающие скрипты и настроим так, чтобы скрипты работали через apache. [Читать дальше →][3]

[1]: http://spyne.io/
[2]: https://github.com/soaplib/soaplib
[3]: https://habrahabr.ru/post/334290/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как уязвимость платежной системы раскрывала данные кредитных карт
habra.16
habrabot(difrex,1) — All
2017-07-27 23:30:04


Недавно решил проверить на уязвимости сайты платежных систем (ua,ru). Нашёл топ такого рода сервисов, на множестве из которых были обнаружены xss, csrf и другие популярные уязвимости. Были компании, которые оперативно устраняли уязвимости, благодарили и договаривались о сотрудничестве, были, которые молча фиксили, и самый неприятный момент — компании, которые не верили в опасность проблемы, я пытался доказать им обратное, что дело обстоит серьезно, предлагал показать уязвимость на их тестовом аккаунте, говорили, что исправят, но до сих пор и не исправили ([maxkassa.ru][1]).

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

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

[>] JetBrains MPS для интересующихся #1
habra.16
habrabot(difrex,1) — All
2017-07-28 06:30:04


## Введение {#vvedenie}



Спасибо всем за критику в комменте под [первым постом][1], где я хотел попробовать написать про MPS, не затрагивая важные темы, чтобы можно было потом более качественно начать писать по порядку.



## Зачем нам нужен язык Weather? {#zachem-nam-nuzhen-yazyk-weather}



В комментариях к 1 посту [было следующее высказывание][2]


> С этой точки зрения, DSL — это как фреймворк, только с более удобным интерфейсом. Ясное дело, под один проект фреймворк делать никто не будет, за исключением совсем уж монструозных случаев. А сделать его под конкретную предметную область — почему бы и нет?..

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



## Синтаксис {#sintaksis}



Язык Weather, который мы хотим реализовать, должен выполнять следующую задачу: мы должны уметь лаконично выражать условия (погода сегодня, например) и следствия (погода завтра, послезавтра...).
В языке Weather мы будем делать наши прогнозы отталкиваясь от 1 фактора: от температуры на сегодняшний день(массив объектов время + погодные условия).

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

[1]: https://habrahabr.ru/post/334108/
[2]: https://habrahabr.ru/post/334108/#comment_10328140
[3]: https://habrahabr.ru/post/334308/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

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


В этой статье будет продемонстрирована техника обработки информации по биржевым котировкам с помощью пакета [pandas][1] (python), а также изучены некоторые «мифы и легенды» биржевой торговли посредством применения методов математической статистики. Попутно кратко рассмотрим особенности использования библиотеки [plotly][2].
Одной из легенд трейдеров является понятие «локомотива». Описать ее можно следующим образом: есть бумаги «ведущие» и есть бумаги «ведомые». Если поверить в существование подобной закономерности, то можно «предсказывать» будущие движения финансового инструмента по движению «локомотивов» («ведущих» бумаг). Так ли это? Есть ли под этим основания?
![image][3]
[Читать дальше →][4]

[1]: http://pandas.pydata.org/
[2]: https://plot.ly/
[3]: https://habrastorage.org/getpro/habr/post_images/6f3/be9/3e6/6f3be93e64dbeb2736153a1e12c382a4.jpg
[4]: https://habrahabr.ru/post/334288/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Red Architecture — красная кнопка помощи для сложных и запутанных систем — часть 2 (пример с миллиардом ячеек)
habra.16
habrabot(difrex,1) — All
2017-07-28 14:00:05


В [первой части][1] представлена концепция **Red Architecture** — подход, упрощающий взаимодействие между компонентами в сложных системах, и предназначенная в первую очередь для клиентских приложений. Для полного понимания текущей статьи необходимо познакомиться с данной концепцией [здесь][2].

![][3]

По следам свежих комментариев к [первой части][4] рассмотрим законченный пример, демонстрирующий применение Red Architecture для решения нетривиальной задачи.

_У нас есть клиетское приложение — редактор таблиц, в нём отображается лист таблицы. Экран у пользователя настолько большой, что на нём помещается 1 000 000 000 (один миллиард) табличных ячеек. Всё усложняется тем, что наш табличный редактор подключен к облаку для возможности совместного редактирования таблицы, поэтому изменения в любой из одного миллиарда ячеек “где-то в облаке” должны быть сразу же отображены нашему пользователю._

Паттерн Red Architecture позволяет реализовать данную функцию просто и с высокой производительностью.
[Читать дальше →][5]

[1]: https://habrahabr.ru/post/333870/
[2]: https://habrahabr.ru/post/333870/
[3]: https://habrastorage.org/web/e20/b7a/567/e20b7a5674cc4abfad5f507f51733956.png
[4]: https://habrahabr.ru/post/333870/
[5]: https://habrahabr.ru/post/334204/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Настройка аутентификации в Citrix XenDesktop 7.x c использованием смарт-карт JaCarta PKI
habra.16
habrabot(difrex,1) — All
2017-07-28 14:30:04


Настоящая статья описывает процесс настройки двухфакторной аутентификации с использованием смарт-карт JaCarta PKI разработки компании [«Аладдин Р.Д.»][1] в виртуальной среде Citrix XenDesktop версии 7.x.
[Читать дальше →][2]

[1]: https://www.aladdin-rd.ru/company/
[2]: https://habrahabr.ru/post/334322/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Методология и руководство по стилю кода компании Ronimo
habra.16
habrabot(difrex,1) — All
2017-07-28 14:30:04


Я большой сторонний структурного подхода к работе. Программистам игр приходится создавать сложные системы и поэтому недостаточно просто плыть по течению. Я написал два документа о том, как мы в [Ronimo][1] пишем код, которые должен изучить в первый день работы каждый программист и стажёр. Наш документ по _методологии_ объясняет рабочий процесс, а _руководство по стилю_ рассказывает о системе нашего кода. Для начала я хочу раскрыть методологию и рассказать о причинах, стоящих за представленными в документе правилами.
[Читать дальше →][2]

[1]: http://www.ronimo-games.com
[2]: https://habrahabr.ru/post/334106/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Как крупная курьерская компания персональные данные своих клиентов раздавала
habra.16
habrabot(difrex,1) — All
2017-07-28 15:00:04


![image][1]

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

[1]: https://s3.postimg.org/bwc0gsm4z/0e35049f32d7b56a8ecf01bec5d219a62721edab.jpg
[2]: https://habrahabr.ru/post/334330/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Как работает нейронный машинный перевод?
habra.16
habrabot(difrex,1) — All
2017-07-28 16:00:04


#### Описание процессов машинного перевода основанного на базе правил (Rule-Based), машинного перевода на базе фраз (Phrase-Based) и нейронного перевода


![image][1]

В этой публикации нашего цикла step-by-step статей мы объясним, как работает нейронный машинный перевод и сравним его с другими методами: технологией перевода на базе правил и технологией фреймового перевода (PBMT, наиболее популярным подмножеством которого является статистический машинный перевод — SMT).

Результаты исследования, полученные Neural Machine Translation, удивительны в части того, что касается расшифровки нейросети. Создается впечатление, что сеть на самом деле «понимает» предложение, когда переводит его. В этой статье мы разберем вопрос семантического подхода, который используют нейронные сети для перевода.

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

[1]: https://habrastorage.org/getpro/habr/post_images/9f7/e5d/c0d/9f7e5dc0dd7eba0274a6ee8ca85d5274.jpg
[2]: https://habrahabr.ru/post/334342/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как «Актив» организовал «электронную переговорку»
habra.16
habrabot(difrex,1) — All
2017-07-28 16:30:05


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



Но это только половина проблемы. Как всем известно, ресурсами еще нужно уметь грамотно управлять, чтобы не случалось коллизий. Ситуации, когда во время встречи с партнерами, в переговорную врывается руководитель соседнего подразделения со словами “И эта занята!?”, недопустимы.




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



Можно конечно придумать еще различные варианты «почему». Для нас уже этих двух моментов было достаточно, чтобы начать исследования в направлении поиска решения проблемы.


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

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

[>] ICFP Contest 2017 — проверка на прочность для настоящих разработчиков
habra.16
habrabot(difrex,1) — All
2017-07-29 00:30:04


[ICFPC][1] — ежегодное соревнование для программистов. Оно проходит в онлайне и длится 72 часа. ICFPC 2017 начнётся в пятницу 4 августа в 12:00 (UTC) и закончится в понедельник.

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

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

[1]: http://events.inf.ed.ac.uk/icfpcontest2017/
[2]: https://habrastorage.org/web/297/c2d/d4b/297c2dd4b7a049608416edc42d5eb194.jpg
[3]: https://habrahabr.ru/post/334324/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Security Week 30: Adups снова за свое, как закэшировать некэшируемое, в контейнерах Docker – опасный груз
habra.16
habrabot(difrex,1) — All
2017-07-29 03:00:03


Эта история [началась][1] давным-давно, еще в прошлом году, когда исследователи из Kryptowire наткнулись на подозрительный трафик, исходящий из купленного по случаю китайского смартфона. Углубившись в прошивку аппарата, они выяснили, что система OTA-обновлений представляет собой натуральный бэкдор. Ну, и еще немножечко апдейтит прошивку, в свободное от шпионажа за пользователем время.

FOTA (firmware over the air), программный модуль от Shanghai Adups Technology Company отправлял куда-то в Китай буквально все: SMS-сообщения, IMSI и IMEI, журнал звонков, географические координаты устройства. На сайте Adups гордо заявлялось, что их чудненький FOTA используется на 700 млн устройств. В основном это китайские и не очень смартфоны, а также навигаторы, умные автомагнитолы и все прочие гаджеты с подключением к Интернету.

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

[1]: https://threatpost.com/backdoor-found-in-firmware-of-some-android-devices/122075/
[2]: https://mobile.nytimes.com/2016/11/16/us/politics/china-phones-software-security.html
[3]: https://habrahabr.ru/post/334378/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] JetBrains MPS для интересующихся #2
habra.16
habrabot(difrex,1) — All
2017-07-29 11:00:44


# Йо-хо-хо! {#yo-ho-ho}



В прошлом посте мы остановились на том, что мы умеем добавлять массив входных погодных данных, а точнее данные "Время + температура", слегка попробовали использовать **Behavior** и разобрались с концептами.
Пришло время делать что-то полезное, ведь пока все, что мы реализовали, можно было реализовать на любом другом языке, за исключением прикольного синтаксиса.
Первым делом, введем ограничения на время. Сейчас мы ограничим его, чтобы часы были в пределе 0-24, а минуты 0-60, иначе будет выдаваться ошибка компиляции.



## Constraints {#constraints}



**Constraints** это аспект языка, который отвечает за валидность реализации концепта. В нашем случае нам нужно ограничить _property_ hours и minutes, поэтому мы создаем _Constraints_ аспект концепта Time.
![image][1]
Здесь мы видим 3 пункта, которые отвечают за структуру AST.


* can be child: получаем на вход данные об узле, родительском узле, дочернем и все, что только можно и решаем, может ли реализация концепта в данном контексте быть дочерней или нет
* can be parent: то же самое, что и с child, только проверка на возможность быть родительским узлом
* can be ancestor: все то же самое, что с parent, но более вложенно: в данном случае мы можем идти как угодно выше по AST, дословно — может ли узел быть предком[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/3c2/5b9/837/3c25b9837a88652cbd7bd39b6f8ea9f1.png
[2]: https://habrahabr.ru/post/334376/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Взлом казино через умный аквариум и DDoS биржевых брокеров: новые атаки на сферу финансов
habra.16
habrabot(difrex,1) — All
2017-07-29 16:30:17


[![][1]][2]

Хакеры продолжают атаковать сферу финансов, и нападения становятся все изощренней. Так, в сеть одного из американских казино киберпреступники проникли через «умный» аквариум, а в начале июля хакеры сначала шантажировали, а потом и атаковали брокеров в Малайзии. [Читать дальше →][3]

[1]: https://habrastorage.org/web/b1b/719/94d/b1b71994d89946799ac7b9a19b4c4338.png
[2]: https://habrahabr.ru/company/itinvest/blog/334396/
[3]: https://habrahabr.ru/post/334396/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Сравнение* древовидных графов
habra.16
habrabot(difrex,1) — All
2017-07-29 21:00:06


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

\* На самом деле не совсем так. При разработке информационной системы, частью которой является различная обработка конструкторско-технологической документации, у меня возникла проблема, которую вкратце можно описать следующим образом. Сегодня мы имеем один состав изделия, за день приходит несколько изменений по различным частям этого изделия и к вечеру уже неясно, что же изменилось? Изделия порой могут иметь более 10 000 элементов в составе, элементы не уникальны, а реальность такова, что изменения по составу могут активно приходить, хотя изделие уже почти готово. Непонимание объема изменений усложняет планирование.

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

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

[>] Play with Docker — онлайн-сервис для практического знакомства с Docker
habra.16
habrabot(difrex,1) — All
2017-07-31 11:00:04


![][1]

В конце прошлого года два [капитана Docker][2] [представили][3] свою разработку под названием Play with Docker (PWD) — «игровую площадку для Docker». Пользователям предлагается бесплатно поработать со сборкой и запуском Docker-контейнеров прямо в веб-браузере, а также выполнить лабораторные работы для знакомства с Docker с нуля и совершенствования своих навыков. [Читать дальше →][4]

[1]: https://habrastorage.org/web/39a/078/df8/39a078df8c944dd1bde1dad5b352f462.jpg
[2]: https://www.docker.com/community/docker-captains
[3]: https://blog.docker.com/2016/12/global-mentor-week-thank-docker-community/
[4]: https://habrahabr.ru/post/334470/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Интерфейс vs interface
habra.16
habrabot(difrex,1) — All
2017-07-31 12:00:05


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



Часто сложность в понимании принципа "программируйте на уровне интерфейса" кроется в концентрации на инструменте, а не на смысле. Из-за наличия в Java ключевого слова `interface`, происходит искажение понимания принципа, и он превращается в "программируйте, используя `interface`". Так как в Python инструмент в виде ключевого слова `interface` отсутствует, некоторые питонисты пропускают этот принцип.



В книге Банды Четырех примеры приводятся на Smalltalk и C++. Оба этих языка не имеют ключевого слова `interface`, но это не мешает авторам применять принцип, используя имеющиеся в распоряжении конструкции языка:


> У манипулирования объектами строго через интерфейс абстрактного класса есть два преимущества:
>
> * клиенту не нужно иметь информации о конкретных типах объектов, которыми он пользуется, при условии, что все они имеют ожидаемый клиентом интерфейс;
> * клиенту необязательно "знать" о классах, с помощью которых реализованы объекты. Клиенту известно только об абстрактном классе (или классах), определяющих интерфейс.
>
>
>
> Данные преимущества настолько существенно уменьшают число зависимостей между подсистемами, что можно даже сформулировать принцип объектно-ориентированного проектирования для повторного использования: _программируйте в соостветствии с интерфейсом, а не с реализацией_.

Но даже приведенные в цитате преимущества не являются единственными, если посмотреть на принцип под более широким углом.

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

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

[>] Докеризация высокодоступного Postgres кластера
habra.16
habrabot(difrex,1) — All
2017-07-31 12:00:05


![][1]

Пару месяцев назад мы переехали из Амазон на свои выделенные сервера(Hetzner), одна из причин тому была высокая стоимость RDS. Встала задача настроить и запустить master-slave кластер на выделенных серверах. После гугления и прочтения официальной документации, было принято решение собрать свое собственное решение высокодоступного асинхронного кластера Postgres.

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

[1]: https://habrastorage.org/web/67f/924/b3d/67f924b3d6d54a6b9b46cda3562fb1df.png
[2]: https://habrahabr.ru/post/334484/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] grab'им караваны ЛитРес в ознакомительных целях
habra.16
habrabot(difrex,1) — All
2017-07-31 12:00:05


Некоторые книги, по требованию правообладателя, доступны только для чтения с сайта или в приложениях ЛитРес. Все бы ничего, но бывают такие ситуации:
![][1]



Право читать обошлось в 2/3 от стоимости бумажного носителя, если брать с сайта издательства.


> Справедливости нет. есть только я

[Смерть][2]



И тут я решил написать grabber.

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

[1]: https://habrastorage.org/web/204/671/7b1/2046717b19aa442d83967d3f90fc68dd.jpg
[2]: https://ru.wikipedia.org/wiki/%D0%A1%D0%BC%D0%B5%D1%80%D1%82%D1%8C_(%D0%9F%D0%BB%D0%BE%D1%81%D0%BA%D0%B8%D0%B9_%D0%BC%D0%B8%D1%80)
[3]: https://habrahabr.ru/post/334412/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как Chrome и Firefox договариваются о передаче двух видеопотоков
habra.16
habrabot(difrex,1) — All
2017-07-31 14:30:05


![][1]


Среди [подводных камней WebRTC][2] один особенный. Это то, как браузеры договариваются между собой о передаче медиа-потоков. Кодеки, битрейты, разрешение видео, – вся вот эта история. Кода медиа-поток один — все хорошо. Но когда их два (а видео со звуком, это, на секундочку, два медиа-потока: один для видео, другой для звука), то мнения браузеров о формате описания ситуации резко разделяются. Сделать видеозвонок из Chrome в Firefox можно довольно легко. А вот видеозвонок со звуком — уже нет. Под катом небольшая история, почему так повелось, что запилили в новой Safari и какой особый путь у Microsoft Edge.
[Читать дальше →][3]

[1]: https://habrastorage.org/web/a24/a32/aa3/a24a32aa32c34fa2abed3c849478ec2f.png
[2]: https://habrahabr.ru/company/Voximplant/blog/333486/
[3]: https://habrahabr.ru/post/334498/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Почему Node.js в качестве основы фронтенда – это круто
habra.16
habrabot(difrex,1) — All
2017-07-31 15:00:04


![][1]



**Накануне запуска школы Node.js от Яндекс.Денег я хотел бы рассказать чуть больше о том, почему именно эта платформа прижилась в нашем фронтенде.**



Несколько лет назад в Яндекс.Деньгах назрела смена платформы для серверной прослойки фронтенда: имевшаяся была внутренней проприетарной разработкой и постепенно умирала от слабой поддержки и проседания скорости работы. Вместе с медленной работой в рантайме и отсутствием развития XSLT, на котором работало API, этот «черный ящик» с множеством ограничений настала пора заменить.



Под «фронтендом» мы понимаем не только выполняемый в браузере код, но и серверную прослойку по сбору данных и генерации HTML. Хорошей заменой для имевшейся логики стал Node.js.

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

[1]: https://habrastorage.org/web/1d9/00d/a3d/1d900da3d4f74cfa883990d32a30e49c.png
[2]: https://habrahabr.ru/post/334500/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Почему Node.js в качестве основы фронтенда – это круто [обновлено]
habra.16
habrabot(difrex,1) — All
2017-07-31 15:30:05


![][1]



**Накануне запуска школы Node.js от Яндекс.Денег я хотел бы рассказать чуть больше о том, почему именно эта платформа прижилась в нашем фронтенде.**



Несколько лет назад в Яндекс.Деньгах назрела смена платформы для серверной прослойки фронтенда: имевшаяся была внутренней проприетарной разработкой и постепенно умирала от слабой поддержки и проседания скорости работы. Вместе с медленной работой в рантайме и отсутствием развития XSLT, на котором работало API, этот «черный ящик» с множеством ограничений настала пора заменить.



Под «фронтендом» мы понимаем не только выполняемый в браузере код, но и серверную прослойку по сбору данных и генерации HTML. Хорошей заменой для имевшейся логики стал Node.js.

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

[1]: https://habrastorage.org/web/1d9/00d/a3d/1d900da3d4f74cfa883990d32a30e49c.png
[2]: https://habrahabr.ru/post/334500/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] GeekUniversity открывает набор студентов на факультет Python-разработки
habra.16
habrabot(difrex,1) — All
2017-07-31 16:00:04


![][1]



В нашем онлайн-университете для программистов открылся новый факультет. Теперь в GeekUniversity студенты смогут освоить Python-разработку на Middle-уровне и гарантированно начать карьеру сразу после обучения.



[GeekUniversity][2] — совместный образовательный проект Mail.Ru Group и IT-портала GeekBrains. Программу обучения и спецкурсы для факультета разрабатывают Avito, Альфа-банк, МТС, Тинькофф, DeliveryClub.

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

[1]: https://habrastorage.org/web/1ce/bd6/dc4/1cebd6dc49de45deb80ed789c0374566.png
[2]: https://geekbrains.ru/geek_university/java?utm_medium=special_post&utm_source=habrahabr.ru&utm_campaign=mailru&utm_term=20.06.17&utm_content=geek_university_java
[3]: https://habrahabr.ru/post/334532/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Artisto: опыт запуска нейросетей в production
habra.16
habrabot(difrex,1) — All
2017-07-31 18:00:04


![][1]


## Эдуард Тянтов ([Mail.ru Group][2])


Меня зовут Эдуард Тянтов, я занимаюсь машинным обучением в компании Mail.ru Group. Я расскажу про приложение **стилизации видео с помощью нейронных сетей** Artisto, про технологию, которая лежит в основе этого приложения.

Давайте я дам пару фактов о нашем приложении:

* **1-е** мобильное приложение стилизации видео в мире;
* Уникальная технология стабилизации видео;
* Приложение с технологией разработаны за **1 месяц**.[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/3e2/660/34e/3e266034ecd908a912c3425fbb1db92f.jpg
[2]: https://habrahabr.ru/company/mailru/
[3]: https://habrahabr.ru/post/334530/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Дефейс ask.mcdonalds.ru
habra.16
habrabot(difrex,1) — All
2017-07-31 20:00:05


Все началось, когда обычным майским днем я наткнулся на сообщество ВКонтакте, публикующее забавные вопросы людей о продукции Макдоналдс, которые они задавали на некоем сайте. Это выглядело примерно так:

![][1]
Полистав стену, я заинтересовался и решил посмотреть, что же из себя представляет эта платформа для общения с пользователями — [ask.mcdonalds.ru][2].
[Читать дальше →][3]

[1]: https://habrastorage.org/web/9f6/b64/0bf/9f6b640bf1454d668421e3b758b44064.png
[2]: https://ask.mcdonalds.ru/
[3]: https://habrahabr.ru/post/334564/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Машинное обучение для страховой компании: Оптимизация модели
habra.16
habrabot(difrex,1) — All
2017-08-01 00:00:05


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

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

[1]: https://habrastorage.org/web/ba0/65d/f9c/ba065df9c4fa4cfeb237fa63ebabd1cf.jpg
[2]: https://habrahabr.ru/post/334556/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Знакомство с Университетом ИТМО: дайджест практических работ
habra.16
habrabot(difrex,1) — All
2017-08-01 00:00:05


Сегодня мы решили подготовить тематический дайджест, который позволяет познакомиться с проектами сообщества [Университета ИТМО][1]. Здесь мы расскажем о разработке новых систем связи, робототехнике, семантических технологиях и многом другом.

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

[1]: http://www.ifmo.ru/ru/
[2]: https://habrahabr.ru/company/spbifmo/blog/334522/
[3]: https://habrahabr.ru/post/334522/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Четверть миллиона за «жука»: Microsoft начинает активную борьбу с багами
habra.16
habrabot(difrex,1) — All
2017-08-01 00:00:05


Вторая половина июля оказалась щедрой на новости от Microsoft о борьбе с багами. 21 июля стало [известно][1] о запуске облачной платформы для поиска уязвимостей, а 26 июля представители компании [объявили][2] о новом этапе поощрительной программы — корпорация готова выплачивать до $250 000 за найденные баги.

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

[1]: https://blogs.microsoft.com/next/2017/07/21/ai-for-security-microsoft-security-risk-detection-makes-debut/
[2]: https://blogs.technet.microsoft.com/msrc/2017/07/26/announcing-the-windows-bounty-program/
[3]: https://habrastorage.org/web/6a8/be6/2ca/6a8be62caeb84edbac8a9e5819425753.jpg
[4]: https://habrahabr.ru/company/1cloud/blog/334552/
[5]: https://habrahabr.ru/post/334552/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как скрестить ежа с ужом. Используем GridView из Yii 2 в проекте на Laravel
habra.16
habrabot(difrex,1) — All
2017-08-01 00:00:05


Недавно была [статья][1] про Yii, где в комментариях обсуждали специфичные для Yii компоненты, в частности GridView и ActiveForm, и фреймворк Laravel. Я подумал, а почему бы и нет.

composer create-project laravel/laravel
...
composer require yiisoft/yii2

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

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

[>] В разрезе: новостной агрегатор на Android с бэкендом. Вводная часть, идея, технологии
habra.16
habrabot(difrex,1) — All
2017-08-01 10:00:11


Так сложилось, что работу, которая мне нравилась и которую, как мне кажется, я делал хорошо, мне пришлось сменить на более стабильную и прибыльную, но уже не такую интересную – работу линейного менеджера в подразделении информатизации в крупном банке. Сказать, что эта работа полная противоположность прежней сложно, но в ней нет, того, что было в разработке: драйва, необходимость решения сложных задач, изучения новых технологий, что тут говорить – не было даже английского языка (знание которого терять не хотелось). Откровенно говоря, несмотря на заявляемую гибкость и передовые технологи, во многих банках царит IT-совок и ручной труд.

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

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

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

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

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