<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Tornike&apos;s Portfolio and Blog</title><description>Senior Software Engineer, building apps with Flutter. Blogging about mobile development, productivity, and personal growth.</description><link>https://tornike.dev/</link><language>en</language><item><title>Why Android Is Better Than iOS</title><link>https://tornike.dev/blogs/why_android_is_better_than_ios/</link><guid isPermaLink="true">https://tornike.dev/blogs/why_android_is_better_than_ios/</guid><description>A personal perspective on why Android provides better usability, flexibility, and control for users who actively switch between both platforms.</description><pubDate>Sat, 13 Dec 2025 00:00:00 GMT</pubDate><category>Android</category><category>iOS</category><category>Mobile</category><category>UX</category></item><item><title>Flutter Advanced Theming</title><link>https://tornike.dev/blogs/flutter_advanced_theming/</link><guid isPermaLink="true">https://tornike.dev/blogs/flutter_advanced_theming/</guid><description>Theming is an essential part of any application. It helps to create a consistent look and feel across the app. In Flutter, theming is done using ThemeData class. However, sometimes you need more control over the theming process. In this article, we will explore advanced theming techniques in Flutter.</description><pubDate>Sun, 11 Aug 2024 00:00:00 GMT</pubDate><category>UX</category><category>Flutter</category><category>Dart</category><category>Material Design</category><category>Theme</category></item><item><title>Optimistic State Management in Flutter</title><link>https://tornike.dev/blogs/flutter_optimistic_state_management/</link><guid isPermaLink="true">https://tornike.dev/blogs/flutter_optimistic_state_management/</guid><description>Optimistic state management is a technique in Flutter that immediately updates the UI in response to user actions, assuming the operation will succeed. This approach contrasts with traditional methods where the UI waits for server confirmation before reflecting changes</description><pubDate>Fri, 09 Aug 2024 00:00:00 GMT</pubDate><category>UX</category><category>Flutter</category><category>Dart</category><category>State Management</category></item><item><title>SMS autofill in Flutter</title><link>https://tornike.dev/blogs/flutter_sms_autofill/</link><guid isPermaLink="true">https://tornike.dev/blogs/flutter_sms_autofill/</guid><description>SMS autofill is a feature that allows users to autofill OTP codes sent via SMS. This feature is available on both Android and iOS.</description><pubDate>Sat, 27 Jul 2024 00:00:00 GMT</pubDate><category>Dart</category><category>Flutter</category><category>OTP</category><category>SMS autofill</category></item><item><title>Case study: Category hierarchy</title><link>https://tornike.dev/blogs/categories_hierarchy/</link><guid isPermaLink="true">https://tornike.dev/blogs/categories_hierarchy/</guid><description>Everybody has chosen categories while filtering the content out. This action might have been overwhelming or boring for some of us while facing the ‘family tree’ of categories, their child categories, grandchild categories, etc. This endless hierarchy can make us feel lost at some point.</description><pubDate>Sat, 01 Apr 2023 00:00:00 GMT</pubDate><category>UX</category><category>Categories</category><category>Tree view</category></item><item><title>Dart extensions</title><link>https://tornike.dev/blogs/dart_extensions/</link><guid isPermaLink="true">https://tornike.dev/blogs/dart_extensions/</guid><description>Until Dart 2.7 introduced Extension methods, it was often impractical or impossible to add some functionality to built-in classes or someone else&apos;s API.</description><pubDate>Sun, 01 Jan 2023 00:00:00 GMT</pubDate><category>Dart</category><category>Flutter</category><category>Programming</category></item></channel></rss>