• 11 JavaScript-библиотек для визуализации данных, о которых стоит знать в 2018 году

    • Translation
    Мы живём во времена взрывного роста объёмов данных, генерируемых и потребляемых человечеством. Практически в каждом из разрабатываемых сегодня приложений данные либо используются где-то внутри них, либо визуализируются. Программисты, используя данные, стремятся сделать работу с их программами максимально комфортной.

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

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

    image

    Сегодня мы представляем вашему вниманию перевод материала, в котором рассмотрены опенсорсные JavaScript-библиотеки для визуализации данных.
    Читать дальше →
  • Реализация BottomAppBar. Часть 1: Material компоненты для Android

    • Translation
    • Tutorial

    Реализация BottomAppBar. Часть 1: Material компоненты для Android


    BottomAppBar — это один из новых Android Material компонентов, которые были представлены на Google I/O 2018. Это по сути расширение компонента Toolbar. Новый BottomAppBar располагается в нижней части окна приложения в отличие от тулбара, который находится в его верхней части. С помощью этой парадигмы команда Material Design ожидает нового пользовательского опыта (UX). BottomAppBar намного более доступен для пользователя в сравнении с обычным тулбаром. Переместив панель управления и меню в нижнюю часть приложения, BottomAppBar предлагает кардинально новый дизайн для Android приложений.

    Читать дальше →
    • +12
    • 8.9k
    • 1
  • Илон Маск продолжает убеждать в необходимости создания колонии людей на Марсе



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

      Ранее Маск говорил, что считает, что без колонии на другой планете Солнечной системы человек обречен. Сейчас он подтвердил это мнение, заявив, что на Земле человечество ожидает темное будущее — война или что-то еще, о чем говорилось выше. «Скорее всего, нас ожидают „новые темные века“, в особенности, если случится третья мировая война», — прокомментировал Маск необходимость колонизации Марса.
      Читать дальше →
    • Применение преобразования Фурье для создания гитарного тюнера на Android. Часть 1


      В основе спектрального анализа звуковых данных лежит алгоритм, который носит название преобразование Фурье. При раскладывании исходного звукового сигнала на частотные составляющие, отдельные частоты называются гармониками. Основная гармоника определяет высоту звучания, а второстепенные гармоники определяют его тембр. Есть достаточно много мобильных приложений, которые используют преобразование Фурье для того, чтобы отобразить весь спектр частот (гармоник). Так же, есть мобильные приложения, которые служат для настройки гитар. Они работают по принципу: основная гармоника находится по самому высокому значению амплитуды в спектре. Такое утверждение не совсем верно, потому что основная гармоника определяется самой наименьшей из всех кратных этой гармонике, либо шагом между гармониками. Возникает необходимость найти способ, который позволит отобразить значение основной гармоники в спектре звукового сигнала.

      В первой части статьи мы рассмотрим принцип работы дискретного преобразование Фурье, а также возможность записывать звуковые данные с Android устройства с помощью класса AudioRecord.
      Читать дальше →
      • +14
      • 8.6k
      • 5
    • Пошаговое руководство по написанию сервиса для Kubernetes

      • Translation
      • Tutorial

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


      Если вы когда-либо пробовали Go, вы знаете, что писать сервисы на Go очень просто. Нам нужно буквально несколько строк кода для того, чтобы можно было запустить http-сервис. Но что нужно добавить, если мы хотим приготовить такое приложение в продакшн? Давайте рассмотрим это на примере сервиса, который готов к запуску в Kubernetes.


      Все шаги из этой статьи можно найти в одном теге, или вы можете следить за примерами статьи коммит за коммитом.

      Читать дальше →
      • +18
      • 12.9k
      • 6
    • Реализация поиска с использованием RxJava

      • Translation
      • Tutorial
      В данной статье будет рассмотрена оптимальная и компактная реализация поиска с использованием RxJava для Android, отсеивающая ненужные результаты и уменьшающая количество бесполезных сетевых вызовов.

      Пример поиска
      Оригинал написан 16 октября 2017. Перевод вольный.
      Читать дальше →
    • Как исправить офис открытого типа: правила библиотеки

      • Translation

      Такие офисы обычно ужасны, но есть варианты


      Об авторе: Джейсон Фрайд — основатель и исполнительный директор Basecamp



      На прошлой неделе DHH [создатель Ruby on Rails, основатель и технический директор Basecamp — прим. пер.] разнёс в пух и прах открытые офисы. Он прав. Но погодите, ведь мы сами работаем в офисе такого типа. И мы проделали достойную работу, чтобы улучшить ситуацию. Может, есть смысл поделиться опытом.
      Читать дальше →
    • Памятки по искусственному интеллекту, машинному обучению, глубокому обучению и большим данным

      • Translation


      В течение нескольких месяцев мы собирали памятки по искусственному интеллекту, которыми периодически делились с друзьями и коллегами. В последнее время сложилась целая коллекция, и мы добавили к памяткам описания и/или цитаты, чтобы было интереснее читать. А в конце вас ждёт подборка по сложности «О большое» (Big-O). Наслаждайтесь.

      UPD. Многие картинки будут читабельнее, если открыть их в отдельных вкладках или сохранить на диск.
      Читать дальше →
      • +43
      • 26.8k
      • 9
    • 4 популярные ошибки в дизайне визиток

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

        Проблемы с версткой


        Задача верстки — правильно расставить акценты на визитке. В случае с плохой версткой, получатель не поймет, куда смотреть и что читать в первую очередь.

        Кроме того, без «сетки» блоки текста нередко оказываются слишком близко друг к другу или к краям, из-за чего тексту не хватает «воздуха» и он попросту «слипается», и прочесть его становится трудно.

        image

        image
        Читать дальше →
      • Как ИИ совершает тайную революцию в медицине


          «The Artificially Intelligent Doctor Will Hear You Now»


          Нынешний этап массового интереса к нейросетям во многом связан с возможностями сеток по обработке изображений. Улучшить качество фотографии, стилизовать селфи под картину известного художника, выявить объект в кадре и запустить каскад внешних событий — все эти наглядные примеры сегодня доступны в различных продуктах: от приложения для обработки фотографий до сложной системы дорожного автопилота.


          Есть еще одна важная сфера применения нейросетей и других технологий, близких к ИИ, — это медицина. Если речь не идет об IBM Watson, то новости из сложного мира высокотехнологичной борьбы за здоровье человека редко просачиваются в СМИ. А тем временем происходит настоящая революция — оказалось, что система автоматизированной обработки изображений не только может стать мощным инструментом анализа и помощи для врача, но и в некоторых случаях заменить самого специалиста.


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

          Читать дальше →
        • Принцип работы свёрточной нейронной сети. Просто о сложном

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

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


          2D Свёрточная нейронная сеть
          Читать дальше →
        • Создание крюка-кошки в Unity. Часть 1

          • Translation
          image

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

          В первой части этого туториала мы реализуем собственную двухмерную систему крюка-кошки и научимся следующему:

          • Создавать систему прицеливания.
          • Использовать рендер линии и distance joint для создания верёвки.
          • Научим верёвку оборачиваться вокруг игровых объектов.
          • Вычислять угол качания на верёвке и добавлять силу в этом направлении.

          Примечание: этот туториал предназначен для продвинутых и опытных пользователей, и в нём не рассматриваются такие темы, как добавление компонентов, создание новых скриптов GameObject и синтаксис C#. Если вам нужно повысить навыки владения Unity, то изучите наши туториалы Getting Started with Unity и Introduction to Unity Scripting. Так как в этом туториале используется DistanceJoint2D, то стоит также просмотреть Physics Joints in Unity 2D, и уже потом вернуться к этому туториалу.
          Читать дальше →
          • +19
          • 6.6k
          • 2
        • Курс о Deep Learning на пальцах

            Я все еще не до конца понял, как так получилось, но в прошлом году я слово за слово подписался прочитать курс по Deep Learning и вот, на удивление, прочитал. Обещал — выкладываю!

            Курс не претендует на полноту, скорее это способ поиграться руками с основными областями, где deep learning устоялся как практический инструмент, и получить достаточную базу, чтобы свободно читать и понимать современные статьи.

            Материалы курса были опробованы на студентах кафедры АФТИ Новосибирского Государственного Университета, поэтому есть шанс, что по ним действительно можно чему-то научиться.


            Читать дальше →
          • 7 правил проектирования печатных плат

              Приветствую! В процессе обсуждения статьи товарища KSVl была озвучена необходимость небольшого пособия по проектированию печатных плат. Очень часто на хабре я вижу статьи в стиле «5 правил оформления кода» или «5 шагов к успешному проекту», то есть очень удобные собрания тезисов по определенной теме. К сожалению подобных статей по разработке электроники мало и это плохо…

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


              Читать дальше →
            • Нейросетевой синтез речи своими руками

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

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



              Я решил попробовать сделать полностью нейросетевой синтез своими руками, а заодно и поделиться с сообществом своим опытом. Что из этого получилось, можно узнать, заглянув под кат.
              Читать дальше →
            • Uber сотрудничает с НАСА по проекту создания пилотируемого такси



                На днях стало известно, что компания Uber Technologies Inc. заключила уже второе соглашение о партнерстве с Национальным управлением по аэронавтике и исследованию космического пространства США (первое касалось беспилотников, тоже воздушных). По мнению партнеров, городское воздушное движение — это революция в перемещении людей и грузов в населенных пунктах. Оно позволяет изменить образ жизни людей примерно так, как это сделали смартфоны.

                Проект получил название UberAIR. По словам разработчиков летающего такси, компания планирует продемонстрировать свою технологию общественности в 2020 году, а к коммерческой эксплуатации нового типа транспортного средства партнеры приступят к 2024 году. Для того, чтобы летающие такси могли приземляться в черте города, будут созданы Skyports — нечто вроде вертолетных площадок. С вертолетами летающие такси роднит то, что и те, и другие транспортные средства в состоянии осуществлять вертикальный взлет и посадку.
                Читать дальше →
              • Shopping Actions: Google бросает вызов Amazon

                • Translation


                На фоне недавних новостей — предсказания Джека Дорси, что Биткоин лет через десять станет единственной цифровой валютой и обвала акций Facebook после нового скандала об утечке данных из соцсети — вы вполне могли пропустить объявление Google о запуске программы Shopping Actions.

                Shopping Actions — это тревожный звонок для Amazon: проект дает потребителям доступ к универсальной корзине, заполнять которую можно товарами со всей сети прямо во время их поиска в Google, с удобной возможностью оформления покупки. Оплата происходит с использованием платежных данных, сохраненных в системе Google, что стало возможно благодаря апгрейду Google Pay в прошлом месяце. Покупатели смогут пользоваться в том числе и платежными данными, сохраненными на сайте мерчанта при просмотре сайта в браузере Chrome.

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

                Программа также предоставляет участвующим в ней ритейлерам возможность закрепить свои предложения в результатах поисковой выдачи по тем или иным запросам в виде спонсируемых публикаций.
                Читать дальше →
              • Learn OpenGL. Урок 5.1 — Продвинутое освещение. Модель Блинна-Фонга

                OGL3

                Продвинутое освещение


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


                Читать дальше →
              • Исследование ставит под вопрос нейрогенез у взрослых людей

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


                  Читать дальше →
                • Чем распознавать на мобильных платформах?

                    image

                    image

                    Как-то так вышло что на какой бы я бирже фриланса не начинал первый проект — всегда с распознаванием, поэтому в создании приложух с подобным функционалом у меня много опыта, которым я хотел сегодня с вами поделиться.
                    Читать дальше →
                    • +16
                    • 13.3k
                    • 9