Sponsored Link
Find Your Next iOS Dev Job Through Hired
Hired is home to thousands of actively hiring startups and Fortune 500 companies. Create a free profile, name your salary and connect with hiring managers looking to grow their teams.
News
Is Apple Banning Free Analytics SDKs?
There are some great points raised in this post from Allen Pike, but this sentence from his conclusion should stop you in your tracks if you use Firebase:
all iOS apps should be prepared to migrate off of the Google Analytics, Firebase, Facebook, and Flurry SDKs, potentially on very short notice
I intentionally stopped linking to anything related to Firebase (and similar services) part-way through 2018 as, in my opinion, putting a third-party library at the core of your app was too big a risk. Alan's article isn't specifically about Firebase, but the dependencies you embed in your app, and the privacy policies that come with it, should be a part of your decision process. It's one thing to need to switch out your analytics provider on short notice, but I can't imagine trying to replace Firebase in a non-trivial app.
For full disclosure, Firebase sponsored this newsletter back in 2014.
Homebrew 3.0.0
This may not be directly related to iOS development, but I'd bet the vast majority of iOS developers use brew
on a very regular basis. The headline feature is Apple silicon support for the tool. Packages are also increasingly becoming M1 native too, but that's a slightly longer road. With Rosetta though, it's all looking good. š
Tools
swift-package-info
How much bigger will that dependency you're thinking of adding to your project make your app? I bet you don't think much about it, but this new tool from Felipe Marino can tell you. I'm also interested in potentially adding this information to packages pages on the Swift Package Index. I think that could be a useful stat to expose.
Dependencies
This new app from Alexandre Colucci will visualise your app's class dependencies and complexity. What does that mean? You'll want to check out the details of the software entropy algorithm to learn a bit more about what this does, and how it works, but if you work on a large project, it's likely to prove interesting. The next question, of course, is what do you do about the results... š¬
For full disclosure, Alexandre sent me a promo code for the finished version of the app, and I also received beta builds during its development.
Code
Keyboard Navigation in SwiftUI
Great keyboard support is an important part of making your app easy to use, especially on macOS, but also these days on iPad OS. Peter Steinberger digs into the reality of this important topic and ... well, you should read it. š¬
Operation
If you've been working with iOS development for a while, you probably started with NSOperation
and gradually moved to GCD and DispatchQueue
over time. I know that's how it went for me. Operation queues have some great features that aren't readily available in GCD, and they also make separation of your code easier. Aren't we lucky to live in a world where we have both options? Bruce Evans explains.
Result builders in Swift explained with code examples
Result builders got a mention in last week's What's new in Swift 5.4, but this week Antoine van der Lee dig into using them in a bit more depth. He takes the example of creating Auto Layout constraints with a result builder, which I really liked.
Meridian
Soroush Khanlou with a blog post on Meridian, his new server-side Swift library. It's not ready to compete with Vapor, and I'm not sure it's intended to, but that doesn't mean you shouldn't read about it! It's worth a read.
Books
Swift SecretāŖsā¬
Sometimes you read a technical book to learn a practical skill that you'll directly use in the apps you work on, and sometimes you read a technical book to learn something you wouldn't otherwise ever know anything about. This book from John Holdsworth, creator of Injection4Xcode is definitely in the latter category, and that's a good thing. š
For full disclosure, John sent over a review copy of the book.
Jobs
iOS Software Engineer @ Grammarly ā Weāre looking for an experienced iOS Engineer to help us level up Grammarly on iOS. You will work in a team of iOS engineering professionals and partner closely with the Design team from the ideation stage to ultimately bring your ideas to life. ā Kyiv Ukraine
Senior iOS Engineer @ Doximity and iOS Developer @ Doximity ā Doximity, the medical network used by over 70% of US clinicians, is hiring passionate iOS engineers (remote-friendly!). You'll get to be part of an amazing product team and work on an app that is constantly evolving. Use your skills (Swift, MVVM, FRP) to be an integral part of our newly launched telemedicine feature. Apply today! ā Remote within the US
Are you hiring? Get your open iOS development positions listed right here by posting a Featured Listing over at iOS Dev Jobs.
And finally...
Xcode 13 code indentation is next level. š
Comment
If you follow Kosta Eleftheriou on Twitter, youāll have seen his recent campaign to yet again urge Apple to tackle scam subscription apps on the App Store.
Kosta isnāt the first person to embark on this mission. Many have tried, most notably David Barnard who attempted to effect change for years. Iāve commented on it severalĀ times too. Itās far from a new problem, but itās not getting any better, and as Kosta points out, these apps operate their deceptive techniques for far too long.
These scams hurt the App Store in ways that are difficult, if not impossible, to reverse. Iāve said this many times, but once consumer trust in the store is gone, itās gone forever.
Iāve seen a couple of suggestions this week that letting these scam apps live on an intentional oversight to āboost services revenueā. I donāt buy this at all. If that were true, this would be the most shortsighted way possible to look at things and eventually decrease services revenue. I hope youād agree that Appleās bet on the App Store is a long term one.
The tricky bit of this problem is the most likely reason Apple doesnāt police these scams aggressively. Someone would have to answer the question āDoes this represent value for money?ā There are obvious edge cases, like the āvirus scannerā that charges $99 a week to do nothing. Everyone can agree thatās a scam. Or, the weather app at $0.99 a year for a carefully crafted experience delivering accurate information. Clearly, not a scam. But drawing any line in-between those two extremes puts Apple in an impossible situation. I donāt want someone else being able to judge the value of what I produce, thatās the marketās job. Apple doesnāt want to go there either, even in regular times but especially not with potential anti-trust issues looming.
Iād like to see Apple tackle this from two sides. First, platform changes could help, like removing weekly subscriptions and redesigning purchase and subscription management UI. That might stop people signing up, and even potentially move the needle from āThe App Store is scamming meā to something more specific to the rogue developer.
The other side of this issue comes down to Appleās most significant platform problem, communication. For example, I shouldnāt have had to find a statement that Apple banned more than half a million developer accounts for fraudulent activity last year at the very bottom of an unrelated article:
Communication about what Apple is doing and how they think about these problems would be a huge step in the right direction. If nothing else, itād stop all the hot takes, including this one. Iād much rather be focusing on the positive things happening in this industry.
Dave Verwer