It is crucial to keep in mind that sharing information about the tools we use to simplify our daily lives as a developer is a valuable way to contribute to the Android community. We should aim to make the development process easier for ourselves and others.
DevFest is a global event organized by Google Developer Groups (GDGs) in various regions and countries worldwide. As per the Google for Developers website, over 500 GDGs will host DevFest events in 2023, covering a range of topics including AI, Android, Cloud, Data, DevOps, Flutter, Go, Kotlin, Firebase, and more. To find a DevFest event near you, simply visit the DevFest website and search by location or date.
Maestro is the simplest and most effective mobile UI testing framework. Maestro is built on learnings from its predecessors (Appium, Espresso, UIAutomator, XCTest) and allows you to easily define and test your Flows.
Built-in tolerance to flakiness. UI elements will not always be where you expect them, screen tap will not always go through, etc. Maestro embraces the instability of mobile applications and devices and tries to counter it.
Built-in tolerance to delays. No need to pepper your tests with sleep() calls. Maestro knows that it might take time to load the content (i.e. over the network) and automatically waits for it (but no longer than required).
Blazingly fast iteration. Tests are interpreted, no need to compile anything. Maestro is able to continuously monitor your test files and rerun them as they change.
Declarative yet powerful syntax. Define your tests in a yaml file.
Simple setup. Maestro is a single binary that works anywhere.
In this video, I’ve asked Zhanibek Marshal to join me and share his experience using this framework.
Hope you enjoy and do not forget to follow me on Medium and YouTube to get notified when there is a new topic.
You’ve probably come across the BOM term if you’ve worked with big libraries like Jetpack Compose or Firebase. But what exactly is a BOM dependency? Why is it important? And how can we create our own BOM for our SDKs and their dependencies? Let’s find out.
As an example, we can take a look into the Jetpack Compose BOM dependency’s package contents. For this purpose, we can open Google’s Maven repository and search for it. Inside you can see only a POM file. Let’s see what’s inside.
The Gradle build system Version Catalog is a powerful tool that can help you manage dependencies and plugins in your Android projects. Instead of hard-coding dependency names and versions in individual build files and updating each entry whenever you need to upgrade a dependency, you can create a centralized version catalog of dependencies that various modules and even projects can reference in a type-safe way with Android Studio assistance. This makes managing dependencies and plugins easier when you have multiple modules or projects.
Looking back at another successful year of Droidcon Berlin, the leading conference for Android development stirs a mix of emotions. The event, held in the vibrant city of Berlin, Germany, once again acted as a hub for sharing knowledge, networking, and innovation among Android enthusiasts from around the world.
Based on the website, This year’s Droidcon Berlin spanned three insightful days and drew over 1,300 enthusiastic Android developers. With a remarkable lineup of more than 100 technical talks spread across five tracks, attendees had an array of choices, exploring sessions that catered to various aspects of Android development. From in-depth explorations of cutting-edge technologies to practical workshops aimed at enhancing skills, Droidcon Berlin left no stone unturned in its efforts to empower and educate the Android community.
A Standout Keynote
A notable highlight of this year’s conference was the captivating keynote delivered by Hadi Hariri, a prominent figure in the development sphere. Hariri’s extensive experience, along with his role as the leader of the Developer Advocacy team at JetBrains, made his insights especially impactful. As a fan, I was thrilled to engage in a discussion with him, diving into topics like Kotlin Multiplatform (KMP) and the exciting future of Kotlin itself. Hariri’s passion for coding was palpable, and his thoughts on the future of Android development left the audience inspired and invigorated.
A Thriving Ecosystem of Innovation
Beyond the enlightening sessions, Droidcon Berlin 2023 provided a platform for numerous sponsors to showcase their contributions to the Android ecosystem. Interviews with key sponsors shed light on various offerings, including security services, publishing solutions, and dynamic SDKs designed to enhance app performance at runtime. These conversations highlighted the comprehensive support system surrounding Android development and underscored the conference’s role in fostering connections between developers and industry stakeholders.
The Strength of Community and Collaboration
A heartfelt acknowledgment goes to the dedicated members of the program committee, who meticulously curated the conference agenda. Their unwavering commitment to ensuring top-quality content undoubtedly played a role in the event’s success. The sense of camaraderie and the willingness to share knowledge that pervaded Droidcon Berlin 2023 underscored the significance of community in the ever-evolving realm of Android development.
As the curtain falls on another edition of Droidcon Berlin, a feeling of accomplishment mingles with anticipation for the future. The lessons learned connections established, and insights gained will undoubtedly continue to resonate within the hearts and minds of all those fortunate enough to be part of this annual Android extravaganza. Until next year, Droidcon Berlin stands as a beacon of inspiration, propelling the Android community to greater heights.
Dependency injection is a design pattern in which an object or function receives other objects or functions that it depends on. It aims to separate the concerns of constructing objects and using them, leading to loosely coupled programs.