{"id":347720,"date":"2023-05-21T09:00:24","date_gmt":"2023-05-21T09:00:24","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=347720"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=347720","title":{"rendered":"<span>\u041c\u043e\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0437\u0430 \u043d\u0435\u0434\u0435\u043b\u044e #489 (15 \u2014 21 \u043c\u0430\u044f)<\/span>"},"content":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\u0412 \u043d\u0430\u0448\u0435\u043c \u043d\u043e\u0432\u043e\u043c \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u0430\u044f \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043c\u043d\u043e\u0433\u043e\u043c\u043e\u0434\u0443\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u043f\u0435\u0440\u0444\u043e\u0440\u043c\u0430\u043d\u0441 2\u0413\u0418\u0421 \u0438 \u0434\u0438\u0437\u0430\u0439\u043d \u0441\u0438\u0441\u0442\u0435\u043c\u0430 Tinder, \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0432\u0441\u0435 \u0432\u0438\u0434\u0435\u043e \u043e\u0441\u0435\u043d\u043d\u0435\u0433\u043e Mobius, \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b, \u0434\u043e\u0445\u043e\u0434\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435.<\/p>\n<p>  <b>\u0412 \u043d\u0430\u0448\u0435\u043c Telegram-\u043a\u0430\u043d\u0430\u043b\u0435 <a href=\"https:\/\/t.me\/apptractor\">Mobile Insights<\/a>, \u0435\u0449\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, \u0430 \u0432 <a href=\"https:\/\/t.me\/code_insight\">IT Insights<\/a> \u2014 \u043e\u0431 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u043c \u043a\u043e\u0434\u0435 \u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u0445. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0439\u0442\u0435\u0441\u044c!<\/b><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ur\/f1\/nw\/urf1nw7nmgg2rvrkagkw0dsrals.jpeg\"><a name=\"habracut\"><\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/f19\/30a\/c49\/f1930ac4945596eb9707bc7a01bc5bdc.png\"> <b>iOS<\/b><\/p>\n<p>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/ozontech\/articles\/734214\/\">\u0411\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u0430\u044f \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0442\u0440\u043e\u043a \u0432 iOS: Localinter<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/kak-ispolzovat-coremotion-dlya-polucheniya-sensornyh-dannyh.html\">\u041a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c CoreMotion \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u0435\u043d\u0441\u043e\u0440\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/potok-dannyh-swiftui-s-primerami.html\">\u041f\u043e\u0442\u043e\u043a \u0434\u0430\u043d\u043d\u044b\u0445 SwiftUI \u0441 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u043c\u0438<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/docdoc\/articles\/735946\/\">\u041c\u043d\u043e\u0433\u043e\u043c\u043e\u0434\u0443\u043b\u044c\u043d\u043e\u0435 iOS-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435: \u043f\u043e\u0434\u0445\u043e\u0434\u044b \u043a \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u0435\u0436\u043c\u043e\u0434\u0443\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/732576\/\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Command Line Tool \u043d\u0430 Swift \u0432 iOS \u043f\u0440\u043e\u0435\u043a\u0442\u0435<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/kak-apple-borolas-s-moshennichestvom-v-app-store-v-2022.html\">\u041a\u0430\u043a Apple \u0431\u043e\u0440\u043e\u043b\u0430\u0441\u044c \u0441 \u043c\u043e\u0448\u0435\u043d\u043d\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0432 App Store \u0432 2022<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/bendodson.com\/weblog\/2023\/05\/10\/connecting-a-tvos-app-to-ios-ipados-and-watchos-with-devicediscoveryui\/\">Attempting to connect a tvOS app to an iOS app with DeviceDiscoveryUI<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/arturgruchala.com\/parallax-header-effect-in-swiftui-using-coordinatespace\/\">Parallax header effect in SwiftUI using CoordinateSpace<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/developer.apple.com\/news\/?id=mgdnfp8w\">Spotlight on: Passkeys<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/jobandtalent.engineering\/statically-typed-json-payload-in-swift-bd193a9e8cf2\">Statically-typed JSON payload in Swift<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/techhype.io\/media\/learning-swiftui-when-you-already-know-uikit\/\">Learning SwiftUI, when you already know UIKit<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/insight.conjure.co.uk\/the-composable-architecture-2eae60963248\">Exploring the Composable Architecture Framework<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/itnext.io\/swiftui-picker-toggle-slider-and-stepper-fully-explained-3ad1a273bb4d\">SwiftUI Picker, Toggle, Slider and Stepper Fully Explained<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@katramesh91\/how-to-build-uikit-like-mvvm-c-coordinator-hierarchy-with-swiftui-d758b035f91a\">How to build UIKit like MVVM-C Coordinator hierarchy with SwiftUI<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@GetInRhythm\/closures-vs-combine-vs-async-await-993eb1da4d44\">Closures Vs. Combine Vs. Async Await<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/developer.apple.com\/bug-reporting\/\">Apple: Send us your feedback and report bugs<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@onlyapps\/measuring-ping-in-ios-apps-a-simple-solution-13be82a15bf3\">Measuring Ping in iOS Apps: A Simple Solution<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@afsanafarheen28\/integrating-swiftui-in-uikit-seamless-data-communication-87903890a78d\">Integrating SwiftUI in UIKit: Seamless Data Communication<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/tanaschita.com\/20230515-natural-language-framework-linguistic-tags\/\">How to identify parts of speech and names in a text with Swift<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/whackylabs.com\/ios\/fonts\/2023\/05\/15\/download-fonts-ios\/\">Downloading fonts on iOS<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/www.avanderlee.com\/swift\/ranges-explained\/\">Ranges in Swift explained with code examples<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/lyft-design\/that-little-island-changes-everything-b89b108f45b4\">\u201cThat little island changes everything\u201d<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@nerohoop\">iOS Interview Prep 1-8<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/swift2931.medium.com\/a-complete-failure-of-mvvm-c-in-swiftui-e62bdf20057c\">A complete failure of MVVM+C in SwiftUI<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/trendyol-tech\/mock-generator-development-with-using-mockolo-library-c8c273f77d1b\">Mock Generator Development With Using Mockolo Library<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/www.roger.ml\/p\/jenkins-ios-setup\">Step-by-Step Jenkins Setup for iOS in 2023<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/www.runway.team\/blog\/how-to-improve-ios-build-times-with-modularization\">How to improve iOS build times with modularization<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"> <a href=\"https:\/\/apptractor.ru\/info\/github\/control-room.html\">Control Room: \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430\u043c\u0438 \u0432 Xcode<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/e1a\/3cf\/2a8\/e1a3cf2a8b65a0da69bbdd5c0ad040fe.png\"> <b>Android<\/b><\/p>\n<p>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/2gis\/articles\/734688\/\">\u041f\u0435\u0440\u0444\u043e\u0440\u043c\u0430\u043d\u0441 2\u0413\u0418\u0421 \u0434\u043b\u044f Android<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/timeweb\/articles\/736192\/\">\u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0430\u043d\u0438\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0448\u0435\u0439\u0434\u0435\u0440\u044b \u0432 Jetpack Compose<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/735526\/\">\u0412 \u043a\u0430\u043a\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e derivedStateOf \u0438\u0437 Jetpack Compose<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/736392\/\">\u0412\u043e\u043f\u0440\u043e\u0441\u044b \u0438 \u043e\u0442\u0432\u0435\u0442\u044b \u0434\u043b\u044f \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e Kotlin. \u0427\u0430\u0441\u0442\u044c 4<\/a> (<a href=\"https:\/\/habr.com\/ru\/articles\/728742\/\">3<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/722686\/\">2<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/721084\/\">1<\/a>)<br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/735982\/\">\u0410\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f OAuth 2.0 \u0432 Google Api \u0434\u043b\u044f Android \u0431\u0435\u0437 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/735516\/\">\u041c\u0430\u0442\u0440\u0438\u0446\u0430 \u0421\u0443\u0434\u044c\u0431\u044b (\u043a\u043e\u043c\u043f\u0435\u0442\u0435\u043d\u0446\u0438\u0439) Android-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/735710\/\">\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441 \u0431\u0430\u0440\u0430 \u043f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0438\u043b\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u0444\u0430\u0439\u043b\u043e\u0432<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/viewmodels-in-customviews-kak-za-paru-sekund-pomenyat-funktsional-prilozheniya.html\">ViewModels in CustomViews: \u043a\u0430\u043a \u0437\u0430 \u043f\u0430\u0440\u0443 \u0441\u0435\u043a\u0443\u043d\u0434 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/stable-vs-immutable-i-animatsii-na-compose.html\">@Stable vs @Immutable \u0438 \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u0438 \u043d\u0430 Compose<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/gradle-review-show.html\">Gradle Review Show<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/develop\/10-otkrytyh-proektov-kotorye-zastavyat-vas-polyubit-jetpack-compose.html\">10 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0441\u0442\u0430\u0432\u044f\u0442 \u0432\u0430\u0441 \u043f\u043e\u043b\u044e\u0431\u0438\u0442\u044c Jetpack Compose<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/734964\/\">Jetpack Compose: Expandable Text<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/734890\/\">Picture in Picture Mode \u0432 android. \u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0432\u0438\u0434\u0435\u043e \u0432 \u043c\u0438\u043d\u0438-\u043e\u043a\u043d\u0435<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/dev.to\/jimmymcbride\/create-custom-jetpack-compose-animations-make-your-app-experience-truly-unique-526b\">Create Custom Jetpack Compose Animations<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/www.marcogomiero.com\/posts\/2023\/migration-to-compose\/\">Migrating to Jetpack Compose: a step by step journey<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/www.composables.com\/tutorials\/viewmodels-in-jetpack-compose\">Why you need ViewModels and why you don\u2019t<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/androiddevelopers\/introducing-the-android-ui-design-hub-31d000186196\">Introducing the Android UI design hub<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/orashar.medium.com\/using-kover-for-effective-code-coverage-in-kotlin-projects-67d92de93099\">Using Kover for Effective Code Coverage in Kotlin Projects<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@maydin\/technology-radar-2023-april-for-android-developers-60c73ad010eb\">Technology Radar 2023 For Android Developers<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/proandroiddev.com\/network-connectivity-service-using-callbackflow-and-jetpack-compose-4a52c49f9abd\">Network Connectivity Service using callbackFlow and Jetpack Compose<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/proandroiddev.com\/using-previewparameters-and-providing-composables-to-jetpack-compose-previews-5b1f5a8fe192\">Using PreviewParameters and providing Composables to Jetpack Compose Previews<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@daniel.atitienei\/get-current-user-location-in-jetpack-compose-using-clean-architecture-android-6683abca66c9\">Get Current User Location in Jetpack Compose Using Clean Architecture<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/itnext.io\/avoid-rewriting-your-app-with-dependency-inversion-dfe525075f28\">Android Dependency Inversion \u2014 Avoid rewriting your app<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/mobile-app-development-publication\/understand-drawing-arc-of-a-path-in-jetpack-compose-canvas-7223187ce799\">Understand Drawing Arc of A Path In Jetpack Compose Canvas<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/itnext.io\/exercises-in-futility-jetpack-compose-recomposition-6ea3cf9bc1b4\">Exercises in futility: Jetpack Compose Recomposition<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/mobile-app-development-publication\/making-graph-plotting-function-in-jetpack-compose-95c80ee6fc7f\">Making Graph Plotting Function in Jetpack Compose<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/cyb3rko.medium.com\/simple-implementation-of-material-3-switches-in-preferences-4b83ea3202d1\">Simple implementation of Material 3 switches in Preferences<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/blog.dipien.com\/30-ideas-to-reduce-your-gradle-build-times-2da13d1c6276\">30 ideas to reduce your Gradle Build times<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@muizhassan83\/how-i-added-gamepad-support-to-android-virtual-device-9d36ac33caa6\">How I added Gamepad Support to Android Virtual Device<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/androiddevelopers\/illuminating-interactions-visual-state-in-jetpack-compose-188fa041b791\">Illuminating Interactions: Visual State in Jetpack Compose<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/androiddevelopers\/viewcompositionstrategy-demystefied-276427152f34\">ViewCompositionStrategy Demystified<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@amoljp19\/kotlin-sealed-interfaces-a-deep-dive-into-a-powerful-new-feature-98dfe69077f\">Kotlin Sealed Interfaces: A Deep Dive into a Powerful New Feature<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@vuert\/handling-android-permissions-in-repository-9c062b4ea85e\">Handling Android Permissions in Repository<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@emirhanemmez\/authentication-handling-with-ktor-in-android-b9777e82c4fb\">Authentication Handling with Ktor in Android<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"> <a href=\"https:\/\/apptractor.ru\/info\/github\/purr.html\">Purr: \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0438 \u043f\u043e\u0438\u0441\u043a \u0432 \u043b\u043e\u0433\u0430\u0445 \u043d\u0430 Android<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"> <a href=\"https:\/\/apptractor.ru\/info\/github\/telephoto.html\">Telephoto: \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u0432 Compose<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"> <a href=\"https:\/\/apptractor.ru\/info\/github\/shady.html\">Shady: \u0433\u0430\u043b\u0435\u0440\u0435\u044f AGSL-\u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ma\/lx\/8h\/malx8hbgozt6lee8rmxmg96_s6a.png\"> <b>\u041a\u0440\u043e\u0441\u0441\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430<\/b><\/p>\n<p>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/736172\/\">\u041a\u0430\u043a \u041b\u0438\u0442\u0440\u0435\u0441 \u0441\u0434\u0435\u043b\u0430\u043b \u0438\u0437 \u043c\u0435\u043d\u044f Flutter \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/736444\/\">\u041f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 Snippets \u0434\u043b\u044f Flutter-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/735080\/\">\u041a\u0430\u043a \u044f \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u0438\u0433\u0440\u0443 \u043a \u044d\u043a\u0440\u0430\u043d\u0430\u043c \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/736364\/\">\u041f\u0430\u0442\u0442\u0435\u0440\u043d\u044b \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 Dart \u0441 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u043c\u0438 \u043a\u043e\u0434\u0430. \u0427\u0430\u0441\u0442\u044c 1<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/flutter-dostig-1-milliona-opublikovannyh-prilozheniy-i-usilivaet-podderzhku-veba.html\">Flutter \u0434\u043e\u0441\u0442\u0438\u0433 1 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u0430 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u0443\u0441\u0438\u043b\u0438\u0432\u0430\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0432\u0435\u0431\u0430<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/johnoreilly.dev\/posts\/swiftui-component-compose-ios\/\">Using Compose for a UI component in a SwiftUI screen<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/towardsdev.com\/dart-3-0-an-exciting-step-toward-greatness-ddb0db3b73ab\">Dart 3.0: An exciting step toward greatness!<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@kvenn\/dart-3-0-best-new-features-why-you-should-care-429e739f2690\">Dart 3.0: Best New Features &amp; Why You Should Care<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/levelup.gitconnected.com\/discover-the-power-of-creating-beautiful-home-screen-app-widgets-with-react-native-e2d84ee358b7\">React Native: Ultimate Guide to Create a Home Screen Widget for iOS and Android<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/blog.codemagic.io\/flutter-m2-mini-comparison\/\">Comparing M2 mini vs. M1 mini vs. Mac Pro<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/www.christianfindlay.com\/blog\/dart-records-and-futures\">Dart 3: A Comprehensive Guide to Records and Futures<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/telegra.ph\/How-I-won-50000-Telegram-Sticker-App-Contest-using-Flutter-04-06\">How I won Telegram\u2019s $50,000 Sticker App Contest using Flutter<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/967\/16b\/cb9\/96716bcb926741e79bb1c284a88083ca.png\"> <a href=\"https:\/\/apptractor.ru\/info\/github\/six-sided-puzzle-pazzly-na-flutter.html\">Six-Sided Puzzle: \u043f\u0430\u0437\u0437\u043b\u044b \u043d\u0430 Flutter<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/708\/1c6\/34e\/7081c634ec176ab6b953d9d19e82a09a.png\"> <b>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430<\/b><\/p>\n<p>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/vse-video-mobius-2022-autumn.html\">\u0412\u0441\u0435 \u0432\u0438\u0434\u0435\u043e Mobius 2022 Autumn<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/yandex\/articles\/735172\/\">\u041a\u0430\u043a \u043c\u044b \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u043b\u0438 \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u044b\u0435 \u043f\u043e\u0435\u0437\u0434\u043a\u0438 \u0432 \u042f\u043d\u0434\u0435\u043a\u0441 Go<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/30-sovetov-dlya-effektivnogo-proektirovaniya-polzovatelskogo-interfeysa.html\">30 \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u0434\u043b\u044f \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/734790\/\">ChatGPT \u0438 \u0447\u0442\u0435\u043d\u0438\u0435 \u043a\u043d\u0438\u0433 \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u0435<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/articles\/vsya-moya-20-letnyaya-karera-eto-tehnicheskiy-dolg-ili-ustarevshiy-kod.html\">\u0412\u0441\u044f \u043c\u043e\u044f 20-\u043b\u0435\u0442\u043d\u044f\u044f \u043a\u0430\u0440\u044c\u0435\u0440\u0430 \u2014 \u044d\u0442\u043e \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0434\u043e\u043b\u0433 \u0438\u043b\u0438 \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0439 \u043a\u043e\u0434<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/736418\/\">\u041a\u0430\u043a \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u0443 \u0443\u0441\u0442\u0440\u043e\u0438\u0442\u044c\u0441\u044f \u0432 Uber (\u0447\u0430\u0441\u0442\u044c 2)<\/a> + <a href=\"https:\/\/habr.com\/ru\/articles\/736394\/\">(\u0447\u0430\u0441\u0442\u044c 1)<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/736462\/\">\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0440\u0435\u0445\u043c\u0435\u0440\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/it-s-tinkoff-product-meetup-layfstayl.html\">IT\u2019s Tinkoff product meetup: \u043b\u0430\u0439\u0444\u0441\u0442\u0430\u0439\u043b<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/media\/podlodka-319-kak-optimizirovat-slozhnost-algoritmov.html\">Podlodka #319: \u043a\u0430\u043a \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/google-vstraivaet-ii-pomoschnika-codey-v-colab.html\">Google \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442 \u0418\u0418-\u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u0430 Codey \u0432 Colab<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/analytics\/razrabotchiki-vse-chasche-poluchayut-sovety-ot-ii-a-ne-ot-stack-overflow.html\">\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0432\u0441\u0435 \u0447\u0430\u0449\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u044e\u0442 \u0441\u043e\u0432\u0435\u0442\u044b \u043e\u0442 \u0418\u0418, \u0430 \u043d\u0435 \u043e\u0442 Stack Overflow<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/www.donnywals.com\/tips-and-tricks-for-exploring-a-new-codebase\/\">Tips and tricks for exploring a new codebase<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/www.david-smith.org\/blog\/2023\/05\/11\/design-notes-38\/\">Designing a Step Goal Live Activity<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/betterprogramming.pub\/why-an-engineering-manager-should-not-review-code-46f87c08db66\">Why an Engineering Manager Should Not Review Code<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/betterprogramming.pub\/why-we-over-engineer-software-and-how-to-break-the-habit-72a32b62e3e2\">Why We Over-Engineer Software (and How to Break the Habit)<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@tsecretdeveloper\/steve-jobs-you-were-wrong-about-the-best-developers-60767c7286e3\">Steve Jobs: You Were Wrong About The Best Developers<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/deathshadow.medium.com\/maybe-that-code-isnt-clever-maybe-you-aren-t-46d8ff144039\">Maybe That Code Isn\u2019t \u201cClever\u201d, Maybe You Aren\u2019t!<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/tinder\/building-obsidian-tinders-design-system-e127770d8e3f\">Building Obsidian, Tinder\u2019s Design System<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@anfonn\/5-types-of-bad-product-managers-that-no-one-talks-about-6a4c549bb930\">5 types of bad product managers that no one talks about<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/mateedevs\/fundamental-differences-of-compose-and-swiftui-2dc0cdd0b37\">Fundamental Differences of Compose and SwiftUI<\/a><br \/>  \u2022\u00a0<img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/377\/ae0\/333\/377ae0333d0f4b7b97307c9eea5ee21a.gif\"> <a href=\"https:\/\/medium.com\/@dbottiau\/the-rise-of-the-serverless-monoliths-63d3d2d98164\">The Rise of the Serverless Monoliths<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/509\/dc9\/bde\/509dc9bde69347ecbe0c21ff2973d7e7.jpg\"> <b>\u0410\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430, \u043c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433 \u0438 \u043c\u043e\u043d\u0435\u0442\u0438\u0437\u0430\u0446\u0438\u044f<\/b><\/p>\n<p>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/measure\/app-store-analytics\/dohody-prilozheniy-2023-otchet-data-ai.html\">\u0414\u043e\u0445\u043e\u0434\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 2023: \u043e\u0442\u0447\u0435\u0442 Data.ai<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/735466\/\">\u041e\u0434\u0438\u043d \u0441\u0435\u0440\u0432\u0438\u0441, \u0447\u0442\u043e\u0431\u044b \u043a\u043e\u043d\u043d\u0435\u043a\u0442\u0438\u0442\u044c\u0441\u044f \u0441\u043e \u0432\u0441\u0435\u043c\u0438, \u0438\u043b\u0438 \u043a\u0430\u043a \u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u043e\u0432\u0430\u043b \u0438\u0433\u0440\u0443 \u0441 VK \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0443\u0432\u043b\u0435\u043a\u0441\u044f<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/measure\/app-store-analytics\/prilozhenie-frfr-vzletelo-v-top-app-store-v-ssha.html\">\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 frfr \u0432\u0437\u043b\u0435\u0442\u0435\u043b\u043e \u0432 \u0442\u043e\u043f App Store \u0432 \u0421\u0428\u0410<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/vc.ru\/services\/695995-moyu-sobaku-mozhet-ukrast-golub-my-uznali-strashnoe-o-sobachnikah-poka-delali-dlya-nih-mobilnoe-prilozhenie\">\u00ab\u041c\u043e\u044e \u0441\u043e\u0431\u0430\u043a\u0443 \u043c\u043e\u0436\u0435\u0442 \u0443\u043a\u0440\u0430\u0441\u0442\u044c \u0433\u043e\u043b\u0443\u0431\u044c\u00bb: \u043c\u044b \u0443\u0437\u043d\u0430\u043b\u0438 \u0441\u0442\u0440\u0430\u0448\u043d\u043e\u0435 \u043e \u0441\u043e\u0431\u0430\u0447\u043d\u0438\u043a\u0430\u0445, \u043f\u043e\u043a\u0430 \u0434\u0435\u043b\u0430\u043b\u0438 \u0434\u043b\u044f \u043d\u0438\u0445 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/vc.ru\/life\/692899-udobnyy-onbording-v-mobilnom-prilozhenii\">\u0423\u0434\u043e\u0431\u043d\u044b\u0439 \u043e\u043d\u0431\u043e\u0440\u0434\u0438\u043d\u0433 \u0432 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438<\/a><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/853\/812\/9f5\/8538129f5e7b404a720121cb9c3814db.jpg\"> <b>AI, \u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, IoT<\/b><\/p>\n<p>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/articles\/736122\/\">\u041f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 ML-\u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u043d\u043e\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u0442\u0438\u0440\u043e\u0432\u043e\u043a \u0430\u043a\u0446\u0438\u0439<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/wirenboard\/articles\/735306\/\">\u041f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u043c \u043a\u0432\u0430\u0440\u0442\u0438\u0440\u0443 \u043e\u0442 \u0437\u0430\u0441\u0442\u0440\u043e\u0439\u0449\u0438\u043a\u0430 \u0432 \u0443\u043c\u043d\u0443\u044e<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/otus\/articles\/736198\/\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0435\u0439\u0440\u043e\u0441\u0435\u0442\u0435\u0439 \u0434\u043b\u044f \u0432\u0430\u0448\u0435\u0439 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/habr.com\/ru\/companies\/ru_mts\/articles\/736298\/\">\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439 NB-IoT \u041c\u0422\u0421. \u0422\u0435\u043e\u0440\u0438\u044f \u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430. \u0427\u0430\u0441\u0442\u044c 1<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/apps\/openai-vypustil-mobilnoe-prilozhenie-chatgpt-dlya-ios.html\">OpenAi \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 ChatGPT \u0434\u043b\u044f iOS<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/stability-ai-vypustila-otkrytyy-ii-generator-izobrazheniy-stablestudio.html\">Stability AI \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0418\u0418-\u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 StableStudio<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/stability-ai-vypuskaet-stable-animation-sdk.html\">Stability AI \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0430 Stable Animation SDK<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/20-mln-v-posevnom-raunde-together-otkrytye-generativnye-modeli-ii.html\">$20 \u043c\u043b\u043d \u0432 \u043f\u043e\u0441\u0435\u0432\u043d\u043e\u043c \u0440\u0430\u0443\u043d\u0434\u0435: Together \u2014 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0418\u0418<\/a><br \/>  \u2022\u00a0<a href=\"https:\/\/apptractor.ru\/info\/news\/intrinsic-flowstate.html\">Intrinsic Flowstate \u2014 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u044b\u0445 \u0440\u043e\u0431\u043e\u0442\u043e\u0432<\/a><\/p>\n<p>  \u2190 <a href=\"https:\/\/habr.com\/ru\/companies\/productivity_inside\/articles\/734966\/\">\u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442<\/a>. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u0438\u043b\u0438 \u0432\u044b \u043d\u0430\u0448\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0443 \u2014 \u043f\u0440\u0438\u0448\u043b\u0438\u0442\u0435, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432 <a href=\"mailto:lbogolubov@gmail.com\">\u043f\u043e\u0447\u0442\u0443<\/a>.<\/div>\n<\/div>\n<p> <!----> <!----><\/div>\n<p> <!----> <!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/companies\/productivity_inside\/articles\/736496\/\"> https:\/\/habr.com\/ru\/companies\/productivity_inside\/articles\/736496\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\u0412 \u043d\u0430\u0448\u0435\u043c \u043d\u043e\u0432\u043e\u043c \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u0430\u044f \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043c\u043d\u043e\u0433\u043e\u043c\u043e\u0434\u0443\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u043f\u0435\u0440\u0444\u043e\u0440\u043c\u0430\u043d\u0441 2\u0413\u0418\u0421 \u0438 \u0434\u0438\u0437\u0430\u0439\u043d \u0441\u0438\u0441\u0442\u0435\u043c\u0430 Tinder, \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0432\u0441\u0435 \u0432\u0438\u0434\u0435\u043e \u043e\u0441\u0435\u043d\u043d\u0435\u0433\u043e Mobius, \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b, \u0434\u043e\u0445\u043e\u0434\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435.<\/p>\n<p>  <b>\u0412 \u043d\u0430\u0448\u0435\u043c Telegram-\u043a\u0430\u043d\u0430\u043b\u0435 <a href=\"https:\/\/t.me\/apptractor\">Mobile Insights<\/a>, \u0435\u0449\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0434\u043b\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, \u0430 \u0432 <a href=\"https:\/\/t.me\/code_insight\">IT Insights<\/a> \u2014 \u043e\u0431 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u043c \u043a\u043e\u0434\u0435 \u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u0445. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0439\u0442\u0435\u0441\u044c!<\/b><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ur\/f1\/nw\/urf1nw7nmgg2rvrkagkw0dsrals.jpeg\"><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-347720","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/347720","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=347720"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/347720\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=347720"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=347720"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=347720"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}