Sponsored Link
A single place to simplify and speed up releases
Release faster and more reliably with Runway. Runway integrates with all of your tools, enabling end-to-end automation and seamless coordination across your team. Try Runway for free today.
News
I promised results from last week’s mini-survey on Kotlin, and here they are!
About 20% of people have used KMP in an Apple-platform app, and about 75% still use it in a current project. Those numbers are much higher than I expected! There were plenty of negative stories in the comments, though, so it would be unwise to read too much into the pure numbers, but knowing that 75% of people who tried it still use it says something.
The final question told me that almost 70% of you were interested in the technology. I’ve subscribed to several of the blogs that people recommended, and while I can’t promise to talk about it often, don’t be surprised if you see an occasional link to a KMP article here.
Finally, many of you wished more people were writing blog posts on KMP. If you have some experience, there’s likely to be an audience for a few new blogs. Will you write one? Let me know if you start one.
Tools
Stark
This new Mac app looks like a great way to check your designs for accessibility issues before you write a single line of code! There are more details in the launch blog post, but the basics are that it’ll find accessibility issues like low contrast or small text. It works with Sketch or Figma designs and is free if you only have a few projects, so what are you waiting for?
Code
What are Sendable and @Sendable closures in Swift?
Making code thread safe always requires some thought about what’s happening to data, but it would also be foolish to ignore the new tools that Swift provides for us. Donny Wals takes us through how to communicate which parts of our code are thread-safe to the Swift concurrency system.
Swift’s various methods of printing to the console
LLDB is a great tool, but there’s nothing wrong with a bit of “print debugging” from time to time. Did you know that print
has some friends in Swift? Jordan Morgan has a thorough walkthrough of five different methods of printing data from your app.
Dynamic dates with monospaced digits in SwiftUI
The example Natalia Panferova uses in this post about San Francisco’s beautiful monospaced digits is fantastic. It’s a dynamically updating clock with a perfect layout in a single line of code. SwiftUI can be genuinely magical sometimes!
Mastering Dynamic Island in SwiftUI
I wish I had waited a week before linking Majid Jabrayilov’s first article on the Dynamic Island last week because he followed it up with another excellent post, diving much deeper into what’s possible.
Are you done with the subject now, Majid, or will you try to make it three weeks in a row? 😂
Jobs
Senior iOS Engineer @ Toptal – We are a product team delivering value to the end-users working closely with the business. You will be working directly on the Talent app used by thousands of Toptal freelancers. We build expertly designed native mobile apps that are polished, fast, well-tested, and a joy to use. – Remote (within European timezones)
Senior iOS Engineer @ DuckDuckGo – Our app is now downloaded more than 50M times a year, and our private search engine packaged with it has become the #2 search engine on mobile in the U.S., Canada, Australia and the Netherlands. Oh, and we've been profitable since 2014 with revenue currently exceeding $100 million a year! – Remote (Anywhere)
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 18 person, fully-remote company spread across the US and Europe. – Remote (within US or European timezones)
Head of Apple Development @ Doist – Doists’ mission is to build the future of work. Come help us lead our Apple team and create some of the best productivity apps in the world. – Remote (within US, European, or Asia-Pacific timezones)
Senior iOS Engineer @ Sendwave – We currently have a 4.6-star rating on Trustpilot — people put their faith in us to deliver their money quickly, securely, and affordably. And we’re pretty darn proud of that. – Remote (within US or European timezones)
Mobile Full Stack Engineer @ Expensify – Join our passionate team of top-notch engineers to solve a real-world problem, and help people spend less time managing expenses and more time pursuing their real goals. – Remote (Anywhere) with some on-site work (Australia, United Kingdom, or United States in CA, MI, NY, or OR)
iOS SDK Developer @ Stream – Do you want to work on an open-source chat SDK used by hundreds of high-profile companies and startups that impact billions of users? If you are a product-minded engineer and care about software quality, apply on the link below. – Remote (within European timezones) or on-site (Netherlands)
macOS / iOS Developers @ Kagi Inc. – Orion browser is the newest macOS/iOS web browser ready take on the world! Create the future best browser on Apple devices with us. Flexible work conditions, remote work OK. Kagi Inc. がお届けする Orion ブラウザは、世界最新の macOS/iOS 用ブラウザです。私たちの目指す「Apple デバイス用の最高のブラウザ」を一緒に作りましょう。 – Remote (Anywhere)
Senior Software Engineer (iOS) @ Driver Technologies Inc. – Driver is dedicated to making life-saving driving technology available to everyone. We’re leveraging the power of computer vision and big data analysis to make collision alerts and driver assistance features available on common mobile devices. – Remote (Anywhere)
And finally...
If you have an Apple silicon Mac and a few hours that need wasting. I had an enormous amount of fun playing with Diffusion Bee! 🎨
Comment
I am sure that winning an Apple Design Award is a dream for many of you. It’s surely the ultimate recognition of an app well made. Knowing that a team of people inside Apple sat down with your app and decided it deserved showcasing to the world must be a thrill that lasts a long time.
I usually write my congratulations to all the winners at the end of WWDC week, but the eagle-eyed of you may have noticed I didn’t do it this year. Was I snubbing the awards? Am I fresh out of congratulations for the winners? Not at all! I didn’t link to the winner showcase video this year because of this blog post.
At the time, that post had no links in it. Instead, it contained a promise that Apple would publish a profile of each winner week by week throughout the summer. I like it very much when Apple showcases projects that are not their own and wish they would do it more often.
Reading the profiles throughout the summer has been fantastic. I’ve learned about app authors I wasn’t aware of and downloaded apps that I had previously passed over when Apple first announced the winners.
So, here’s the complete list of stories from 12 weeks of ADA winner profiles. I’d encourage you to let your mouse wander towards the ones you haven’t already installed, too. You’ll find interesting stories and great apps.
Congratulations to the winners! I hope your shiny silver cubes never lose their shine.
Note: I wanted to write only positive words about this, and I’m genuinely happy to see Apple celebrate the winners with these profiles. However, I feel I must mention how hard to find these articles are. Yes, someone from Apple updated the original blog post every week, but do they expect people to go back and check in on an old post from June? The post also appears at the bottom of the awards page, but no one is regularly checking that page three months after the award announcement, either.
I saw the articles appear through an RSS feed that contains an aggregate of the posts on the developer news page combined with what I think used to be the “Today” feed from the developer app. Unfortunately, it seems like that view is gone from the app, and to the best of my knowledge, there was never a web index of those posts, even though the articles had web versions.
To hide links to these great profiles in an old blog post or behind an RSS feed seems like such a shame. I love RSS, but I’m realistic about how small the group of people who feel like me is! If there were too many of these profiles for the developer news page, that’s fine. I just wish there was a more prominent place on the web where Apple would post them.
Dave Verwer