Bad practice: not using throwing tests
Here are 3 Swift Macros you can start using today ๐ค
Thatโs it, Xcode 15 Release Candidate has been available since the middle of last week!
This means that we can now start using the new features of Swift 5.9 in production, including Swift Macros ๐ฅณ
So hereโs a list of 3 Macros from the community that you can start using today!
Hidden feature: private properties
Did you know you can use Copilot with an Xcode project? ๐ค
If youโre like me, you might have been a bit disappointed by the lack of any new AI-based feature that helps developers write code in Xcode 15.
That lack of an AI feature is even more frustrating when you know that itโs been more than 2 years since Microsoft has released Copilot ๐ฅฒ
But did you know that itโs actually possible to use Copilot with an Xcode project?
Bad practice: capturing self in a nested closure
Here are 3 cool new features of Swift 5.9 ๐คฉ
Youโre probably aware that Appleโs September keynote will be taking place on the 12th.
This means that it is now a matter of days before the official release of Xcode 15, and along with it the release of Swift 5.9!
So how about we prepare for it by going over 3 features that this new version of Swift will add to the language?
Bad practice: using an unsafe continuation
Hereโs what you need to know about TipKit! ๐ก
WWDC 2023 had a lot of cool announcements, but thereโs one Iโm sure no one expected: the release of a new iOS framework called TipKit!
So what is TipKit all about?
The goal of TipKit is to make it as easy as possible for developers to display short contextual information that highlights or explains a feature of their app.
Hidden feature: static properties
I can teach you SwiftUI in 12 hours ๐ฉ๐ผโ๐๐จ๐ปโ๐
Since the end of 2021 Iโve been teaching private SwiftUI training sessions for a few French companies.
Their feedback was pretty positive, so last spring I decided to record this training course through a series of free livestreams on YouTube.
(and if youโre wondering about the price, itโs available entirely for free!)
Discover localizedStandardCompare()
How risky is it to use [unowned self]? ๐ค
Iโm sure you already know about retain cycles and how they can be broken by capturing a weak reference to an instance.
You might have also heard that, instead of a weak reference, you can also capture an unowned reference.
And you might have even heard that unowned reference are a bit more optimized, but also a bit more risky.
Bad practice: using if instead of guard
I can teach you Combine in just 4 hours ๐
Last June, a French company hired me for a private training session focused on SwiftUI and Combine.
This lead me to prepare some training material on Combine and I figured why not make it available to everyone?
Discover MeasurementFormatter
How about 5 new tips you can start using today? ๐ก
One of the benefits of spending a lot of time on Twitter (or is it X now? ๐ค) is that I see a lot of iOS folks share super useful tips!
So I went through my bookmarks and made you a list of the 5 most useful tips Iโve found ๐
Bad practice: capturing a method reference
Here are 5 tools that will improve your iOS project ๐
This week weโre talking about tooling ๐ ๏ธ
The iOS community is known for releasing amazing content and open-source tooling make no exception to that rule!
So let me show you 5 tools that can really help improve your iOS project!
Discover async let
When do you really need to use [weak self]? ๐คจ
In todayโs email, weโre going to talk about a tricky question that iOS developers are bound to ask themselves regularly:
โShould I use [weak self] in this closure?โ
To answer this question, weโll go over a few examples. And as youโll see, the answer is not always as clear cut as it seems!