• Создание мультяшного шейдера воды для веба. Часть 2

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

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

    • Добавил модели маяка и осьминога.
    • Добавил модель земли с цветом #FFA457.
    • Добавил камере цвет неба #6CC8FF.
    • Добавил в сцену цвет подсветки #FFC480 (эти параметры можно найти в настройках сцены).

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

    Читать дальше →
  • Где и как изучать машинное обучение?

    • Tutorial

    Всем привет!


    Ни для кого не секрет, что интерес к машинному обучению и искусственному интеллекту растет в лучшем случае по экспоненте. Тем временем мой Яндекс Диск превратился в огромную свалку пейперс, а закладки в Google Chrome превратились в список, длина которого стремится к бесконечности с каждым днем. Таким образом, дабы упростить жизнь себе и вам, решил структурировать информацию и дать множество ссылок на интересные ресурсы, которые изучал я и которые рекомендую изучать вам, если вы только вначале пути (буду пополнять список постоянно).

    Путь для развития новичка я вижу примерно так:

    Untitled_presentation
    Читать дальше →
  • Универсальный API для получения информации по чекам

      Привет жителям Хабра.

      В данной статье хотелось бы рассказать про API для получения чеков, которое нам не предоставила всеми любимая ФНС.

      Когда только появились QR-коды на чеках я подумал «Вау, как круто! Ты сканируешь код и видишь если не всю инфу по чеку, то ссылку на него». И какого же было мое разочарование, когда просканировав такой код я увидел что-то вроде

      t=20180518T220500&s=975.88&fn=8710000101125654&i=99456&fp=1250448795&n=1

      Но расстраиваться я не стал и подумал, что ФНС позаботилась о нас и предоставила API для получения такой информации. Погуглив некоторое время я понял, что ФНС нам предоставила только мобильное приложение для проверки чека и просмотра той информации, что поступила к ним от магазина.
      Читать дальше →
    • Cжатие и улучшение рукописных конспектов

      • Перевод
      Я написал программу для очистки отсканированных конспектов с одновременным уменьшением размера файла.

      Исходное изображение и результат:


      Слева: исходный скан на 300 DPI, 7,2 МБ PNG / 790 КБ JPG. Справа: результат с тем же разрешением, 121 КБ PNG [1]

      Примечание: описанный здесь процесс более-менее совпадает с работой приложения Office Lens. Есть другие аналогичные программы. Я не утверждаю, что придумал нечто радикальное новое — это просто моя реализация полезного инструмента.

      Если торопитесь, просто посмотрите репозиторий GitHub или перейдите в раздел результатов, где можно поиграться с интерактивными 3D-диаграммами цветовых кластеров.
      Читать дальше →
    • Пользовательские агрегатные и оконные функции в PostgreSQL и Oracle


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

        Надо признать, что собственные агрегатные и оконные функции встречается довольно редко. Оконные функции вообще по каким-то причинам традиционно относят к разряду «продвинутого» SQL и считают сложными для понимания и освоения. Тут бы разобраться с теми функциями, которые уже имеются в СУБД!

        Зачем тогда вообще вникать в этот вопрос? Могу назвать несколько причин:

        • Хотя оконные функции объективно сложнее обычных агрегатных, но ничего запредельного в них нет; это абсолютно необходимый инструмент для SQL-разработчика. А создание собственной оконной функции, даже совсем простой, позволяет лучше разобраться с тем, как работают стандартные.
        • Оконные и агрегатные функции — прекрасный способ совместить процедурную обработку с декларативной логикой. В некоторых ситуациях получается выполнить сложные действия, оставаясь в рамках парадигмы решения задачи одним SQL-запросом.
        • Да и просто интересная тема, а уж тем более интересно сравнить две системы.

        Пример, на котором будем тренироваться — подсчет среднего, аналог стандартной функции avg для типа numeric (number в Oracle). Мы напишем такую функцию и посмотрим, как она работает в агрегатном и оконном режимах и может ли она вычисляться несколькими параллельными процессами. А в заключение поглядим на пример из реальной жизни.
        Читать дальше →
      • Информационная безопасность банковских безналичных платежей. Часть 3 — Формирование требований к системе защиты




          В предыдущих частях исследования мы обсудили экономические основы и IT-инфраструктуру банковских безналичных платежей. В этой части речь пойдет о формировании требований к создаваемой системе информационной безопасности (ИБ).

          Далее мы рассмотрим:

          • роль обеспечения безопасности в жизни коммерческой организации;
          • место службы информационной безопасности в структуре менеджмента организации;
          • практические аспекты обеспечения безопасности;
          • применение теории управления рисками в ИБ;
          • основные угрозы и потенциальный ущерб от их реализации;
          • состав обязательных требований, предъявляемых к системе ИБ банковских безналичных платежей.
          Читать дальше →
        • В macOS High Sierra обнаружились «Черные дыры»



            Живешь себе живешь, репу не чешешь, в ус не дуешь. И тут внезапно тебе нужно переезжать с обветшавшего iPhone 6 на новенький iPhone X. А поскольку вся твоя жизнь за минувшие семь лет хранится в фоточках и видосиках старого смартфона, терять это добро тебе очень не хочется. И вот ты бэкапишь свое хозяйство через iTunes на Mac, пытаешься переехать на новую «балалайку» и вдруг оказывается, что места для бэкапа нового телефона на жестком диске твоего компьютера уже нет. Ты начинаешь судорожно расчищать авгиевы конюшни дисковое пространство, но результата «нема». Причем удаление «левых файлов» и очистка корзины ни к чему не приводит. Вот такой триллер разыгрался недавно с вице-президентом Parallels Николаем Добровольским. Под катом детективная история про обнаружение им «черной дыры» в macOS High Sierra, поиски истины и счастливый конец, которому могли бы позавидовать главные герои кинофильма «Титаник».
            Читать дальше →
          • Удаление фона с помощью глубокого обучения

            • Перевод


            Перевод Background removal with deep learning.

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

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

            Мы поставили перед собой следующие цели:

            1. Улучшить наши навыки работы с глубоким обучением.
            2. Совершенствовать наши навыки внедрения продуктов, основанных на ИИ.
            3. Создать полезный продукт с перспективами на рынке.
            4. Весело провести время (и помочь весело провести время нашим пользователям).
            5. Обменяться опытом.
            Читать дальше →
            • +21
            • 9,5k
            • 5
          • Ох уж эти модальные окна или почему я полюбил render-функции в VueJs

            • Tutorial
            Привет всем!
            Моя первая публикация прошла с неприятным осадком. Я обещал исправить это недоразумение и на ваш суд представляю свою первую статью-урок по VueJs. Надеюсь, она окажется полезной. Мыслей много, опыта тоже немало. Всю жизнь учусь по чужим статьям, урокам. Пришло время тоже делиться знаниями.
            А будем мы творить модальные окна. Да опять они. Но не такие простые, как описаны в первой моей (не моей) публикации.

            Много уже их создано для Vue. Пользовался всякими. И видимо, когда достигаешь какого-то определенного уровня владения инструментом (в данном случае Vue), сразу хочется сделать велосипед, но конечно со своими прибамбасами, типа, чтобы круче всех и т.д. И я не стал исключением из правил.

            Из всех доступных модальных компонентов, использовал в основном этот — Vuedals.
            Но решил я его проапгрейдить. В принципе от основы остался только EventBus и взаимодействие событий связанных с открытием-закрытием окон. Основной компонент переписан и стал оберткой-контейнером и добавлен новый компонент — само модальное окно.
            Но обо всем по порядку. И статья получится очень немаленькая, кто осилит, тот красавчик :)
            Читать дальше →
          • Организация системы мониторинга

              Мониторинг — это главное, что есть у админа. Админы нужны для мониторинга, а мониторинг нужен для админов.



              За последние несколько лет поменялась сама парадигма мониторинга. Новая эра уже наступила, и если сейчас вы мониторите инфраструктуру как набор серверов — вы не мониторите почти ничего. Потому что теперь "инфраструктура" — это многоуровневая архитектура, и для мониторинга каждого уровня есть свои инструменты.


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


              У нас на поддержке около пяти тысяч серверов, в самых разных конфигурациях: от систем из трех серверов с кастомными докеровскими сетками, до больших проектов с сотнями серверов в Kubernetes. И за всем этим надо как-то следить, вовремя понимать, что что-то сломалось и быстро чинить. Для этого надо понять что такое мониторинг, как он строится в современных реалиях, как его проектировать и что он должен делать. Об этом и хотелось бы рассказать.

              Читать дальше →