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

RocketSim: An Essential Developer Tool
as recommended by Apple

Issue 91
Nov 30, 2021

The downsides of open-sourcing code, writing articles in the public, and sharing your hard work in the wild.

My week started with this tweet which showed me an example of how I'd like followers to use my work. However, later this week I found out an almost exact copy of one of my recent articles.

Unfortunately, it's not the only example of articles or code shared for free and copied without shame. Tim had the exact same thing happening to his app. Yes, somebody copied his app and even linked to his website for the privacy policy!

In a way, you can take it as a compliment if anyone copies your work, but it's hard to accept people simply copying the work other devs spend a lot of time at.

Let's hope this doesn't happen too often, as it will be a reason for many to no longer open-source their code. I at least want to close this intro with encouraging you to stay away from being a copy cat and to appreciate anyone spending a lot of time on sharing free code and articles with you.

Enjoy this week's SwiftLee Weekly!

p.s. you can still join this month's giveaway

THIS WEEK'S BLOG POST

Creating your solutions is fun, and you'll learn a lot from the challenges you face. A comment scenario I've encountered over the years is finding out that a framework exists without fitting your exact needs. The same happened last weekend after I decided to write my app update-notifier with macOS support for RocketSim.

SPONSORED

Learn the most up-to-date techniques and strategies for testing new and legacy Swift code in this free practical course for iOS devs who want to become complete Senior iOS Developers. Learn more.

CURATED FROM THE COMMUNITY

CODE

I enjoyed reading this journey by Liam Nichols, in which he solves a pretty frustrating bug on iOS 15. I especially liked the step of improving error logging with non-fatals since it’s an approach we want to take often as well.
Retrying failed tests should not be seen as a way to make your test suite more reliable, but it can help to get your CI in a green state more often. We’ve recently updated our CI only to report failures if they didn’t succeed after a retry, but we’ve also implemented a warning to indicate retried tests. My advice is to benefit from this setting but also to spend time on fixing flaky tests.
If you’re using the interface builder for configuring constraints, you’re going to enjoy this tip by Keith Harrison.
Great news, another great blog arrived this week! Adam Rush launched his Swiftly Rush blog with nine articles ready for you to read! I must say, he picked a great name for his blog 😉
Josh “So Many Typos” Holtz did a fantastic job for Fastlane, once again, in which he adds support for using XCBeautify, retried tests, XCResult bundle formatting, and more. An update to look forward to!
More relevant than ever is to know how to test asynchronous code with all new concurrency changes. Gualtiero Frigerio takes us through a few examples, like testing Combine publishers, async/await, and async sequences.

SWIFTLEE JOBS

Is your company hiring too? Post your job position for free at SwiftLee Jobs and reach thousands of developers.
TL;DR Build for macOS, iOS and iPadOS in SwiftUI. Salary £80k in salary and stock options + 0.25% equity in stock options Get good perks and work from a dope...
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.

THANK YOU

Thanks for being a SwiftLee subscriber! 
Continue your journey: