Sponsored Link
Scriptless test automation for mobile
Scripted test automation can be a pain to implement, especially for mobile. Waldo offers an alternative: providing you with fully automated E2E tests, more transparent results, and reducing test maintenance work. Learn more!
News
365 Days of iOS Accessibility
Yesterday was Global Accessibility Awareness Day, which seems like a great excuse to highlight the valuable work that Daniel Devesa Derksen-Staats does in this area. He hit a milestone of 180 posts in his #365DaysIOSAccessibility series that he posts to Mastodon and Twitter, which is worth celebrating. Go and follow him or subscribe to the hashtag. š
Previewing Live Speech, Personal Voice, and more
Daniel isnāt the only one who has been busy with accessibility, as Apple made a huge accessibility announcement this week. Itās unclear when these features will ship, but this is likely a pre-announcement of iOS 17 features. Adding an on-device-generated āPersonal Voiceā for text-to-speech is especially interesting. Who says Apple is falling behind in AI?
Tools
Using Act to Run Github Actions Locally
I hadnāt come across Act before, but the title of this post from Grant Isom certainly caught my eye. Could this be the end of commit messages littering history that say, āTweaked workflow file, again! Fingers crossed that it works this time!ā This could change ten commits into one or two, and I canāt wait to try it.
Code
Instant Pan Gesture Interactions
This post from Christian Selig is a great example of what I discussed in todayās comment. Itās a fantastic description of an issue he faced in his Apollo app, and even better, itās the kind of problem that only people who care about a genuinely smooth UI experience would care about. Iām in that group of people, and I love posts like this. ā¤ļø
How to Define Custom URL Actions for SwiftUI Text Views
Yes, itās fantastic news that SwiftUI text views now support links, but what if you want to control what happens when people interact with them? Lee Kah Seng has all the answers.
#file behavior change in Swift 5.8
Shipped in Swift 5.8 but disabled by default until Swift 6. You should be aware of this if you use #file
anywhere in your code. Thanks to Sarun Wongpatcharapakorn for writing this up.
Videos
Display Text Like a Pro in SwiftUI
This video from Vincent Pradeilles and Natalia Panferova is excellent. Natalia worked on text APIs while working at Apple, so these tips come directly from an expert source. I promise youāll learn something, even if you think you know everything about rendering and handling text with SwiftUI.
Jobs
Mac & iOS Software Engineer @ Flexibits Inc. ā We make Fantastical and Cardhop, award-winning calendar and contacts apps for Mac and iOS. We were honored to win Apple's Mac App of the Year in 2020 and we're looking to make our apps even better! Our team is a 25 person, fully-remote company spread across the US and Europe. ā Remote (within US or European timezones)
Senior iOS Developer @ Shareup ā Want to build something new? Join our small, design-led team at @shareupapp to build the fastest, easiest, and most secure way to share anything with anyone. We use Appleās best tech, including Swift Concurrency, Combine, Catalyst, UIKit, and SwiftUI, and youāll work closely with our talented team. ā Remote (within European timezones)
Is your company hiring? Don't forget that you can post any open Swift or app development positions for free over at iOS Dev Jobs.
And finally...
Rendering a scene from Moana with a renderer built in less than 10.000 lines of Swift code? Thatās surely not possible, is it? š³
Comment
When I made this comment in last weekās issue, I didnāt think Iād be following up on it this week:
But David also couldnāt think of many people either, and Chris Clark, who also runs a great TikTok channel covering design and SwiftUI coding, made a good point that the subjective nature of the work means that most design writing is mostly thought leadership or case studies.
My favourite articles are subjective, though, and not just with design topics. I learn the most from real-world stories from people working on real projects, no matter if itās a coding or debugging issue, thinking around a design problem, or a retrospective of a marketing campaign. Thatās why Davidās post stood out to me last week. It was a story about solving a real issue in his app, and while he could have solved that issue in many ways, reading how he approached the problem was fascinating.
But that also explains why thereās less of this type of content around. Writing about solutions to real-world problems isnāt easy to do regularly because of how much work must happen before you put down a single word. Itās much more straightforward to produce objective or educational articles where you pick a subject and explain it. Thereās lots of that kind of writing around coding and much less on design, primarily because thereās rarely a concretely correct answer with design. Itās easy to verify whether Swift code that calculates the first hundred prime numbers works and much harder to do the same for even a constrained design problem like āHow would you design screen X in Y app?ā
Please note that Iām not trying to diminish the effort or usefulness of objective, educational writing, but it serves a different purpose than I was just talking about.
Iād also like to highlight a few recent real-world subjective design writing examples. I already linked to it, but Sahand Nayebazizās article on the keyboard-driven operation of his Details Pro iPad app was fantastic. You should also read this post from Neale Van Fleet on designing Audio Hijack 4. I also really enjoyed this post from Yves Jannic on not worrying too much about your app icon.
Iāll finish this weekās comment by echoing my call to action from last week. If you know of anyone writing or producing any content on design, development, marketing, or anything related to app development, please either let them know to add themselves to the iOS Dev Directory or, even better, add their site for them!
Dave Verwer