Advertisement

Tower is a beautiful, native Git client designed to make Git
easy (and actually enjoyable!) to use.

With its best-in-class features and seamless integration with popular code hosting platforms such as GitHub or GitLab, Tower grants you all the power of Git in an intuitive interface.

👉 Free 30-day trial 👈


Have you ever used Multiple Cursors in Xcode? 🤨
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

Have you ever used Multiple Cursors in Xcode? 🤨

Last week I’ve told you about the advanced features of breakpoints in Xcode, and this week I want us to stay on the topic of little-know features in Xcode!

This time we’re going to talk about multiple cursors and how they enable us to quickly edit repetitive pieces of our code.

Read More
Discover the advanced features of Xcode’s breakpoints 🐛
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

Discover the advanced features of Xcode’s breakpoints 🐛

Nobody wants to spend their day adding breakpoints here and there, to try and piece together the reason why something is not working as it should.

So I want to walk you through the advanced features of breakpoints in Xcode: this way the next time a sneaky bug comes along you’ll be well equipped to track it down fast 😌

Read More
Here are 8 tips to optimize your iOS app 📱
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

Here are 8 tips to optimize your iOS app 📱

Last week I’ve released a video that I was really excited about, because it focused on a topic that I had never really covered on my channel until then: How to optimize the performance of iOS apps!

The video was received very positively, so I figured that it could be worth it if for this week’s email I wrote an outline of all the tricks!

Read More
Here’s how you can learn Swift Concurrency in 2 hours 👩🏽‍🎓👨🏻‍🎓
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

Here’s how you can learn Swift Concurrency in 2 hours 👩🏽‍🎓👨🏻‍🎓

During the summer, I shared with you my training courses to learn SwiftUI or Combine in a short amount of time.

I felt that the next logical topic to address was Swift Concurrency, because in the two years since its release, it has really become the standard for asynchronous code in iOS apps.

But this time I added a twist to the formula!

Read More
Some APIs are more dangerous than they seem 🫢
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

Some APIs are more dangerous than they seem 🫢

Last week I ran a poll on Twitter and LinkedIn.

Out of almost 500 votes, a short majority was thinking that calling the method .removeLast() on an empty Array would return nil.

But of course, I asked that question because there is definitely something more to it than what seems to be the straightforward answer 🙃

Read More
Here are 3 Swift Macros you can start using today 🤌
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

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!

Read More
Did you know you can use Copilot with an Xcode project? 🤖
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

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?

Read More
Here are 3 cool new features of Swift 5.9 🤩
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

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?

Read More
Here’s what you need to know about TipKit! 💡
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

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.

Read More
How risky is it to use [unowned self]? 🤔
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

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.

Read More
When do you really need to use [weak self]? 🤨
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

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!

Read More
Here are 5 Xcode tips you really wanna know 😌
Newsletter Vincent Pradeilles Newsletter Vincent Pradeilles

Here are 5 Xcode tips you really wanna know 😌

I’ve recently stumbled upon an amazing website that basically lists all the tips and tricks you can use to make the most of Xcode 😌

So I really recommend you go check that website! And in the mean time, here’s a list of 5 tips that you can start using today!

Read More