TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #312 · 23.04

У меня начался отпуск, прошло 2.5 года, как я работаю на обычной работе по найму. До этого я около 7 лет был фрилансером, а в начале этого пути запустил пару успешных собственных проектов (и пару десятков неуспешных, которые, собственно, высосали все заработанные деньги). Некоторые разработчики хотят уйти из найма во фриланс. Кажется, что личного времени становится больше, максимально гибкий график, работай себе с берега моря. У меня обратный опыт — добровольный переход с фриланса на найм, и опыт скорее положительный. Что стало хуже: 1. Спонтанные мероприятия теперь почти недоступны. В середине рабочего дня не поедешь к друзьям играть в настолки. 2. Как ни крути, но 30 дней отпуска в год — это прямо очень очень мало. Его неизбежно приходится разбивать на части, и каждая из этих частей очень маленькая — в длинное путешествие не съездить, собственный проект не замутить, с кучей накопившихся бытовых дел не разобраться. 3. На фрилансе ты можешь не брать заказы, которые содержат большую долю скучной для тебя работы. В найме же ты обязан брать задачи, даже если они на 80% состоят из какого-нибудь рефакторинга или написания документации. Что стало лучше: 1. Денег стало больше. Зарплата заметно выше моего среднего дохода с фриланс-заказов. Я сильный прогер, но тратить время и внимание на поиск клиентов и заказов мне всегда было тяжело. Сейчас я конвертирую своё время в деньги эффективнее, потому что занимаюсь только разработкой и руководством другими разработчиками. 2. У меня появились выходные. Я могу не работать в выходные, и это удивительное чувство. На фрилансе формально ты можешь работать когда хочешь, но по факту хоть чуть-чуть работаешь каждый день, потому что висит очередной заказ с дедлайном. Сейчас я со спокойной совестью все выходные занимаюсь исключительно своими делами. 3. У меня пропала нервозность по поводу того, что я ещё что-то не доделал и не успею вовремя, если сейчас не сяду. Рабочий график распределяется как раз на комфортный уровень загрузки. 4. Я перестал работать по ночам, и в целом у меня нормализовался режим дня. Будучи фрилансером, я мог вставать в обед, потом сидеть до утра, и из-за этого снова долго спать. Это могло длиться месяцами. Сейчас каждое утро дейли, рабочий день начинается в одно и то же время, поэтому график у меня нормальный. 5. За 2.5 года работы в компании я прокачался в программерских скиллах как за 7 лет фриланса. Потому что на фрилансе ты плюс минус делаешь всё уже знакомым тебе способом. А вот при работе в компании есть другие разработчики, которые знают что-то, чего не знаешь ты. И есть кодревью, это очень полезная штука, причем, полезно и самому проводить, и чтобы тебе проводили. #dev#life

Hashtags

Резултати

Намерени 69 подобни публикации

Търсене: #kmp

当前筛选 #kmp清除筛选
Android Broadcast

@android_broadcast · Post #9635 · 01.11.2025 г., 08:31

🏝🤖 На сайте Android Developers обновили материалы по Kotlin Multiplatform: 👉 Обновили главную страницу 👉 Появился базовый курс по KMP (бесплатный) 👉 Обновленные руководство по использованию Jetpack библиотека с поддержкой KMP #android#kmp

Hashtags

Android Broadcast

@android_broadcast · Post #9076 · 08.05.2025 г., 13:55

