check out SQLPro today.
It’s hard to get a handle on exactly how widespread this issue is. It’s almost certainly the case that rejections for private API usage are from an automated tool, so it’s not the usual “just a human making a bad decision” problem. However, some Electron apps are making it through. I’d guess things are in flux at Apple around this right now, but the good news is that there’s already an open pull request to remove the use of some of those private APIs. Hopefully, everything will be back to normal soon, but it’s a good reminder that there is a real risk to building the core of your app around third party code.
You may have been enjoying reading Javier Nigro’s posts about SwiftUI (I’ve linked to him a couple of times). I didn’t know he was working on this though! It’s an entirely new set of documentation, and it’s really good. It’s shipped as an app, which might seem strange until you realise that allows him to include interactive demos for many APIs. Wonderful! 👍
For full disclosure, Javier sent me a review copy of the app as he launched it, but this link is not sponsored.
You’re almost certainly already up to date if you use a third-party service to send your pushes, but if you’re sending them yourself then you need to read this right now. You need to switch to the HTTP/2-based APNs provider API as soon as possible. It’s no longer going to work this month next year.
UPDATE: As Jeff Nouwen notes it’s transitioning in 2020, not 2019… I really should learn to pay better attention! 🥴
How can you make sure your CI always succeeds? One way is to make your local development environment match your CI environment as closely as possible. Sergio Fernández has a suggestion on how to do that with Bazel.
I’m not sure this technique from Kristijan Kralj will ever produce great documentation, but it does output a useful artefact from your testing process. It’s a good way to make sure your tests are well named, so do it for that reason.
“Should I use SwiftUI” this year has really been the question of this summer. John Sundell gives his opinion on best practices around adopting new technologies and talks about how you can move towards SwiftUI slowly. He also links to his recent podcast episode where he interviews Josh Shaffer on SwiftUI which I would also really recommend.
Get everything you need to know about the scene delegate with this post from Donny Wals, then follow-up with how to support multiple windows on iPadOS. While we’re on the subject, it’s also worth reading Vadim Bulavin’s thoughts on the scene delegate and state restoration in iOS 13 too.
I’ve been watching this set of articles from Rob Whitaker grow over the last couple of months and I’m happy to see that the series is now complete! He covers Named Controls, Images, Dynamic Type, The Accessible User Interface, Sort Priority, Attributes, Traits, User Settings, and Semantic Views. Great stuff.
As with almost everything related to accessibility, following these rules for designing for people who are on the autistic spectrum, have anxiety, dyslexia, or low vision will make your apps better for everyone. I think the stand out tips here are in the image around designing for users with anxiety though. Really interesting.
Sarah Reichelt with a very simple, clear explanation of how data should flow around your app in a SwiftUI world. The post covers everything from simple properties, through @State
, @Binding
, @ObservedObject
, and @EnvironmentObject
. 👍
Fancy something low level to finish this week’s newsletter off? I enjoyed this talk from Derek Selander, author of Advanced Apple Debugging & Reverse Engineering, from a recent SLUG meetup.
Swift Engineer @ WillowTree – At WillowTree, Swift Engineers have the freedom to create products people love. You’ll collaborate with a cross-disciplinary team to build large-scale products for well-known brands. We look for team members who advocate for software engineering best practices and inspire their team to continuously learn and improve. – Charlottesville VA
Mobile Engineering Manager @ Betterment – You will have the ability to manage a team of bright mobile developers and stay hands-on with modern mobile technologies – New York NY
iOS Engineer @ onX – If you’re passionate about writing great code, love playing outside, believe in protecting access to public lands and want to dominate the off-pavement mobile GPS market, then come join onX! Based in Montana, but open to remote for Senior level. – Bozeman MT, Missoula MT, or Remote
iOS Engineer @ Five Good Friends – We’re an Aged Care and NDIS service provider made up of good people using helpful software. You’ll be taking over the reins of our iOS app from our CTO to become its dedicated owner. This is a nimble, indie-like position where you’ll craft everything from big pieces of architecture through to little pieces of polished interactions. – Brisbane, or Remote within Australia
iOS Developer @ Bandsintown – Bandsintown is a concert discovery and recommendation app powered by over 500,000 artists and serving over 50 million users. We’re looking for an iOS Developer to join the team and help us continue to be the leading product in our field. – San Diego CA
Senior iOS Engineer @ Scoop – Have you ever dreaded a long commute? So have we. We’re a small iOS team that’s improving the lives of commuters. Our app is 100% Swift, well-architected, and well tested using industry best practices. Work with a fun highly-collaborative team that’s making a real impact on people’s lives, join Scoop! – San Francisco CA
There’s even more job listings over at iOS Dev Jobs! Or, are you looking to hire a new team mate?