Because even developers deserve to have fun.

Streamlining your day-to-day workflow with automation can reduce friction within and between development teams. It also removes the most tedious and repetitive parts of app development.

But it can also be one of the most difficult things to do as an iOS developer.

We've chatted before on the importance of Continuous Integration but in this article we will explore this fun, sometimes complicated, but overall stress-reducing aspect of making iOS and Swift apps with a list of automation tools we’ve enjoyed using in the last year or that we’ve seen work well for others.

Continuous Integration with Kyle Newsome

Continuous Integration with Kyle NewsomeContinuous Integration with Kyle Newsome

101X30

00:0040:52

More episodes

  1. Continuous Integration with Kyle Newsome

41 min

Guest

Continuous Integration Issues with iOS

  • Deployment Issues
  • Cache Issues
  • Continuous Integration 101

How to Get Started

  • Removing Dependencies on People and Files
  • Reproducible Anywhere
  • Using Pull Requests or Code Reviews As Triggers
  • Having Tests to Address Pain Points
  • Dealing with Certificates and Provisioning Profiles
  • HashiCorp
  • Using Tools Like Fastlane

Comparing Services

Feedback Loops and CI

  • Having Healthy Unit Tests
  • Rapid Results through Automation
  • Proofing Builds Before QA

Transcription

Leo Dion (Host): Hey, Kyle, how are you doing?

Kyle Newsome (Guest): I'm doing great. Thanks very much. It's unfortunately a slightly rainy day in Toronto here, but otherwise, a good mood.

Leo Dion (Host): Yeah, same here. It's been a weird, cause. I don't know what Ontario's like, but Michigan. It's like one day was 80 degrees and then the next day dropped down to like 50 or 60

Kyle Newsome (Guest): It's okay. I lived a little bit in the States, so I like can do the conversion. I know that like 70 is nice and comfortable. Eighties getting to hot sixties like not too bad.

Leo Dion (Host): I think fall's finally here. Yeah, so another sign of fall is the new iPhones. Did you get anyone iPhone?

Kyle Newsome (Guest): I got the new iPhone 11 pro max. Which I've been waiting to upgrade for a few years. So this is like my first experience with like the X, you know, edge to edge screen as well.

Leo Dion (Host): What do you think of it?

Kyle Newsome (Guest): Honestly, so far I'm pretty impressed with it and as much as people have complained about how the three lenses look, I actually think it looks pretty nice.

... (more dialogue content would continue here)...

Automation Tools

  • Xcodegen vs Tuist for Project Generation
  • Gitlab CI vs GitHub Actions vs Jenkins
  • The power of Fastlane
  • Yes Makefiles are still great!
  • Using ArgumentParser and ShellOut
  • macOS Development Challenges

Fastlane

Fastlane is a well-established platform for automating your iOS app’s deployments and releases. The platform's tools handle signing, certificate management, screenshot creation and help save you loads of time when releasing your app.

Xcode Cloud

Xcode Cloud is Apple’s own (paid) service. As we’ve come to expect from Apple, the service brings together a range of different tools iOS developers were already using or familiar with so that you can do more without having to rely on anything third party or even without leaving Xcode.