📹Android Developers Backstage 215. KMP. Have your code and eat it too Software Engineers Dustin Lam и Yigit Boyar присоединяются к ведущему Tor Norbye, чтобы обсудить Kotlin Multiplatform (KMP). 0:00 - Введение 0:29 - Что такое KMP: не новый продукт, а Kotlin с новыми возможностями 3:20 - Зачем нужен KMP: преимущества и цели 6:17 - KMP vs. другие кроссплатформенные фреймворки 6:41 - Общая бизнес-логика — основной сценарий использования 9:18 - Практическое внедрение: превращение Android-приложения в KMP 13:15 - Работа с платформо-специфичными зависимостями 28:56 - Поддержка библиотек в Kotlin Multiplatform 35:56 - Developer Experience: инструменты и интеграция 40:16 - Совместимость с iOS: как добиться взаимодействия 42:51 - KMP в действии: как Google использует эту технологию 47:17 - Долгосрочное видение и потенциал KMP 51:30 - Консистентность поведения vs. нативная производительность 55:32 - Попробуйте KMP и присоединяйтесь к разработке! #android#kmp

Hashtags

Android Broadcast

@android_broadcast · Post #9015 · 27.04.2025 г., 04:58

Reanimator - простоя библиотека для Jetpack ViewModel (с поддержкой KMP) для работы с состоянием. Подробный разбор в статье (EN,11м) или альтернативной ссылке @Serializable data class MyUiState( // Persistent val data: List<String> = emptyList(), val selectedItem: String? = null, // Transient val isLoading: Boolean = false, val error: String? = null ) class MyViewModel(private val savedStateHandle: SavedStateHandle) : ViewModel() { // Define which properties are transient private val transientProps = listOf("isLoading", "error") // Declare your state flow - Reanimator handles the rest! private val _uiState by savedStateHandle.getMutableStateFlow( defaultValue = MyUiState(), // Initial/default state coroutineScope = viewModelScope, // Scope for saving changes transientProperties = transientProps // What NOT to save // key = "custom_state_key" // Optional: custom key ) val uiState: StateFlow<MyUiState> = _uiState.asStateFlow() // ... rest of your ViewModel logic ... fun updateData(newData: List<String>) { // Just update the state - Reanimator saves persistent parts automatically _uiState.update { it.copy(data = newData, isLoading = false) } } } #android#kmp

Hashtags

Android Broadcast

@android_broadcast · Post #9161 · 20.05.2025 г., 21:07

🚀Вышел Jetpack Window Manager 1.4 - библиотека для работы с разными форматами устройства и несколькими окнами с поддержкой KMP Что нового в свежей версии: 👉 Улучшения Activity Embedding 👉 Улучшения API WindowMetrics 👉 Улучшили API для тестирования #jetpack#kmp

Hashtags

Android Broadcast

@android_broadcast · Post #9073 · 08.05.2025 г., 05:36

📹Compose/iOS готов к продакшену? Прямой эфир с ответами на вопросы Когда: четверг, 8 мая, 18:30 (GMT+3) Буквально вчера вышел Compose iOS Stable и конечно же открывает возможности Android разработчиками по написанию мобильных приложений под обе платформы. Но всё ли так сладко, как заявляет JetBrains? Будем разбираться в этом с экспертом кто уже познал прелести продакшена! 👨‍💻 Эксперт - Никита, фуллстек Kotlin разработчик, автор проектов FlowMVI и respawn.pro. При анонсе Compose iOS Stable, его приложение было в официальном анонсе 🔥 👨‍💻 И еще одни эксперт - Чикишев Тимур, Senior Android разработчик в KTS. Начал пробовать Compose iOS еще до официального релиза. Успел адаптировать Android приложение с Compose на iOS, буквально на этой неделе сделали релиз Задавайте свои вопросы в комментариях к посту, чтобы они были заданы на эфире #android#compose#kmp

Android Broadcast

@android_broadcast · Post #8637 · 05.02.2025 г., 07:04

Вышел Coil 3.1.0 - популярный загрузчик картинок с поддержкой KMP 👉Улучшили производительность AsyncImage: скорость работы стала лучше на 25-40%, а потребление памяти - на 35-48% 👉 FakeImage теперь deprecated 👉 Появился ColorImage - полезен для возвращения фейковых значений в тестах и для Compose превью 👉 coil-compose-core больше не зависит от Dispatchers.Main.immedate, что позволило исправить баги в работе Paparazzi и Roborazzi 🛠 Множество других исправлений и улучшений API #kmp#android#compose

Android Broadcast

@android_broadcast · Post #9979 · 04.05.2026 г., 05:43

🤯 Те кто использовал Jetpack Paging 3 знают насколько он может справиться только с базовыми сценариямми. Шаг влево или вправо - уже боль! Сегодня хочу познакомить вас с альтернативой — библиотекой 🐱Paginator. Это KMP-решение для пагинации, которое решает те самые проблемы, где Paging 3 начинает "буксовать". Paginator построен на отличной модели от Jetpack Paging 3: страница — это адресуемая ячейка в кэше, кэш — обычная структура данных, а навигация — обычные методы. 1️⃣✅ Адресуемые страницы Прямые методы goNextPage(), goPreviousPage() и jump(Bookmark). Deeplink на сообщение из пуша решается одной строкой. 2️⃣✅ Мутации по запросу MutablePaginator предоставляет CRUD-операции: replace { it.id == 42 }, removeWhere { it.deleted }. Один лайк меняет один элемент без инвалидации всей страницы. 3️⃣✅ Сохраняемое состояние Кэш — обычная структура данных, которую можно сериализовать через kotlinx.serialization. Методы serializeToJson() и restoreFromJson() решают проблему Process Death без плясок с бубном. 4️⃣✅ Библиотека, а не фреймворк Написан на чистом Kotlin без платформенных зависимостей и живёт в commonMain. Логика пагинации становится частью общего доменного слоя KMP, не копируется между платформами и не имеет двух реализаций. 5️⃣✅ Курсорная пагинация "из коробки" Отдельный класс CursorPaginator с единой моделью состояний, транзакций и сериализации. Paginator — это не обёртка над Paging 3. Это другая модель, переосмысливающая ключевые типы. Обёртка просто не смогла бы дать ни мутации элемента, ни сериализации кэша. 🔗Оригинальная статья на Хабре 🐱Репозиторий Paginator #Android#AndroidDev#KMP

YuKongA | Channel

@YuKongA13579 · Post #1846 · 03.02.2026 г., 10:28

最近发现有不少新人因为 miuix 库来尝试 KMP/CMP 跨平台项目。我必须声明一点,对比其他耳熟能详的跨平台方案,KMP/CMP 并不是一个 API 成熟的、积极维护的、社区活跃的项目,也没有丰富的社区资源和解决方案。 我写这个 ui 库单纯只是因为第一个接触的语言是 Kotlin、第一个接触的声明式 UI 是 Compose,而它现在刚好支持跨平台。 如果你没有解决 KMP/CMP 本身各种问题的能力,或者甚至你只会 vibe coding,还是不要吃这个螃蟹了,Flutter、 Electron、 Tauri、RN 都会是更好的选择。 如果你是拿来写 Android/JVM only,那倒是基本上没什么问题。 #cmp#kmp#misc

YuKongA | Channel

@YuKongA13579 · Post #936 · 17.08.2024 г., 15:22

换用最新写的 miuix ui 的极简版本 相比原本去掉了扩展设置(灵动脑门支持,手动深浅色切换)、关于页面。可以说是非常简洁了。 要说新增的话,就是多了 ui 带的特性,越界回弹和顶栏模糊吧。 #Updater#KMP#MIUIX

Android Broadcast

@android_broadcast · Post #9349 · 21.07.2025 г., 12:06

🤯Команда Anvil решила прекратить развитие проекта в пользу другого решения Anvil - Kotlin плагина для расширения возможностей Dagger 2 и упрощения работы с ним решили прекратить развивать. Коллега автором решения сделал Metro и компания будет переходить на него и участвовать в его развитии. Metro - это compile-time DI фреймворк с поддержкой KMP, который вдохновлялся Dagger, Anvil, Kotlin-Inject. #di#kmp

Hashtags

123•••56
ПредишнаСтр. 1 от 6Следваща