Skip to content
2024
21.02
Hopelessness Some things are initially designed in such a way that they're impossible to remake later. At the same time they increasingly negatively affect the product or …
13.02
Material 3 Compose Release Interesting, does anything bother anyone there? 😰 https://material.io/blog/material-3-compose-1-2
12.02
What Every Android Developer Should Have in Their GitHub? Android Weekly brought nonsense again. Right as the first item in today's newsletter. The post talks about how in the competitive world of Android development …
31.01
Force Updates Literally yesterday I saw the Prompt users to update button in Google Play console, today the news went out. In connection with this, several thoughts. The …
30.01
Neural Networks and Content I can't shake the feeling that a bunch of content is already written by neural networks. And the more it's a regular and non-author topic, the higher the …
29.01
Changelogs and Google Master class on changelogs from Google. Honestly, I came here specifically to find out if they fixed my specific crash. As you understand, I didn't find out.
21.01
About Mock Interviews A couple years ago, when I was preparing for all sorts of interviews, I liked to watch public interviews from YouTube. Now I can't stand them. I always catch …
06.01
Deprecated Experimental Compose Reddit brought something wonderful again. This is actual material3 code. Here you see a unique Deprecated Experimental function. The pinnacle of Googleness. I …
2023
27.12
A Regular Day Spent about five hours trying to figure out why the project won't build. In one branch it built fine, worked calmly in another, added one not very big commit on …
22.12
Authentication Advice for the young: don't touch anything related to authentication or app startup. Because any tiny mistake is potentially thousands of people who will have …
15.12
Paid Plugins At work we have GitLab, so I pay for the Gitlab Merge Requests plugin as much as a buck and a half per month to do code reviews like a human from the IDE, not …
24.11
Integrations Read an article from Spotify where they measure app size right in MRs. The approach, though not new, is very cool and reasonable. They use some 3rd party thing …
28.10
Google DevFest Almaty 2023 I had a significant event here today, I spoke live for the first time in my life to a fairly large audience. Very interesting spectrum of impressions. From the …
03.10
Kotlin What pisses me off about Kotlin is how often I see people trying with all their might not to use standard language features and replace them with their own …
30.08
Wrong Abstractions A fairly beaten topic, of course, but periodically I want to remind myself and people that wrong abstractions are absolute evil. One of the key moments in your …
23.08
Clean Architecture for Android By 2023, the words Clean Architecture already make me shake for some reason. Mainly, of course, this is a consequence of how they turned into a cargo cult for a …
12.08
Content I've already mentioned this topic in passing. I came to the conclusion that the most useful and interesting content for me is authored content, behind which …
10.08
Roadmaps Now for every specialty there's a ton of roadmaps. And many fall for them, thinking they need to "know" all this to work in that specialty and not be …
28.07
Sync with Settings Repository Android Studio updates - endless potential for new posts. Although, to be fair, this time it's more about IDEA. We'll see over time what else they broke there, …
15.07
Retrofit We somehow missed the moment that everyone's beloved Retrofit hasn't been released for more than three years, since May 2020. Maintainers in discussions say …
13.07
Crash-free An interesting thought came to mind that I've never thought about from this angle. Crash-free rate over time without any external factors will generally get …
10.07
A Bug Story Once a year or two, I regularly encounter some incredible detective stories at work, after which you wonder how all this didn't crash earlier. I want to share …
28.06
Breaking the Monolith Step by Step Let's talk about modularization. It's probably been a hot topic in the context of Android development for about five years now. During this time, I've had the …
22.06
UI State and Sealed Classes In one of the Android chats I saw a question: what's better for screen state: sealed or data class? And there were answers like it depends. Usually I answer all …
19.06
Builder Design Pattern in Kotlin (Bad Advice) The regular section "someone is wrong on the internet" returns. We're now talking about an article of the same name on Medium, which the author first …
11.06
Best Practices Recently I've been walking much more. To not waste time, I listen to talks from bookmarks from various conferences in headphones. It's funny that the more …
28.05
Nothing to Write About Most often, it seems to me that I'm not doing anything complex. I'm not a pioneer and I'm not making any discoveries. My approach is that I just walk along …
29.04
Mistakes of the Past Perhaps the most interesting part of working on any large and fairly old project is watching how the mistakes of the past are doing. In such a historical …
25.04
Interface Driven Development and ChatGPT Found another absolutely wonderful use case for ChatGPT. I was sitting today, doing code review, as usual. I feel something's not right, some solution turned …
14.04
Again (Material 3) Android Studio Flamingo came out stable today. I was browsing materials about this, particularly What's New in Android Studio - Flamingo on YouTube. I'm …
05.04
Paging Library Perhaps not a very popular opinion, but there's no worse library from Google, among current ones. This is a great example of a situation when you needed to stop …
31.03
Consequences (Jetifier) Imagine you're a big company. You made a bunch of vital libraries that all depend on each other. And the whole world depends on them, without exaggeration. Then …
26.03
Ability to Stop in Time One of the most difficult things at work is understanding when you need to stop. When you're solving some problem, you want to solve it everywhere at once. When …
14.03
Scroll Remember there were scrollbars in applications? On desktops and in browsers they're still almost everywhere, but in mobile they're on the verge of extinction. I …
09.03
About ChatGPT As soon as the public API for ChatGPT appeared, I immediately ran and connected it to my Telegram bot, fortunately all the foundation for this was already laid …
06.03
Funny Stories from Ancient Times (About enum) Once upon a time, when we didn't have all those Kotlins yet, and we wrote for Android in Java, there were talks that you can't use enums, even though they …
03.03
Flavors aka an Easy Way to Shoot Yourself in the Foot We have flavors in Android. This is a mechanism for separating builds. Everyone knows this is for separating all those dev/qa/prod, gms/hms, free/paid, …
21.02
Turbulence Today someone answered my Android question on StackOverflow. I checked when I asked it and it turns out it was December 2010, like over 12 years ago. Just in …
17.02
Write, Delete There's nothing more pleasant than deleting code. But only if it's not the code you just wrote, and then your manager told you that it's all no longer needed, …
13.02
Project Navigator One of the greatest mysteries of Android Studio for me is that by default, the project tree panel has Android mode selected. This is when it displays not the …
08.02
Running to Stay in Place Over the weekend, I remembered that I have a pet project - a Telegram bot written in Kotlin. Small one, a few thousand lines. My sandbox where I play with …
07.02
Unpopular Opinion About Emulator I don't like the idea of showing the emulator or screen mirror inside Android Studio. And in general all ideas to stuff into it everything that used to be …
20.01
LeetCode Came in Handy Right in real life, yeah. I was writing a Gradle task that finds the longest path from the root app-module to the farthest module it depends on through the …
09.01
Samples Quite often I browse code of some small Android applications that are posted on Reddit, in articles, in weekly newsletters, and wherever they catch my eye. …
02.01
Modern Stack A big problem of the industry is that a generation of developers has grown up who think that everyone should know the "modern stack". And now they're …
2022
17.12
Publishing detekt reports to Gitlab In my previous posts on code quality, I wrote about my experience on how we could set up detekt to get code quality reports on Android projects and about my …
17.12
We Need More Standards In general, the world of static analysis reports is wonderful. Just a reference example of xkcd/927. There are more and more of these report standards every …
09.12
DevOps For some reason I get wildly excited about being able to take and deploy something on a remote computer, and even add some automation to this process. It's like …
03.12
Too Smart GitLab CI Regular column where I complain about how things work. I had to set up CI on GitLab and I dove into it quite deeply in recent weeks. Thoughts. If we discard the …
10.11
Kotlin Extensions for Android Projects (don't do this) I came across a Habr article about "experience using one of Kotlin's main features" and, as usual, I got triggered. https://habr.com/ru/post/697908/ …