Welcome to the latest edition of The Flight Deck, Runwayâs monthly newsletter about mobile engineering and release management. This is our very first edition of 2024 (aka The Year of Vision Pro), which means we should probably wish you all âHappy New Year!â Though itâs getting late enough in January now that âHappy Current Year!â might be more appropriate. Anyway, we hope things are going well for you and your team so far in 2024, and that your year keeps getting better from here!Â
Each and every month we bring you perspectives on scaling your mobile team, juggling extra work even without scaling your mobile team, keeping mobile team members happy, and just having an all-around better experience shipping mobile apps.
Read on for this monthâs highlights.Â
Posts we likedÂ
Measuring developer productivity in the real worldÂ
Software engineering is knowledge-based work, so the question of what it means to be âproductiveâ is tricky. How can engineer productivity be measured in a way that is useful, and isnât gameable or actively harmful? Abi Noda takes a close look at the metrics used by Google, LinkedIn, Peloton, Datadog, Notion â plus 12 other tech companies â and lays out how to select the right metrics for your own team.Â
Asynchronous and throwable closures for SwiftUI Button
Wouldnât it be nice if there was a better SwiftUI Button implementation that provided loading and failing behaviors for free? It absolutely would, which is why Thomas Durand built ButtonKit, a Swift Package that supports both behaviors for Button. Read the story of how (and why) he built it.
End-to-end automation of Android Baseline Profiles on CI
With Baseline Profiles for Android, you can pre-package a list of classes and methods that are required during launch or in the core flow of your app. This list is pre-compiled to machine code so itâs ready to execute, making startup and key user interactions faster. As you make changes to your codebase you need to update these Baseline Profiles along the way, and Sagar Viradiya details how to automate exactly that.Â
Submit your apps to the App Store for Apple Vision Pro
The time has come. You can now build and submit spatial computing experiences for Apple Vision Pro. Most existing apps can run unmodified on the VIsion Pro, so itâs entirely possible that all you need to do is edit your appâs availability in App Store Connect and customers will be tapping and swiping the air like theyâre using your app in an episode of The Expanse. Biggest question: does the Apple Vision Pro support the concept of legs?
A deep dive into how Acorns drastically changed their iOS infrastructure
Emerge Tools takes us on a detailed, month-by-month walkthrough of how Acorns dramatically updated their iOS infrastructure in 2023, going from v4.27 in January up to v4.75 in December.Â
Posts we wroteÂ
Avoiding release anxiety through communication
Knowing how to talk to people is probably the most useful skill you can have, regardless of who you are or who you work with. Unless you work completely alone, you canât accomplish anything without talking to people â and in the context of work, we can safely attest that there are a wide range of problems that surface purely due to communication problems. Hereâs how to avoid those problems. Part 2 of a series we shared in the October edition of The Flight Deck.Â
How Hinge Health transformed their mobile releases from distractions to non-events
Learn how Runway helped Hinge Health â whose apps are relied on by millions of patients â establish a release process that wasnât so manual and nerve-wracking. Releases that used to be big, worrisome, stressful events became easy non-events that just⌠happen. Read on to see what all prompted a newly onboarded Hinge Health release pilot to say âwow, this is magic.âÂ
How to build an App Store Connect API client in Swift using OpenAPI
The only thing thatâs required to get started with the App Store Connect API is an API key, but to really make the most of out it â so you can, for example, build your own internal tools powered by App Store Connect data â setting up an API client to authenticate with and make requests out to the API is a good idea. Learn how to do exactly that, using Appleâs OpenAPI generator â with detailed code samples.Â
Featured featureÂ
The release pilot rotation in Runway is a list of users that we iterate through to automatically assign as pilots (aka captains, drivers, etc.) on each release. You can reorder the rotation and swap in one-off subs as needed (or â sneak peek â automatically sync with tools like PagerDuty). Weâll handle all the comms so everyone knows when itâs their turn and whoâs on deck next.Â
â
â
Head to the Release pilot rotation section in App settings to add and remove users from the rotation, as well as update the order of the list. Substitutions can be made at release level, and will be reflected on the list. For a user to be eligible to be included as a release pilot, they must be in your list of app users (App settings > Team) and must have the Release pilot role.Â
Weâve come to the end of this monthâs newsletter. See you in February, when the days will be either longer or shorter (depending what hemisphere youâre in) and the nights will hopefully not be too much colder (for anyone everywhere).