iOS
Articles on iOS performance, Swift optimization, Xcode tooling, and building fast Apple platform apps.
iOS engineering articles 631–660 of 733
Improved Mobile Performance
Teamweek just made a bold move: they killed their native mobile apps. Instead of maintaining separate iOS and Android codebases, they bet everything on a mobile-optimized web experience.
The Mobile Crash Reporting Pipeline at LinkedIn
LinkedIn processes massive volumes of mobile crash data to keep their app stable for millions of users. Here's how they built the pipeline.
Swift 4.1: Introduction of CompactMap
Muhammad Shuaib Khan from Bumble Tech explains why Swift 4.1 killed off a popular method. The culprit? A naming confusion that was breaking code in subtle, dangerous ways.
Swift 4.1 Introduction of CompactMap
Muhammad Shuaib Khan from Bumble Tech explains why Swift 4.1 killed off a popular method that was secretly breaking code. The culprit? A function that worked too well in the wrong places.
A Massively Multi-User Datastore Synced with Mobile Clients
Tad Book from Square reveals how they built a datastore that handles massive merchant catalogs while keeping mobile devices in sync, even when offline for days. The secret? An append-only architecture that make...
Building Input Accessory View For React Native
After three years and countless '+1s' on GitHub, React Native finally solved one of iOS development's most requested features. Here's how the team built InputAccessoryView from scratch.
Using Docker to build a testing infrastructure for web UI and mobile
LINE Engineering ditched expensive cloud testing services and built their own Docker-based infrastructure. The result? Flexible, cost-effective testing for both web and mobile.
Automating Mobile App Localization
Dmytro Khmelenko reveals how Freeletics turned localization from a bottleneck into a fully automated pipeline. The results? Measurable revenue spikes in newly localized markets and zero manual translation work.
Implementing Twitter's App Loading Animation In React Native
Ever wonder how Twitter's delightful logo-to-app loading animation actually works? Eli White reverse-engineered it and the solution is counterintuitive.
Screen Navigation in iOS
Bohdan Orlov tackles one of iOS development's messiest problems: screen navigation that's actually testable and maintainable. Most apps get this wrong from day one.
Screen Navigation in iOS
Bohdan Orlov from Bumble Tech tackles one of iOS development's messiest problems: navigation architecture that doesn't turn into spaghetti code. Most apps handle screen transitions the same way Apple demos them...
VIPER Architecture on iOS at Etsy
Michael MacDougall from Etsy reveals how they tackled iOS architecture chaos with VIPER. The overhead was brutal, but the consistency payoff changed everything.
Building a Reusable Component Library on iOS
Michael Caylus from BlaBlaCar reveals how his iOS team built a component library that cut development time and unified their UI across 117 screens. The secret? Treating UI components like Lego bricks.
Singleton, Service Locator and Tests in iOS
Bohdan Orlov from Bumble Tech tackles one of iOS development's most controversial debates: are Singletons and Service Locators actually anti-patterns, or just misunderstood tools?
Singleton Service Locator Pattern and Testing in iOS
Bohdan Orlov tackles one of iOS development's most controversial debates: when Singletons and Service Locators are actually useful (and when they'll wreck your test suite).
UIKit Best Practices and Tips
Bohdan Orlov from Bumble challenges a core assumption in iOS development: what if fighting UIKit is the real problem? His team's approach cuts boilerplate while keeping code maintainable.
Efficient and healthy background data prefetching at Instagram
Instagram's background prefetching could easily drain batteries and waste data. Here's how they built a system that's both fast and responsible.
The future of multi-modal interfaces
Meta has been quietly building the foundation for interfaces that understand speech, vision, touch, and text simultaneously. The future of mobile isn't single-mode anymore.
Testing React Native iOS Bridges
Szabolcs Tóth from Skyscanner reveals how they solved a critical testing gap when integrating React Native into their Objective-C iOS app. Their solution transformed flaky, hard-to-debug bridge tests into a rel...
RxSwift MVVM Architecture Pattern
Martin Moizard from BlaBlaCar reveals a critical MVVM pitfall that breaks when you switch from simple views to UITableViews. The culprit? How you feed inputs to your ViewModels.
How to Extract Analytics Data from Your iOS Application
Arsen Gasparyan from Revolut breaks down how to build an analytics system that's actually testable. Most teams bolt on tracking as an afterthought—here's the protocol-oriented approach that scales.
Mobile Apps: iPlayer Tech On The Move
Ross Harper from BBC's iPlayer team reveals how they ship to 45+ million downloads across thousands of device variants. Their secret? A shared codebase that builds two distinct products.
React Native Performance In Marketplace
Facebook cut React Native Time to Interaction in half on low-end Android devices. The secret? They stopped trusting their testing tools and went straight to production data.
Mind Maps for Fast and Effective Testing
Kateryna Sprynsian from Bumble's iOS team ditched traditional test cases for something faster. With weekly releases shipping multiple features, her team needed a testing approach that could actually keep up.
Importing Adobe After Effects Animations into iOS Apps
Radoslaw Cieciwa from Bumble reveals why their gorgeous After Effects loading animation nearly killed iOS performance. Spoiler: trim paths and CPU rendering were the culprits.
Strava Mobile App Versions
Jeff Remer from Strava explains why their mobile app jumped from version 5.14 to 14.0 in just four months. Spoiler: it wasn't feature bloat.
Zynga Geo Proxy: Reducing Mobile Game Latency
Sergey Skachkov and Ajinkya Apte from Zynga cut mobile game latency in half for global players. Their geo proxy solution turned frustrated users into retained ones.
Integrating React Native in an Existing Application
Guillermo Orellana from Bumble's tech team walks through the real-world pain of integrating React Native into an existing Android app. Spoiler: the official docs won't save you.
Building Mixed Language iOS Projects with Buck
Brian Zhang from Airbnb's Mobile Developer Infra team cracked a problem that seemed impossible: getting Buck to build mixed Swift and Objective-C iOS projects. The payoff? 50% faster CI builds and 30% smaller a...
iOS Linting at Pinterest
Michael Schneider from Pinterest built a custom linting system that catches iOS code issues at compile time, not code review. The secret? Clang plugins that hook directly into the compiler's AST.