Pas de Code
76 subscribers
106 photos
1 file
402 links
What I cannot create, I do not understand.

DM: @alexey_mileev
Original channel in RU: @devballet
Twitter: twitter.com/pasdecode_
Download Telegram
Android Gradle Plugin update: new APIs and, wait for it... new docs published!
 
#gradle #agp #build
setCurrentScreen method in Firebase Analytics is now deprecated. You're free to track the screen_view event whenever you like.
 
#google #firebase #analytics
Google introduces a replacement for SharedPreferences - DataStore.
This thing can handle errors, knows how to work in a non-blocking way and even has transactions! Moreover, now you can store protobuf-serialized typed objects.
Looks very promising, I'm looking forward to a stable release.
 
#preferences #datastore #protobuf
A nice tutorial on how to build your very own daemon. I was surprised to learn that single fork() invokation is not enough.
 
#unix #daemon #c
An investigation post: how much memory do objects really hold on Android? Primary conclusion - Android heap dumps give us the real size of instances.
 
#art #memory #cpp
In Android 11 ART can update class layout on-the-fly. It can be used with features like Apply Changes in Android Studio. This thing is called Structural Class Redefinition and you'll find a bunch of interesting details in the post.
 
#art #studio #ide
After a long day of fighting RecyclerView and UI thread it’s always nice to just sit, relax, and learn how to build an async ViewHolder creator using Kotlin Channels.

#recycler #async #channel
Working with timestamps and timezones is almost always a hassle. Moreover, SQLite doesn’t have a dedicated type to store such values. However, there are some built-in functions to simplify such tasks. In this post you’ll find a good example of using them in a real production app.

P.S. Here you’ll find a funny video about general problems with dates, time and timezones.

#sqlite #db #date
In this post you’ll learn how to apply coroutines for awaiting a layout pass completion or an animation end.

#ui #view #coroutine
If using multiple nested .copy calls on data classes is your case for whatever reason, take a look at this post, Arrow-kt will probably make your life a bit easier.

#arrowkt #fp #library
In this post you’ll find a nice explanation of how tail call optimization works. Surprise-surprise, the optmization also works fine with non-recursive functions.

#compiler #optimize #recursion
Draft JEP on Primitive Objects.
It’s something like an immutable class without identity. Copy of such an object is an exact copy of that original object. And there are plans on treating int, boolean, etc. as primitive objects. We’re waiting for you, List<int>!

#java #jep #primitive
Contempt Culture
I wonder, are there similar attitudes in the world of MDs? Do oncologists despise otolaryngologists? Do otolaryngologists in turn disdain proctologists? Does the whole bunch of them disrespect therapists?
All right, then. Who will patch my butt up after the explosion that usually happens when I spend a day fighting Android SDK?

#community #culture
@dsvoronin has recently shared “The Tragedy of systemd” talk by Benno Rice (one of FreeBSD contributors). systemd is a controversial piece of tech. In his talk Benno tried to dig deeper into the history of systemd, what it is criticized for, and why it’s not all that bad.
The talk itself is great by the way. I’ll put some quotes into the discussions.

#linux #systemd #talk