Опять задвигаем Android подальше. Сегодня у нас прекрасное введение в blockchain. Чувак записал скринкаст, в котором он по шагам объясняет, как это дело работает и почему. Если давно хотели узнать, как же оно устроено, то начните с этой ссылочки. Если хотя бы примерно понимаете, что такое хеш-функция, то точно всё поймёте. Никакой магии. Поиграться с демкой автора можно там же. Пис 👍🏻
https://anders.com/blockchain/
https://anders.com/blockchain/
Andersbrownworth
Blockchain Demo
A live blockchain demo in a browser.
Обновилась страничка с советами по Gradle на Android Developers. Чуваки добавили ещё больше рецептов по сборке Android-проектов. На самом деле, 80% всех советов - баяны, а остальные 20% почти никому не нужны, но если вы только знакомитесь с этой системой сборки, то рекомендую разобрать все пункты. Год-два назад я был бы рад иметь этот список под рукой. Пис 👊🏻
https://developer.android.com/studio/build/gradle-tips.html
https://developer.android.com/studio/build/gradle-tips.html
Небольшая статья для тех, кто не знает или подзабыл, что такое SOLID. Этим принципам кто-то уже посвящал целый цикл статей на Medium (по одной на каждую букву акронима), но мне по душе именно эта. Автор нашёл золотую середину между краткостью (прочтите статью дядюшки Боба, короче некуда) и разжёвыванием материала (по статье на букву? Серьёзно?). В общем, кратко, понятно, ёмко. Пис ✌🏻
https://android.jlelse.eu/solid-principles-the-definitive-guide-75e30a284dea
https://android.jlelse.eu/solid-principles-the-definitive-guide-75e30a284dea
Medium
SOLID Principles : The Definitive Guide
SOLID is an acronym that represents five principles very important when we develop with the OOP paradigm, in addition it is an essential…
Эта статья будет интересна в первую очередь тем, кто только начинает погружаться в Android-разработку (и ещё не прохавал, какой же это кусок параши). Речь пойдёт о своих View в Toolbar. Если вы не знаете, с чего начать, чтобы добавить нестандартное для фреймворка поведение к MenuItem в Toolbar - милости прошу. Для более прожжённых товарищей статья скорее всего интереса не представляет. Пис ✌🏻
http://blog.stablekernel.com/using-custom-views-as-menu-items
http://blog.stablekernel.com/using-custom-views-as-menu-items
Вы же помните, что Kotlin притащил нам много приятных конструкций, в том числе и из мира функционального программирования? Так вот, автор этой статьи пытается объяснить концепцию монад при помощи Kotlin. В принципе, на Java тоже можно было бы наколбасить нечто подобное, но смотреть на это было бы больно. Мне кажется, что полностью понять монады из этой статьи ни у кого не получится, но зато получится сформировать в голове некоторый образ о том, что это такое, и почему это не страшно. А если тема заинтересует, то советую смотреть на более функциональные языки, не пожалеете. Пис 👇🏻
https://blog.exallium.com/exploring-an-either-monad-in-kotlin-92618b9c4623
https://blog.exallium.com/exploring-an-either-monad-in-kotlin-92618b9c4623
Thoughts from Exallium
Exploring an Either Monad in Kotlin
Recently, I was enlightened. I finally, fully grasped how the Either Monad works. At least I think I do. In this post, I am looking to…
Братка, умеешь пользоваться git? Знаешь как он работает? Уверен?
В общем, сегодня прекрасная статья, от чувака, который пилил свою реализацию git на JS. Не переживай, про JS в статье ни слова. Зато автор пошагово объясняет, что происходит в папочке .git, когда ты выполняешь те или иные команды. Мне статья люто нравится. Несмотря на её внушительный размер, читать определённо стоит. И желательно вдумчиво. Понимания прибавится, гарантирую. Пис ✊🏻
https://codewords.recurse.com/issues/two/git-from-the-inside-out
В общем, сегодня прекрасная статья, от чувака, который пилил свою реализацию git на JS. Не переживай, про JS в статье ни слова. Зато автор пошагово объясняет, что происходит в папочке .git, когда ты выполняешь те или иные команды. Мне статья люто нравится. Несмотря на её внушительный размер, читать определённо стоит. И желательно вдумчиво. Понимания прибавится, гарантирую. Пис ✊🏻
https://codewords.recurse.com/issues/two/git-from-the-inside-out
Статья с громким названием "Singletons Must Die" от однго очень неоднозначного персонажа - Егора Бугаенко. Чувак пишет о том, как избавиться от синглтонов и приводит ссылки, где можно почитать, почему синглтоны - зло. Мне кажется (хотя кого это волнует, так ведь?), что человек он очень интересный. Я не буду высказывать своего мнения о его предложениях и идеях, но очень тебе советую самому сформировать мнение о нём:
- полистать его блог - http://www.yegor256.com/
- послушать его выступления на конференциях (например, это: https://youtu.be/cGcCcxx4xrg)
- послушать выпуски с ним из подкаста "Разбор полётов" (http://razbor-poletov.com/2016/03/episode-105.html)
Пис 👇🏻
http://www.yegor256.com/2016/06/27/singletons-must-die.html
- полистать его блог - http://www.yegor256.com/
- послушать его выступления на конференциях (например, это: https://youtu.be/cGcCcxx4xrg)
- послушать выпуски с ним из подкаста "Разбор полётов" (http://razbor-poletov.com/2016/03/episode-105.html)
Пис 👇🏻
http://www.yegor256.com/2016/06/27/singletons-must-die.html
Короткая статья про JIT оптимизации. Автор приводит простенькие примеры для нескольких техник. Как по мне, немного отдает буллшитом, но если ты ещё ничего не слышал про такого рода оптимизации, то с неё вполне можно начать. Пис ✊🏻
https://dzone.com/articles/java-on-steroids-5-super-useful-jit-optimization-t
https://dzone.com/articles/java-on-steroids-5-super-useful-jit-optimization-t
dzone.com
Java on Steroids: 5 Super Useful JIT Optimization Techniques - DZone Java
If you want to get the most out of your code, you need to get familiar with your JIT compiler and how it interacts with Assembly.
Новый плагин от Intellij, который позволяет по-всякому разглядывать состояние хипа, когда процесс подключен к дебаггеру. Больше ни слова. Все подробно описано в статье по ссылке. Пис 🤞🏻
https://medium.com/@m_mirhoseini/a-useful-memory-debugger-plugin-for-android-studio-2d9d95bddc24#.tgmaco6ei
https://medium.com/@m_mirhoseini/a-useful-memory-debugger-plugin-for-android-studio-2d9d95bddc24#.tgmaco6ei
Hacker Noon
A useful memory debugger plugin for Android Studio
During my recent R&D activities looking for new tools to improve my development experience and making life easier with Android Studio, I…
Я тут это, почитать принёс. Если ты ещё не работал с Dagger 2 и пока только обдумываешь, тащить ли его в проект, то сегодняшняя статья будет как нельзя кстати. Janishar Ali (не хочу коверкать его имя, переводя на наш православный) в стиле "а что если ...?" разбирает возможные ошибки при работе с фреймворком. Мне его подход очень понравился - именно такого рода штуки укрепляют понимание рабочего инструмента. Более того, в начале статьи автор приводит ссылки на две своих предыдущих - в них он разбирает зачем Dagger 2 нужен и показывает некоторые его части. Короче говоря, рекомендую для ознакомления. Пис 👌🏻
https://blog.mindorks.com/android-dagger2-critical-things-to-know-before-you-implement-275663aecc3e
https://blog.mindorks.com/android-dagger2-critical-things-to-know-before-you-implement-275663aecc3e
Janisharali
Android Dagger 2: Critical things to know before you implement.
Dagger 2 in a Dependency Injection framework for Android. I assume the reader is familiar with Dagger and it’s usage pattern in Android for the sake of this Article.
Ещё одна приблуда для поиска уязвимостей в Android приложениях. Зовётся это дело marvin. Умеет как в статический анализ, так и в динамический на эмуляторе. И ко всему этому безобразию ещё и прикручена веб-мордочка. Используй с умом. Пис ☝🏻️
https://github.com/programa-stic/marvin-django/blob/master/README_en.md
https://github.com/programa-stic/marvin-django/blob/master/README_en.md
GitHub
programa-stic/marvin-django
Marvin-django is the UI/database part of the Marvin project. Marvin is a platform for security analysis of Android apps. - programa-stic/marvin-django
Ещё один подгончик. Биомасса вокруг как никогда озадачена анонимностью, шифрованием и вот этим всем. Поэтому лови руководство по шифрованию данных при помощи GPG от (неожиданно) NASA. Пис 🤘🏻
https://www.nas.nasa.gov/hecc/support/kb/using-gpg-to-encrypt-your-data_242.html
https://www.nas.nasa.gov/hecc/support/kb/using-gpg-to-encrypt-your-data_242.html
www.nas.nasa.gov
Using GPG to Encrypt Your Data - HECC Knowledge Base
Use GPG with the cipher AES256, without the --armour option, and with compression to encrypt your files during inter-host transfers.
Выше был пост об ошибках, которые допускают при работе с Dagger 2, а сейчас мне прилетело видео о распространённых ошибках в RxJava. Сам ещё не успел посмотреть, но пробежал глазами по кадрам. Выглядит многообещающе. Думаю, годнота. Пис 🖖🏻
https://youtu.be/QdmkXL7XikQ
https://youtu.be/QdmkXL7XikQ
YouTube
Droidcon SF - Common RxJava Mistakes
Droidcon SF 2016
Organized by: Apps4All (http://apps4all.io)
Content Curated By: touchlab (http://www.touchlab.co)
RxJava is a powerful framework, but there are a lot of common issues developers run into when getting started with it. We'll go over a bunch…
Organized by: Apps4All (http://apps4all.io)
Content Curated By: touchlab (http://www.touchlab.co)
RxJava is a powerful framework, but there are a lot of common issues developers run into when getting started with it. We'll go over a bunch…
Опа! Нажористый подгон от romannurik. Обновилась Android Asset Studio. Пользуюсь ей уже несколько лет, до сих пор работает лучше, чем все остальное. Да-да, даже лучше, чем New -> *Asset в Android Studio. Пользуйся на здоровье. Пис 🤘🏻
http://romannurik.github.io/AndroidAssetStudio/
http://romannurik.github.io/AndroidAssetStudio/
Про асинхронный инфлэйт вьюшек я услышал довольно давно, а вот попробовать до сих пор не успел. И вот сейчас наткнулся на отложенную статью, где разбирается, как оно выглядит. Конечно, есть ряд ограничений - некоторые вьюшки заинфлейтить асинхронно нельзя, и тут очень радует, что в таком случае всё фоллбэчится на стандартный механизм. Хотя, безусловно, как оно работает на самом деле надо проверять, сразу тащить в прод я бы побоялся. Ох уж это написание английских слов кириллицей. Пис 🖐🏻
https://medium.com/@lupajz/asynchronous-layout-inflation-7cbca2653bf
https://medium.com/@lupajz/asynchronous-layout-inflation-7cbca2653bf
Medium
Asynchronous layout inflation
With recent release of Android Support Library, revision 24 Google developers baked into v4 library a new helper class for asynchronous…
У меня всегда в подкорке потихоньку жил страх появления программирующих программ. Тут не совсем оно, но близко. Exynap - плагин для Android Studio, который умеет втыкать в код готовые сниппеты из своей базы. Штука, как по мне, довольно спорная. Если раньше мы наблюдали StackOverflow Driven Development, то теперь некоторые персонажи не будут думать совсем. С другой стороны, когда ты можешь написать любой из этих сниппетов одной рукой и с завязанными глазами, не тратить на это драгоценное время довольно приятно. Из явных недостатков - работает эта балалайка только на macOS (по непонятным мне причинам). Используй с умом. Пис 👊🏻
http://exynap.com/
http://exynap.com/
Exynap
Exynap
Exynap is an Android Studio plugin which helps you find and implement the code you require in an instant
Внезапная новость одной строкой: Google купил Fabric. Монополия ещё и в крашрепортинге? Пис 🖕🏻
https://fabric.io/blog/fabric-joins-google
https://fabric.io/blog/fabric-joins-google
Firebase
Firebase is Google's mobile platform that helps you quickly develop high-quality apps and grow your business.
Случайно наткнулся на крайне детальное сравнение кучи VPN-сервисов. Причём про некоторые характеристики я впервые слышу, что замечательно по нескольким причинам. Ну, во-первых, это красиво. Во-вторых, это лишний повод разобраться получше в устройстве VPN. И, наконец, можно подобрать себе наиболее подходящий сервис. Пис 👌🏻
https://thatoneprivacysite.net/vpn-comparison-chart/
https://thatoneprivacysite.net/vpn-comparison-chart/
Глубокая статья на XDA про новую файловую систему SDCardFS, которую пилят гуглеры. Чувак из команды, которая её разрабатывает, нескромно характеризует её как "the next big thing". Ну что же, посмотрим, что получится в итоге. Читается непросто, но когда было легко? Так ведь? Пис ✌🏻
https://www.xda-developers.com/diving-into-sdcardfs-how-googles-fuse-replacement-will-reduce-io-overhead/
https://www.xda-developers.com/diving-into-sdcardfs-how-googles-fuse-replacement-will-reduce-io-overhead/
XDA Developers
Diving into SDCardFS: How Google’s FUSE Replacement Will Reduce I/O Overhead
An in-depth exploration into SDCardFS, Google's replacement for FUSE, and how its implementation will reduce I/O overhead.
Снова тянемся за шляпой - кто за белой, кто за чёрной. Нашёл репозиторий, в котором собирают инфу по безопасности в Android (несмотря на то, что её на самом-то деле и нет). В папочке vulns, например, можно найти чеклист для своего приложения или ссылочку на другой репозиторий с реализациями эксплоитов. Там всего очень много, всё предельно интересное, и автор говорит, что ещё кучу всего добавит. Ну что ж, будем ждать. Будь осторожен. Пис 🖕🏻
https://github.com/doridori/Android-Security-Reference
https://github.com/doridori/Android-Security-Reference
GitHub
GitHub - doridori/Android-Security-Reference: A W.I.P Android Security Ref
A W.I.P Android Security Ref. Contribute to doridori/Android-Security-Reference development by creating an account on GitHub.
Небольшая подборка советов для Android-разработчиков по работе с терминалом. Несколько баянов, несколько находок, в целом прекрасно. Особенно обрати внимание на dryrun. Пис 🤙🏻
https://medium.com/@cesarmcferreira/mastering-the-terminal-side-of-android-development-e7520466c521
https://medium.com/@cesarmcferreira/mastering-the-terminal-side-of-android-development-e7520466c521
Medium
Mastering the Terminal side of Android development
As a terminal aficionado I’ve been wanting to write about this topic for awhile. Besides being cool, knowing how to use the terminal simply…