git commit -m "Learn to write better commit messages"
1. Отделяйте пустой строкой заголовок коммита от его описания
2. В заголовке используйте до 50 символов
3. Начинайте заголовок с большой буквы
4. Не ставьте точку в конце заголовка
5. Пишите заголовок в повелительном наклонении
6. Строка описания должна занимать около 72 символов
7. В описании расскажите, что изменилось и почему
https://chris.beams.io/posts/git-commit/
1. Отделяйте пустой строкой заголовок коммита от его описания
2. В заголовке используйте до 50 символов
3. Начинайте заголовок с большой буквы
4. Не ставьте точку в конце заголовка
5. Пишите заголовок в повелительном наклонении
6. Строка описания должна занимать около 72 символов
7. В описании расскажите, что изменилось и почему
https://chris.beams.io/posts/git-commit/
📺 Тестируем Android-приложения с помощью Mockito
Отличное видео про тестирование, в котором доступно рассказывается о фичах фреймворка Mockito (site.mockito.org). Очень советую новичкам. Смотрите и применяйте на практике ;)
https://www.youtube.com/watch?v=DJDBl0vURD4
Отличное видео про тестирование, в котором доступно рассказывается о фичах фреймворка Mockito (site.mockito.org). Очень советую новичкам. Смотрите и применяйте на практике ;)
https://www.youtube.com/watch?v=DJDBl0vURD4
YouTube
Testing made sweet with a Mockito by Jeroen Mols
Subscribe to Devoxx on YouTube @ https://bit.ly/devoxx-youtube
Like Devoxx on Facebook @ https://www.facebook.com/devoxxcom
Follow Devoxx on Twitter @ https://twitter.com/devoxx
The past year has been huge for Android testing: Testing support lib, fast…
Like Devoxx on Facebook @ https://www.facebook.com/devoxxcom
Follow Devoxx on Twitter @ https://twitter.com/devoxx
The past year has been huge for Android testing: Testing support lib, fast…
Еще о Mockito – тестирование различных вариантов ответа сервера при помощи ArgumentCaptor
https://mdswanson.com/blog/2013/12/16/reliable-android-http-testing-with-retrofit-and-mockito.html
https://mdswanson.com/blog/2013/12/16/reliable-android-http-testing-with-retrofit-and-mockito.html
Matt Swanson’s Blog
Reliable API testing for Android with Retrofit and Mockito
Testing HTTP calls that interact with an API have always been a tricky beast. Hitting a real web server comes with a host of issues: brittle tests (test fail because your internet or the API is down), slow tests (HTTP calls can take several seconds each)…
Недовольный пользователь iOS напоминает о важности постоянства в рамках операционной системы и продукта в целом (независимо от платформы).
Будьте внимательны к деталям, придерживайтесь распространенных дизайн-паттернов и помните, что ваши интерфейсы должны быть понятны даже тем, кому за 70.
Всем продуктивной недели! 💪
https://medium.com/startup-grind/the-sins-of-our-uis-908cd99940d9#.lw2d9jc04
Будьте внимательны к деталям, придерживайтесь распространенных дизайн-паттернов и помните, что ваши интерфейсы должны быть понятны даже тем, кому за 70.
Всем продуктивной недели! 💪
https://medium.com/startup-grind/the-sins-of-our-uis-908cd99940d9#.lw2d9jc04
Medium
The sins of our UIs
If you can’t explain it to a 70-year-old, you‘ve got work to do.
Интересный рассказ о разработке кастомного View в виде пузырьков (как в Apple Music). Автор использовал Kotlin и OpenGL, а также физический движок, благодаря которому объекты ведут себя как настоящие.
Статья
Библиотека на GitHub (там же есть live-demo и ссылка на Google Play)
Статья
Библиотека на GitHub (там же есть live-demo и ссылка на Google Play)
Medium
How to Create a Bubble Selection Animation on Android
Authors: Irina Galata, Android Developer; Yulia Serbenenko, UI/UX designer.
Начинающий дизайнер написал об одной из главных проблем Material Design – создании приложений "под копирку", и привел пару примеров хорошего дизайна материальных приложений (спойлер: Dropbox и Airbnb).
Не стоит слепо следовать гайдлайнам и использовать только предоставленные Google иконки, шрифты и цвета. Чем больше уникальности вы привнесете в свой дизайн, тем лучше для вас и для всей индустрии. Get creative! 🚀
https://uxdesign.cc/ive-grown-to-hate-material-design-5a6d9fc9bc00#.odguz85li
Не стоит слепо следовать гайдлайнам и использовать только предоставленные Google иконки, шрифты и цвета. Чем больше уникальности вы привнесете в свой дизайн, тем лучше для вас и для всей индустрии. Get creative! 🚀
https://uxdesign.cc/ive-grown-to-hate-material-design-5a6d9fc9bc00#.odguz85li
Medium
Overcoming Material Design.
Why I’ve developed a negative relationship with the design language, and why you soon will too — that is if it hasn’t happened to you yet.
5 фишек Kotlin, которые сделают ваш код чище и производительнее
Именованные companion object, составные функции и не только.
https://hackernoon.com/5-small-things-you-probably-dont-know-about-kotlin-255261940de6
Именованные companion object, составные функции и не только.
https://hackernoon.com/5-small-things-you-probably-dont-know-about-kotlin-255261940de6
Hacker Noon
5 small things you probably don’t know about Kotlin
There are known knowns. These are things we know that we know. There are known unknowns. That is to say, there are things that we know we…
📝 Как писать release notes для App Store и Google Play
Шикарная статья, под завязку набитая советами и примерами.
https://uxdesign.cc/design-better-release-notes-3e8c8c785231#.dvjoh23v1
Шикарная статья, под завязку набитая советами и примерами.
https://uxdesign.cc/design-better-release-notes-3e8c8c785231#.dvjoh23v1
Medium
As a Designer I want better Release Notes
Simple visual design, applied to plain text release notes
🔮 Anticipatory Design: How to Create Magical User Experiences
Мнение о том, что современные сервисы должны приносить максимум пользы при минимуме усилий со стороны пользователя. В основном речь идет о том, чтобы предугадывать данные, которые часто приходится вводить вручную. Автор считает, что будущее за интерфейсами, которые работают "как магия" и снимают человека большую часть нагрузки. Об этом же шла речь в одной из лекций школы дизайна Яндекса – под капотом хорошего сервиса должны быть крутые технологии.
В комментариях говорят, что настройка искусственного интеллекта – слишком тяжёлая задача, особенно для небольшой компании. Они правы, но идею автора при желании можно применять и не обладая огромными объёмами данных, на которых будут обучаться сложные нейронные сети. Даже если вы просто запишите в базу данных деталь, которая окажется полезной в будущем (например, последний выбранный способ оплаты товара), это уже избавит пользователей от необходимости лишний раз печатать и кликать.
Будем надеяться, что использование искусственного интеллекта скоро станет легкой и привычной вещью. Благодаря этому интерфейсы станут еще незаметнее и проще. Как говорится, the best interface is no interface. 🙌
Мнение о том, что современные сервисы должны приносить максимум пользы при минимуме усилий со стороны пользователя. В основном речь идет о том, чтобы предугадывать данные, которые часто приходится вводить вручную. Автор считает, что будущее за интерфейсами, которые работают "как магия" и снимают человека большую часть нагрузки. Об этом же шла речь в одной из лекций школы дизайна Яндекса – под капотом хорошего сервиса должны быть крутые технологии.
В комментариях говорят, что настройка искусственного интеллекта – слишком тяжёлая задача, особенно для небольшой компании. Они правы, но идею автора при желании можно применять и не обладая огромными объёмами данных, на которых будут обучаться сложные нейронные сети. Даже если вы просто запишите в базу данных деталь, которая окажется полезной в будущем (например, последний выбранный способ оплаты товара), это уже избавит пользователей от необходимости лишний раз печатать и кликать.
Будем надеяться, что использование искусственного интеллекта скоро станет легкой и привычной вещью. Благодаря этому интерфейсы станут еще незаметнее и проще. Как говорится, the best interface is no interface. 🙌
UX Planet
Anticipatory Design: How to Create Magical User Experiences
by Miklos Philips
Forwarded from ПЕНТХАУС • Since 2016
Третий год я кручу в голове и на встречах с концепцией инвестиций в мобайл. Недавно решил подойти к вопросу прагматично, опереться на пересечения ключевых трендов и методов работы. Что мы имеем сегодня:
Тренды рынков/сегментов/подходов:
– Мобайл растет. При этом в самом начале пути своего по монетизации
– Фримиум самый простой формат выхода на деньги
– Аудитории могут масштабироватья в мобайле до миллионов за месяцы даже без существенных вложений в рекламу
– Вирал – основа хорошего роста
– Успешным может стать даже то, что не имеет сложного бэк-энда
– Часто успешными становят те, кто смог красиво и понятно упаковать какой-то повседневный оффлайн
Методы работы:
– Нужно постоянно экспериментировать с продуктами, щупать пользователя, смотреть реакцию
– Еще больше надо экспериментировать с маркетингом – трафик наша кровь
– Все должно быть не просто посчитано, а выведено на дашборд в реальном времени
– Вирал – не миф, его можно настроить, но еще лучше заложить в ДНК продукта
– Мобильный продукт бессмертен – есть аппки на iOS, которым по 5 лет, не теряющие своей актуальности даже без обновлений
– В мобайле процессинг сделать проще – встроенные покупки решают кучу проблем, люди доверяют
– Локализация приложений и софтлончи в отдельных регионах дают возможность гибко тестировать рынки
Размышлений там еще на три тома...
И вот к чему я пришел: в ближайшие 5 лет точно, особенно выгодными будут инвестиции в мобильные приложения, которые уже запущены, но пока не могут качественно показать А) Рост, Б) Выручку.
Как показывает практика, "запилить аппку" сейчас может уже школьник, но понять потребности людей, решить их за деньги, так еще и смасштабировать – это доступно единицам в нашей индустрии.
Теперь про бизнес: $100K на аппку – это более чем достаточно, чтобы дать ей пинок в плане маркетинга и выручки. Взлетит, можно добавлять, а если нет – то ничего страшного. В правильных руках $100K в мобайле – это 50-500K инсталяций – более чем репрезентативно.
За $10 миллионов можно запустить 100 приложений. А если еще использовать мультипликатор трафика как KetchApp, когда все друг друга по кругу рекламируют, то можно усилить эффект от вложений в разы.
100 приложений – это шикарная диверсификация.
Модель моя не нова, это обычный паблишер/дистрибютор, который по рынку как свинья по лесу в поисках трюфеля.
Вопрос один – какую долю брать у разработчиков приложения за эти самые $100K и экспертизу в продвижении и монетизации?
Тренды рынков/сегментов/подходов:
– Мобайл растет. При этом в самом начале пути своего по монетизации
– Фримиум самый простой формат выхода на деньги
– Аудитории могут масштабироватья в мобайле до миллионов за месяцы даже без существенных вложений в рекламу
– Вирал – основа хорошего роста
– Успешным может стать даже то, что не имеет сложного бэк-энда
– Часто успешными становят те, кто смог красиво и понятно упаковать какой-то повседневный оффлайн
Методы работы:
– Нужно постоянно экспериментировать с продуктами, щупать пользователя, смотреть реакцию
– Еще больше надо экспериментировать с маркетингом – трафик наша кровь
– Все должно быть не просто посчитано, а выведено на дашборд в реальном времени
– Вирал – не миф, его можно настроить, но еще лучше заложить в ДНК продукта
– Мобильный продукт бессмертен – есть аппки на iOS, которым по 5 лет, не теряющие своей актуальности даже без обновлений
– В мобайле процессинг сделать проще – встроенные покупки решают кучу проблем, люди доверяют
– Локализация приложений и софтлончи в отдельных регионах дают возможность гибко тестировать рынки
Размышлений там еще на три тома...
И вот к чему я пришел: в ближайшие 5 лет точно, особенно выгодными будут инвестиции в мобильные приложения, которые уже запущены, но пока не могут качественно показать А) Рост, Б) Выручку.
Как показывает практика, "запилить аппку" сейчас может уже школьник, но понять потребности людей, решить их за деньги, так еще и смасштабировать – это доступно единицам в нашей индустрии.
Теперь про бизнес: $100K на аппку – это более чем достаточно, чтобы дать ей пинок в плане маркетинга и выручки. Взлетит, можно добавлять, а если нет – то ничего страшного. В правильных руках $100K в мобайле – это 50-500K инсталяций – более чем репрезентативно.
За $10 миллионов можно запустить 100 приложений. А если еще использовать мультипликатор трафика как KetchApp, когда все друг друга по кругу рекламируют, то можно усилить эффект от вложений в разы.
100 приложений – это шикарная диверсификация.
Модель моя не нова, это обычный паблишер/дистрибютор, который по рынку как свинья по лесу в поисках трюфеля.
Вопрос один – какую долю брать у разработчиков приложения за эти самые $100K и экспертизу в продвижении и монетизации?
🏀 Android-разработчик Saúl Molinero начал серию постов, в которых он воссоздает дизайн приложений с Dribbble и MaterialUp. В первой статье можно почитать о создании Bottom Sheet с парой интересных анимаций.
http://saulmm.github.io/from-design-to-android-part1
http://saulmm.github.io/from-design-to-android-part1
🔪 Custom Scopes для компонентов в Dagger 2
Очень понятное объяснение с примерами и схемами. Наверное, даже лучшая статья в интернете на эту тему.
А с основами использования Dagger 2 можно ознакомиться в первой статье того же автора.
Очень понятное объяснение с примерами и схемами. Наверное, даже лучшая статья в интернете на эту тему.
А с основами использования Dagger 2 можно ознакомиться в первой статье того же автора.
Habr
Dagger 2. Часть вторая. Custom scopes, Component dependencies, Subcomponents
Всем привет! Продолжаем наш цикл статей о Dagger 2. Если вы еще не ознакомились с первой частью, немедленно сделайте это :) Большое спасибо за отзывы и комментарии по первой части. В данной статье...
🔄 Эксперт Google по Android-разработке рассказывает, как спроектировать приложение таким образом, чтобы пользователям не приходилось видеть индикаторы загрузки и надпись "Нет соединения".
https://medium.com/@yonatanvlevin/offline-support-try-again-later-no-more-afc33eba79dc
https://medium.com/@yonatanvlevin/offline-support-try-again-later-no-more-afc33eba79dc
Medium
Offline support: “Try again, later”, no more.
I have the privilege of living in a country where 4G network and strong Wifi is almost everywhere — at home, at work, even at the basement…
Привет всем, кто подписался на канал! 👋
Очень приятно, что еще вчера утром вас было всего 20 человек, а сейчас в 12 раз больше. Теперь все серьезно :)
Давайте знакомиться. Меня зовут Владимир Конденко. Я студент, все свободное время посвящаю дизайну и разработке приложений. У меня есть гитхаб (который скоро пополнится парой интересных проектов) и аккаунт на UpLabs, который пока что служит заменой Dribbble.
Я завел этот канал, чтобы делиться полезными вещами, которые я нахожу ежедневно в погоне за знаниями и опытом. Надеюсь, вам они тоже принесут пользу.
Если у вас есть какие-то вопросы или предложения, добро пожаловать в личку (@kondenko) – я буду рад пообщаться.
Всем хороших выходных!
Очень приятно, что еще вчера утром вас было всего 20 человек, а сейчас в 12 раз больше. Теперь все серьезно :)
Давайте знакомиться. Меня зовут Владимир Конденко. Я студент, все свободное время посвящаю дизайну и разработке приложений. У меня есть гитхаб (который скоро пополнится парой интересных проектов) и аккаунт на UpLabs, который пока что служит заменой Dribbble.
Я завел этот канал, чтобы делиться полезными вещами, которые я нахожу ежедневно в погоне за знаниями и опытом. Надеюсь, вам они тоже принесут пользу.
Если у вас есть какие-то вопросы или предложения, добро пожаловать в личку (@kondenko) – я буду рад пообщаться.
Всем хороших выходных!
🚦Тестирование MVP-архитектуры с помощью Mockito и Robolectric
Пошаговые инструкции по написанию тестов для каждого слоя с примерами и ключевыми моментами.
https://medium.com/@Miqubel/testing-android-mvp-aa0de6e165e4#.fr7jeh9sz
Пошаговые инструкции по написанию тестов для каждого слоя с примерами и ключевыми моментами.
https://medium.com/@Miqubel/testing-android-mvp-aa0de6e165e4#.fr7jeh9sz
Medium
Testing Android MVP
100% Coverage with Mockito and Robolectric
✏ 8 советов по написанию текстов для интерфейсов
Недавно я писал о том, как оформлять тексты. Теперь речь пойдет о смысловой составляющей:
1. Краткость и простота – ваши друзья.
2. Используйте одинаковую терминологию – у вас не должно быть написано "Забронировать столик" на сайте и "Зарезервировать столик" в приложении.
3. Давайте почитать текст коллегам. Будет полезно, если его прочитают люди, для которых язык текста не является родным.
4. Текст должен "продолжать работать" при переводе на другие языки.
5. Доверяйте инстинктам. Не нравится – перепишите.
6. Сотрудничайте с менеджерами и дизайнерами.
7. Научитесь основам работы с дизайнерским софтом, чтобы смотреть, как выглядит и читается то, что вы пишете, в интерфейсе.
8. Не ждите, пока дизайн будет закончен и утверждён.
https://uxdesign.cc/8-lessons-in-ux-writing-36f0e73e2971#.qz5x4p1g0
Недавно я писал о том, как оформлять тексты. Теперь речь пойдет о смысловой составляющей:
1. Краткость и простота – ваши друзья.
2. Используйте одинаковую терминологию – у вас не должно быть написано "Забронировать столик" на сайте и "Зарезервировать столик" в приложении.
3. Давайте почитать текст коллегам. Будет полезно, если его прочитают люди, для которых язык текста не является родным.
4. Текст должен "продолжать работать" при переводе на другие языки.
5. Доверяйте инстинктам. Не нравится – перепишите.
6. Сотрудничайте с менеджерами и дизайнерами.
7. Научитесь основам работы с дизайнерским софтом, чтобы смотреть, как выглядит и читается то, что вы пишете, в интерфейсе.
8. Не ждите, пока дизайн будет закончен и утверждён.
https://uxdesign.cc/8-lessons-in-ux-writing-36f0e73e2971#.qz5x4p1g0
Medium
8 lessons in UX writing
I’m a UX writer, though one could also call me a product copywriter or a content designer. We go by various names and often wear a fair…
🆕 Вышел Android O Developer Preview
Что нового:
1. Адаптивные иконки с масками и анимациями
2. Фреймворк для автозаполнения полей в формах
3. Picture-in-picture
4. Категории для уведомлений
https://developer.android.com/preview/index.html
Что нового:
1. Адаптивные иконки с масками и анимациями
2. Фреймворк для автозаполнения полей в формах
3. Picture-in-picture
4. Категории для уведомлений
https://developer.android.com/preview/index.html
🔐 Как хранить ключи в open-source приложениях так, чтобы они не попали в открытый доступ.
https://android.jlelse.eu/keep-your-keys-outside-manifest-and-gradle-ba44110bafca
https://android.jlelse.eu/keep-your-keys-outside-manifest-and-gradle-ba44110bafca
AndroidPub
Keep your keys outside Manifest and Gradle
Often, we’ll need API keys for our App, e.g. Fabric, Facebook, GoogleMap etc.
☕ Делаем свой код читабельнее, производительнее и стабильнее с помощью приёмов из книги Effective Java.
https://medium.com/rocknnull/effective-java-for-android-cheatsheet-bf4e3433889a#.hxjrgyas7
https://medium.com/rocknnull/effective-java-for-android-cheatsheet-bf4e3433889a#.hxjrgyas7
Medium
Effective Java for Android (cheatsheet).
Effective Java is considered by many, one of the most important books for writing Java code that is maintainable in the long run and…