360iDev has been an enjoyable experience thus far. I still have the final day of the conference ahead of me when I record this. But I must say, it is awesome seeing so many familiar faces. The weird thing is, I'm seeing most of them for the very first time in real life. Special shoutout to Josh, Azam, Mikaela and Leo. It is great to be able to meet you, for real finally. What I also noticed is how different the conferences are. I've been to AppDevCon, SwiftHeroes, Techorama.be and 360iDev this year and each had a totally different vibe. And each had its own strengths. Experiencing these conferences reaffirmed my resolve to push for another edition of the Do iOS conference in November. I got the first offer letter from a venue and am awaiting a second to ensure I get a good deal on the whole thing. A fun thing to know about organizing an event, the room is a small line item compared to the catering. Once I have the venue booked it is time to do some final number crunching and decide on a ticket price. It will probably be a lot lower than you might expect, which makes me super happy.
This week’s articles.
Lead Software Developer
Learn best practices for being a great lead software developer.
Rate me on Apple Podcasts.
Welcome to app force episode 89. My name is Lena and I've been developing software for over 20 years developing iOS apps for over 10 years. And I'm running the Dutch cocoa has for over nine years. If an iOS app developer you should listen to my podcast, because it will keep you updated on interesting articles conference and events you might not have heard about. In this episode, I'm going to talk about PSA. iOS 16 is a huge opportunity to promote your app, lock screen widgets in Swift UI, building widgets for iOS applications with which gift and swift UI and Beginner's Guide to navigate the split view history through for iOS 60 custom metrics with metric eight, how to capitalize the first letter in Swift, extension kit and X PC sharing cross platform code in Swift UI apps. I prepare my podcast episodes by scripting things out nowadays, it helps me collect my thoughts and make sure I do a better job printer record, a better job recording results in lots less editing, which makes me a much happier podcaster audio editing is an enjoyable process, but it can take loads of time. The process is simple at first, make a selection of links from a list of unread articles and 50. The first selection pass into a second round of review, and then select anywhere between five to 10 articles for inclusion into my podcast articles making the second cut, I'll open up in my web browser and to use this handy extension that allows me to copy each open tabs link as markdown, the resulting markdown I paste into my episodes nodes and start reading take notes as I go. I often copy paste parts of an article introduction for inclusion in my scripts. I discovered that spending more time in my episode node preparation saves me heaps of time. This week, I also gave my talk at 360. If, in fact this episode was prepared, recorded and edited all from my hotel room using my laptop, and a very portable DGI make. The talk I did was titled building a famous fifth backhand integration with authentication and authorization. The abstract of the talk was when integrating with many online services, there's often a bit of server side glue you need to create yourself streams chat service is no difference. In this talk, you will will focus on what you need to create to authenticate and authorize backends that integrate with a service provider. It doesn't matter which stream service is only used as an example of a third party service you might want to integrate with. The core of the talk will be about how to create a favorites with back end for your app and your third party service. We will cover the basics of setting up a favorite fit project. And after that integrating with third party service. Once that's done, some form of authentication and authorization will be added. sounds neat right? All the material is available at app force one.net/idf link in the show notes to 360 IDF has been an enjoyable experience thus far. I still have the final day of the conference ahead of me when I record this, but I must say it is awesome seeing so many familiar faces. The weird thing is I'm seeing most of them for the very first time real life. Special shout out to Josh as I'm Michaela and Leo, it is great to finally be able to meet you for real, what it also notices how different conferences are. I've been to app DEF CON swift heroes cyclorama B, and 360 if he had thus far, and each had a totally different vibe, and each had his own strengths. Experiencing these conferences reaffirmed my resolve to push for another edition of the Dubai press conference in November, I got the first offer letter from a venue and I'm awaiting the second to make sure I get a good deal on the whole thing. A fun thing to know about organizing an event rooms a small line item compared to the catering. Once you have to find your books, it is time to do some final number crunching and decide on the ticket price. It will probably be a lot lower than you might expect, which makes me super happy. Speaking of things making me happy at 360 If I experienced several case of getting actual in person feedback from people listening to my podcast, how they enjoy it, and that it's a staple on their playlist such an amazing gift to receive. Anyways, let's dive into the first article of the week. Public service announcements, iOS 16 is a huge opportunity to promote your app. Not much to do or add to what Phillip shares with us. The new iOS release is a period when both Apple and depress love to feature and cover all kinds of apps. And users are excited to try out new ones and have features that weren't possible before. So if you have any ambition with your app, you should prioritize marketing and promotional activities around the upcoming iOS 16 release you will get the most bang For your book, so to speak, so better get started. And the next two articles by Majeed and Natasha line have really well with what Philip just said. lockscreen, which is in Swift UI and building, which is for iOS application with which kit and swift UI. Both of them shared an article but which it gets much it goes deeper into lockscreen widget specifically, while Natasha talks about which is in general, starting with Irish 14, Apple introduced widgets that allows users to make a piece of the apps content available on the homescreen one of the most requested features for iOS was customizable lock screens and with iOS 16. Apple will deliver on this, we can populate our lockscreen with Glasspool widgets, implementing a lock screen, which is straightforward because the API shares the same code with homescreen widgets. I think homescreen which is a cool, I use them every day, and Lakshmi widgets will only make widgets better. So let's get started programming them so they can be part of marketing push related to the release of iOS 16, shall we? That's three articles down already. Next up a beginner's guide to navigation split view in Swift UI for iOS 16 In iOS 16, other than introducing the new navigation stack, Apple also released a new few container names navigation split view for developers to create two or three column navigation interfaces. If you want to build UI similar to the stock Mail app, you should check this out as a split view components. While navigation split view is more suitable for iPad OS and Mac OS apps, you can still use them on apps for the iPhone, the view component automatically adapts itself for iPhone. instead of displaying a multi column interface it creates a single column experience. The new Neff K split view comes with various options for you to customize its appearance and operations. You can also change the columns width and programmatically show and hide the columns. In his tutorial, Simon will create a three column navigation by using navigation split view. Article number five is by Adam rush. I actually saw his presentation on this very topic at 360. If custom metrics with metric hits metric, it is a new framework to monitor app performance and battery usage within your application. It was released in 2019. One of the fantastic things you can do with metric it is track custom metrics using Apple's API so that you can consume this data and make better technical or engineering decisions based on results. Let's get started by going over a real life example. You are about to start working on a significant new feature in your app. You don't know how your users react, and it will touch some critical parts of your applications logic. You'd like to roll out this feature slowly. And you'd like to monitor the performance of this feature and how it will affect your app's performance. The question is, how are you going to achieve this? Well, it's possible with metrics. So rune has a nice article answering the question of how to capitalize the first letter in Swift. Not only does he capitalize the first letter of each word in the string, he also shows us how to capitalize the first word of a sentence, all using built in Swift features, to more articles to go and next up is extension kit and SPC Max mercy cote right extension kit makes extensive use of X PC, there are x PC connections all over the place. There's per extension X PC interface. But there's also a per view X PC interface. This can make a lot of API's to manage it's critical to as this will make up the foundation of access good system. So to be successful with extension kit, you have to work really closely with X PC. Let's take a look at how we can do that. This article is part two of a series of articles on the topic of extension kits. And we are already at eight and last article of this episode sharing cross platform code in Swift UI apps. The main appeal of building apps and swift UI is being able to share UI across platforms, in particular iOS and Mac OS, it is not perfect. And you often have to do some if OS checks, but when it works, it is truly great. Before swift two hours around, you could already share a lot of on UI code between iOS and macOS. Many of the system frameworks are available on both platforms, for example, foundation and core data. Occasionally, there are API differences, but they rarely impose significant burden. The biggest issue when working on a cross platform swift UI app is why you need to drop into advocates on Mac OS and UI kits on iOS. Often the API should meet because they are absent from Swift UI are simply entirely different. However, sometimes the API's are nearly identical, but just different enough to require branching into platform specific code paths. In his article, Jesse squires explains how you could approach finding a codebase that shares as much to code as reasonably possible between iOS and Mac. So those were the articles for this week. And it seems DJI make has worked out well, and I was able to record an episode. If you have any feedback, please send me a message to Twitter. My DMS are always open and don't forget, you can buy me a coffee link for that in the show notes.