Orchestrate macOS VMs on genuine Apple hardware - Try Orka
With Orka and MacStadium, moving your Mac build infrastructure to the cloud is just as easy and powerful as using AWS or GCP. Orka brings simplicity and scalability to developers building for Apple devices. Spend less time managing servers and more time building great apps. Give Orka a try for free.
Subscription offer codes now available
The revenue split story isn't the only App Store news this week, as Apple also rolled out offer codes for subscriptions. Along with the existing subscription promotions of introductory offers and promotional offers, offer codes now make up a very comprehensive set of tools for gaining new or winning back subscribers.
You might also want to check out what Denys Zhadanov has to say about it, for a good summary of the promotional tools you have available as an app owner.
Does it ARM?
Did you break down and order a new Apple Silicon machine last week? Here's a list of everything that's native/compatible, and if you find an app you love that's not quite there yet, you can sign up for notifications when it becomes available. What a useful site!
(A useful site that I thankfully don't need as I managed to stay strong and not order one! 😅)
Build performance analysis for speeding up Xcode builds
Here's Antoine van der Lee with a great tip on how to use Xcode's new "Build with Timing Summary" feature to find out which parts of your build are slowing things down, and what you can do to make things a little faster! 🚀
Using xcconfig to Configure to Your Developer Account
I'll push people to learn about
xcconfig files at every opportunity, so I'm grateful for Junda Ong provided me with a great opportunity this week. He talks about why you should use config files to set your development team and how to do it. While we're on the subject, you do know about James Dempsey's Build Settings Extractor project, right?
This project from Nick Entin isn't new, but I came across it recently via Ryo Aoyama's extension to Playbook, and it's great. Do you regression test the accessibility of your app? You should, and this project will help you do it. It's that simple.
As powerful as
NSPredicate is, you won't find many people talking about how readable their predicate code is. If you're frustrated with the official API, then you might want to check out this new library from Faiçal Tchirou that leans on operator overloading to make a more concise API.
How an Hstack Lays out Its Children
The layout rules for a SwiftUI horizontal stack are simple, right? Simple stacks will be fairly predictable, but what happens when you start to add constraints? Here's Chris Eidhof with a great post where you'll start with a stack, and end with a better understanding of the SwiftUI layout engine.
SwiftUI View Lifecycle
Talking of the SwiftUI layout engine, if you're interested in understanding more about how it works then this piece from Vadim Bulavin should be on your reading list this week.
Keyboard shortcuts in SwiftUI
Great support for keyboard shortcuts is one of the main things that set great iPad and macOS apps apart from their competition. So if you want to make a great app, and are using SwiftUI, you should get straight to this article from Majid Jabrayilov.
Senior Mobile Software Engineer, iOS – Doximity, the medical network used by over 70% of US clinicians, is hiring passionate Senior 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! – San Francisco CA, or Remote within the US
macOS Software Engineer @ PreEmptive – We make cutting-edge products that protect apps via obfuscation and injected runtime checks. We're small, we're agile, and we're serious about forming and supporting great development teams. We're looking for someone with iOS / LLVM / C++ expertise help develop our next great product. Remote-friendly, proximity to Cleveland Ohio preferred. Come join us! – Remote, or Cleveland OH
Senior iOS Engineer @ IRL – IRL is an all-remote company building a social calendar that will be a ‘one stop shop’ for all the things you want to do with friends. Our iOS team is looking to add a Senior Engineer to our small, nimble squad. Our size-to-product ratio is low, so you’ll be a high impact contributor, making tangible changes daily. Come write great iOS code for a beautiful app and help the world do more together! – Remote within ±3 of Pacific Time
Senior iOS Engineer @ DuckDuckGo and Senior macOS Engineer @ DuckDuckGo – Rather than rely on interviews, we base our hiring decisions on demonstrable work performance. We achieve that by asking our candidates to complete paid projects, which largely resemble the type of challenges they would be solving at DuckDuckGo every day. – Remote
First Snapchat, then Instagram, WhatsApp, and this week Twitter. How long before we see this in Xcode? 😱
Yes, this is just a mockup, but it exists for real in Visual Studio Code. 🥰
Sometimes, not having to write about the latest Apple developer news until Friday is a blessing. If an announcement drops early in the week, it gives me a few days to think about how I really feel about it before having to write my opinion down for all eternity. I like it. 👍 Other times, like this week, it means that everything that could be said is already written.
If you’ve been hiding under a rock, or have been too engrossed in your PlayStation 5 this week, here’s the story. Apply (yep, it’s not automatic) to become a member of the Small Business Program, and Apple take 15% of revenue from purchases rather than the 30% that everyone pays today, as long as you make less than $1m/year from your apps. It starts next year, and applies whether you’ve been on the App Store since the start, or are just making your first app.
Of course, if you want to find criticism of anything, the internet rarely lets you down, and predictably it feels like there are as many people criticising this announcement as there are celebrating it. The negativity tends to group into two camps. First, those that think Apple is only doing this because of looming antitrust issues or the Epic lawsuit. Then, the group that is disappointed that it’s not fixing all of the other problems with the App Store in a magical, sweeping overhaul.
My views, as you might expect, are more moderate. There’s nothing to criticise here, and I think this is a great move. I’ve long argued that the 30% cut isn’t the biggest problem in the App Store, and I stand by my views there, but that’s not to say that this change isn’t welcome. It’s a sensible, practical way to make getting a business in the App Store started easier. Even better, for the vast majority of independent developers who will never hit (and may not be aiming for) that $1m figure, it’s a straight-up reduction in fees to a much more pleasant level.
It doesn’t mean that all of the problems with the App Store are fixed, but that’s OK. What it does show is that there is continued effort inside Apple to make changes to this side of the App Store. Remember a few months ago when Apple started taking suggestions about guidelines? There have been many years where it looked like Apple had no intention of changing anything about the review process, or revenue model, and now there’s movement on both fronts (although “making a suggestion“ is a fairly small movement 😅). That’s significant. I still think some of the major problems, especially around big companies avoiding the 30% completely while smaller companies pay, is something that might need a more fundamental rethink. But none of that makes this week’s news any less welcome.
I also like that the 30% revenue split will now be something that developers look forward to. There’s a certain irony to that which I enjoy. 😅Dave Verwer