Swift Developments is a hand-curated newsletter containing a weekly selection of the best links, videos, tools and tutorials for people interested in designing and developing their own apps using Swift.
Business
The (Not So) Hidden Cost of Sharing Code Between iOS and Android
@eyalguthmann – mobile team lead at @Dropbox – reflects on efforts to share code between iOS and Android, and their subsequent decision to go fully, platform-native.
dropbox.com
Developers Mentoring Other Developers: Practices I’ve Seen Work Well
In my experience, mentoring is a great way to grow as an engineer – either by passing on some of your knowledge and experience to others (a skill in and of itself) or by learning from some of the people around you. @GergelyOrosz has written an interesting article on the topic starting at what mentorship is and covering some of the mentorship practices that he has seen work well over his career.
pragmaticengineer.com
Design
Dark UI Design: A Step-by-Step Guide
You might not be a designer by trade but this step-by-step guide from Mohammed Ibrahim will most definitely improve the odds of you designing a dark theme that provides a great user experience! I picked up a few useful tips from this one.
prototypr.io
Code
Building BarChart with Shape API in SwiftUI
With the arrival of SwiftUI, we also gained access to a feature-rich set of shape APIs for drawing custom shapes one screen. This weeks article from @mecid takes a quick tour through these new APIs, looking at the Shape protocol, some of the in-built shapes we get for free before and putting it all into practice by building a custom BarChart view.
github.io
Error Handling in Combine Explained with Code Examples
So you’ve got your head around the basics of publishers, subscribers and operators in Apple’s Combine framework but what about error handling? @twannl introduces the basics of catching, ignoring and handling errors in event streams.
avanderlee.com
Testing
Real-World Unit Testing in Swift
If you’re new to the world of unit testing, then check out this article from @V8tr which provides a great introduction to the basics.
vadimbulavin.com
Tools
Thread Sanitizer for Swift on Linux
Great news! Thread Sanitizer is now available on Linux as part of Swift 5.1! @yln provides some details on the Swift.org blog along with some examples of how to get started.
swift.org
MakeML’s Automated Video Annotation Tool for Object Detection on iOS
One of the most time-consuming parts of any machine learning is preparing and sanitizing your data set. With this in mind when I saw this article from Alexey Korotkov discussing his new tool – MakeML – that promises a simpler, quicker and overall easier approach for creating labelled data sets for your object detection projects I couldn’t help but be interested.
fritz.ai
Mac
The Sad State of Mac App Distribution
A fairly candid review of the current state of Mac App distribution by @YoungDynastyNet. Whilst I don’t tend to work on Mac apps much myself, I can’t help but agree with some of the points he’s making.
youngdynasty.net
Videos
SwiftUI and Core Data – Build a To-Do List App
I’ve been experimenting with this myself over the last few weeks so enjoyed this tutorial from @brianadventcode in which you’ll learn how to build your own To-Do List app using SwiftUI and CoreData.
youtu.be
Other
Why Won’t It…
We’ll close things out this week with a good reminder from @unclebobmartin that although depending on your circumstances you may receive the design for an app from a designer or UX team, it’s you who are writing the code and thus it’s also you who has a responsibility to help improve the overall usability of the app. Something to think about. Have a good week.
cleancoder.com
Welcome to Issue 195! It’s been a busy week again for me due to both work and the fact that the kids are still off for the summer holidays – definitely fun but not so great for productivity! ? Anyway, with this in mind rather than a long intro, we’re just going to dive straight into the links and articles this week. Let me know what you think.