Donovan’s Vision Blog, and StuVision, sites like Create with Swift and elkraneo who have dedicated landing pages for visionOS posts, and of course, there are plenty of occasional posts on other blogs, too.
Don’t get me wrong, the risks of this platform failing are still significant, but seeing developer interest from third parties will reduce those risks and I can’t wait to see where it goes from here!
Oh, and if you have an app on the store or a TestFlight in progress for a visionOS-native app. reply to this email with a link. I’d love to check your app out!
Dave Verwer
If you’re a mid/senior iOS developer looking to improve both your skills and salary level, join this free online crash course. It’s available only for a limited time, so get it now.
Talking of visionOS, the latest issue of Apple’s Hello Developer newsletter (which is well worth subscribing to) announces multiple new sample code projects highlighting visionOS! 👍 Scroll down to the “New sample code” section and you’ll find links to three new non-trivial projects. There’s a multi-platform app, a RealityKit, and one demonstrating Reality Composer Pro.
This package came up during the latest episode of Swift Package Indexing, and I felt compelled to mention it here, too. Kohki Miki’s latest work will take your XCTest tests and do its best to convert them to run with Apple’s new swift-testing package. From our testing on the SPI source code, it works remarkably well!
Each time there’s a new major release of Kaleidoscope I wonder what new features the developers can add to a diff
app. Throughout the v4.x releases, they introduced several features to enable closer integration with git, and v5 takes that one step further by allowing you to open source repositories with some super handy views for branch comparison and easy ways to see what changes were made in the last timer period or number of commits. It’s not a cheap app, but it is absolutely the best at its job.
For full disclosure, the developers provided me a review copy of the app.
I believe that part of the struggle SwiftUI has had, and why we saw so many “Is SwiftUI ready for production” blog posts a couple of years ago is that the set of “easy” tasks and “difficult” tasks are so different between SwiftUI and UIKit. For example, as Thomas Ricouard says:
It’s a simple
ScrollView
+LazyVStack
Implementation with infinite scrolling (pagination) and a way to hide the navigation bar and the tab bar when scrolling. This is quite a standard behavior when using UIKit, but until iOS 18, it was hard to reproduce using SwiftUI.
Luckily, the set of “easy” tasks that SwiftUI has always excelled at remains as it also knocks down the list of previously difficult ones. 👍
I linked to Matt Massicotte’s series of posts on Swift concurrency and data race safety just before WWDC as I thought he was finished! He wasn’t done then, but he is now! So, while I wouldn’t usually link to the same articles again so quickly, his journey through Swift Evolution adding examples and context as he goes has been so great that it’s worth checking out the entire set if you want to understand Swift 6.0 better.
Have you ever caught yourself saying “Oh, blend modes! Those are what Photoshop has, right?” as someone mentions them? If so, get some clarity on what each of them does with this beautifully illustrated guide by Aryaman Sharda, and try not to think about why this page doesn’t have a similar set of images. 😬
I must admit I still don’t use SwiftUI previews 😬 I prefer the “old fashioned” way of building and running when I need to see a view in use. I should probably re-think that, though, as previews have improved and improved over the years since they were first introduced. Here’s Donny Wals with a recap of the latest improvements available in the latest SDK.
This was the perfect video for me last night on the eve of my Vision Pro arrival. It’s Mike Stern and Linda Dong from Apple presenting at Figma Config 2024 on designing for visionOS. 🥽
Software Engineer, iOS @ amo – Amo values speed, creativity, and high performance. Focused on meaningful social apps, they prioritize creation over consumption and simple, fun experiences. The diverse, skilled team uses a modular monorepo tech stack with Rust, Bazel, and RxSwift, leveraging efficient data processing on GCP. – On-site (France)
Senior iOS Engineer @ Leica Camera AG – We are looking for an experienced iOS developer to join our team. We are working as a small, fast-moving unit within Leica, so we are looking for team members who can take charge of projects and work independently. It’s a bonus (but not required) if you are passionate about photography! – Remote (within European timezones) or on-site (Germany)
Product Engineer (iOS, Full-Stack) @ Emerge Tools – Have a huge impact working with our small, technically elite team (just 8), build tools used some of the biggest & best mobile teams in the world (DoorDash, Square, Spotify, Duolingo, Tinder, Bumble) – Remote (within US timezones)
Senior iOS Developer @ Komoot – Your work will contribute to helping millions of people enjoy lovely outdoor experiences and you can work from wherever you want, be it a beach, the mountains, your house, or anywhere else that lies in any time zone between UTC-1 and UTC+3. – Remote (within European timezones)
Talking of Figma. It’s available literally everywhere!