Классный тред на SO о том, почему у чувака быстрее обрабатывается упорядоченный массив.
#cpp
https://stackoverflow.com/questions/11227809/why-is-it-faster-to-process-a-sorted-array-than-an-unsorted-array
#cpp
https://stackoverflow.com/questions/11227809/why-is-it-faster-to-process-a-sorted-array-than-an-unsorted-array
Stack Overflow
Why is processing a sorted array faster than processing an unsorted array?
In this C++ code, sorting the data (before the timed region) makes the primary loop ~6x faster:
#include <algorithm>
#include <ctime>
#include <iostream>
int main()
{
// Gene...
#include <algorithm>
#include <ctime>
#include <iostream>
int main()
{
// Gene...
Внезапно в Architecture Components добавили Paging Library - название вроде бы говорит само за себя.
#pagination #architecture #components
https://developer.android.com/topic/libraries/architecture/paging.html
#pagination #architecture #components
https://developer.android.com/topic/libraries/architecture/paging.html
5 правил программирования (скорее оптимизации, на мой взгляд) от Роба Пайка (один из чуваков, который пилит golang).
#rule
http://users.ece.utexas.edu/~adnan/pike.html
#rule
http://users.ece.utexas.edu/~adnan/pike.html
Внезапный и большой оффтоп: статья Розенберга на Medium про Telegram. По ссылочке можно найти сразу несколько примечательных штук. Во-первых, немного описывается, и притом прекрасно, жизнь школьников/студентов-математиков. Во-вторых, рассказ о жизни VK и Telegram. И, наконец, рассказ о ссоре между Розенбергом и Н. Дуровым. Это историческое дерьмо, в некотором смысле, так что крайне рекомендую прочитать.
#telegram #durov #rozenberg
https://medium.com/@anton.rozenberg/friendship-betrayal-claims-3f395bcc95fa
#telegram #durov #rozenberg
https://medium.com/@anton.rozenberg/friendship-betrayal-claims-3f395bcc95fa
Medium
КОТ ДУРОВА или ИСТОРИЯ О ТОМ, КАК ПАВЕЛ ДУРОВ ТРЕБУЕТ ОТ МЕНЯ 100 000 000 В СУДЕ
Об иске на 100 миллионов рублей за указание места работы на Фейсбуке я подробно расскажу ниже. Пока же наберитесь терпения и прочитайте…
И вдогоночку перешлю вкуснятину из другого канала. Прошу прощения за мемчики 🙃
Довольно длинная статья (Instapaper оценил в 18 минут, сам я не засекал), название которой говорит само за себя: "Что каждый разработчик должен знать про поиск".
#search
https://medium.com/startup-grind/what-every-software-engineer-should-know-about-search-27d1df99f80d
#search
https://medium.com/startup-grind/what-every-software-engineer-should-know-about-search-27d1df99f80d
Medium
What every software engineer should know about search
Want to build or improve a search experience? Start here.
Об использовании SortedList из Support-библиотеки для получения ништяков, которые раньше предоставлял DiffUtil. Интересная штука, посмотри.
#recycler #supportlib #diffutil
https://android.jlelse.eu/android-sortedlist-explained-2def504e46d7
#recycler #supportlib #diffutil
https://android.jlelse.eu/android-sortedlist-explained-2def504e46d7
AndroidPub
Android SortedList Explained
If you want to be good android developer, you shouldn’t call notifyDataSetChanged() whenever your list is changed. It is really costly. I…
Немного устаревшая новость, но у меня только сейчас руки дошли: Google показал Google Play App Signing - балалайка, которая может управлять (по заверениям гугла, безопасно, что дальше некуда) нашими ключами для подписи APK.
#google #play #signing
https://support.google.com/googleplay/android-developer/answer/7384423
#google #play #signing
https://support.google.com/googleplay/android-developer/answer/7384423
Google
Use Play App Signing - Play Console Help
With Play App Signing, Google manages and protects your app's signing key for you and uses it to sign optimized distribution APKs that are generated from your app bundles. Play App Signing stores your
В этой статье автор постулирует свой подход к изучению Vim. И мне нравится этот подход. Разве что с его взглядами на преимущества Vim перед другими редакторами я не совсем согласен, но так и не про то статья писалась.
#vim
https://medium.com/@peterxjang/how-to-learn-vim-a-four-week-plan-cd8b376a9b85
#vim
https://medium.com/@peterxjang/how-to-learn-vim-a-four-week-plan-cd8b376a9b85
Medium
How To Learn Vim: A Four Week Plan
Vim is a command line text editor that is notorious for being hard to learn (the running joke is to generate a truly random string, put a…
Небольшая статейка, в которой показывается, что можно делать со скрытым buildSrc проектом внутри Gradle. Например, подписывать к проекту таски и плагины. Или вынести в него все версии зависимостей.
#gradle #build
https://zeroturnaround.com/rebellabs/using-buildsrc-for-custom-logic-in-gradle-builds/
#gradle #build
https://zeroturnaround.com/rebellabs/using-buildsrc-for-custom-logic-in-gradle-builds/
zeroturnaround.com
Using buildSrc for custom logic in Gradle builds
We explore how to add custom logic to your Gradle builds with the buildSrc dir. How to write your build code in Java or Groovy, cover it with unit-test.
Фигуры, которые более круги, чем настоящие круги. Квадраты, которые и не квадраты вовсе, но выглядят такими для наших глаз. Некоторые трюки с визуальным весом элементов и иконок. Хорошая статья про оптические эффекты в интерфейсах.
#design #ui
https://medium.muz.li/optical-effects-9fca82b4cd9a
#design #ui
https://medium.muz.li/optical-effects-9fca82b4cd9a
Medium
Optical effects in user interfaces
How to make optically balanced icons, correct shapes alignment, and perfect corner rounding
Слушайте, братцы. Тут @istima прислал новость о новом релизе android-job библиотеки от Evernote. Скажите, а почему это вообще существует? Вроде бы есть Firebase JobDispatcher, который тоже совместим со старыми версиями ОС. API у android-job с виду поприятнее, но не то чтобы они сильно отличались - один хрен, по большому счёту. Кто-нибудь пользовался обеими, сравнивал? Может быть есть, что сказать по теме? Я открыт к новым знаниям: пиши @alexey_mileev.
#library #jobscheduler
https://blog.evernote.com/tech/2017/10/06/announcing-android-job-library-1-2-0/
https://github.com/firebase/firebase-jobdispatcher-android
#library #jobscheduler
https://blog.evernote.com/tech/2017/10/06/announcing-android-job-library-1-2-0/
https://github.com/firebase/firebase-jobdispatcher-android
Evernote Tech Blog
Announcing android-job library 1.2.0
Background services became on Android Oreo even more challenging. We are releasing version 1.2.0 of android-job, a unified job library for Android, which helps dealing with this pain.
Ага, @kondenko указал на табличку, в которой расписана разница. Спасибо!
#library #jobscheduler
https://github.com/firebase/firebase-jobdispatcher-android#comparison-to-other-libraries
#library #jobscheduler
https://github.com/firebase/firebase-jobdispatcher-android#comparison-to-other-libraries
Далеко не самая практичная, но очень забавная статья про то, насколько сильно можно ужать APK, чтобы он всё ещё работал. Более того, в ней есть несколько полезных трюков с тулингом и немного кишочков, которые все мы так любим.
#apk #signing #proguard #tool
https://fractalwrench.co.uk/posts/playing-apk-golf-how-low-can-an-android-app-go/
#apk #signing #proguard #tool
https://fractalwrench.co.uk/posts/playing-apk-golf-how-low-can-an-android-app-go/
Знаешь, есть такая утилитка в Unix-терминалах - yes. Идея простая - просто вечно печатает ‘y’ или то, что укажешь, чтобы не приходилось вводить это руками, когда что-то устанавливаешь. Так вот, казалось бы, что тут сложного. Обычный while (true) с принтом всё решит. Но не всё так просто. И из статьи по ссылке узнаешь почему.
Однако, я всё-таки не понимаю, неужели действительно так важно, чтобы вывод ‘y’ происходил со скоростью гигабитов (!!!) в секунду? Ну не бывает же таких программ, которым нужно так много согласий. Зачем тогда так заморачиваться?
#cli #linux #unix
http://matthias-endler.de/2017/yes/
Однако, я всё-таки не понимаю, неужели действительно так важно, чтобы вывод ‘y’ происходил со скоростью гигабитов (!!!) в секунду? Ну не бывает же таких программ, которым нужно так много согласий. Зачем тогда так заморачиваться?
#cli #linux #unix
http://matthias-endler.de/2017/yes/
Какое-то время назад посмотрел этот доклад от Oleksandr Tolstykh про тюнинг производительности RecyclerView и надёргал интересных слайдов. А-ля шпаргалка. Сейчас наткнулся на это безобразие в заметках и решил собрать вместе в виде мини поста. Многое из этого наверное баян, но вдруг ты не видел. Доклад, кстати, очень хорош. Советую посмотреть.
#talk #recycler #performance
http://telegra.ph/RecyclerView-Performance-Tuning-by-Oleksandr-Tolstykh-10-13
https://youtu.be/QjFa5dEzh28
#talk #recycler #performance
http://telegra.ph/RecyclerView-Performance-Tuning-by-Oleksandr-Tolstykh-10-13
https://youtu.be/QjFa5dEzh28
Telegraph
RecyclerView Performance Tuning by Oleksandr Tolstykh
Video: https://youtu.be/QjFa5dEzh28
Тут у нас целый цикл из 7 статей: “7 грехов программиста”. Мне показалось, что там всё больше про soft skills, но читать было действительно интересно. Ссылку на каждую следующую статью можно найти в конце предыдущей, разве что для последней это правило не выполняется - её нужно руками найти в профиле автора.
#softskills
https://medium.com/russian/7-грехов-программиста-гордыня-fffd58553f8f
#softskills
https://medium.com/russian/7-грехов-программиста-гордыня-fffd58553f8f
Medium
7 грехов программиста: Гордыня
Препарируем внутреннего павлина
А тут статейка про написание неидеального кода и почему это может быть хорошо. В общем и целом, всё как всегда - не надо впадать в крайности.
#refactoring #architecture #dry
https://www.prolificinteractive.com/2017/09/06/writing-imperfect-code/
#refactoring #architecture #dry
https://www.prolificinteractive.com/2017/09/06/writing-imperfect-code/