WWDC Day Three (AKA Wednesday)


Today turned into a pretty productive day. After the problems of Monday and the recoveries of yesterday, I was looking forward to a day when I could just enjoy the sessions an and possibly take to the labs to figure things out.

I began the day with a session on Sign-In with Apple. I am really looking forward to this being adopted by more websites. The number of websites, apps, and games that require logins drives me nuts. I always create new accounts with email, and refuse to use login with Google or Facebook. Being able to take advantage of Apple’s approach to privacy and the dynamically generated email addresses will make a few of the tracking things better. I am sure that they sites, will still send emails, and put tracking pixels in them.

Apple has made this service available for all of their platforms, and will be requiring that if an app uses Sign-In with Google or Facebook, then they MUST use Sign-In with Apple to remain in the App Store. They have also made a javascript version available for websites. This hopefully will drive adoption quickly.

SwiftUI Essentials

My next session was on implementing dark mode. I’ve been working on my Holiday Card Tracking app this week, and after this session, I spent lunch completely enabling dark mode in it and most of Wasted Time too! The basics are very easy to do. This session showed some of the processes that you need to implement if really want to address custom colors (beyond just using the default system colors. I will have to do some more reading up on that, once I finally create a meaningful design for my apps.

These two sessions got me ready for the SwiftUI Essentials session at 11am. I am really excited by SwiftUI as a way of improving the design and behavior of both of my apps – WastedTime and Holiday Card Tracker. Last year I re-wrote WastedTime to use RXSwift. This was a lot of work and not to intuitive for me. Once I finally got it done, the app correctly updates based on Siri and I have cleaned up some of the code. But the UI is till the same old tired UI. So if I can switch to SwiftUI I may actually improve the look and feel. And with Holiday Card Tracker, it is such a basic app, that right now, I should be able to just “switch” it to SwiftUI, and thereby fix the Image view problems that I have going on. We shall see.

I then had lunch and implemented Dark Mode!!

After lunch, there was another session on SwiftUI but this time on WatchOS. There were some really great examples of how to sort and store data for the Watch, but my head was thinking about fixing a crash I’ve been working on in my Holiday Card Tracker app. So I stepped out and went to another lab. The lab was a great success as the Apple Engineer pointed out how my on device debugging was right. I was thinking that the unwrapping of a nil could only happen on the right side of an assignment operator. I was wrong, and was able to fix the app. I have posted a new version to testflight, but it is currently dependent on iOS 13. So I can’t have my testers use it. I will try and fix that later this week.

The next session I sat in was all about this year’s Apple Design award winners and what made their apps special. What an incredible talk. It really changes the way I am looking at my own code. Then at dinner tonight I was talking to a developer form the UK who said when he saw through this same talk last year, he completely redesigned his app. I think I should re-look at how the Holiday Card Tracker actually works.

The final session today was on modernizing your UI for iOS13. This talk went thru multiple key changes in the UI, from both a design and function perspective. Many things come by default when you update your app to iOS 13, but to really take advantage of the power of the new versions, there is work to be done. It’s sessions like these that make me wish I were independently wealthy, and I could spend my time coding during the day. Not that I don’t get time to code now, but not as much as I’d like.

All in all today was great! I am excited to get some time this summer to do the work on my apps.

,