Realm is Deprecated. What now?
MongoDB has announced the deprecation of Atlas Device Sync and Realm SDKs. Are you prepared to pivot your projects and find new solutions before it’s too late?
MongoDB recently announced the deprecation of Atlas Device Sync and Realm SDKs, prompting mobile developers to prepare for migration by September 30, 2025. This change impacts those relying on Realm for cloud data synchronization, as the client-side Realm database will continue to exist as an open-source project without ongoing support from MongoDB.
For developers who have tightly integrated Realm into their applications, transitioning may be challenging. It's essential to decouple Realm calls and explore alternatives, such as Core Data or custom backend syncing solutions, to ensure a smooth migration. Proper planning will help mitigate potential disruptions.
Alex Bush's original post offers valuable insights into navigating this transition, emphasizing the importance of codebase flexibility. For further details and expert advice, check out his comprehensive analysis.
Swift Student Challenge 2025
Apple is kicking off the Swift Student Challenge announcement much earlier this year! Though applications don’t open until February, they’re encouraging developers to start learning Swift now to be ready. Know someone who’s interested? Now’s the perfect time to get them started!
Are Android apps THAT much smaller than iOS?
Android apps tend to be smaller than their iOS counterparts, but the difference isn’t as straightforward as it seems. Factors like platform architecture, file handling, and app store policies all influence app size. This article dives into the key reasons why Android apps often come out smaller, exploring file formats, optimization techniques, and other variables that impact app storage across platforms.
Why is my Task running on the main thread?
In Swift Concurrency, Tasks enable asynchronous execution, allowing developers to run non-blocking code efficiently. Typically, a task executes on the same thread unless an `await` is encountered, which may shift the execution context. Detached tasks provide an avenue for running workloads on a global thread, enhancing flexibility while keeping the main thread responsive. Jacob highlights the importance of understanding these behaviors to manage UI performance effectively and leverage the full potential of Swift’s concurrency model.
How to automate Swift Package creation with command line
Swift packages allow for better code organization, dependency management, and code sharing across projects. Although Xcode offers a graphical interface for handling these packages, managing them via the command line can be more efficient for automation and integration with CI/CD pipelines. This article, referenced by Andrea, provides a step-by-step guide to creating a Swift package using the command line, showcasing the advantages of this approach.
Building a Cross-Platform Camera App with CameraK and Compose Multiplatform
Compose Multiplatform has made great strides in integrating Jetpack Compose components into Kotlin Multiplatform, but some features like ExoPlayer and Camera still rely on platform-specific solutions, which can be beneficial. For those wanting to simplify camera app development without handling the complexities, Kashif has created a library that offers an easy API, leveraging AVCamera for iOS and CameraX for Android. You can access the latest version of this library in the repository to start building your camera app.
Ktor 3.0 Is Now Available With New Features and Improved Performance
Ktor 3.0 has been released with significant upgrades, including the adoption of Kotlin 2.0 and a switch to kotlinx-io, aligning Ktor more closely with other Kotlin tools. This version offers improved performance and more flexibility for building client-server applications.
Getting a Flutter Job
The founder of the Flutter project, who led the team at Google for eight years, recognizes the challenges in hiring for Flutter roles from both the company and candidate perspectives. He suggests that rather than limiting searches to "flutter jobs" candidates should explore broader "mobile jobs" as many companies may not realize they need Flutter expertise.
The founder emphasizes that hiring should focus on solving customer problems with the right tools and offers strategies for job seekers, including considering small companies, utilizing startup job boards, and building a solid portfolio. Additionally, he advises on networking and making a strong impression through outreach, which can enhance visibility in the competitive job market. With these insights in mind, how can job seekers best position themselves to take advantage of the evolving Flutter landscape?
🚀 Launch of Week
Tattoon
Tattoon leverages cutting-edge AI tech to uniquely apply tattoos on individuals, considering factors such as body angle, volume, shape, and glare for a truly immersive experience. Try the most popular tattoos on the market, random tattoos or be like a celeb.
Busy Status Bar
Not a mobile app, but too good to ignore! Busy Status Bar is a productivity multi-tool device with an LED pixel screen. Displays a personal busy message. Built-in Pomodoro timer and Apps. Fully customizable, open-source, and hacker-friendly.
🧰 Interesting Projects, Tools and Libraries
Flutter Image to Particles Effect - Flutter animation where an image transforms into mesmerizing particles, demonstrating Flutter's potential for creative and dynamic effects.
Kotlin Multiplatform Developer Roadmap - The Kotlin Multiplatform Developer Roadmap outlines a structured learning path for mastering Kotlin Multiplatform, covering essential concepts, libraries, SDKs, and technology stacks. It provides a step-by-step guide for developers to progress through various topics related to Kotlin Multiplatform development.
Hummingbird - Hummingbird is a lightweight, flexible modern web application framework that runs on top of a SwiftNIO based server implementation. It is designed to require the minimum number of dependencies.
🤝 Career Opportunities
Lead Flutter SDK Developer at Stream - Flutter
Principal Android Engineer at OpenTable - Android
🗓️ Upcoming Events
Pragma Conference - Oct 29-30 2024, Bologna, Italy
FlutterConf Latam - Oct 29-30 2024, Arequipa, Peru
AndroidWorldwide - Oct 29 2024, Online
Github Universe'24 - Oct 29-30 2024, San Francisco, US
DroidCon - Oct 31-01 Nov 2024, London, UK
Do iOS - Nov 12-14 2024, Amsterdam, Netherlands
Firebase Demo Day '24 - Nov 19 2024, Online
✌️Finally…
That’s it for this edition! I hope you enjoyed the insights and found the updates helpful. Stay tuned for the next issue, and if you have any thoughts or questions, feel free to reach out—We’d love to hear from you. Until then, take care and happy coding!