Once-a-year Black Friday deals are coming. Read more.
Give your simulator superpowers

RocketSim: An Essential Developer Tool
as recommended by Apple

Issue 129
Aug 24, 2022

The joy of talking to speakers in person and sharing thoughts and experiences while having fun at a conference.

I gave two talks last week: one at SwiftConf and one at the Check24 office a day later. While the German trains didn't help, I did have a fantastic time.

For me as a speaker, but for you as an attendee, it's super-valuable to chat with fellow developers about experiences in day-to-day jobs. However, it might be intimidating to approach a speaker at a conference as you feel you're disturbed or speakers aren't waiting for you to handle questions you might have.

I and other speakers I've spoken to agree that this should not be the case! We're all developers, and I would love to meet you and hear your stories. I spoke with developers at SwiftConf and joined them for a beer right after, in which we had a chat for more than an hour. It was a highlight for me!

Take that courage, don't feel bad. You'll notice if a speaker doesn't have time to chat with you soon enough. Make the most out of your conference experience and try to meet fellow engineers.

----

Besides giving a talk, I also did three SwiftLee giveaways over the past weeks! In every talk I give, there's a chance for you to win a RocketSim license.

I'm happy to announce Xusi and Precious Osaro as winners of a SwiftLeeds conference ticket. Sam Khawase is the SwiftConf giveaway winner, and Ibrahim Yilmaz won at Check24. 

Congrats, you'll all receive more details soon! For all others: stay tuned since September will have an exciting new giveaway!

Enjoy this week's SwiftLee Weekly!

THIS WEEK'S BLOG POST

While it might be hidden: we're all using the @ViewBuilder attribute today when creating SwiftUI Views. I decided to dive into the functionality of this result builder and show you how you can use it in more places.

SPONSORED

Although you can create an app simply by throwing some code together, without best practices and a robust architecture, you’ll soon end up with unmanageable spaghetti code. Learn how to create solid and maintainable apps with fewer bugs using this free guide.

SWIFTLEE JOBS

(Remote)
Get your job positions listed on all 190+ SwiftLee articles and 4 SwiftLee Weekly editions. Read more.
Browse Swift-related Jobs, or add your own on SwiftLee Jobs.

CURATED FROM THE COMMUNITY

SWIFTUI

Are you using SwiftUI in your apps already? Or are you still using UIKit or AppKit primarily? Both are fine, and you’re not alone: Apple is still far from rewriting all their apps to use SwiftUI. Of course, this makes sense since it’s difficult to rewrite a complete app in SwiftUI. I found it interesting to see this overview by Alexandre Colucci, which clearly shows a progression.
We’ll likely combine SwiftUI with UIKit for a while until we fully adopt SwiftUI everywhere in our codebase. Integrating SwiftUI views inside a UICollectionView can be done in multiple ways, but I believe this article by Lee Kah Seng shows you the right way.
During my journey of implementing widgets into Stock Analyzer, one of the things that took most of my time was finding out how to refresh the widgets correctly. There aren’t many resources available, so I was happy to read this article by Shaun Donnelly.

APPS PRIVACY

Felix Krause shares insights into what JavaScript commands apps inject inside in-app browsers. This article is interesting for us developers from a user and development perspective. You might want to revalidate what your app is doing and respect your user’s privacy and security accordingly.

SWIFT

This article by Leonardo Pugliese is not only interesting if you’re preparing for iOS interviews but also if you want to know more about structs, classes, actors, and their differences.
If you’re using GraphQL, I bet you’ll like this proposal that’s currently in review. Built on top of swift-nio you’ll be provided with full server-side instrumentation for defining GraphQL schema, resolving queries, and encoding/decoding GraphQL messages.
Storing values in the UserDefaults is something we’ve all been doing for some time, but do you know how to store enums? If not, Sarun W. has got you covered. Extra win: his solution is helpful for other cases as well!
An exciting find by Rudrank Riyam; I did not know this! Whether I like it more is still the question, but I believe it helps improve consistency in our Swift code.
Have you ever connected Data Races to the deinit of your class or actor? Either way, there are exciting improvements on their way, and Doug Gregor is here to share them with us.

THANK YOU

Thanks for being a SwiftLee subscriber!

All my content is available to you for free. Like what I do and want to support me?
Help me reach my Sponsor goal on GitHub.