• Material Design: на Луну и обратно

    • Tutorial
    “Это унылое диалоговое окно действительно нужно?”



    В этой статье я изложил главные принципы Material Design и дал советы по их воплощению. Текст написан по следам мастер-класса для разработчиков, который мы, Роботы, устраивали совместно с российским офисом Google (Think Mobile).


    Когда-то все продукты Google выглядели по-разному плохо. Даже один продукт на разных платформах выглядел неконсистентно.

    Все стало меняться в 2011 году, когда в Google начали усиленно работать над унификацией визуальной части экосистемы своих продуктов и назвали все это Project Kennedy.

    При чем тут Кеннеди?
    Легенда такова: президент Кеннеди инициировал программу полёта человека на Луну (если верить, что этот полёт когда-либо был). А большой начальник в Google Ларри Пейдж исповедует принцип, что продукты нет смысла улучшать на 10% — они должны быть в 10 раз лучше, чем у конкурентов. Если уж запускать продукт, то сразу на Луну. Вот и здесь было решено круто всё переделать.

    Читать дальше →
  • WWDC 2014. Срез второго дня

      Программа второго дня WWDC 2014 состояла в основном из сессий (What's New in Xcode 6, What's New in Core Audio, Designing Accessories for iOS and OS X, Introducing HealthKit, Building Apps for Enterprise and Education и т.д.), также были лаборатории (Swift Lab, Installer Lab, User Interface Design Lab, File Systems Lab и т.д.) и ивенты (например, Stump the Experts — мастодонтов Apple троллили разработчики).

      С подробностями некоторых мероприятий — Артур Сахаров, Redmadrobot.


      Читать дальше →
    • Трогательный дизайн: введение

        Мы любим смартфоны и приложения для них, поэтому любовь эта иногда выливается в текст. Этот текст написан креативный директором REDMADROBOT Максом Десятых и призван помочь начинающим и продолжающим дизайнерам интерфейсов мобильных приложений задуматься над важными вещами. Далее — прямая речь.

        image
        Readability for iPhone


        Дизайн приложений — это куда больше, чем красиво расставленные пиксели. Дизайн — про то, что делает приложение, как делает и какое ощущение от него остается у пользователя.
        Читать дальше →
      • Приложение для Habrahabr, v1.0

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

          image

          картинка кликабельна



          В первый день релиза приложение было доступно только в Российском AppStore, вчера добавили еще несколько стран. Теперь его можно скачивать и с US-аккаунтов.

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

          Итак, дорогие хабраюзеры. Если вы уже успели воспользоваться приложением для Habrahabr, то у вас, наверняка, есть свои комментарии и советы, как сделать приложение еще лучше. Все найденные баги, возможные улучшения и пожелания оставляйте в комментариях к топику, или присылайте на нашу хабрапочту. Отзывы в AppStore тоже читаем (привет, scroll89).

          Читать дальше →
        • WWDC 2014. Новости среды

            В третий день WWDC были более технические и менее «интригующие» сессии (Integrating Swift with Objective-C, What's New in LLVM, Cross Platform Nearby Networking, Creating Custom iOS User Interfaces и т.д.), прошли мастер-классы по использованию компонентов и погружению в Swift.

            Отчет Артура mc_murphy Сахарова, Redmadrobot


            Читать дальше →
            • +42
            • 15,9k
            • 5
          • Обновления Material Design: как жить дальше

            • Tutorial
            Могут ли кнопки быть шестиугольными?
            image

            Google I/O 2018 оставила огромное количество материала для осмысления. Что нового? Как жить дальше? Устарело ли моё приложение? Могут ли кнопки быть шестиугольными? Дизайнеры снова больше не нужны? Осмысливать приятней не спеша и маленькими порциями. Эта порция — про дизайн.
            Читать дальше →
          • Лицензия на вождение болида, или почему приложения должны быть Single-Activity

              image


              На AppsConf 2018, которая прошла 8-9 октября, я выступил с докладом про создание андроид-приложений целиком в одном Activity. Хотя тема известная, существует много предубеждений относительно такого выбора — переполненный зал и количество вопросов после выступления тому подтверждение. Чтобы не ждать видеозаписи, я решил сделать статью с расшифровкой выступления.



              О чем я расскажу


              1. Почему и зачем надо переходить на Single-Activity
              2. Универсальный подход для решения задач, которые вы привыкли решать на нескольких Activity
              3. Примеры стандартных бизнес задач
              4. Узкие места, где обычно подпирают код, а не делают все честно
              Читать дальше →
            • Организация личной базы знаний в Evernote

                knowlege_system

                Я познакомился с Evernote лет пять назад, но первое время активно не использовал — у меня там были бессистемные блокноты для записи идей, документы, какие-то редкие фотографии, да и все. Задачи, которые я контролировал, хранил в Things, а контент — в Evernote. Примерно четыре года назад я начал формировать из контента личную базу знаний, раз в полгода её модифицируя. И вот уже как год я вношу только минорные изменения в структуру. Вот, что у меня получилось:
                Читать дальше →
              • Apple Watch: как сделать приложение под часы и не облажаться

                • Tutorial
                Сегодня стартовали официальные продажи Apple Watch. 90% умопомрачительных концептов приложений под них, которые можно найти в Сети, нереализуемы — тем, кто знаком с гайдлайнами Apple, это хорошо известно. О том, что реализовать на часах все же можно и как это лучше сделать с точки зрения разработки и дизайна — под хабракатом.
                Такие желанные
                Читать дальше →
                • +34
                • 37,7k
                • 6
              • Инструменты Apple для машинного обучения


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


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

                  Читать дальше →
                • iOS 10: Notification Content Extension

                  • Tutorial

                  В этой статье речь пойдет о новой возможности в iOS 10 — Notification Content Extension. Это разновидность расширения, которая позволяет отображать пользователю собственный интерфейс при взаимодействии с уведомлением (remote или local). И отдельно коснемся того, что можно, а что нельзя делать в этом новом расширении — в том числе насколько оно гибко настраивается и конфигурируется.
                  Читать дальше →
                  • +31
                  • 13,1k
                  • 2
                • Дорабатываем HTTP-кэширование в Django

                    image
                    В этой заметке речь пойдет о HTTP-кэшировании (перевод) и его использовании совместно с фреймворком Django. Мало кто будет спорить с утверждением о том, что применение HTTP-кэширования — очень правильная и разумная практика разработки веб-приложений. Однако именно в этом функционале Django содержит ряд ошибок и неточностей, которые очень сильно ограничивают практическую пользу от такого подхода. Например, до сих пор актуален баг #15855, заведенный в апреле 2011 года, который может приводить к очень неприятным ошибкам в работе веб-приложения.

                    Middleware vs. explicit decorator


                    В Django есть два стандартных способа включения HTTP-кэширования: через активацию UpdateCacheMiddleware/FetchFromCacheMiddleware, либо через декорирование функции представления при помощи декоратора cache_page. У первого способа имеется один существенный недостаток — он включает HTTP-кэширование для всех без исключения представлений (view) проекта, зато второй содержит тот самый баг #15855. Если бы не этот баг, то вариант с использованием cache_page являлся бы более предпочтительным. Плюс, такой вариант хорошо согласуется с важнейшим из постулатов The Zen of Python, что «явное лучше неявного».
                    Читать дальше →
                  • Runscope: удобный тул для тестирования API

                    • Tutorial

                    Back-end не всегда функционирует так идеально, как указано в API-спецификации. Например, кто-нибудь забывает внести обязательный параметр в JSON-строку выдачи или вместо «0» решает вписать null. Если такие данные проникают в мобильное приложение, последствия могут быть самые неприятные.
                    Сегодня я расскажу об инструменте, который используется для выявления таких случаев. Это Runscope.
                    Читать дальше →
                    • +31
                    • 29,3k
                    • 8
                  • Docker swarm mode (режим роя)


                      На хабре уже писали про Docker swarm mode (режим роя), который является новой фичей версии 1.12. Данная опция внесла небольшую путаницу в головы тех, кто знаком с отдельно стоящей реализацией Docker Swarm имевшей распространение ранее и не отличавшейся удобством настройки и использования. Однако, после добавления Swarm в коробку с Docker все стало намного проще, очевиднее и функциональнее.

                      Подробнее о том, как устроен новый кластер Docker контейнеров с точки зрения пользователя, а также о простом и удобном способе разворачивания сервисов Docker на произвольной инфраструктуре далее под катом.
                      Читать дальше →
                    • Как мы обновили и переписали iOS-приложение банка «Открытие»: кейс

                      • Tutorial
                      В жизненном цикле мобильного продукта рано или поздно наступает момент, когда нужно радикально обновиться. Потому что за время, прошедшее с запуска, выросли требования бизнеса и ожидания клиентов, изменились возможности платформы и средства разработки — и обновления становится невозможно реализовать путем “косметического ремонта”. В мире мобильных приложений жизненный цикл ПО составляет 2-3 года против 10-15 лет в обычном Enterprise-сегменте. Для нас с командой “Открытие Digital” момент радикального обновления мобильного банка настал в конце прошлого года.


                      Читать дальше →
                    • Gradle: 5 полезностей для разработчика

                      • Tutorial
                      Привет, Хабр! Настало время, когда можно сказать, что «new build system» Gradle является стандартом отрасли Android-разработки. Инструмент сделан настолько просто и удобно, что большинство разработчиков не испытает трудностей, даже не зная, как он устроен, и какие дополнительные возможности в нём есть — возникающие проблемы легко решаются с помощью 5 минут на StackOverflow, путем копирования «магического кода» в конфигурационные файлы. Возможно, в том числе из-за этого не все разработчики изучают Gradle детально и не знают о многих его полезных возможностях, которые существенно облегчают жизнь.


                      Сегодня рассмотрим пять таких полезностей
                    • Текущая разработка Kotlin


                        На прошлой неделе при поддержке Redmadrobot SPB в рамках SPB Kotlin User Group прошла встреча со Станиславом Ерохиным, разработчиком из JetBrains. На встрече он поделился информацией о разрабатываемых возможностях следующей мажорной версии Котлина (под номером 1.3).


                        В этой статье мы подытожим полученный материал, расскажем о планах.

                        Читать дальше →
                        • +28
                        • 12,7k
                        • 9
                      • WWDC 2014. Первые впечатления очевидца

                          Из Сан-Франциско, что в солнечной Калифорнии, с первыми итогами WWDC 2014 — Артур Сахаров, технический директор Redmadrobot.

                          O WWDC

                          Очень много народу ночевало перед Keynote у Moscone Center на матрасах, чтобы пройти в зал первыми. В очереди на вход я видел чувака, который так нервничал в предвкушении шоу, что у него аж руки тряслись — он кексом в рот не попадал. Те, кто приезжает на WWDC в десятый раз, говорят, что неизменно ангажированы каждый год. Все разработчики между собой общаются, это настоящее комьюнити. И потом такой драйв — он мотивирует на разработку.



                          Зал на Keynote был битком — 6 тысяч разработчиков со всего мира хлопали разом. Презентация была исполнена невероятно круто с технической точки зрения — про некоторые технические решения вообще непонятно, как они были сделаны. Да, там все рассчитано, все устройства подключены к каким-то внутренним системам, чтобы работали уведомления и пр. Но это очень круто.

                          Кук после презентации убежал за кулисы, все 6 тысяч разработчиков хотели бы его поймать…

                          О ПРОДУКТАХ

                          — Я могу сказать так — эта конференции оправдала свое название. Это было шоу для разработчиков и Apple подготовила все свои решения именно для них. Никакого нового железа, вот этого всего — но из существующих устройств Apple выжала тьму функций. Тот же самый TouchID — его заново заюзали и сделали доступным для приложений. Это огромный скачок.
                          Первый день окончился, разработчики прямо сейчас говорят: «They write on Twitter that developers are disappointed. Bullshit, developers are super excited, gadget freaks are the only ones who are disappointed!».

                          Читать дальше →
                        • От идеи до релиза. Manifest

                            manifest

                            За 6 месяцев из PDF—презентации получился продукт. С привлечением посевных инвестиций, драйвом командной работы, путешествием в Нью-Йорк, изучением английского права, сложностями, открытиями, разочарованиями и вдохновениями. Вот так создавался Manifest.

                            Читать дальше →
                          • iOS 10: новое в создании анимаций

                            • Tutorial


                            Не так давно на WWDC 2016 был анонсирован обновленный интерфейс работы с интерактивными анимациями в iOS 10: теперь у разработчиков появился гибкий инструмент их создания, управления и модификации. В этой статье речь пойдет о том, какие произошли изменения и что из себя представляет новое API.
                            Читать дальше →
                            • +24
                            • 16,1k
                            • 2

                          Самое читаемое