Sponsored Link
Try Orka – Orchestration with Kubernetes on Apple
You’ve heard about Orka – MacStadium’s new virtualization layer for Mac build infrastructure based on Kubernetes. Now, check it out for yourself! Get hands-on access to a free Orka demo environment where you can spin up VMs, explore the Orka CLI, run a build with the Jenkins plugin, test an iOS app, and more. Try Orka here.
News
The iOS Developer Community Survey 2019
It's been a fantastic week for the iOS Developer Community Survey that I launched last week with around 1,400 people taking the time to fill the survey in already. Thank you! 😍
The survey is going to stay open for a couple more weeks, so it's not too late to complete it if you didn't have 20 minutes (which is about how long it's taking to complete) free last week.
Also, I'd love for this survey to reach all of the corners of this community, not just people who read this newsletter. Would you help me spread the word? The data is already looking fascinating, but I'd love to see more. Thank you.
Tools
Dash 5
In my opinion, Dash is the best way to consume the Apple API documentation that's already installed on your machine, as well as documentation for almost any other language you can think of. This new version improves the search UI, and it remains one of my favourite developer tools. 👍 I didn't hesitate to upgrade.
Hiding the Safe Area Layout Guide
So easy, that I’m almost embarrassed to mention it.
🤯 I did not know you could do this... Thanks to Keith Harrison for pointing it out!
Code
Alley, automatic retries for any URLSessionDataTask
Aleksandar Vacić talking about his new micro-framework, Alley. It's not a networking framework, we already have URLSession
for that. It's just a way to make your networking code more reliable by automatically retrying requests. I like it. 🙌
Custom controls in SwiftUI
Pavel Zak with a great piece on creating a beautiful, completely custom slider control in SwiftUI. I think this is a great demonstration of how custom UI like this is significantly easier than it would have been with UIKit.
Performance Battle: AnyView vs Group in SwiftUI
Is AnyView
really a potential performance problem in SwiftUI? Let's find out with Alexey Naumov, shall we? This is a really great post on performance in general, as well as this specific investigation.
Clearing your app’s launch screen cache on iOS
Ever tried to make some changes to your launch storyboard, only to see a cached version when you run your app? Here's a short little snippet of code from Guilherme Rambo that forces the cache to be cleared on every run. Obviously not something you'd want to ship, but it'll come in handy during development.
Design
Can You Learn Design?
Before Jordan Morgan even gets started with this question, let me take a crack at it. YES, design is a skill that can absolutely be learned, by anyone. Like any skill, practice (although, it'll take more than you think it will) and experimentation will make you a little better at it every day. Now, let's read what Jordan has to say about the subject! 👍
Videos
Videos from iOSDevCampDC 2019
Are you ready for this great set of videos from iOSDevCampDC which happened back in August?
Books
Swift for Good
This is wonderful. Let's not even talk about what will certainly be fantastic content from the 20 leaders of our community who have each written a chapter of this book. Let's just talk about what a great opportunity this is to make a donation to Black Girls Code. I bought my copy, and you should too.
Jobs
Senior iOS Developer @ Papershift – Be at the center of our new in-house mobile team that will reimagine both the design and technology behind our time tracking and shift planning apps to provide the best possible experience for both businesses and consumers alike. And yes, we are migrating to SwiftUI, today! 😍 – Karlsruhe Germany
Senior iOS Developer @ Karmarama – You’ll be empowered to architect and contribute to the development of innovative products for a wide range of exciting well-known brands. You will bring a wealth of iOS experience to the team, steering our architecture, open-source frameworks and evolving delivery allowing us to refine capabilities. – London UK
Why not start the new year with a new job? There are more to choose from over on iOS Dev Jobs.
And finally...
... and you thought that dealing with a misaligned UITextView
was a pain... Be thankful you're not a game developer 😂
Comment
App Store review guidelines are strict when it comes to pricing, especially around subscriptions. If you’re anything like me, you’ll think that’s a good thing too! If this platform is going to be one where we can make money in the long term, it’s essential that consumers trust it.
So it’s especially frustrating to see Apple not playing by the same rules as the rest of us have to. Like buttons that say “Start Reading” and look like they are part of an on-boarding UI, when they actually start recurring subscriptions. Or changing the rules on how subscriptions work by making first-party app subscriptions cancel immediately, and third-party ones cancel at the renewal date.
I’m sure this is just “big company problems” caused by one team not talking to another inside Apple. But even if that is the case, it’s not good enough. If it’s this obvious to third-party developers that this erodes trust in subscriptions, and is bad for the platform. It must be obvious internally too.
I’d love to see Apple prioritise getting these inconsistencies fixed and hold their internal teams to the same standards that they hold us to.
Dave Verwer