• Совмещение R и Python: зачем, когда и как?

      dva stula

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

      Давайте попробуем разобраться в этих вопросах.
      Читать дальше →
      • +39
      • 7,9k
      • 4
    • Аспектно-ориентированное программирование, Spring AOP

        Аспектно-ориентированное программирование (АОП) — это парадигма программирования являющейся дальнейшим развитием процедурного и объектно-ориентированного программирования (ООП). Идея АОП заключается в выделении так называемой сквозной функциональности. И так все по порядку, здесь я покажу как это сделать в Java — Spring @AspectJ annotation стиле (есть еще schema-based xml стиль, функциональность аналогичная).

        Выделении сквозной функциональности


        До

        image

        и после

        image

        Т.е. есть функциональность которая затрагивает несколько модулей, но она не имеет прямого отношения к бизнес коду, и ее хорошо бы вынести в отдельное место, это и показано на рисунке выше.

        Join point


        Читать дальше →
      • Использование Retrofit 2.x в качестве REST клиента — Tutorial

        • Перевод
        • Tutorial

        1. Retrofit


        1.1. Что такое Retrofit


        Retrofit — это REST клиент для Java и Android. Он позволяет легко получить и загрузить JSON (или другие структурированные данные) через веб-сервис на основе REST. В Retrofit вы настраиваете, какой конвертер используется для сериализации данных. Обычно для JSON используется GSon, но вы можете добавлять собственные конвертеры для обработки XML или других протоколов. В Retrofit используется библиотека OkHttp для HTTP-запросов.
        Читать дальше →
      • Flutter — новый взгляд на кроссплатформенную разработку

          В августе 2018 года Flutter стал самой запрашиваемой кроссплатформенной технологией на Stack Overflow.


          image


          В нашем блоге Артем Зайцев и Евгений Сатуров из студии Surf, сертифицированного агентства Google, расскажут, почему и как так получилось:


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

          Читать дальше →
        • Application Coordinator в iOS приложениях

            Каждый год в платформе iOS происходит множество изменений, к тому же регулярно выходят сторонние библиотеки по работе с сетью, кэшированию данных, отрисовке UI через JavaScript и прочему. В противовес всем этим тенденциям Павел Гуров рассказал об архитектурном решении, которое будет актуально независимо от того, какими технологиями вы пользуетесь сейчас или будете пользоваться через пару лет.

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



            О спикере: Павел Гуров занимается разработкой iOS приложений в Avito.


            Читать дальше →
            • +36
            • 5,8k
            • 7
          • 10 интересных новостных IT сайтов, которые стоит добавить в закладки

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

            А чтобы реально разобраться в тексте, советуем взять на заметку такие сайты:
            Читать дальше →
            • –1
            • 16,4k
            • 3
          • Нужно поднимать Kubernetes кластер, но я всего лишь программист кода. Выход есть

            • Tutorial


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

            Ключевые слова — AWS + Terraform + kops . Если это полезно мне — возможно будет полезно кому-нибудь еще. Добро пожаловать в комментарии.
            Читать дальше →
          • Перевод книги Эндрю Ына «Страсть к машинному обучению» Главы 1 — 14

            Некоторое время назад в моей ленте в фейсбуке всплыла ссылка на книгу Эндрю Ына (Andrew Ng) "Machine Learning Yearning", которую можно перевести, как "Страсть к машинному обучению" или "Жажда машинного обучения".


            image<img src="<img src="https://habrastorage.org/webt/ds/rc/ct/dsrcctfottkedkf7o1hxbqsoamq.png" />" alt="image"/>


            Людям, интересующимся машинным обучением или работающим в этой сфере представлять Эндрю не нужно. Для непосвященных достаточно сказать, что он является звездой мировой величины в области искусственного интеллекта. Ученый, инженер, предприниматель, один из основателей Coursera. Автор отличного курса по введению в машинное обучение и курсов, составляющих специализацию "Глубокое обучение" (Deep Learning).

            Читать дальше →
            • +40
            • 20,5k
            • 3
          • Какие видеокодеки (не) используют браузеры для видеозвонков

            • Перевод

            Типичный запрос в техподдержку Voximplant: «Почему видеозвонок между двумя Chrome выглядит лучше, чем видеозвонок между MS Edge и нативным iOS-приложением»? Коллеги обычно отвечают нейтральное — «потому что кодеки». Но мы, айтишники, любопытны. Даже если я не разрабатываю новый Skype-for-web, чтение «какой браузер что может» и как они разбивают одно видео на несколько потоков разного качества обогащает картину мира и дает свежую тему для обсуждения в курилке. Удачно подвернувшаяся статья от широко известного в узких кругах Dr Alex (с лучшим объяснением термина «media engine» из всех, что я видел), немного нашего опыта, пара вечеров в «Циферблате» — и адаптированный для Хабра перевод ждет под катом!
            Читать дальше →
            • +37
            • 5,2k
            • 6
          • В чём мерить будем? Как выбрать правильные ML-метрики под задачи бизнеса



              Сегодня одним из главных препятствий на пути внедрения машинного обучения в бизнес является несовместимость метрик ML и показателей, которыми оперирует топ-менеджмент. Аналитик прогнозирует увеличение прибыли? Но ведь нужно понять, в каких случаях причиной увеличения станет именно машинное обучение, а в каких — прочие факторы. Увы, но довольно часто улучшение метрик ML не приводит к росту прибыли. К тому же иногда сложность данных такова, что даже опытные разработчики могут выбрать некорректные метрики, на которые нельзя ориентироваться.

              Давайте рассмотрим, какие бывают метрики ML и когда их целесообразно использовать. Разберём типичные ошибки, а также расскажем о том, какие варианты постановки задачи могут подойти для машинного обучения и бизнеса.
              Читать дальше →
            • Капсульные нейронные сети

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

                У классических свёрточных нейронных сетей есть недостатки. Внутреннее представление данных сверточной нейронной сети не учитывает пространственные иерархии между простыми и сложными объектами. Так, если на изображении в случайном порядке изображены глаза, нос и губы для свёрточной нейронной сети это явный признак наличия лица. А поворот объекта ухудшает качество распознавания, тогда, как человеческий мозг легко решает эту задачу.


                Для свёрточной нейронной сети 2 изображения схожи [2]
                Читать дальше →
                • +16
                • 12,2k
                • 9
              • Управляем светодиодами с помощью Web Bluetooth API и Arduino

                • Tutorial


                — Чайники, весы, игрушки, лампочки, кофемашины… В эти и другие устройства встраивают bluetooth-модули.
                — Зачем?
                — Чтобы дать пользователю управлять своими устройствами через приложение. К примеру, управлять освещением в комнате.
                — Ой, а можно ли собрать какое-то своё простое устройство и управлять им прямо через браузер?
                — Да! И эта статья как раз об этом.

                Читать дальше →
                • +20
                • 5,9k
                • 4
              • Как с первого раза попасть в AppStore: пошаговое руководство



                  К запуску курса «Fullstack мобильный разработчик», проводимого совместно с агентством Agima, мы подготовили серию материалов о том, как создавать приложения для мобайла. Будем говорить о кейсах, цифрах, правилах и провалах, но начнем, вместе с Никитой Архиповым из студии Anvics, с темы прохождения релиза в App Store. Разберем, как договориться с ревью-командой и избежать проблем, по шагам расскажем про техническую сторону — от создания сертификата до взаимодействия с Itunes Connect — и про то, о чем все молчат, — как же все таки пройти ревью с первого раза. Готовьте лапки, и поехали!

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

                  Читать дальше →
                  • +13
                  • 4,9k
                  • 1
                • Power monitor для встраиваемых систем (Linux)

                  • Tutorial
                  Потребовалось измерить ток потребления одного устройства + хранить полученные значения в таблице БД (PostgreSQL).

                  Первые 5 минут гугления показали — почти все производители полупроводников, имеют красивые решения, на одном кристалле. Сложные схемы на ОУ, остались далеко в прошлом.

                  Выбор пал на INA260
                  Напряжение до 36v, простой для монтажа корпус, компромиссная стоимость.
                  Но самый решающий аргумент, он уже валялся в тумбе :D Среди прочих образцов.
                  Настало время его задействовать.

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

                  image
                  Читать дальше →
                • ИТОГ 3-х месяцев: Альтернатива платному отключению рекламы в бесплатном приложении Android

                    Здравствуй, Дорогой читатель ХабраХабра! В данной мини-статье я хочу рассказать/показать итог моей альтернативы платному отключению рекламы в бесплатном приложении Android. Всем, кому интересно добро пожаловать под кат!
                    Читать дальше →
                  • Что мы знаем об Amazon Alexa? Или первые впечатления от Amazon Echo Dot

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


                      Image: How to Mount your Amazon Echo Dot on the Wall, Ceiling, or Under the Counter – Android Central
                      Читать дальше →
                    • От Бури до Луны. Часть 1. Первые ЭВМ



                        Перед вами несколько необычная статья. Собственно, это и не статья вовсе. Год назад, как раз после Дня космонавтики-2017, я взял интервью у Александра Константиновича Платонова, математика Института прикладной математики.

                        Человека, который принимал участие в развитии наших ЭВМ и космонавтики. Он был один из тех, кто еще помнил, как программировать на МЭСМ, БЭСМ и Стрелах, кто рассчитывал на них программу выведения «Бури», а потом Спутника, и многое другое. Он хорошо помнил создателей всей нашей техники, от Лебедева до Королева с Келдышем. Ему было 86 лет, но он меня поразил ясностью своей мысли.

                        По сути, это было не интервью, это — воспоминание о пройденном пути. Я специально задал такой формат беседы, и записал ее на диктофон. И в этом есть проблема: разговорная мысль достаточно далека от литературной, часты скачки мысли, переходы с одного вопроса на другой.
                        Читать дальше →
                      • Искусственный интеллект и нейросети для .NET-разработчиков

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


                          Прототипом статьи послужил доклад Дмитрия Сошникова на конференции DotNext 2017 Moscow. Дмитрий — технологический евангелист компании Майкрософт, занимается популяризацией современных технологий разработки программного обеспечения среди начинающих разработчиков. Специализируется в области интернета вещей, в разработке универсальных приложений Windows, в области функционального программирования и на платформе .NET (F#, Roslyn). Лично провел несколько десятков хакатонов по всей России, помогал многим студенческим стартапам начать свои проекты в различных областях. Доцент, к.ф.-м.н., ведет занятия в МФТИ и МАИ, член Российской ассоциации искусственного интеллекта, летом — ведущий кафедры компьютерных технологий детского лагеря ЮНИО-Р.


                          Осторожно, трафик! В этом посте присутствует огромное количество картинок — слайдов и скриншотов с видео в формате 720p.

                          Читать дальше →
                        • Big Data-мания имеет под собой реальное основание. Объемы данных, которые собирают компании, стремительно растут, и бизнес при их грамотном анализе может получить большое конкурентное преимущество. Как «причесать» систему, в которой распределенные по разным хранилищам данные соседствуют с зоопарком малофункциональных инструментов для их обработки? Мы в банке ВТБ перешли на Hadoop, внедрив единую экосистему от Teradata по технологии QueryGrid. Нашей болью, муками, собственно интеграцией и результатами мы хотим с вами поделиться.
                          Под катом - наш опыт внедрения единой экосистемы от Teradata по технологии QueryGrid и Presto.
                        • Анимации в Android по полочкам (Часть 1. Базовые анимации)

                            Всем привет!

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

                            Сегодня мы поговорим об инструментах для создания анимации. К сожалению, так получилось, что в Android достаточно много способов что либо анимировать, и по началу в них очень легко запутаться. Я постараюсь привести максимально общую классификацию и оставлю ссылки исключительно на документацию, т.к. туториалов можно найти предостаточно. Надеюсь эта статья поможет уложить в голове всё по полочками и, при необходимости создать анимацию, выбрать наиболее подходящий способ.
                            Читать дальше →