Give your simulator superpowers

RocketSim: An Essential Developer Tool
as recommended by Apple

Issue 83
Oct 05, 2021

In-person conferences, how does that work?

I'm writing this issue after just arriving in Leeds. It's crazy to realize I'm giving a talk at an in-person conference this Thursday.

I'm super excited to see us do so again, as it's such a unique experience to meet fellow developers at and around a conference. Meeting in the bar the night before, hanging out at the conference, and going to another bar after the conference took place.

If you get a chance to go to an in-person conference, I encourage you to do so. It might be scary for some of us, but I'm pretty sure you'll soon meet many great developers sharing their stories of building applications with Swift.

Unfortunately, SwiftLeeds won't be able to record my talk. I'll be solving Data Races using Actors in Swift, which will be a great talk to watch for you too. Therefore, I'll try and find another conference or meetup to give the talk again so I can get it recorded and delivered to you.

Until then, enjoy this week's SwiftLee Weekly!

THIS WEEK'S BLOG POST

Actors are a great addition to the Swift library to synchronize access to shared mutable states. Sometimes, however, we want to have more control over what is isolated or not. Using the nonisolated and isolated keywords we can give the compiler instructions in what is accessible and what is not.

SPONSORED

See how Firebase tools like Crashlytics, Remote Config, Performance Monitoring, and App Distribution can help you to track and fix stability issues in your app, and pinpoint performance issues early. Learn more.

SWIFTLEE GIVEAWAY

Over the past few days, you've been able to join the monthly SwiftLee Giveaway and get a chance to win a copy of the Best-in-Class iOS App: The Book Series.

I'm happy to announce this giveaway is won by Sanjay Vekariya! We'll contact you soon!

CURATED FROM THE COMMUNITY

CODE

Jc Pastant is sharing some tips on working with Combine you might not know yet. I liked the weak self section in the end because it’s an easy one to get into yourself.
It’s sad to realize we’re not yet able to use SwiftLint with Swift Packages, but Alexandre Colucci shares a tip on how to solve this today. We’re using a similar solution at WeTransfer that helps us keep our code aligned across projects and packages.
I’m unsure whether I would use this technique in my apps, but I’m pretty sure that’s because I’m a bit inexperienced with the Mirror API in Swift. Aryaman Sharda shares how we can use this API to access private properties within unit tests, an excellent replacement for exposing our properties just for tests.
As Marin Todorov mentions: take these results with a grain of salt. Though, it’s interesting to see the different performance results in this research where Actors aren’t performing as well as other locks. I would love to know more about the story why, but this is an exciting start.
I agree this was a mystery before. However, after reading this detailed article by Andy Ibanez, I can no longer call it a mystery! I’m not sure whether I have had use cases before in my projects, but it’s good to know this option exists when decoding JSON.
I’m thanking Bruno Rocha here to remind us to visit Xcode’s organizer way more often. It contains so much valuable information on the performance of our apps for free! This time, it’s the Energy Organizer solving a CPU Usage related crash.

STORIES

Many developers I meet are not so good at keeping up their code documentation. Sometimes I wished I even went further than just code documentation as I revisit old code without the context I’ve had at the time of writing. Hopefully, the tips provided by Kyle Sherman help me make better notes for my future self.
A few years back, we released the Swift for Good book together with many great writers from the community. Bas Broek was one of them and shared his story behind it.

PODCASTS

I enjoyed listening to this podcast of John Sundell with special guest Marcin Krzyzanowski. There are quite some rabbits in this episode, but it was fascinating to listen to Marcin’s story on his challenges with Swift Studio.

SWIFTLEE JOBS

Is your company hiring too? Post your job position for free at SwiftLee Jobs and reach thousands of developers.
Paper® is the immersive sketching app for capturing ideas anywhere. Over 30 million people have found their personal creative space in Paper—handwriting notes, drafting, diagramming, sketching, and giving form to...
DockYard is seeking help to complete a high-value open source project. You should be experienced in SiwftUI and building idiomatic modern Swift based iOS apps. Experience with Elixir/Phoenix a plus.
Work with Swift, SwiftUI, and Combine in a project that’s fully written in Swift. A modular foundation built with Swift Package Manager makes it a great project to work in.