<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Design on Pavel Korolev</title><link>https://pavelkorolev.xyz/tags/design/</link><description>Recent content in Design on Pavel Korolev</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Wed, 15 Apr 2026 19:55:12 +0500</lastBuildDate><atom:link href="https://pavelkorolev.xyz/tags/design/index.xml" rel="self" type="application/rss+xml"/><item><title>Frontend design skill and the boundaries of slop</title><link>https://pavelkorolev.xyz/blog/2026-04-15-frontend-design-skill-slop/</link><pubDate>Wed, 15 Apr 2026 19:55:12 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2026-04-15-frontend-design-skill-slop/</guid><description>&lt;p&gt;After watching yet another video about the design capabilities of neural networks, I got triggered into finally writing down a thought I had been carrying around for a while.&lt;/p&gt;</description></item><item><title>Chapter Four. App Icons</title><link>https://pavelkorolev.xyz/blog/2025-05-05-app-icons/</link><pubDate>Mon, 05 May 2025 00:00:00 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2025-05-05-app-icons/</guid><description>&lt;p&gt;&lt;img src="https://pavelkorolev.xyz/blog/2025-05-05-app-icons/photo_131@05-05-2025_15-45-15.jpg" alt="Chapter Four. App Icons" loading="lazy" decoding="async"&gt;
&lt;/p&gt;
&lt;p&gt;What could be simpler than just changing an app's icon, right? Designers draw a 1024x1024 icon with a margin, we understand that for adaptive icons we need background and foreground separately, they draw that for us too, we start preparing the icon in the project.&lt;/p&gt;
&lt;p&gt;We go to New → Image Asset in the studio, add them, look at the preview. And everything is wrong, of course. Attached a screenshot for comparison of what we got at this stage with what should be.&lt;/p&gt;</description></item><item><title>Chapter Three. Fonts</title><link>https://pavelkorolev.xyz/blog/2025-04-26-fonts/</link><pubDate>Sat, 26 Apr 2025 00:00:00 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2025-04-26-fonts/</guid><description>&lt;p&gt;Historically, Roboto was hardcoded everywhere in our project. Now, instead of it, two new typefaces appeared: one for headings, another for everything else. It would seem not much has changed. You just put the typeface file in resources and change the typefaces in Typography from the Compose theme. Well, that's what I thought, at least.&lt;/p&gt;
&lt;p&gt;I downloaded variable font files from Google Fonts, added them, specified them in the theme. And I see that everything has stuck together, letter spacing is less than needed, line height is wrong, letter weight is also off. Started debugging, made Compose previews for all weights from 100 to 1000 on top of the Figma layout and realized that the variable font just doesn't work. I mean, how doesn't it work - it works, but only as Regular (up to 500) and as Bold (above 500). Along the way, all other typeface parameters are applied incorrectly.&lt;/p&gt;</description></item><item><title>Chapter Two. Gradients</title><link>https://pavelkorolev.xyz/blog/2025-04-22-gradients/</link><pubDate>Tue, 22 Apr 2025 00:00:00 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2025-04-22-gradients/</guid><description>&lt;p&gt;An attentive viewer has probably noticed from the screenshots that our buttons are now not solid colors, but gradients. And in general, gradients are a very common thing in the new design. This isn't just changing colors anymore.&lt;/p&gt;
&lt;p&gt;In Compose, there are two main entities describing how to do any kind of fill - &lt;code&gt;Color&lt;/code&gt; and &lt;code&gt;Brush&lt;/code&gt;. The first is when you need to paint something in one color, the second is for any other case, particularly for gradients.&lt;/p&gt;</description></item><item><title>About the Redesign</title><link>https://pavelkorolev.xyz/blog/2025-04-20-redesign/</link><pubDate>Sun, 20 Apr 2025 00:00:00 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2025-04-20-redesign/</guid><description>&lt;p&gt;&lt;a href="https://play.google.com/store/apps/details?id=kz.beeline.odp"&gt;We&lt;/a&gt; launched a quite large redesign and rebranding of the &amp;quot;My Beeline&amp;quot; app to &amp;quot;Janymda&amp;quot;. If you look only at the technical side of things, it's mostly style changes, almost without touching product layout. I'll add some screenshots in the comments for context. For about three weeks, we worked synchronously, almost without being distracted by anything else. There are a lot of thoughts about this, possibly even for a series of posts. A lot of interesting specifics and impressions that I'd like to reflect on.&lt;/p&gt;</description></item><item><title>About Search</title><link>https://pavelkorolev.xyz/blog/2025-01-03-about-search/</link><pubDate>Fri, 03 Jan 2025 00:00:00 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2025-01-03-about-search/</guid><description>&lt;p&gt;Sometimes I make cautious forays out of the Google world to see what's going on with the competition. And if for some services in principle you can find a pleasant alternative, then search for me for the last fifteen years in general has been irreplaceable. But with the humanization of Google, the departure from geekiness and the constant desire to commercialize everything possible it's frankly getting worse and worse. As you understand, another attempt. 🔭&lt;/p&gt;</description></item><item><title>New Google Play Console Design</title><link>https://pavelkorolev.xyz/blog/2024-10-03-play-console-design/</link><pubDate>Thu, 03 Oct 2024 00:00:00 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2024-10-03-play-console-design/</guid><description>&lt;p&gt;Google rolled out an updated design in the console yesterday. And it's some kind of disgrace. Let's look at the new sidebar menu.&lt;/p&gt;
&lt;p&gt;The first and most wonderful thing about it - on hover a scrollbar now stably appears, which reduces the width available to content. For context, this block is fixed, you can't dynamically change its width. When the content size changes there's not always enough space for text and some items start wrapping. We'll chalk this up to the length of words in Russian, there's no such thing in English. GitLab and Telegram open in neighboring windows behave completely adequately.&lt;/p&gt;</description></item><item><title>State Problems</title><link>https://pavelkorolev.xyz/blog/2024-07-16-state-problems/</link><pubDate>Tue, 16 Jul 2024 00:00:00 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2024-07-16-state-problems/</guid><description>&lt;p&gt;I find it hard to imagine a more painful problem in modern software than how much everyone doesn't care about state preservation in applications.&lt;/p&gt;
&lt;p&gt;My expectations from the world on this issue look something like this:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;If I didn't explicitly close the application myself, but it was killed there by the system, for example, then the application should unfold as much as possible in the form that is shown in &amp;quot;recents&amp;quot;.&lt;/li&gt;
&lt;li&gt;If I closed the application myself with the back button, killed it from recents, or even rebooted, then with some chances I still want it to restore in a form as close as possible to how I remember it.&lt;/li&gt;
&lt;li&gt;And as a bonus, if I navigate through the application deeper and back, then everything happening at the current and higher navigation levels in the absolute majority of cases should remain in their places so that I can calmly return to them.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Suppose you're Instagram, Reddit, or TikTok. As a user, I scroll through your infinite feed on the main screen. Got distracted, answered a call there, or suddenly had to work in the middle of a workday while scrolling reels. And, of course, unfolding the application in about half an hour, I will never return to this state again, because you decided to dump random content on me and scroll to the very top. Literally, I see some post in the application in &amp;quot;recents&amp;quot;, I click on the application, and inside it's not there. This is some kind of disgrace. The example with feeds is probably the most illustrative. In my memory, only the Twitter application in this sense does what I expect from it: it leaves me exactly in that scroll position where I was last time. I understand everything, algorithmic feeds, pagination, all that, it's complicated, but in my worldview in projects with such a number of users and developers, this is generally a basically necessary thing.&lt;/p&gt;</description></item><item><title>Icons in fonts</title><link>https://pavelkorolev.xyz/blog/2024-04-25-font-icons/</link><pubDate>Thu, 25 Apr 2024 00:00:00 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2024-04-25-font-icons/</guid><description>&lt;p&gt;&lt;img src="https://pavelkorolev.xyz/blog/2024-04-25-font-icons/photo_82@25-04-2024_14-33-37.jpg" alt="Icons in fonts" loading="lazy" decoding="async"&gt;
&lt;/p&gt;
&lt;p&gt;I love this stuff. Thank God mobile somehow avoided this mania of stuffing icons into fonts. Although designers still mess up in Figma, and developers export incorrectly. You just have to see it and train yourself on it, there are no other options.&lt;/p&gt;</description></item><item><title>Compose and design systems</title><link>https://pavelkorolev.xyz/blog/2024-03-25-compose-design-systems/</link><pubDate>Mon, 25 Mar 2024 00:00:00 +0500</pubDate><guid>https://pavelkorolev.xyz/blog/2024-03-25-compose-design-systems/</guid><description>&lt;p&gt;And &lt;a href="https://proandroiddev.com/opinion-jetpack-compose-needs-a-design-system-layer-dc579fde79b2"&gt;this&lt;/a&gt; is a very good article, if you ignore all the author's attempts to not offend anyone with words. But those are the times nowadays.&lt;/p&gt;
&lt;p&gt;Last year we implemented a design system in Compose at our place, we continue to use and improve it, and now I can relate to a lot of this.&lt;/p&gt;
&lt;p&gt;A design system is tokens (colors, fonts...) and components (buttons, text fields...). In this sense, any project has a design system in one way or another, even if it's unsystematic 🙃.&lt;/p&gt;</description></item><item><title>Smart People Discuss UX</title><link>https://pavelkorolev.xyz/blog/2024-01-04-smart-ux/</link><pubDate>Thu, 04 Jan 2024 00:00:00 +0600</pubDate><guid>https://pavelkorolev.xyz/blog/2024-01-04-smart-ux/</guid><description>&lt;p&gt;&lt;a href="https://thinkon.mave.digital/"&gt;Birman's new podcast&lt;/a&gt; reminded me that I really love listening to smart people discuss UX. You know, that format when they say obvious things and get outraged that software doesn't work properly, and I'm like &amp;quot;yeahhh exactly, annoying&amp;quot;.&lt;/p&gt;
&lt;p&gt;Well, for example, that Apple taught everyone for years in HIG that you can't interrupt the user, you need to let them do what they came to the app for. And now at the start of their own apps they show modal &amp;quot;What's New&amp;quot; or several permission requests. For their own apps, on their own devices, yeah. 🤡&lt;/p&gt;</description></item><item><title>Press Again to Exit</title><link>https://pavelkorolev.xyz/blog/2023-10-05-one-more-to-exit/</link><pubDate>Thu, 05 Oct 2023 00:00:00 +0600</pubDate><guid>https://pavelkorolev.xyz/blog/2023-10-05-one-more-to-exit/</guid><description>&lt;p&gt;Besides PIN code screens, which I've already written about not understanding their purpose, there's one more such feature, but a bit smaller. I'm talking about when from the main app screen you try to go back, and the app double-checks with you if you're sure or not. And literally all banking apps and some other quite random ones suffer from this.&lt;/p&gt;
&lt;p&gt;The funniest thing is that it also aged poorly. For example, Tinkoff shows a toast &amp;quot;press again&amp;quot;, despite the fact that for about five years everyone's had gesture navigation in their phones. Some show alerts, which looks a bit better, but even more blocks me from the action I want to perform, you need to find a button on the screen that will let me out.&lt;/p&gt;</description></item><item><title>UI/UX and Google</title><link>https://pavelkorolev.xyz/blog/2023-01-23-youtube-ux/</link><pubDate>Mon, 23 Jan 2023 00:00:00 +0600</pubDate><guid>https://pavelkorolev.xyz/blog/2023-01-23-youtube-ux/</guid><description>&lt;p&gt;I apologize in advance, it will be very hard to unsee this.&lt;/p&gt;
&lt;p&gt;The other day I saw this example with YouTube's homepage in Twitter and still can't get over it. Truly, the less you know - the better you sleep.&lt;/p&gt;
&lt;blockquote class="imgur-embed-pub" lang="en" data-id="a/E8Uyb9c" data-context="false" &gt;&lt;a href="//imgur.com/a/E8Uyb9c"&gt;YouTube search bar&lt;/a&gt;&lt;/blockquote&gt;&lt;script async src="//s.imgur.com/min/embed.js" charset="utf-8"&gt;&lt;/script&gt;
&lt;p&gt;So there's a text field that says &amp;quot;Search&amp;quot;, next to it a button with a magnifying glass so everyone understands that you can search for something with the entered text.&lt;/p&gt;</description></item></channel></rss>